///////////////////////////////////////////////////////////////////////////////
//
//  main.js   			version 1.1
//
//  This file is provided by DPE Indonesia as a helper file for websites that
//  incorporate TS Web Access.
//  For more information about usage, feel free to ping:
//  NARENDA WICAKSONO
//  IT PRO EVANGELIST(i-narenw@microsoft.com)
//  http://wss-id.org/blogs/narenda
//  http://geeks.netindonesia.net/blogs/narn
//  http://narenda.mvps.org
//
////////////////////////////////////////////////////////////////////////////////
        
var plugin;
var main;
var objsArr = new Array();
var imageWidth=80
var imageHeight=80
var num_imgs=30
var radiusX=450
var radiusY=110
var centerX=450
var centerY=200
var speed=-0.0005
var main_down=false
function mainCanvasLoaded(s) { main=s.findName('mainCanvas'); plugin = s.getHost(); imagesHolder=s.findName('imagesHolder'); buildImages(); }
function mainCanvasMouseLeave(s) { main_down=false; }
function mainCanvasMouseEnter(s) { main_down=true; }
function buildImages() {
  for(i=0;i<3;i++) {
k = (i * 10) + 0;
cur_img="AcroRd32.png"
img_url="images/"+cur_img
left_pos=0
xaml_str='<Canvas Name="imageHolder_'+k+'" Canvas.Left="'+left_pos+'" Canvas.Top="0">'
xaml_str += 	'<Canvas Name="imgHolderReflection_'+k+'" Canvas.Top="200" Opacity="1">'
xaml_str += 	' <Canvas.OpacityMask>'
xaml_str += 	'   <LinearGradientBrush  StartPoint="0,0" EndPoint="0,1">'
xaml_str += 	'     <GradientStop Offset="0.37" Color="#00000000"  />'
xaml_str += 	'     <GradientStop Offset="1" Color="#88000000"  />'
xaml_str += 	'    </LinearGradientBrush>'
xaml_str += 	' </Canvas.OpacityMask>'
xaml_str += 	' <Canvas.RenderTransform><TransformGroup><ScaleTransform Name="ReflectionScaleTransform_'+k+'" ScaleY="-1" ScaleX="1" CenterX="0" CenterY="0" /></TransformGroup></Canvas.RenderTransform>'
xaml_str +=		' <Image Name="imgReflection_('+k+')" Stretch="UniformToFill" Height="'+imageHeight+'" Width="'+imageWidth+'" Source="'+img_url+'" />'
xaml_str +=		'</Canvas>'
xaml_str+='  <Image Cursor="Hand" MouseEnter="imageOverAcroRd32" MouseLeave="imageOut" MouseLeftButtonDown="imageDownAcroRd32" MouseLeftButtonUp="imageUp" Stretch="UniformToFill" Name="image_'+k+'" Height="'+imageHeight+'" Width="'+imageWidth+'" Source="'+img_url+'" Opacity="1" />'
xaml_str+='  <Canvas.RenderTransform><ScaleTransform Name="st_'+k+'" ScaleX="1" ScaleY="1" CenterX="50" CenterY="50"/></Canvas.RenderTransform>'
xaml_str+='</Canvas>'
xamlTags=plugin.content.createFromXaml(xaml_str)
imagesHolder.children.add(xamlTags)
objsArr["image_"+k]=new Object()
objsArr["image_"+k].angle=k*((Math.PI*2)/num_imgs)
k = (i * 10) + 1;
cur_img="calc.png"
img_url="images/"+cur_img
left_pos=0
xaml_str='<Canvas Name="imageHolder_'+k+'" Canvas.Left="'+left_pos+'" Canvas.Top="0">'
xaml_str += 	'<Canvas Name="imgHolderReflection_'+k+'" Canvas.Top="200" Opacity="1">'
xaml_str += 	' <Canvas.OpacityMask>'
xaml_str += 	'   <LinearGradientBrush  StartPoint="0,0" EndPoint="0,1">'
xaml_str += 	'     <GradientStop Offset="0.37" Color="#00000000"  />'
xaml_str += 	'     <GradientStop Offset="1" Color="#88000000"  />'
xaml_str += 	'    </LinearGradientBrush>'
xaml_str += 	' </Canvas.OpacityMask>'
xaml_str += 	' <Canvas.RenderTransform><TransformGroup><ScaleTransform Name="ReflectionScaleTransform_'+k+'" ScaleY="-1" ScaleX="1" CenterX="0" CenterY="0" /></TransformGroup></Canvas.RenderTransform>'
xaml_str +=		' <Image Name="imgReflection_('+k+')" Stretch="UniformToFill" Height="'+imageHeight+'" Width="'+imageWidth+'" Source="'+img_url+'" />'
xaml_str +=		'</Canvas>'
xaml_str+='  <Image Cursor="Hand" MouseEnter="imageOvercalc" MouseLeave="imageOut" MouseLeftButtonDown="imageDowncalc" MouseLeftButtonUp="imageUp" Stretch="UniformToFill" Name="image_'+k+'" Height="'+imageHeight+'" Width="'+imageWidth+'" Source="'+img_url+'" Opacity="1" />'
xaml_str+='  <Canvas.RenderTransform><ScaleTransform Name="st_'+k+'" ScaleX="1" ScaleY="1" CenterX="50" CenterY="50"/></Canvas.RenderTransform>'
xaml_str+='</Canvas>'
xamlTags=plugin.content.createFromXaml(xaml_str)
imagesHolder.children.add(xamlTags)
objsArr["image_"+k]=new Object()
objsArr["image_"+k].angle=k*((Math.PI*2)/num_imgs)
k = (i * 10) + 2;
cur_img="EXCEL.png"
img_url="images/"+cur_img
left_pos=0
xaml_str='<Canvas Name="imageHolder_'+k+'" Canvas.Left="'+left_pos+'" Canvas.Top="0">'
xaml_str += 	'<Canvas Name="imgHolderReflection_'+k+'" Canvas.Top="200" Opacity="1">'
xaml_str += 	' <Canvas.OpacityMask>'
xaml_str += 	'   <LinearGradientBrush  StartPoint="0,0" EndPoint="0,1">'
xaml_str += 	'     <GradientStop Offset="0.37" Color="#00000000"  />'
xaml_str += 	'     <GradientStop Offset="1" Color="#88000000"  />'
xaml_str += 	'    </LinearGradientBrush>'
xaml_str += 	' </Canvas.OpacityMask>'
xaml_str += 	' <Canvas.RenderTransform><TransformGroup><ScaleTransform Name="ReflectionScaleTransform_'+k+'" ScaleY="-1" ScaleX="1" CenterX="0" CenterY="0" /></TransformGroup></Canvas.RenderTransform>'
xaml_str +=		' <Image Name="imgReflection_('+k+')" Stretch="UniformToFill" Height="'+imageHeight+'" Width="'+imageWidth+'" Source="'+img_url+'" />'
xaml_str +=		'</Canvas>'
xaml_str+='  <Image Cursor="Hand" MouseEnter="imageOverEXCEL" MouseLeave="imageOut" MouseLeftButtonDown="imageDownEXCEL" MouseLeftButtonUp="imageUp" Stretch="UniformToFill" Name="image_'+k+'" Height="'+imageHeight+'" Width="'+imageWidth+'" Source="'+img_url+'" Opacity="1" />'
xaml_str+='  <Canvas.RenderTransform><ScaleTransform Name="st_'+k+'" ScaleX="1" ScaleY="1" CenterX="50" CenterY="50"/></Canvas.RenderTransform>'
xaml_str+='</Canvas>'
xamlTags=plugin.content.createFromXaml(xaml_str)
imagesHolder.children.add(xamlTags)
objsArr["image_"+k]=new Object()
objsArr["image_"+k].angle=k*((Math.PI*2)/num_imgs)
k = (i * 10) + 3;
cur_img="MSACCESS.png"
img_url="images/"+cur_img
left_pos=0
xaml_str='<Canvas Name="imageHolder_'+k+'" Canvas.Left="'+left_pos+'" Canvas.Top="0">'
xaml_str += 	'<Canvas Name="imgHolderReflection_'+k+'" Canvas.Top="200" Opacity="1">'
xaml_str += 	' <Canvas.OpacityMask>'
xaml_str += 	'   <LinearGradientBrush  StartPoint="0,0" EndPoint="0,1">'
xaml_str += 	'     <GradientStop Offset="0.37" Color="#00000000"  />'
xaml_str += 	'     <GradientStop Offset="1" Color="#88000000"  />'
xaml_str += 	'    </LinearGradientBrush>'
xaml_str += 	' </Canvas.OpacityMask>'
xaml_str += 	' <Canvas.RenderTransform><TransformGroup><ScaleTransform Name="ReflectionScaleTransform_'+k+'" ScaleY="-1" ScaleX="1" CenterX="0" CenterY="0" /></TransformGroup></Canvas.RenderTransform>'
xaml_str +=		' <Image Name="imgReflection_('+k+')" Stretch="UniformToFill" Height="'+imageHeight+'" Width="'+imageWidth+'" Source="'+img_url+'" />'
xaml_str +=		'</Canvas>'
xaml_str+='  <Image Cursor="Hand" MouseEnter="imageOverMSACCESS" MouseLeave="imageOut" MouseLeftButtonDown="imageDownMSACCESS" MouseLeftButtonUp="imageUp" Stretch="UniformToFill" Name="image_'+k+'" Height="'+imageHeight+'" Width="'+imageWidth+'" Source="'+img_url+'" Opacity="1" />'
xaml_str+='  <Canvas.RenderTransform><ScaleTransform Name="st_'+k+'" ScaleX="1" ScaleY="1" CenterX="50" CenterY="50"/></Canvas.RenderTransform>'
xaml_str+='</Canvas>'
xamlTags=plugin.content.createFromXaml(xaml_str)
imagesHolder.children.add(xamlTags)
objsArr["image_"+k]=new Object()
objsArr["image_"+k].angle=k*((Math.PI*2)/num_imgs)
k = (i * 10) + 4;
cur_img="PaintDotNet.png"
img_url="images/"+cur_img
left_pos=0
xaml_str='<Canvas Name="imageHolder_'+k+'" Canvas.Left="'+left_pos+'" Canvas.Top="0">'
xaml_str += 	'<Canvas Name="imgHolderReflection_'+k+'" Canvas.Top="200" Opacity="1">'
xaml_str += 	' <Canvas.OpacityMask>'
xaml_str += 	'   <LinearGradientBrush  StartPoint="0,0" EndPoint="0,1">'
xaml_str += 	'     <GradientStop Offset="0.37" Color="#00000000"  />'
xaml_str += 	'     <GradientStop Offset="1" Color="#88000000"  />'
xaml_str += 	'    </LinearGradientBrush>'
xaml_str += 	' </Canvas.OpacityMask>'
xaml_str += 	' <Canvas.RenderTransform><TransformGroup><ScaleTransform Name="ReflectionScaleTransform_'+k+'" ScaleY="-1" ScaleX="1" CenterX="0" CenterY="0" /></TransformGroup></Canvas.RenderTransform>'
xaml_str +=		' <Image Name="imgReflection_('+k+')" Stretch="UniformToFill" Height="'+imageHeight+'" Width="'+imageWidth+'" Source="'+img_url+'" />'
xaml_str +=		'</Canvas>'
xaml_str+='  <Image Cursor="Hand" MouseEnter="imageOverPaintDotNet" MouseLeave="imageOut" MouseLeftButtonDown="imageDownPaintDotNet" MouseLeftButtonUp="imageUp" Stretch="UniformToFill" Name="image_'+k+'" Height="'+imageHeight+'" Width="'+imageWidth+'" Source="'+img_url+'" Opacity="1" />'
xaml_str+='  <Canvas.RenderTransform><ScaleTransform Name="st_'+k+'" ScaleX="1" ScaleY="1" CenterX="50" CenterY="50"/></Canvas.RenderTransform>'
xaml_str+='</Canvas>'
xamlTags=plugin.content.createFromXaml(xaml_str)
imagesHolder.children.add(xamlTags)
objsArr["image_"+k]=new Object()
objsArr["image_"+k].angle=k*((Math.PI*2)/num_imgs)
k = (i * 10) + 5;
cur_img="POWERPNT.png"
img_url="images/"+cur_img
left_pos=0
xaml_str='<Canvas Name="imageHolder_'+k+'" Canvas.Left="'+left_pos+'" Canvas.Top="0">'
xaml_str += 	'<Canvas Name="imgHolderReflection_'+k+'" Canvas.Top="200" Opacity="1">'
xaml_str += 	' <Canvas.OpacityMask>'
xaml_str += 	'   <LinearGradientBrush  StartPoint="0,0" EndPoint="0,1">'
xaml_str += 	'     <GradientStop Offset="0.37" Color="#00000000"  />'
xaml_str += 	'     <GradientStop Offset="1" Color="#88000000"  />'
xaml_str += 	'    </LinearGradientBrush>'
xaml_str += 	' </Canvas.OpacityMask>'
xaml_str += 	' <Canvas.RenderTransform><TransformGroup><ScaleTransform Name="ReflectionScaleTransform_'+k+'" ScaleY="-1" ScaleX="1" CenterX="0" CenterY="0" /></TransformGroup></Canvas.RenderTransform>'
xaml_str +=		' <Image Name="imgReflection_('+k+')" Stretch="UniformToFill" Height="'+imageHeight+'" Width="'+imageWidth+'" Source="'+img_url+'" />'
xaml_str +=		'</Canvas>'
xaml_str+='  <Image Cursor="Hand" MouseEnter="imageOverPOWERPNT" MouseLeave="imageOut" MouseLeftButtonDown="imageDownPOWERPNT" MouseLeftButtonUp="imageUp" Stretch="UniformToFill" Name="image_'+k+'" Height="'+imageHeight+'" Width="'+imageWidth+'" Source="'+img_url+'" Opacity="1" />'
xaml_str+='  <Canvas.RenderTransform><ScaleTransform Name="st_'+k+'" ScaleX="1" ScaleY="1" CenterX="50" CenterY="50"/></Canvas.RenderTransform>'
xaml_str+='</Canvas>'
xamlTags=plugin.content.createFromXaml(xaml_str)
imagesHolder.children.add(xamlTags)
objsArr["image_"+k]=new Object()
objsArr["image_"+k].angle=k*((Math.PI*2)/num_imgs)
k = (i * 10) + 6;
cur_img="VCExpress.png"
img_url="images/"+cur_img
left_pos=0
xaml_str='<Canvas Name="imageHolder_'+k+'" Canvas.Left="'+left_pos+'" Canvas.Top="0">'
xaml_str += 	'<Canvas Name="imgHolderReflection_'+k+'" Canvas.Top="200" Opacity="1">'
xaml_str += 	' <Canvas.OpacityMask>'
xaml_str += 	'   <LinearGradientBrush  StartPoint="0,0" EndPoint="0,1">'
xaml_str += 	'     <GradientStop Offset="0.37" Color="#00000000"  />'
xaml_str += 	'     <GradientStop Offset="1" Color="#88000000"  />'
xaml_str += 	'    </LinearGradientBrush>'
xaml_str += 	' </Canvas.OpacityMask>'
xaml_str += 	' <Canvas.RenderTransform><TransformGroup><ScaleTransform Name="ReflectionScaleTransform_'+k+'" ScaleY="-1" ScaleX="1" CenterX="0" CenterY="0" /></TransformGroup></Canvas.RenderTransform>'
xaml_str +=		' <Image Name="imgReflection_('+k+')" Stretch="UniformToFill" Height="'+imageHeight+'" Width="'+imageWidth+'" Source="'+img_url+'" />'
xaml_str +=		'</Canvas>'
xaml_str+='  <Image Cursor="Hand" MouseEnter="imageOverVCExpress" MouseLeave="imageOut" MouseLeftButtonDown="imageDownVCExpress" MouseLeftButtonUp="imageUp" Stretch="UniformToFill" Name="image_'+k+'" Height="'+imageHeight+'" Width="'+imageWidth+'" Source="'+img_url+'" Opacity="1" />'
xaml_str+='  <Canvas.RenderTransform><ScaleTransform Name="st_'+k+'" ScaleX="1" ScaleY="1" CenterX="50" CenterY="50"/></Canvas.RenderTransform>'
xaml_str+='</Canvas>'
xamlTags=plugin.content.createFromXaml(xaml_str)
imagesHolder.children.add(xamlTags)
objsArr["image_"+k]=new Object()
objsArr["image_"+k].angle=k*((Math.PI*2)/num_imgs)
k = (i * 10) + 7;
cur_img="vcsexpress.png"
img_url="images/"+cur_img
left_pos=0
xaml_str='<Canvas Name="imageHolder_'+k+'" Canvas.Left="'+left_pos+'" Canvas.Top="0">'
xaml_str += 	'<Canvas Name="imgHolderReflection_'+k+'" Canvas.Top="200" Opacity="1">'
xaml_str += 	' <Canvas.OpacityMask>'
xaml_str += 	'   <LinearGradientBrush  StartPoint="0,0" EndPoint="0,1">'
xaml_str += 	'     <GradientStop Offset="0.37" Color="#00000000"  />'
xaml_str += 	'     <GradientStop Offset="1" Color="#88000000"  />'
xaml_str += 	'    </LinearGradientBrush>'
xaml_str += 	' </Canvas.OpacityMask>'
xaml_str += 	' <Canvas.RenderTransform><TransformGroup><ScaleTransform Name="ReflectionScaleTransform_'+k+'" ScaleY="-1" ScaleX="1" CenterX="0" CenterY="0" /></TransformGroup></Canvas.RenderTransform>'
xaml_str +=		' <Image Name="imgReflection_('+k+')" Stretch="UniformToFill" Height="'+imageHeight+'" Width="'+imageWidth+'" Source="'+img_url+'" />'
xaml_str +=		'</Canvas>'
xaml_str+='  <Image Cursor="Hand" MouseEnter="imageOvervcsexpress" MouseLeave="imageOut" MouseLeftButtonDown="imageDownvcsexpress" MouseLeftButtonUp="imageUp" Stretch="UniformToFill" Name="image_'+k+'" Height="'+imageHeight+'" Width="'+imageWidth+'" Source="'+img_url+'" Opacity="1" />'
xaml_str+='  <Canvas.RenderTransform><ScaleTransform Name="st_'+k+'" ScaleX="1" ScaleY="1" CenterX="50" CenterY="50"/></Canvas.RenderTransform>'
xaml_str+='</Canvas>'
xamlTags=plugin.content.createFromXaml(xaml_str)
imagesHolder.children.add(xamlTags)
objsArr["image_"+k]=new Object()
objsArr["image_"+k].angle=k*((Math.PI*2)/num_imgs)
k = (i * 10) + 8;
cur_img="WINWORD.png"
img_url="images/"+cur_img
left_pos=0
xaml_str='<Canvas Name="imageHolder_'+k+'" Canvas.Left="'+left_pos+'" Canvas.Top="0">'
xaml_str += 	'<Canvas Name="imgHolderReflection_'+k+'" Canvas.Top="200" Opacity="1">'
xaml_str += 	' <Canvas.OpacityMask>'
xaml_str += 	'   <LinearGradientBrush  StartPoint="0,0" EndPoint="0,1">'
xaml_str += 	'     <GradientStop Offset="0.37" Color="#00000000"  />'
xaml_str += 	'     <GradientStop Offset="1" Color="#88000000"  />'
xaml_str += 	'    </LinearGradientBrush>'
xaml_str += 	' </Canvas.OpacityMask>'
xaml_str += 	' <Canvas.RenderTransform><TransformGroup><ScaleTransform Name="ReflectionScaleTransform_'+k+'" ScaleY="-1" ScaleX="1" CenterX="0" CenterY="0" /></TransformGroup></Canvas.RenderTransform>'
xaml_str +=		' <Image Name="imgReflection_('+k+')" Stretch="UniformToFill" Height="'+imageHeight+'" Width="'+imageWidth+'" Source="'+img_url+'" />'
xaml_str +=		'</Canvas>'
xaml_str+='  <Image Cursor="Hand" MouseEnter="imageOverWINWORD" MouseLeave="imageOut" MouseLeftButtonDown="imageDownWINWORD" MouseLeftButtonUp="imageUp" Stretch="UniformToFill" Name="image_'+k+'" Height="'+imageHeight+'" Width="'+imageWidth+'" Source="'+img_url+'" Opacity="1" />'
xaml_str+='  <Canvas.RenderTransform><ScaleTransform Name="st_'+k+'" ScaleX="1" ScaleY="1" CenterX="50" CenterY="50"/></Canvas.RenderTransform>'
xaml_str+='</Canvas>'
xamlTags=plugin.content.createFromXaml(xaml_str)
imagesHolder.children.add(xamlTags)
objsArr["image_"+k]=new Object()
objsArr["image_"+k].angle=k*((Math.PI*2)/num_imgs)
k = (i * 10) + 9;
cur_img="wordpad.png"
img_url="images/"+cur_img
left_pos=0
xaml_str='<Canvas Name="imageHolder_'+k+'" Canvas.Left="'+left_pos+'" Canvas.Top="0">'
xaml_str += 	'<Canvas Name="imgHolderReflection_'+k+'" Canvas.Top="200" Opacity="1">'
xaml_str += 	' <Canvas.OpacityMask>'
xaml_str += 	'   <LinearGradientBrush  StartPoint="0,0" EndPoint="0,1">'
xaml_str += 	'     <GradientStop Offset="0.37" Color="#00000000"  />'
xaml_str += 	'     <GradientStop Offset="1" Color="#88000000"  />'
xaml_str += 	'    </LinearGradientBrush>'
xaml_str += 	' </Canvas.OpacityMask>'
xaml_str += 	' <Canvas.RenderTransform><TransformGroup><ScaleTransform Name="ReflectionScaleTransform_'+k+'" ScaleY="-1" ScaleX="1" CenterX="0" CenterY="0" /></TransformGroup></Canvas.RenderTransform>'
xaml_str +=		' <Image Name="imgReflection_('+k+')" Stretch="UniformToFill" Height="'+imageHeight+'" Width="'+imageWidth+'" Source="'+img_url+'" />'
xaml_str +=		'</Canvas>'
xaml_str+='  <Image Cursor="Hand" MouseEnter="imageOverwordpad" MouseLeave="imageOut" MouseLeftButtonDown="imageDownwordpad" MouseLeftButtonUp="imageUp" Stretch="UniformToFill" Name="image_'+k+'" Height="'+imageHeight+'" Width="'+imageWidth+'" Source="'+img_url+'" Opacity="1" />'
xaml_str+='  <Canvas.RenderTransform><ScaleTransform Name="st_'+k+'" ScaleX="1" ScaleY="1" CenterX="50" CenterY="50"/></Canvas.RenderTransform>'
xaml_str+='</Canvas>'
xamlTags=plugin.content.createFromXaml(xaml_str)
imagesHolder.children.add(xamlTags)
objsArr["image_"+k]=new Object()
objsArr["image_"+k].angle=k*((Math.PI*2)/num_imgs)
  }
  positionItems()
  moveItemsInt=setInterval("moveItems()",30)
}
function moveItems() { if(main_down) { positionItems() } }
function positionItems() {
  for(i=0;i<num_imgs;i++) {
      var my_x=Math.cos(objsArr["image_"+i].angle)*radiusX + centerX
      var my_y=Math.sin(objsArr["image_"+i].angle)*radiusY + centerY
      main.findName("imageHolder_"+i)["Canvas.Left"]=my_x
      main.findName("imageHolder_"+i)["Canvas.Top"]=my_y
      var stRef=main.findName("st_"+i)
      var sc = (my_y  - stRef.scaleY) / (centerY+radiusY-stRef.scaleY)
      stRef.scaleX=sc
      stRef.scaleY=sc
      objsArr["image_"+i].angle+=speed
      main.findName("imageHolder_"+i)["Canvas.ZIndex"]=parseInt(my_y)
	}
}
function imageOut(s) { main_down=true; s["Width"] -= 20; s["Height"] -= 20; window.status = "Click the icon to open the application"; }
function imageOverAcroRd32(s) { main_down=false; s["Width"] += 20; s["Height"] += 20; window.status = "Adobe Reader 8"; }
function imageDownAcroRd32() {
  MsRdpClient.MsRdpClientShell.RdpFileContents = "redirectclipboard:i:1\r\nredirectposdevices:i:0\r\nredirectprinters:i:1\r\nredirectcomports:i:1\r\nredirectsmartcards:i:1\r\ndevicestoredirect:s:*\r\ndrivestoredirect:s:*\r\nredirectdrives:i:1\r\nsession bpp:i:32\r\nspan monitors:i:1\r\nprompt for credentials on client:i:1\r\nremoteapplicationmode:i:1\r\nserver port:i:3389\r\nallow font smoothing:i:1\r\npromptcredentialonce:i:1\r\nauthentication level:i:0\r\ngatewayusagemethod:i:2\r\ngatewayprofileusagemethod:i:1\r\ngatewaycredentialssource:i:0\r\nfull address:s:DPE-SERVER\r\nalternate shell:s:||AcroRd32\r\nremoteapplicationprogram:s:||AcroRd32\r\ngatewayhostname:s:dpe-server\r\nremoteapplicationname:s:Adobe Reader 8\r\nremoteapplicationcmdline:s:\r\n";
  MsRdpClient.MsRdpClientShell.PublicMode = "false";
  try { MsRdpClient.MsRdpClientShell.Launch(); } catch(e){ if (e.number==-2147467259) { window.alert("Internet Connection Error!"); } else {throw e} }
}
function imageOvercalc(s) { main_down=false; s["Width"] += 20; s["Height"] += 20; window.status = "Calculator"; }
function imageDowncalc() {
  MsRdpClient.MsRdpClientShell.RdpFileContents = "redirectclipboard:i:1\r\nredirectposdevices:i:0\r\nredirectprinters:i:1\r\nredirectcomports:i:1\r\nredirectsmartcards:i:1\r\ndevicestoredirect:s:*\r\ndrivestoredirect:s:*\r\nredirectdrives:i:1\r\nsession bpp:i:32\r\nspan monitors:i:1\r\nprompt for credentials on client:i:1\r\nremoteapplicationmode:i:1\r\nserver port:i:3389\r\nallow font smoothing:i:1\r\npromptcredentialonce:i:1\r\nauthentication level:i:0\r\ngatewayusagemethod:i:2\r\ngatewayprofileusagemethod:i:1\r\ngatewaycredentialssource:i:0\r\nfull address:s:DPE-SERVER\r\nalternate shell:s:||calc\r\nremoteapplicationprogram:s:||calc\r\ngatewayhostname:s:dpe-server\r\nremoteapplicationname:s:Calculator\r\nremoteapplicationcmdline:s:\r\n";
  MsRdpClient.MsRdpClientShell.PublicMode = "false";
  try { MsRdpClient.MsRdpClientShell.Launch(); } catch(e){ if (e.number==-2147467259) { window.alert("Internet Connection Error!"); } else {throw e} }
}
function imageOverEXCEL(s) { main_down=false; s["Width"] += 20; s["Height"] += 20; window.status = "Microsoft Office Excel 2007"; }
function imageDownEXCEL() {
  MsRdpClient.MsRdpClientShell.RdpFileContents = "redirectclipboard:i:1\r\nredirectposdevices:i:0\r\nredirectprinters:i:1\r\nredirectcomports:i:1\r\nredirectsmartcards:i:1\r\ndevicestoredirect:s:*\r\ndrivestoredirect:s:*\r\nredirectdrives:i:1\r\nsession bpp:i:32\r\nspan monitors:i:1\r\nprompt for credentials on client:i:1\r\nremoteapplicationmode:i:1\r\nserver port:i:3389\r\nallow font smoothing:i:1\r\npromptcredentialonce:i:1\r\nauthentication level:i:0\r\ngatewayusagemethod:i:2\r\ngatewayprofileusagemethod:i:1\r\ngatewaycredentialssource:i:0\r\nfull address:s:DPE-SERVER\r\nalternate shell:s:||EXCEL\r\nremoteapplicationprogram:s:||EXCEL\r\ngatewayhostname:s:dpe-server\r\nremoteapplicationname:s:Microsoft Office Excel 2007\r\nremoteapplicationcmdline:s:\r\n";
  MsRdpClient.MsRdpClientShell.PublicMode = "false";
  try { MsRdpClient.MsRdpClientShell.Launch(); } catch(e){ if (e.number==-2147467259) { window.alert("Internet Connection Error!"); } else {throw e} }
}
function imageOverMSACCESS(s) { main_down=false; s["Width"] += 20; s["Height"] += 20; window.status = "Microsoft Office Access 2007"; }
function imageDownMSACCESS() {
  MsRdpClient.MsRdpClientShell.RdpFileContents = "redirectclipboard:i:1\r\nredirectposdevices:i:0\r\nredirectprinters:i:1\r\nredirectcomports:i:1\r\nredirectsmartcards:i:1\r\ndevicestoredirect:s:*\r\ndrivestoredirect:s:*\r\nredirectdrives:i:1\r\nsession bpp:i:32\r\nspan monitors:i:1\r\nprompt for credentials on client:i:1\r\nremoteapplicationmode:i:1\r\nserver port:i:3389\r\nallow font smoothing:i:1\r\npromptcredentialonce:i:1\r\nauthentication level:i:0\r\ngatewayusagemethod:i:2\r\ngatewayprofileusagemethod:i:1\r\ngatewaycredentialssource:i:0\r\nfull address:s:DPE-SERVER\r\nalternate shell:s:||MSACCESS\r\nremoteapplicationprogram:s:||MSACCESS\r\ngatewayhostname:s:dpe-server\r\nremoteapplicationname:s:Microsoft Office Access 2007\r\nremoteapplicationcmdline:s:\r\n";
  MsRdpClient.MsRdpClientShell.PublicMode = "false";
  try { MsRdpClient.MsRdpClientShell.Launch(); } catch(e){ if (e.number==-2147467259) { window.alert("Internet Connection Error!"); } else {throw e} }
}
function imageOverPaintDotNet(s) { main_down=false; s["Width"] += 20; s["Height"] += 20; window.status = "Paint.NET"; }
function imageDownPaintDotNet() {
  MsRdpClient.MsRdpClientShell.RdpFileContents = "redirectclipboard:i:1\r\nredirectposdevices:i:0\r\nredirectprinters:i:1\r\nredirectcomports:i:1\r\nredirectsmartcards:i:1\r\ndevicestoredirect:s:*\r\ndrivestoredirect:s:*\r\nredirectdrives:i:1\r\nsession bpp:i:32\r\nspan monitors:i:1\r\nprompt for credentials on client:i:1\r\nremoteapplicationmode:i:1\r\nserver port:i:3389\r\nallow font smoothing:i:1\r\npromptcredentialonce:i:1\r\nauthentication level:i:0\r\ngatewayusagemethod:i:2\r\ngatewayprofileusagemethod:i:1\r\ngatewaycredentialssource:i:0\r\nfull address:s:DPE-SERVER\r\nalternate shell:s:||PaintDotNet\r\nremoteapplicationprogram:s:||PaintDotNet\r\ngatewayhostname:s:dpe-server\r\nremoteapplicationname:s:Paint.NET\r\nremoteapplicationcmdline:s:\r\n";
  MsRdpClient.MsRdpClientShell.PublicMode = "false";
  try { MsRdpClient.MsRdpClientShell.Launch(); } catch(e){ if (e.number==-2147467259) { window.alert("Internet Connection Error!"); } else {throw e} }
}
function imageOverPOWERPNT(s) { main_down=false; s["Width"] += 20; s["Height"] += 20; window.status = "Microsoft Office PowerPoint 2007"; }
function imageDownPOWERPNT() {
  MsRdpClient.MsRdpClientShell.RdpFileContents = "redirectclipboard:i:1\r\nredirectposdevices:i:0\r\nredirectprinters:i:1\r\nredirectcomports:i:1\r\nredirectsmartcards:i:1\r\ndevicestoredirect:s:*\r\ndrivestoredirect:s:*\r\nredirectdrives:i:1\r\nsession bpp:i:32\r\nspan monitors:i:1\r\nprompt for credentials on client:i:1\r\nremoteapplicationmode:i:1\r\nserver port:i:3389\r\nallow font smoothing:i:1\r\npromptcredentialonce:i:1\r\nauthentication level:i:0\r\ngatewayusagemethod:i:2\r\ngatewayprofileusagemethod:i:1\r\ngatewaycredentialssource:i:0\r\nfull address:s:DPE-SERVER\r\nalternate shell:s:||POWERPNT\r\nremoteapplicationprogram:s:||POWERPNT\r\ngatewayhostname:s:dpe-server\r\nremoteapplicationname:s:Microsoft Office PowerPoint 2007\r\nremoteapplicationcmdline:s:\r\n";
  MsRdpClient.MsRdpClientShell.PublicMode = "false";
  try { MsRdpClient.MsRdpClientShell.Launch(); } catch(e){ if (e.number==-2147467259) { window.alert("Internet Connection Error!"); } else {throw e} }
}
function imageOverVCExpress(s) { main_down=false; s["Width"] += 20; s["Height"] += 20; window.status = "Microsoft Visual C++ 2008 Express Edition"; }
function imageDownVCExpress() {
  MsRdpClient.MsRdpClientShell.RdpFileContents = "redirectclipboard:i:1\r\nredirectposdevices:i:0\r\nredirectprinters:i:1\r\nredirectcomports:i:1\r\nredirectsmartcards:i:1\r\ndevicestoredirect:s:*\r\ndrivestoredirect:s:*\r\nredirectdrives:i:1\r\nsession bpp:i:32\r\nspan monitors:i:1\r\nprompt for credentials on client:i:1\r\nremoteapplicationmode:i:1\r\nserver port:i:3389\r\nallow font smoothing:i:1\r\npromptcredentialonce:i:1\r\nauthentication level:i:0\r\ngatewayusagemethod:i:2\r\ngatewayprofileusagemethod:i:1\r\ngatewaycredentialssource:i:0\r\nfull address:s:DPE-SERVER\r\nalternate shell:s:||VCExpress\r\nremoteapplicationprogram:s:||VCExpress\r\ngatewayhostname:s:dpe-server\r\nremoteapplicationname:s:Microsoft Visual C++ 2008 Express Edition\r\nremoteapplicationcmdline:s:\r\n";
  MsRdpClient.MsRdpClientShell.PublicMode = "false";
  try { MsRdpClient.MsRdpClientShell.Launch(); } catch(e){ if (e.number==-2147467259) { window.alert("Internet Connection Error!"); } else {throw e} }
}
function imageOvervcsexpress(s) { main_down=false; s["Width"] += 20; s["Height"] += 20; window.status = "Microsoft Visual C# 2008 Express Edition"; }
function imageDownvcsexpress() {
  MsRdpClient.MsRdpClientShell.RdpFileContents = "redirectclipboard:i:1\r\nredirectposdevices:i:0\r\nredirectprinters:i:1\r\nredirectcomports:i:1\r\nredirectsmartcards:i:1\r\ndevicestoredirect:s:*\r\ndrivestoredirect:s:*\r\nredirectdrives:i:1\r\nsession bpp:i:32\r\nspan monitors:i:1\r\nprompt for credentials on client:i:1\r\nremoteapplicationmode:i:1\r\nserver port:i:3389\r\nallow font smoothing:i:1\r\npromptcredentialonce:i:1\r\nauthentication level:i:0\r\ngatewayusagemethod:i:2\r\ngatewayprofileusagemethod:i:1\r\ngatewaycredentialssource:i:0\r\nfull address:s:DPE-SERVER\r\nalternate shell:s:||vcsexpress\r\nremoteapplicationprogram:s:||vcsexpress\r\ngatewayhostname:s:dpe-server\r\nremoteapplicationname:s:Microsoft Visual C# 2008 Express Edition\r\nremoteapplicationcmdline:s:\r\n";
  MsRdpClient.MsRdpClientShell.PublicMode = "false";
  try { MsRdpClient.MsRdpClientShell.Launch(); } catch(e){ if (e.number==-2147467259) { window.alert("Internet Connection Error!"); } else {throw e} }
}
function imageOverWINWORD(s) { main_down=false; s["Width"] += 20; s["Height"] += 20; window.status = "Microsoft Office Word 2007"; }
function imageDownWINWORD() {
  MsRdpClient.MsRdpClientShell.RdpFileContents = "redirectclipboard:i:1\r\nredirectposdevices:i:0\r\nredirectprinters:i:1\r\nredirectcomports:i:1\r\nredirectsmartcards:i:1\r\ndevicestoredirect:s:*\r\ndrivestoredirect:s:*\r\nredirectdrives:i:1\r\nsession bpp:i:32\r\nspan monitors:i:1\r\nprompt for credentials on client:i:1\r\nremoteapplicationmode:i:1\r\nserver port:i:3389\r\nallow font smoothing:i:1\r\npromptcredentialonce:i:1\r\nauthentication level:i:0\r\ngatewayusagemethod:i:2\r\ngatewayprofileusagemethod:i:1\r\ngatewaycredentialssource:i:0\r\nfull address:s:DPE-SERVER\r\nalternate shell:s:||WINWORD\r\nremoteapplicationprogram:s:||WINWORD\r\ngatewayhostname:s:dpe-server\r\nremoteapplicationname:s:Microsoft Office Word 2007\r\nremoteapplicationcmdline:s:\r\n";
  MsRdpClient.MsRdpClientShell.PublicMode = "false";
  try { MsRdpClient.MsRdpClientShell.Launch(); } catch(e){ if (e.number==-2147467259) { window.alert("Internet Connection Error!"); } else {throw e} }
}
function imageOverwordpad(s) { main_down=false; s["Width"] += 20; s["Height"] += 20; window.status = "WordPad"; }
function imageDownwordpad() {
  MsRdpClient.MsRdpClientShell.RdpFileContents = "redirectclipboard:i:1\r\nredirectposdevices:i:0\r\nredirectprinters:i:1\r\nredirectcomports:i:1\r\nredirectsmartcards:i:1\r\ndevicestoredirect:s:*\r\ndrivestoredirect:s:*\r\nredirectdrives:i:1\r\nsession bpp:i:32\r\nspan monitors:i:1\r\nprompt for credentials on client:i:1\r\nremoteapplicationmode:i:1\r\nserver port:i:3389\r\nallow font smoothing:i:1\r\npromptcredentialonce:i:1\r\nauthentication level:i:0\r\ngatewayusagemethod:i:2\r\ngatewayprofileusagemethod:i:1\r\ngatewaycredentialssource:i:0\r\nfull address:s:DPE-SERVER\r\nalternate shell:s:||wordpad\r\nremoteapplicationprogram:s:||wordpad\r\ngatewayhostname:s:dpe-server\r\nremoteapplicationname:s:WordPad\r\nremoteapplicationcmdline:s:\r\n";
  MsRdpClient.MsRdpClientShell.PublicMode = "false";
  try { MsRdpClient.MsRdpClientShell.Launch(); } catch(e){ if (e.number==-2147467259) { window.alert("Internet Connection Error!"); } else {throw e} }
}
function whenMouseMoves(s, e) { var pt = e.getPosition(null); _root_xmouse = pt.x; _root_ymouse = pt.y; speed=((_root_xmouse-500)/500) * 0.0755; }