<div id="OrgChart">
<script type='text/javascript' src='https://www.google.com/jsapi'></script>
<script type='text/javascript'>
google.load('visualization', '1', {packages:['orgchart']});
google.setOnLoadCallback(drawChart);
var chart;
var options;
function drawChart() {
options ={
allowHtml:true,
allowCollapse:true,
animation: {
duration: 1000,
easing: 'in'
},
};
var data = new google.visualization.DataTable();
data.addColumn('string', 'Name');
data.addColumn('string', 'Manager');
data.addColumn('string', 'ToolTip');
var response = [{!userdata}];
data.addRows(response);
chart = new google.visualization.OrgChart(document.getElementById('chart_div'));
chart.draw(data, options);
google.visualization.events.addListener(chart, 'onmouseover', barMouseOver);
google.visualization.events.addListener(chart, 'onmouseout', barMouseOut);
}
function barMouseOver(e) {
chart.setSelection([e]);
}
function barMouseOut(e) {
chart.setSelection([{'row': null, 'column': null}]);
}
/*Zooming*/
$(document).ready(function(){
var disablebuttons = false;
var currZoom = 1;
$("#chart_div").draggable(
{
containment: 'parent',
drag: function() {
console.log('the mouse is being moved in chart');
disablebuttons = true;
$('#resetdiv').css("opacity","1");
$('#zoomindiv').css("opacity","0.4");
$('#zoomoutdiv').css("opacity","0.4");
$('#moveupdiv').css("opacity","0.4");
$('#movedowndiv').css("opacity","0.4");
$('#moverightdiv').css("opacity","0.4");
$('#moveleftdiv').css("opacity","0.4");
}
});
$("#_zi_icon").click(function(){
if(disablebuttons != true)
{
currZoom+=0.1;
$('#chart_div').css(
{
'zoom' : currZoom
});
$('#zoomoutdiv').css("opacity","0.7");
$('#zoomindiv').css("opacity","1");
}
});
$("#_zo_icon").click(function(){
if(disablebuttons != true)
{
currZoom-=0.1;
$('#chart_div').css(
{
'zoom' : currZoom
});
$('#zoomoutdiv').css("opacity","1");
$('#zoomindiv').css("opacity","0.7");
}
});
var Margin = 0;
$("#_ml_icon").click(function(){
if(disablebuttons != true)
{
Margin +=100;
$('#chart_div').animate({
'right' : Margin+'px'
},'slow');
$('#moveleftdiv').css("opacity","1");
$('#moverightdiv').css("opacity","0.7");
}
});
$("#_mr_icon").click(function(){
if(disablebuttons != true)
{
Margin -=100;
if(Margin >=0)
{
$('#chart_div').animate({
'right' : Margin+'px'
},'slow');
}else{
Margin = 100;
}
$('#moverightdiv').css("opacity","1");
$('#moveleftdiv').css("opacity","0.7");
}
});
var topmargin =0;
$("#_md_icon").click(function(){
if(disablebuttons != true)
{
topmargin +=100
$('#chart_div').animate({
'top' : topmargin+'px'
},'slow');
$('#movedowndiv').css("opacity","1");
$('#moveupdiv').css("opacity","0.7");
}
});
$("#_mu_icon").click(function(){
if(disablebuttons != true)
{
topmargin -=100
$('#chart_div').animate({
'top' : topmargin+'px'
},'slow');
$('#moveupdiv').css("opacity","1");
$('#movedowndiv').css("opacity","0.7");
}
});
$("#_rs_icon").click(function(){
currZoom=1;
topmargin =0;
Margin=0;
window.location = "http://strickerforce-developer-edition.ap1.force.com/CloudStrikerDemos?show_div=5";
});
$("#zoomindiv").hover(function(){
if(disablebuttons != true)
{
$('#_zinorm').css("display","none");
$('#_ziover').css("display","block");
}
}, function() {
$('#_zinorm').css("display","block");
$('#_ziover').css("display","none");
}
);
$("#zoomoutdiv").hover(function(){
if(disablebuttons != true)
{
$('#_zonorm').css("display","none");
$('#_zoover').css("display","block");
}
}, function() {
$('#_zonorm').css("display","block");
$('#_zoover').css("display","none");
});
$("#moverightdiv").hover(function(){
if(disablebuttons != true)
{
$('#_mrnorm').css("display","none");
$('#_mrover').css("display","block");
}
}, function() {
$('#_mrnorm').css("display","block");
$('#_mrover').css("display","none");
});
$("#moveleftdiv").hover(function(){
if(disablebuttons != true)
{
$('#_mlnorm').css("display","none");
$('#_mlover').css("display","block");
}
}, function() {
$('#_mlnorm').css("display","block");
$('#_mlover').css("display","none");
});
$("#moveupdiv").hover(function(){
if(disablebuttons != true)
{
$('#_munorm').css("display","none");
$('#_muover').css("display","block");
}
}, function() {
$('#_munorm').css("display","block");
$('#_muover').css("display","none");
});
$("#movedowndiv").hover(function(){
if(disablebuttons != true)
{
$('#_mdnorm').css("display","none");
$('#_mdover').css("display","block");
}
},function() {
$('#_mdnorm').css("display","block");
$('#_mdover').css("display","none");
});
$("#resetdiv").hover(function(){
if(disablebuttons != true)
{
$('#_rsnorm').css("display","none");
$('#_rsover').css("display","block");
}
}, function() {
if(disablebuttons != true)
{
$('#_rsnorm').css("display","block");
$('#_rsover').css("display","none");
}
});
var datalength = [{!userdata}];
if(datalength.length>0)
{
$("#navdiv").css("display","block");
}else{
$("#navdiv").css("display","none");
}
});
</script>
<style>
.hoverClass{
opacity:1;
}
</style>
<!-- Adding Zoom Panel -->
<div id="navdiv" style="position: absolute; right:10px; bottom: 10px; width: 97px; height: 64px; z-index: 20;" class="noSel;">
<div class="noSel controlsBg" style="position: relative; width: 100%; height: 100%; z-index: 1; border-top-left-radius: 5px; border-top-right-radius: 5px; border-bottom-right-radius: 5px; border-bottom-left-radius: 5px; background-color: rgb(0, 0, 0); opacity: 0.55;">
</div>
<div id="zoomindiv" style="position: absolute; display: block; left: 4px; top: 11px; width: 20px; height: 20px; z-index: 1;opacity: 0.7; filter: alpha(opacity=70);" class="noSel">
<div id="_zinorm" style="position: absolute; left: 1px; top: 1px; width: 18px; height: 18px; background-color: rgb(255, 255, 255); border-top-left-radius: 2px; border-top-right-radius: 2px; border-bottom-right-radius: 2px; border-bottom-left-radius: 2px; display: block; background-position: initial initial; background-repeat: initial initial;">
</div>
<div id="_ziover" style="position: absolute; left: 0px; top: 0px; width: 20px; height: 20px; background-color: rgb(255, 255, 255); border-top-left-radius: 2px; border-top-right-radius: 2px; border-bottom-right-radius: 2px; border-bottom-left-radius: 2px; display: none; background-position: initial initial; background-repeat: initial initial;">
</div>
<div id="_zi_icon" style="position: absolute; left: 1px; top: 1px; width: 18px; height: 18px; background: transparent url({!URLFOR($Resource.GoogleApiResource, 'GAResources/icons.png')}) -16px -16px no-repeat;">
</div>
</div>
<div id="zoomoutdiv" style="position: absolute; display: block; left: 4px; top: 33px; width: 20px; height: 20px; z-index: 2; opacity: 0.4;filter: alpha(opacity=70);" class="noSel">
<div id="_zonorm" style="position: absolute; left: 1px; top: 1px; width: 18px; height: 18px; background-color: rgb(255, 255, 255); border-top-left-radius: 2px; border-top-right-radius: 2px; border-bottom-right-radius: 2px; border-bottom-left-radius: 2px; display: block; background-position: initial initial; background-repeat: initial initial;">
</div>
<div id="_zoover" style="position: absolute; left: 0px; top: 0px; width: 20px; height: 20px; background-color: rgb(255, 255, 255); border-top-left-radius: 2px; border-top-right-radius: 2px; border-bottom-right-radius: 2px; border-bottom-left-radius: 2px; display: none; background-position: initial initial; background-repeat: initial initial;">
</div>
<div id="_zo_icon" style="position: absolute; left: 1px; top: 1px; width: 18px; height: 18px; background: transparent url({!URLFOR($Resource.GoogleApiResource, 'GAResources/icons.png')}) -66px -16px no-repeat;">
</div>
</div>
<div id="moverightdiv" style="position: absolute; display: block; left: 37px; top: 23px; width: 18px; height: 18px; z-index: 3; opacity: 0.4;filter: alpha(opacity=70);" class="noSel">
<div id="_mrnorm" style="position: absolute; left: 1px; top: 1px; width: 16px; height: 16px; background-color: rgb(255, 255, 255); border-top-left-radius: 2px; border-top-right-radius: 2px; border-bottom-right-radius: 2px; border-bottom-left-radius: 2px; display: block; background-position: initial initial; background-repeat: initial initial;">
</div>
<div id="_mrover" style="position: absolute; left: 0px; top: 0px; width: 18px; height: 18px; background-color: rgb(255, 255, 255); border-top-left-radius: 2px; border-top-right-radius: 2px; border-bottom-right-radius: 2px; border-bottom-left-radius: 2px; display: none; background-position: initial initial; background-repeat: initial initial;">
</div>
<div id="_mr_icon" style="position: absolute; left: 1px; top: 1px; width: 16px; height: 16px; background: transparent url({!URLFOR($Resource.GoogleApiResource, 'GAResources/icons.png')}) -117px -17px no-repeat;">
</div>
</div>
<div id="moveleftdiv" style="position: absolute; display: block; left: 75px; top: 23px; width: 18px; height: 18px; z-index: 4; opacity: 0.4;filter: alpha(opacity=70);" class="noSel">
<div id="_mlnorm" style="position: absolute; left: 1px; top: 1px; width: 16px; height: 16px; background-color: rgb(255, 255, 255); border-top-left-radius: 2px; border-top-right-radius: 2px; border-bottom-right-radius: 2px; border-bottom-left-radius: 2px; display: block; background-position: initial initial; background-repeat: initial initial;">
</div>
<div id="_mlover" style="position: absolute; left: 0px; top: 0px; width: 18px; height: 18px; background-color: rgb(255, 255, 255); border-top-left-radius: 2px; border-top-right-radius: 2px; border-bottom-right-radius: 2px; border-bottom-left-radius: 2px; display: none; background-position: initial initial; background-repeat: initial initial;">
</div>
<div id="_ml_icon" style="position: absolute; left: 1px; top: 1px; width: 16px; height: 16px; background: transparent url({!URLFOR($Resource.GoogleApiResource, 'GAResources/icons.png')}) -167px -17px no-repeat;">
</div>
</div>
<div id="moveupdiv" style="position: absolute; display: block; left: 56px; top: 42px; width: 18px; height: 18px; z-index: 5; opacity: 0.4;filter: alpha(opacity=70);" class="noSel">
<div id="_munorm" style="position: absolute; left: 1px; top: 1px; width: 16px; height: 16px; background-color: rgb(255, 255, 255); border-top-left-radius: 2px; border-top-right-radius: 2px; border-bottom-right-radius: 2px; border-bottom-left-radius: 2px; background-position: initial initial; background-repeat: initial initial;">
</div>
<div id="_muover" style="position: absolute; left: 0px; top: 0px; width: 18px; height: 18px; display: none; background-color: rgb(255, 255, 255); border-top-left-radius: 2px; border-top-right-radius: 2px; border-bottom-right-radius: 2px; border-bottom-left-radius: 2px; background-position: initial initial; background-repeat: initial initial;">
</div>
<div id="_mu_icon" style="position: absolute; left: 1px; top: 1px; width: 16px; height: 16px; background: transparent url({!URLFOR($Resource.GoogleApiResource, 'GAResources/icons.png')}) -217px -17px no-repeat;">
</div>
</div>
<div id="movedowndiv" style="position: absolute; display: block; left: 56px; top: 4px; width: 18px; height: 18px; z-index: 6; opacity: 0.4;filter: alpha(opacity=70);" class="noSel">
<div id="_mdnorm" style="position: absolute; left: 1px; top: 1px; width: 16px; height: 16px; background-color: rgb(255, 255, 255); border-top-left-radius: 2px; border-top-right-radius: 2px; border-bottom-right-radius: 2px; border-bottom-left-radius: 2px; background-position: initial initial; background-repeat: initial initial;">
</div>
<div id="_mdover" style="position: absolute; left: 0px; top: 0px; width: 18px; height: 18px; display: none; background-color: rgb(255, 255, 255); border-top-left-radius: 2px; border-top-right-radius: 2px; border-bottom-right-radius: 2px; border-bottom-left-radius: 2px; background-position: initial initial; background-repeat: initial initial;">
</div>
<div id="_md_icon" style="position: absolute; left: 1px; top: 1px; width: 16px; height: 16px; background: transparent url({!URLFOR($Resource.GoogleApiResource, 'GAResources/icons.png')}) -267px -17px no-repeat;">
</div>
</div>
<div id="resetdiv" style="position: absolute; display: block; left: 56px; top: 23px; width: 18px; height: 18px; z-index: 7; opacity: 0.4;filter: alpha(opacity=70);" class="noSel">
<div id="_rsnorm" style="position: absolute; left: 1px; top: 1px; width: 16px; height: 16px; background-color: rgb(255, 255, 255); border-top-left-radius: 2px; border-top-right-radius: 2px; border-bottom-right-radius: 2px; border-bottom-left-radius: 2px; display: block; background-position: initial initial; background-repeat: initial initial;">
</div>
<div id="_rsover" style="position: absolute; left: 0px; top: 0px; width: 18px; height: 18px; background-color: rgb(255, 255, 255); border-top-left-radius: 2px; border-top-right-radius: 2px; border-bottom-right-radius: 2px; border-bottom-left-radius: 2px; display: none; background-position: initial initial; background-repeat: initial initial;">
</div>
<div id="_rs_icon" style="position: absolute; left: 1px; top: 1px; width: 16px; height: 16px; background: transparent url({!URLFOR($Resource.GoogleApiResource, 'GAResources/icons.png')}) -317px -17px no-repeat;">
</div>
</div>
</div>
<!-- End of Zoom Panel-->
<br/>
<div id='chart_div' style="font-size:18px;padding:30px;background-color: white;">
</div>
</div>