/**
 *
 * SugarCRM Community Edition is a customer relationship management program developed by
 * SugarCRM, Inc. Copyright (C) 2004-2013 SugarCRM Inc.
 *
 * SuiteCRM is an extension to SugarCRM Community Edition developed by SalesAgility Ltd.
 * Copyright (C) 2011 - 2018 SalesAgility Ltd.
 *
 * This program is free software; you can redistribute it and/or modify it under
 * the terms of the GNU Affero General Public License version 3 as published by the
 * Free Software Foundation with the addition of the following permission added
 * to Section 15 as permitted in Section 7(a): FOR ANY PART OF THE COVERED WORK
 * IN WHICH THE COPYRIGHT IS OWNED BY SUGARCRM, SUGARCRM DISCLAIMS THE WARRANTY
 * OF NON INFRINGEMENT OF THIRD PARTY RIGHTS.
 *
 * This program is distributed in the hope that it will be useful, but WITHOUT
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
 * FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
 * details.
 *
 * You should have received a copy of the GNU Affero General Public License along with
 * this program; if not, see http://www.gnu.org/licenses or write to the Free
 * Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
 * 02110-1301 USA.
 *
 * You can contact SugarCRM, Inc. headquarters at 10050 North Wolfe Road,
 * SW2-130, Cupertino, CA 95014, USA. or at email address contact@sugarcrm.com.
 *
 * The interactive user interfaces in modified source and object code versions
 * of this program must display Appropriate Legal Notices, as required under
 * Section 5 of the GNU Affero General Public License version 3.
 *
 * In accordance with Section 7(b) of the GNU Affero General Public License version 3,
 * these Appropriate Legal Notices must retain the display of the "Powered by
 * SugarCRM" logo and "Supercharged by SuiteCRM" logo. If the display of the logos is not
 * reasonably feasible for technical reasons, the Appropriate Legal Notices must
 * display the words "Powered by SugarCRM" and "Supercharged by SuiteCRM".
 */initMySugar=function(){SUGAR.mySugar=function(){var originalLayout=null;var configureDashletId=null;var currentDashlet=null;var leftColumnInnerHTML=null;var leftColObj=null;var maxCount;var warningLang;var closeDashletsDialogTimer=null;var activeTab=activePage;var current_user=current_user_id;var module=moduleName;var charts={};if(module=='Dashboard'){cookiePageIndex=current_user+"_activeDashboardPage";}
else{cookiePageIndex=current_user+"_activePage";}
var homepage_dd;return{getLayout:function(asString){columns=[];for(je=0;je<3;je++){dashlets=document.getElementById('col_'+activeTab+'_'+je);if(dashlets!=null){dashletIds=[];for(wp=0;wp<dashlets.childNodes.length;wp++){if(typeof dashlets.childNodes[wp].id!='undefined'&&dashlets.childNodes[wp].id.match(/dashlet_[\w-]*/)){dashletIds.push(dashlets.childNodes[wp].id.replace(/dashlet_/,''));}}
if(asString)
columns[je]=dashletIds.join(',');else
columns[je]=dashletIds;}}
if(asString)return columns.join('|');else return columns;},onDrag:function(e,id){originalLayout=SUGAR.mySugar.getLayout(true);},onDrop:function(e,id){newLayout=SUGAR.mySugar.getLayout(true);if(originalLayout!=newLayout){SUGAR.mySugar.saveLayout(newLayout);SUGAR.mySugar.sugarCharts.loadSugarCharts();}
$('.dashletcontainer').find('.dashletPanel').css('display','block');$('.dashletcontainer').find('div').each(function(e,v){if($(v).html()==''&&typeof $(v).attr('id')==='undefined'&&typeof $(v).attr('class')==='undefined'){$(this).css('display','none');}});},saveLayout:function(order){ajaxStatus.showStatus(SUGAR.language.get('app_strings','LBL_SAVING_LAYOUT'));var success=function(data){ajaxStatus.showStatus(SUGAR.language.get('app_strings','LBL_SAVED_LAYOUT'));window.setTimeout('ajaxStatus.hideStatus()',2000);};YAHOO.util.Connect.asyncRequest('POST','index.php?'+SUGAR.util.paramsToUrl({'module':module,'action':'DynamicAction','DynamicAction':'saveLayout','selectedPage':activeTab,'to_pdf':1}),{success:success,failure:success},SUGAR.util.paramsToUrl({'layout':order}));},uncoverPage:function(id){if(!SUGAR.isIE){document.getElementById('dlg_c').style.display='none';}
configureDlg.hide();if(document.getElementById('dashletType')==null){dashletType='';}else{dashletType=document.getElementById('dashletType').value;}
SUGAR.mySugar.retrieveDashlet(SUGAR.mySugar.configureDashletId,dashletType);},configureDashlet:function(id){var dashletId=id;ajaxStatus.showStatus(SUGAR.language.get('app_strings','LBL_LOADING'));configureDlg=new YAHOO.widget.SimpleDialog("dlg",{visible:false,effect:[{effect:YAHOO.widget.ContainerEffect.FADE,duration:0.5}],fixedcenter:false,modal:true,draggable:false,x:0,zIndex:11});configureDlg.hideEvent.subscribe(function(){$('#dlg').removeClass('SuiteP-configureDashlet');});fillInConfigureDiv=function(data){ajaxStatus.hideStatus();try{SUGAR.util.globalEval(data.responseText);}
catch(e){result=[];result['header']='error';result['body']='There was an error handling this request.';}
configureDlg.setHeader(result['header']);configureDlg.setBody(result['body']);var listeners=new YAHOO.util.KeyListener(document,{keys:27},{fn:function(){this.hide();},scope:configureDlg,correctScope:true});configureDlg.cfg.queueProperty("keylisteners",listeners);configureDlg.render(document.body);configureDlg.show();$('#dlg').addClass('SuiteP-configureDashlet');configureDlg.configFixedCenter(null,false);SUGAR.util.evalScript(result['body']);$('html, body').animate({scrollTop:newTop});$('#dlg').animate({top:(newTop)+'px'});};SUGAR.mySugar.configureDashletId=id;var cObj=YAHOO.util.Connect.asyncRequest('GET','index.php?to_pdf=1&module='+module+'&action=DynamicAction&DynamicAction=configureDashlet&id='+id,{success:fillInConfigureDiv,failure:fillInConfigureDiv},null);},retrieveDashlet:function(id,url,callback,dynamic,pageReload,pageTabElement){var _pageReload=typeof pageReload=='undefined'?false:pageReload;var _pageTabElement=typeof pageTabElement=='undefined'||pageTabElement.length==0?false:pageTabElement;if(!_pageTabElement&&SUGAR.mySugar.currentDashlet&&$('#'+SUGAR.mySugar.currentDashlet.id).closest('.tab-pane').length>0){_pageTabElement=$('#'+SUGAR.mySugar.currentDashlet.id).closest('.tab-pane');}
ajaxStatus.showStatus(SUGAR.language.get('app_strings','LBL_LOADING'));if(!url){url='index.php?action=DynamicAction&DynamicAction=displayDashlet&session_commit=1&module='+module+'&to_pdf=1&id='+id;is_chart_dashlet=false;}
else if(url=='predefined_chart'){url='index.php?action=DynamicAction&DynamicAction=displayDashlet&session_commit=1&module='+module+'&to_pdf=1&id='+id;scriptUrl='index.php?action=DynamicAction&DynamicAction=getPredefinedChartScript&session_commit=1&module='+module+'&to_pdf=1&id='+id;is_chart_dashlet=true;}
if(dynamic){url+='&dynamic=true';}
SUGAR.mySugar.currentDashlet=document.getElementById('dashlet_entire_'+id);$.ajax({"method":"GET","url":url}).done(function(data,textStatus,jqXHR){var updateDashlet=null;if($(data).find('#dashlet_entire_'+id).length==0){updateDashlet=$(data).find('.bd-center').html();}else{updateDashlet=$(data).find('#dashlet_entire_'+id+' .bd-center').html();}
$('#dashlet_entire_'+id).find('.bd-center').html(updateDashlet);ajaxStatus.hideStatus();});return false;},setChooser:function(){var displayColumnsDef=[];var hideTabsDef=[];var left_td=document.getElementById('display_tabs_td');var right_td=document.getElementById('hide_tabs_td');var displayTabs=left_td.getElementsByTagName('select')[0];var hideTabs=right_td.getElementsByTagName('select')[0];for(i=0;i<displayTabs.options.length;i++){displayColumnsDef.push(displayTabs.options[i].value);}
if(typeof hideTabs!='undefined'){for(i=0;i<hideTabs.options.length;i++){hideTabsDef.push(hideTabs.options[i].value);}}
document.getElementById('displayColumnsDef').value=displayColumnsDef.join('|');document.getElementById('hideTabsDef').value=hideTabsDef.join('|');},deleteDashlet:function(id){if(confirm(SUGAR.language.get('app_strings','LBL_REMOVE_DASHLET_CONFIRM'))){ajaxStatus.showStatus(SUGAR.language.get('app_strings','LBL_REMOVING_DASHLET'));del=function(){var success=function(data){dashlet=document.getElementById('dashlet_'+id);dashlet.parentNode.removeChild(dashlet);ajaxStatus.showStatus(SUGAR.language.get('app_strings','LBL_REMOVED_DASHLET'));window.setTimeout('ajaxStatus.hideStatus()',2000);};var cObj=YAHOO.util.Connect.asyncRequest('GET','index.php?to_pdf=1&module='+module+'&action=DynamicAction&DynamicAction=deleteDashlet&activePage='+activeTab+'&id='+id,{success:success,failure:success},null);};var anim=new YAHOO.util.Anim('dashlet_entire_'+id,{height:{to:1}},.5);anim.onComplete.subscribe(del);document.getElementById('dashlet_entire_'+id).style.overflow='hidden';anim.animate();return false;}
return false;},addDashlet:function(id,type,type_module,pageNum,pageTabElement){var _pageNum=typeof pageNum=='undefined'?false:pageNum;var _pageTabElement=typeof pageTabElement=='undefined'?false:pageTabElement;ajaxStatus.hideStatus();columns=SUGAR.mySugar.getLayout();var num_dashlets=columns[0].length;if(typeof columns[1]==undefined){num_dashlets=num_dashlets+columns[1].length;}
if((num_dashlets)>=SUGAR.mySugar.maxCount){alert(SUGAR.language.get('app_strings','LBL_MAX_DASHLETS_REACHED'));return;}
ajaxStatus.showStatus(SUGAR.language.get('app_strings','LBL_ADDING_DASHLET'));$.ajax({"method":"POST","url":"index.php?module="+module+"&action=DynamicAction&DynamicAction=addDashlet&activeTab="+activeTab+"&id="+id+"&to_pdf=1","data":{'type':type,'type_module':type_module}}).done(function(dashlet_id){colZero=document.getElementById('col_'+activeTab+'_0');newDashlet=document.createElement('li');newDashlet.id='dashlet_'+dashlet_id;newDashlet.className='noBullet active';newDashlet.innerHTML='<div style="position: absolute; top: -1000px; overflow: hidden;" id="dashlet_entire_'+dashlet_id+'"></div>';colZero.insertBefore(newDashlet,colZero.firstChild);var url=null;if(type=='module'||type=='web'){url=null;type='module';}
else if(type=='predefined_chart'){url='predefined_chart';type='predefined_chart';}
else if(type=='chart'){url='chart';type='chart';}
var _pageReload=typeof pageReload=='undefined'?false:pageReload;var _pageTabElement=typeof pageTabElement=='undefined'||pageTabElement.length==0?false:pageTabElement;if(!_pageTabElement&&SUGAR.mySugar.currentDashlet&&$('#'+SUGAR.mySugar.currentDashlet.id).closest('.tab-pane').length>0){_pageTabElement=$('#'+SUGAR.mySugar.currentDashlet.id).closest('.tab-pane');}
ajaxStatus.showStatus(SUGAR.language.get('app_strings','LBL_LOADING'));if(url==null){url='index.php?action=DynamicAction&DynamicAction=displayDashlet&session_commit=1&module='+module+'&to_pdf=1&id='+dashlet_id;is_chart_dashlet=false;}
else if(url=='predefined_chart'){url='index.php?action=DynamicAction&DynamicAction=displayDashlet&session_commit=1&module='+module+'&to_pdf=1&id='+dashlet_id;scriptUrl='index.php?action=DynamicAction&DynamicAction=getPredefinedChartScript&session_commit=1&module='+module+'&to_pdf=1&id='+dashlet_id;is_chart_dashlet=true;}
if(typeof dynamic!=="undefined"){url+='&dynamic=true';}
SUGAR.mySugar.currentDashlet=document.getElementById('dashlet_entire_'+dashlet_id);$.when($.ajax({"method":"GET","url":url})).then(function(data,textStatus,jqXHR){ajaxStatus.hideStatus();dashletEntire=document.getElementById('dashlet_entire_'+dashlet_id);dd=new ygDDList('dashlet_'+dashlet_id);dd.setHandleElId('dashlet_header_'+dashlet_id);dd.dashletID=dashlet_id;ajaxStatus.showStatus(SUGAR.language.get('app_strings','LBL_ADDED_DASHLET'));dashletRegion=YAHOO.util.Dom.getRegion(dashletEntire);dashletEntire.style.position='relative';dashletEntire.style.height='1px';dashletEntire.style.top='0px';dashletEntire.className='dashletPanel';var anim=new YAHOO.util.Anim('dashlet_entire_'+dashlet_id,{height:{to:dashletRegion.bottom-dashletRegion.top}},.5);anim.onComplete.subscribe(function(){document.getElementById('dashlet_entire_'+dashlet_id).style.height='100%';});anim.animate();newLayout=SUGAR.mySugar.getLayout(true);SUGAR.mySugar.saveLayout(newLayout);retrievePage(activePage);});});return false;},retrieveCurrentPage:function(pageNum){if(typeof pageNum=='undefined'&&$('ul.nav.nav-tabs.nav-dashboard li.active a').length>0){var pageNum=parseInt($('ul.nav.nav-tabs.nav-dashboard li.active a').first().attr('id').substring(3));}
else{pageNum=0;}
retrievePage(pageNum);},showDashletsDialog:function(){columns=SUGAR.mySugar.getLayout();if(this.closeDashletsDialogTimer!=null){window.clearTimeout(this.closeDashletsDialogTimer);}
var num_dashlets=0;var i=0;for(i=0;i<3;i++){if(typeof columns[i]!="undefined"){num_dashlets=num_dashlets+columns[i].length;}}
if((num_dashlets)>=SUGAR.mySugar.maxCount){alert(SUGAR.language.get('app_strings','LBL_MAX_DASHLETS_REACHED'));return;}
ajaxStatus.showStatus(SUGAR.language.get('app_strings','LBL_LOADING'));var success=function(data){SUGAR.util.globalEval(data.responseText);if($('*[id=dashletsList]').length>1){dashletsListDiv=$('*[id=dashletsList].modal-body');}
else{dashletsListDiv=$('#dashletsList');}
dashletsListDiv.html(response['html']);$('#dashletsList').html(response['html']);document.getElementById('dashletsDialog_c').style.display='';SUGAR.mySugar.dashletsDialog.show();SUGAR.util.globalEval(response['script']);ajaxStatus.hideStatus();};var cObj=YAHOO.util.Connect.asyncRequest('GET','index.php?to_pdf=true&module='+module+'&action=DynamicAction&DynamicAction=dashletsDialog',{success:success,failure:success});return false;},closeDashletsDialog:function(){SUGAR.mySugar.dashletsDialog.hide();if(this.closeDashletsDialogTimer!=null){window.clearTimeout(this.closeDashletsDialogTimer);}
this.closeDashletsDialogTimer=window.setTimeout("document.getElementById('dashletsDialog_c').style.display = 'none';",2000);},toggleDashletCategories:function(category){document.getElementById('search_string').value='';document.getElementById('searchResults').innerHTML='';var moduleTab=document.getElementById('moduleCategory');var moduleTabAnchor=document.getElementById('moduleCategoryAnchor');var moduleListDiv=document.getElementById('moduleDashlets');var chartTab=document.getElementById('chartCategory');var chartTabAnchor=document.getElementById('chartCategoryAnchor');var chartListDiv=document.getElementById('chartDashlets');var toolsTab=document.getElementById('toolsCategory');var toolsTabAnchor=document.getElementById('toolsCategoryAnchor');var toolsListDiv=document.getElementById('toolsDashlets');var webTab=document.getElementById('webCategory');var webTabAnchor=document.getElementById('webCategoryAnchor');var webListDiv=document.getElementById('webDashlets');switch(category){case'module':moduleTab.className='active';moduleTabAnchor.className='current';moduleListDiv.style.display='';chartTab.className='';chartTabAnchor.className='';chartListDiv.style.display='none';toolsTab.className='';toolsTabAnchor.className='';toolsListDiv.style.display='none';webTab.className='';webTabAnchor.className='';webListDiv.style.display='none';break;case'chart':moduleTab.className='';moduleTabAnchor.className='';moduleListDiv.style.display='none';chartTab.className='active';chartTabAnchor.className='current';chartListDiv.style.display='';toolsTab.className='';toolsTabAnchor.className='';toolsListDiv.style.display='none';webTab.className='';webTabAnchor.className='';webListDiv.style.display='none';break;case'tools':moduleTab.className='';moduleTabAnchor.className='';moduleListDiv.style.display='none';chartTab.className='';chartTabAnchor.className='';chartListDiv.style.display='none';toolsTab.className='active';toolsTabAnchor.className='current';toolsListDiv.style.display='';webTab.className='';webTabAnchor.className='';webListDiv.style.display='none';break;case'web':moduleTab.className='';moduleTabAnchor.className='';moduleListDiv.style.display='none';chartTab.className='';chartTabAnchor.className='';chartListDiv.style.display='none';toolsTab.className='';toolsTabAnchor.className='';toolsListDiv.style.display='none';webTab.className='active';webTabAnchor.className='current';webListDiv.style.display='';break;default:break;}
document.getElementById('search_category').value=category;},searchDashlets:function(searchStr,searchCategory){var moduleTab=document.getElementById('moduleCategory');var moduleTabAnchor=document.getElementById('moduleCategoryAnchor');var moduleListDiv=document.getElementById('moduleDashlets');var chartTab=document.getElementById('chartCategory');var chartTabAnchor=document.getElementById('chartCategoryAnchor');var chartListDiv=document.getElementById('chartDashlets');var toolsTab=document.getElementById('toolsCategory');var toolsTabAnchor=document.getElementById('toolsCategoryAnchor');var toolsListDiv=document.getElementById('toolsDashlets');if(moduleTab!=null&&chartTab!=null&&toolsTab!=null){moduleListDiv.style.display='none';chartListDiv.style.display='none';toolsListDiv.style.display='none';}
else{chartListDiv.style.display='none';}
var searchResultsDiv=document.getElementById('searchResults');searchResultsDiv.style.display='';var success=function(data){SUGAR.util.globalEval(data.responseText);searchResultsDiv.innerHTML=response['html'];};var cObj=YAHOO.util.Connect.asyncRequest('GET','index.php?to_pdf=true&module='+module+'&action=DynamicAction&DynamicAction=searchDashlets&search='+searchStr+'&category='+searchCategory,{success:success,failure:success});return false;},collapseList:function(chartList){document.getElementById(chartList+'List').style.display='none';document.getElementById(chartList+'ExpCol').innerHTML='<a href="javascript:void(0)" onClick="javascript:SUGAR.mySugar.expandList(\''+chartList+'\');"><img border="0" src="'+SUGAR.themes.image_server+'index.php?entryPoint=getImage&themeName='+SUGAR.themes.theme_name+'&imageName=advanced_search.gif" align="absmiddle" />';},expandList:function(chartList){document.getElementById(chartList+'List').style.display='';document.getElementById(chartList+'ExpCol').innerHTML='<a href="javascript:void(0)" onClick="javascript:SUGAR.mySugar.collapseList(\''+chartList+'\');"><img border="0" src="'+SUGAR.themes.image_server+'index.php?entryPoint=getImage&themeName='+SUGAR.themes.theme_name+'&imageName=basic_search.gif" align="absmiddle" />';},collapseReportList:function(reportChartList){document.getElementById(reportChartList+'ReportsChartDashletsList').style.display='none';document.getElementById(reportChartList+'ExpCol').innerHTML='<a href="javascript:void(0)" onClick="javascript:SUGAR.mySugar.expandReportList(\''+reportChartList+'\');"><img border="0" src="'+SUGAR.themes.image_server+'index.php?entryPoint=getImage&themeName='+SUGAR.themes.theme_name+'&imageName=ProjectPlus.gif" align="absmiddle" />';},expandReportList:function(reportChartList){document.getElementById(reportChartList+'ReportsChartDashletsList').style.display='';document.getElementById(reportChartList+'ExpCol').innerHTML='<a href="javascript:void(0)" onClick="javascript:SUGAR.mySugar.collapseReportList(\''+reportChartList+'\');"><img border="0" src="'+SUGAR.themes.image_server+'index.php?entryPoint=getImage&themeName='+SUGAR.themes.theme_name+'&imageName=ProjectMinus.gif" align="absmiddle" />';},clearSearch:function(){document.getElementById('search_string').value='';var moduleTab=document.getElementById('moduleCategory');var moduleTabAnchor=document.getElementById('moduleCategoryAnchor');var moduleListDiv=document.getElementById('moduleDashlets');document.getElementById('searchResults').innerHTML='';if(moduleTab!=null){SUGAR.mySugar.toggleDashletCategories('module');}
else{document.getElementById('searchResults').style.display='none';document.getElementById('chartDashlets').style.display='';}},doneAddDashlets:function(){SUGAR.mySugar.dashletsDialog.hide();return false;},refreshPageForAnalytics:function(){window.location.reload();return false;},renderDashletsDialog:function(){var minHeight=120;var maxHeight=520;var minMargin=16;var pageHeight=document.documentElement.clientHeight;var height=Math.min(maxHeight,pageHeight-minMargin*2);height=Math.max(height,minHeight);SUGAR.mySugar.dashletsDialog=new YAHOO.widget.Dialog("dashletsDialog",{width:"480px",height:height+"px",fixedcenter:true,draggable:false,visible:false,modal:true,close:false});var listeners=new YAHOO.util.KeyListener(document,{keys:27},{fn:function(){SUGAR.mySugar.closeDashletsDialog();}});SUGAR.mySugar.dashletsDialog.cfg.queueProperty("keylisteners",listeners);document.getElementById('dashletsDialog').style.display='';SUGAR.mySugar.dashletsDialog.render();document.getElementById('dashletsDialog_c').style.display='none';}};}();};