Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also compare across forks.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also compare across forks.
base fork: sugarcrm/sugarcrm_dev
base: 53ac628feb
...
head fork: sugarcrm/sugarcrm_dev
compare: f6ed54c0e6
  • 3 commits
  • 85 files changed
  • 0 commit comments
  • 1 contributor
Showing with 2,542 additions and 581 deletions.
  1. +66 −16 ModuleInstall/ModuleScanner.php
  2. +4 −1 cache/include/javascript/sugar_grp1.js
  3. +3 −3 cache/include/javascript/sugar_grp_emails.js
  4. +1 −15 cache/include/javascript/sugar_grp_jsolait.js
  5. +3 −3 cache/include/javascript/sugar_grp_quickcomp.js
  6. +1 −1  data/Link2.php
  7. +20 −4 data/Relationships/SugarRelationship.php
  8. +69 −19 data/SugarBean.php
  9. +65 −64 files.md5
  10. +2 −2 include/DetailView/header.tpl
  11. +1 −1  include/EditView/EditView.tpl
  12. +0 −1  include/HTMLPurifier/HTMLPurifier.standalone.php
  13. +1 −1  include/MVC/View/views/view.importvcard.php
  14. +1 −1  include/MVC/View/views/view.importvcardsave.php
  15. +1 −1  include/MVC/View/views/view.popup.php
  16. +20 −21 include/Smarty/Smarty_Compiler.class.php
  17. +1 −0  include/Smarty/plugins/function.sugar_button.php
  18. +25 −8 include/SugarCharts/SugarChart.php
  19. +58 −29 include/SugarEmailAddress/SugarEmailAddress.php
  20. +18 −0 include/SugarLogger/LoggerManager.php
  21. +13 −3 include/SugarTheme/SugarTheme.php
  22. +3 −2 include/clean.php
  23. +16 −8 include/database/MssqlManager.php
  24. +52 −39 include/generic/SugarWidgets/SugarWidgetFieldcurrency.php
  25. +121 −0 include/generic/SugarWidgets/SugarWidgetFieldcurrency_id.php
  26. +6 −2 include/generic/SugarWidgets/SugarWidgetReportField.php
  27. +1 −1  include/generic/SugarWidgets/SugarWidgetSubPanelIcon.php
  28. +1 −1  include/globalControlLinks.php
  29. +4 −1 include/javascript/sugar_3.js
  30. +1 −2  include/utils.php
  31. +11 −1 jssource/src_files/include/javascript/sugar_3.js
  32. +0 −64 jssource/src_files/modules/Meetings/jsclass_scheduler.js
  33. +10 −9 modules/ACLActions/ACLAction.php
  34. +11 −3 modules/Activities/EmailReminder.php
  35. +1 −7 modules/Administration/Locale.php
  36. +8 −2 modules/Administration/UpgradeWizard.php
  37. +1 −0  modules/Administration/UpgradeWizardCommon.php
  38. +3 −2 modules/Administration/UpgradeWizard_prepare.php
  39. +2 −1  modules/Administration/language/en_us.lang.php
  40. +2 −2 modules/Calendar/tpls/main.tpl
  41. +6 −1 modules/Calls/CallFormBase.php
  42. +0 −1  modules/Calls/language/en_us.lang.php
  43. +1 −7 modules/Calls/metadata/editviewdefs.php
  44. +0 −11 modules/Calls/vardefs.php
  45. +9 −3 modules/Emails/EmailUI.php
  46. +1 −1  modules/Emails/javascript/EmailUICompose.js
  47. +2 −2 modules/Emails/javascript/ajax.js
  48. +1 −1  modules/Emails/javascript/composeEmailTemplate.js
  49. +12 −0 modules/Import/ImportDuplicateCheck.php
  50. +1 −1  modules/InboundEmail/InboundEmail.php
  51. +17 −10 modules/Leads/tpls/ConvertLead.tpl
  52. +21 −0 modules/Leads/views/view.convertlead.php
  53. +11 −8 modules/Meetings/Meeting.php
  54. +6 −0 modules/Meetings/MeetingFormBase.php
  55. +1 −15 modules/Meetings/jsclass_scheduler.js
  56. +0 −1  modules/Meetings/language/en_us.lang.php
  57. +7 −10 modules/Meetings/metadata/editviewdefs.php
  58. +0 −11 modules/Meetings/vardefs.php
  59. +94 −20 modules/ModuleBuilder/MB/MBPackage.php
  60. +10 −2 modules/ProjectTask/views/view.list.php
  61. +9 −2 modules/SchedulersJobs/SchedulersJob.php
  62. +12 −9 modules/Tasks/Task.php
  63. +16 −9 modules/Users/User.php
  64. +4 −4 sugar_version.php
  65. +23 −0 tests/ModuleInstall/ModuleScannerTest.php
  66. +1 −0  tests/SugarTestHelper.php
  67. +9 −4 tests/SugarTestOpportunityUtilities.php
  68. +183 −0 tests/SugarTestSugarEmailAddressUtilities.php
  69. +139 −0 tests/data/Bug56652Test.php
  70. +151 −0 tests/data/Relationships/Bug56904Test.php
  71. +82 −1 tests/data/SugarBeanTest.php
  72. +136 −70 tests/include/SugarCharts/Bug44696Test.php
  73. +150 −0 tests/include/SugarEmailAddress/SugarEmailAddressAddChangeTest.php
  74. +27 −11 tests/include/SugarLogger/SugarLoggerTest.php
  75. +207 −0 tests/include/generic/SugarWidgets/Bug51568Test.php
  76. +136 −0 tests/include/generic/SugarWidgets/Bug57902Test.php
  77. +119 −0 tests/modules/Import/Bug51264Test.php
  78. +4 −3 tests/modules/Import/ImportCacheFilesTest.php
  79. +2 −1  tests/modules/Import/ImportDuplicateCheckTest.php
  80. +96 −0 tests/modules/InboundEmail/AttachmentHeaderTest.php
  81. +86 −0 tests/modules/Meetings/Bug53516Test.php
  82. +76 −20 tests/modules/ModuleBuilder/Bug45339Test.php
  83. +45 −0 tests/modules/SNIP/Bug53942Test.ics
  84. +1 −1  tests/modules/SchedulersJobs/RunnableSchedulersJobsTest.php
  85. +1 −0  themes/Sugar5/tpls/_head.tpl
View
82 ModuleInstall/ModuleScanner.php
@@ -56,6 +56,13 @@ class ModuleScanner{
);
+ /**
+ * config settings
+ * @var array
+ */
+ private $config = array();
+ private $config_hash;
+
private $blackListExempt = array();
private $classBlackListExempt = array();
@@ -392,20 +399,24 @@ public function printToWiki(){
}
public function __construct(){
- if(!empty($GLOBALS['sugar_config']['moduleInstaller']['blackListExempt'])){
- $this->blackListExempt = array_merge($this->blackListExempt, $GLOBALS['sugar_config']['moduleInstaller']['blackListExempt']);
+ if(!empty($GLOBALS['sugar_config']['moduleInstaller'])) {
+ $this->config = $GLOBALS['sugar_config']['moduleInstaller'];
+ }
+
+ if(!empty($this->config['blackListExempt'])){
+ $this->blackListExempt = array_merge($this->blackListExempt, $this->config['blackListExempt']);
}
- if(!empty($GLOBALS['sugar_config']['moduleInstaller']['blackList'])){
- $this->blackList = array_merge($this->blackList, $GLOBALS['sugar_config']['moduleInstaller']['blackList']);
+ if(!empty($this->config['blackList'])){
+ $this->blackList = array_merge($this->blackList, $this->config['blackList']);
}
- if(!empty($GLOBALS['sugar_config']['moduleInstaller']['classBlackListExempt'])){
- $this->classBlackListExempt = array_merge($this->classBlackListExempt, $GLOBALS['sugar_config']['moduleInstaller']['classBlackListExempt']);
+ if(!empty($this->config['classBlackListExempt'])){
+ $this->classBlackListExempt = array_merge($this->classBlackListExempt, $this->config['classBlackListExempt']);
}
- if(!empty($GLOBALS['sugar_config']['moduleInstaller']['classBlackList'])){
- $this->classBlackList = array_merge($this->classBlackList, $GLOBALS['sugar_config']['moduleInstaller']['classBlackList']);
+ if(!empty($this->config['classBlackList'])){
+ $this->classBlackList = array_merge($this->classBlackList, $this->config['classBlackList']);
}
- if(!empty($GLOBALS['sugar_config']['moduleInstaller']['validExt'])){
- $this->validExt = array_merge($this->validExt, $GLOBALS['sugar_config']['moduleInstaller']['validExt']);
+ if(!empty($this->config['validExt'])){
+ $this->validExt = array_merge($this->validExt, $this->config['validExt']);
}
}
@@ -596,12 +607,16 @@ public function scanManifest($manifestPath){
if(!empty($fileIssues)){
return $fileIssues;
}
- include($manifestPath);
-
+ $this->lockConfig();
+ list($manifest, $installdefs) = MSLoadManifest($manifestPath);
+ $fileIssues = $this->checkConfig($manifestPath);
+ if(!empty($fileIssues)){
+ return $fileIssues;
+ }
//scan for disabled actions
- if(isset($GLOBALS['sugar_config']['moduleInstaller']['disableActions'])){
- foreach($GLOBALS['sugar_config']['moduleInstaller']['disableActions'] as $action){
+ if(isset($this->config['disableActions'])){
+ foreach($this->config['disableActions'] as $action){
if(isset($installdefs[$this->manifestMap[$action]])){
$issues[] = translate('ML_INVALID_ACTION_IN_MANIFEST') . $this->manifestMap[$action];
}
@@ -609,7 +624,7 @@ public function scanManifest($manifestPath){
}
//now lets scan for files that will override our files
- if(empty($GLOBALS['sugar_config']['moduleInstaller']['disableRestrictedCopy']) && isset($installdefs['copy'])){
+ if(empty($this->config['disableRestrictedCopy']) && isset($installdefs['copy'])){
foreach($installdefs['copy'] as $copy){
$from = str_replace('<basepath>', $this->pathToModule, $copy['from']);
$to = $copy['to'];
@@ -683,7 +698,7 @@ function scanCopy($from, $to){
public function scanPackage($path){
$this->pathToModule = $path;
$this->scanManifest($path . '/manifest.php');
- if(empty($GLOBALS['sugar_config']['moduleInstaller']['disableFileScan'])){
+ if(empty($this->config['disableFileScan'])){
$this->scanDir($path);
}
}
@@ -719,8 +734,43 @@ public function displayIssues($package='Package'){
}
+ /**
+ * Lock config settings
+ */
+ public function lockConfig()
+ {
+ if(empty($this->config_hash)) {
+ $this->config_hash = md5(serialize($GLOBALS['sugar_config']));
+ }
+ }
+
+ /**
+ * Check if config was modified. Return
+ * @param string $file
+ * @return array Errors if something wrong, false if no problems
+ */
+ public function checkConfig($file)
+ {
+ $config_hash_after = md5(serialize($GLOBALS['sugar_config']));
+ if($config_hash_after != $this->config_hash) {
+ $this->issues['file'][$file] = array(translate('ML_CONFIG_OVERRIDE'));
+ return $this->issues;
+ }
+ return false;
+ }
}
+/**
+ * Load manifest file
+ * Outside of the class to isolate the context
+ * @param string $manifest_file
+ * @return array
+ */
+function MSLoadManifest($manifest_file)
+{
+ include( $manifest_file );
+ return array($manifest, $installdefs);
+}
?>
View
5 cache/include/javascript/sugar_grp1.js
@@ -433,7 +433,10 @@ try{if(result[1].indexOf("src=")>-1){var srcRegex=/.*src=['"]([a-zA-Z0-9_\-\&\/\
{var url=srcResult;Y.Get.script(srcResult,{autopurge:false,onSuccess:function(o){},onFailure:function(o){},onTimeout:function(o){}});});}
else
{YUI().use("io-base",function(Y){var cfg,response;cfg={method:'GET',sync:true,on:{success:function(transactionid,response,arguments)
-{SUGAR.util.globalEval(response.responseText);}}};response=Y.io(srcResult,cfg);});}}else{SUGAR.util.globalEval(result[2]);}}
+{SUGAR.util.globalEval(response.responseText);}}};response=Y.io(srcResult,cfg);});}}else{var srcRegex=/<!--([\s\S]*?)-->/;var srcResult=srcRegex.exec(result[2]);if(srcResult&&srcResult.index>-1)
+{SUGAR.util.globalEval(srcResult[1]);}
+else
+{SUGAR.util.globalEval(result[2]);}}}
catch(e){if(typeof(console)!="undefined"&&typeof(console.log)=="function")
{console.log("error adding script");console.log(e);console.log(result);}}
result=objRegex.exec(text);}},getLeftColObj:function(){leftColObj=document.getElementById('leftCol');while(leftColObj.nodeName!='TABLE'){leftColObj=leftColObj.firstChild;}
View
6 cache/include/javascript/sugar_grp_emails.js
@@ -817,7 +817,7 @@ var sigs=document.getElementById('signatures'+idx);SE.util.emptySelectOptions(si
sigs.options.add(opt);}
var htmlEmail=document.getElementById('setEditor'+idx);if(SE.userPrefs.emailSettings.sendPlainText==1){htmlEmail.checked=true;}else{htmlEmail.checked=false;}
SE.tinyInstances[SE.tinyInstances.currentHtmleditor].ready=true;},replyForwardEmailStage2:function(){SE.util.clearHiddenFieldValues('emailUIForm');SUGAR.showMessageBox(app_strings.LBL_EMAIL_RETRIEVING_MESSAGE,app_strings.LBL_EMAIL_ONE_MOMENT);var ieId=SE.composeLayout.replyForwardObj.ieId;var uid=SE.composeLayout.replyForwardObj.uid;var mbox=SE.composeLayout.replyForwardObj.mbox;var type=SE.composeLayout.replyForwardObj.type;var idx=SE.composeLayout.currentInstanceId;var sugarEmail=(SE.composeLayout.replyForwardObj.sugarEmail)?'&sugarEmail=true':"";document.getElementById('emailSubject'+idx).value=type;document.getElementById('emailUIAction').value='composeEmail';document.getElementById('composeType').value=type;document.getElementById('ieId').value=ieId;document.getElementById('uid').value=uid;document.getElementById('mbox').value=mbox;document.getElementById('setEditor'+idx).checked=SE.userPrefs.emailSettings.sendPlainText==1?true:false;var formObject=document.getElementById('emailUIForm');YAHOO.util.Connect.setForm(formObject);var sendType=type;AjaxObject.startRequest(callbackReplyForward,urlStandard+"&composeType="+type+sugarEmail);},showHiddenAddress:function(addrType,idx){Dom.removeClass(addrType+"_tr"+idx,"yui-hidden");Dom.addClass(addrType+"_span"+idx,"yui-hidden");Dom.addClass("bcc_cc_sep"+idx,"yui-hidden");this[addrType+'Hidden'+idx]=false;Dom.insertAfter("add_addr_options_tr"+idx,'bcc_tr'+idx);if((typeof(this['ccHidden'+idx])!='undefined'&&typeof(this['bccHidden'+idx])!='undefined')&&(this['ccHidden'+idx]==false&&this['bccHidden'+idx]==false))
-Dom.addClass("add_addr_options_tr"+idx,"yui-hidden");},hideHiddenAddresses:function(idx){var addrTypes=['cc','bcc'];for(var i=0;i<addrTypes.length;i++)
+Dom.addClass("add_addr_options_tr"+idx,"yui-hidden");SE.composeLayout.resizeEditor(idx);},hideHiddenAddresses:function(idx){var addrTypes=['cc','bcc'];for(var i=0;i<addrTypes.length;i++)
{Dom.addClass(addrTypes[i]+"_tr"+idx,"yui-hidden");Dom.removeClass(addrTypes[i]+"_span"+idx,"yui-hidden");this[addrTypes[i]+'Hidden'+idx]=true}
Dom.removeClass("bcc_cc_sep"+idx,"yui-hidden");Dom.removeClass("add_addr_options_tr"+idx,"yui-hidden");Dom.insertBefore("add_addr_options_tr"+idx,'bcc_tr'+idx);}};SE.util={cleanUids:function(str){var seen=new Object();var clean="";var arr=new String(str).split(",");for(var i=0;i<arr.length;i++){if(seen[arr[i]]){continue;}
clean+=(clean!="")?",":"";clean+=arr[i];seen[arr[i]]=true;}
@@ -871,7 +871,7 @@ var out=displayTemplate.exec({'app_strings':app_strings,'theme':theme,'idx':'Pre
SED.viewDialog.setHeader(ret.title);SED.viewDialog.setBody(ret.html);SED.viewDialog.render();SED.viewDialog.show();},showQuickCreateForm:function(o){var SED=SUGAR.email2.detailView;var ret=YAHOO.lang.JSON.parse(o.responseText);if(!SED.quickCreateDialog){SED.quickCreateDialog=new YAHOO.widget.Dialog("quickCreateForEmail",{modal:true,visible:true,fixedcenter:true,constraintoviewport:true,shadow:true});SED.quickCreateDialog.renderEvent.subscribe(function(){var viewH=YAHOO.util.Dom.getViewportHeight();var contH=0;for(var i in this.body.childNodes){if(this.body.childNodes[i].clientHeight){contH+=this.body.childNodes[i].clientHeight;}else if(this.body.childNodes[i].offsetHeight){contH+=this.body.childNodes[i].offsetHeight;}}
this.body.style.width="800px";this.body.style.height=(viewH-75>contH?(contH+10):(viewH-75))+"px";this.body.style.overflow="auto";},SED.quickCreateDialog);SED.quickCreateDialog.hideEvent.subscribe(function(){var qsFields=YAHOO.util.Dom.getElementsByClassName('.sqsEnabled',null,this.body);});SED.quickCreateDialog.setHeader(app_strings.LBL_EMAIL_QUICK_CREATE);}
if(ret.html){ret.html=ret.html.replace('<script type="text/javascript" src="include/SugarEmailAddress/SugarEmailAddress.js"></script>',"");}
-SED.quickCreateDialog.setBody(ret.html?ret.html:"&nbsp;");SED.quickCreateDialog.render();SUGAR.util.evalScript(ret.html+'<script language="javascript">enableQS(true);</script>');SED.quickCreateDialog.ieId=ret.ieId;SED.quickCreateDialog.uid=ret.uid;SED.quickCreateDialog.mbox=ret.mbox;SED.quickCreateDialog.qcmodule=ret.module;SED.quickCreateDialog.show();var editForm=document.getElementById('form_EmailQCView_'+ret.module);if(editForm){editForm.module.value='Emails';var count=SUGAR.EmailAddressWidget.count[ret.module]?SUGAR.EmailAddressWidget.count[ret.module]:0;var tableId=YAHOO.util.Dom.getElementsByClassName('emailaddresses','table',editForm)[0];tableId=tableId?tableId.id:tableId;var instId=ret.module+count;SED.quickCreateEmailsToAdd=ret.emailAddress;SED.quickCreateEmailCallback=function(instId,tableId){if(tableId){var eaw=new SUGAR.EmailAddressWidget.instances[instId];if(eaw){eaw.prefillEmailAddresses(tableId,SUGAR.email2.detailView.quickCreateEmailsToAdd);}else{window.setTimeout(function(){SUGAR.email2.detailView.quickCreateEmailCallback(instId,tableId);},100);}}}
+SED.quickCreateDialog.setBody(ret.html?ret.html:"&nbsp;");SED.quickCreateDialog.render();SUGAR.util.evalScript(ret.html+'<script language="javascript">enableQS(true);</script>');SED.quickCreateDialog.ieId=ret.ieId;SED.quickCreateDialog.uid=ret.uid;SED.quickCreateDialog.mbox=ret.mbox;SED.quickCreateDialog.qcmodule=ret.module;SED.quickCreateDialog.show();var editForm=document.getElementById('form_EmailQCView_'+ret.module);if(editForm){editForm.module.value='Emails';var count=SUGAR.EmailAddressWidget.count[ret.module]?SUGAR.EmailAddressWidget.count[ret.module]:0;var tableId=YAHOO.util.Dom.getElementsByClassName('emailaddresses','table',editForm)[0];tableId=tableId?tableId.id:tableId;var instId=ret.module+(count-1);SED.quickCreateEmailsToAdd=ret.emailAddress;SED.quickCreateEmailCallback=function(instId,tableId){if(tableId){var eaw=SUGAR.EmailAddressWidget.instances[instId];if(eaw){eaw.prefillEmailAddresses(tableId,SUGAR.email2.detailView.quickCreateEmailsToAdd);}else{window.setTimeout(function(){SUGAR.email2.detailView.quickCreateEmailCallback(instId,tableId);},100);}}}
window.setTimeout(function(){SUGAR.email2.detailView.quickCreateEmailCallback(instId,tableId);},100);}},saveQuickCreateForm:function(o){SUGAR.hideMessageBox();SUGAR.email2.detailView.quickCreateDialog.hide();validate['EditView']=[];},saveQuickCreateFormAndReply:function(o){SUGAR.hideMessageBox();var ret=YAHOO.lang.JSON.parse(o.responseText);SUGAR.email2.detailView.quickCreateDialog.hide();var qcd=SUGAR.email2.detailView.quickCreateDialog;var type=(qcd.qcmodule=='Cases')?'replyCase':'reply';if(ret){var emailID=ret.id;SUGAR.email2.composeLayout.c0_replyForwardEmail(null,ret.id,'sugar::Emails',type);}else{SUGAR.email2.composeLayout.c0_replyForwardEmail(qcd.ieId,qcd.uid,qcd.mbox,type);}
validate['EditView']=[];},saveQuickCreateFormAndAddToAddressBook:function(o){SUGAR.hideMessageBox();SUGAR.email2.detailView.quickCreateDialog.hide();SUGAR.email2.complexLayout.findPanel('contactsTab').show();validate['EditView']=[];},handleAssignmentDialogAssignAction:function(){var assign_user_id=window.document.forms['Distribute'].elements['assigned_user_id'].value;var dist='direct';var users=false;var rules=false;var get="";var found_teams=false;var warning_message=mod_strings.LBL_WARN_NO_USERS;if(!found_teams&&assign_user_id=='')
{alert(warning_message);return;}
@@ -1005,7 +1005,7 @@ QSProcessedFieldsArray[fullFieldName]=false;if(Dom.get(resultName))
var myBufferedListenerObject=new Object();myBufferedListenerObject.refit=function(){if(SUGAR.email2.grid){SUGAR.email2.grid.autoSize();}}/* End of File modules/Emails/javascript/complexLayout.js */
-SUGAR.email2.templates['compose']='<div id="composeLayout{idx}" class="ylayout-inactive-content"></div>'+'<div id="composeOverFrame{idx}" style="height:100%;width:100%">'+' <form id="emailCompose{idx}" name="ComposeEditView{idx}" action="index.php" method="POST">'+' <input type="hidden" id="email_id{idx}" name="email_id" value="">'+' <input type="hidden" id="uid{idx}" name="uid" value="">'+' <input type="hidden" id="ieId{idx}" name="ieId" value="">'+' <input type="hidden" id="mbox{idx}" name="mbox" value="">'+' <input type="hidden" id="type{idx}" name="type" value="">'+' <input type="hidden" id="composeLayoutId" name="composeLayoutId" value="shouldNotSeeMe">'+' <input type="hidden" id="composeType" name="composeType">'+' <input type="hidden" id="fromAccount" name="fromAccount">'+' <input type="hidden" id="sendSubject" name="sendSubject">'+' <input type="hidden" id="sendDescription" name="sendDescription">'+' <input type="hidden" id="sendTo" name="sendTo">'+' <input type="hidden" id="sendBcc" name="sendBcc">'+' <input type="hidden" id="sendCc" name="sendCc">'+' <input type="hidden" id="setEditor" name="setEditor">'+' <input type="hidden" id="saveToSugar" name="saveToSugar">'+' <input type="hidden" id="parent_id" name="parent_id">'+' <input type="hidden" id="parent_type" name="parent_type">'+' <input type="hidden" id="attachments" name="attachments">'+' <input type="hidden" id="documents" name="documents">'+' <input type="hidden" id="outbound_email{idx}" name="outbound_email">'+' <input type="hidden" id="templateAttachments" name="templateAttachments">'+' <input type="hidden" id="templateAttachmentsRemove{idx}" name="templateAttachmentsRemove">'+' <table id="composeHeaderTable{idx}" cellpadding="0" cellspacing="0" border="0" width="100%" class="list">'+' <tr>'+' <th><table cellpadding="0" cellspacing="0" border="0"><tbody><tr ><td style="padding: 0px !important;margin:0px; !important" >'+' <button type="button" class="button" onclick="SUGAR.email2.composeLayout.sendEmail({idx}, false);"><img src="index.php?entryPoint=getImage&themeName='+SUGAR.themes.theme_name+'&imageName=icon_email_send.gif" align="absmiddle" border="0"> {app_strings.LBL_EMAIL_SEND}</button>'+' <button type="button" class="button" onclick="SUGAR.email2.composeLayout.saveDraft({idx}, false);"><img src="index.php?entryPoint=getImage&themeName='+SUGAR.themes.theme_name+'&imageName=icon_email_save.gif" align="absmiddle" border="0"> {app_strings.LBL_EMAIL_SAVE_DRAFT}</button>'+' <button type="button" class="button" onclick="SUGAR.email2.composeLayout.showAttachmentPanel({idx}, false);"><img src="index.php?entryPoint=getImage&themeName='+SUGAR.themes.theme_name+'&imageName=icon_email_attach.gif" align="absmiddle" border="0"> {app_strings.LBL_EMAIL_ATTACHMENT}</button>'+' <button type="button" class="button" onclick="SUGAR.email2.composeLayout.showOptionsPanel({idx}, false);"><img src="index.php?entryPoint=getImage&themeName='+SUGAR.themes.theme_name+'&imageName=icon_email_options.gif" align="absmiddle" border="0"> {app_strings.LBL_EMAIL_OPTIONS}</button>'+'</td><td style="padding: 0px !important;margin:0px; !important">&nbsp;&nbsp;{mod_strings.LBL_EMAIL_RELATE}:&nbsp;&nbsp;<select class="select" id="data_parent_type{idx}" onchange="document.getElementById(\'data_parent_name{idx}\').value=\'\';document.getElementById(\'data_parent_id{idx}\').value=\'\'; SUGAR.email2.composeLayout.enableQuickSearchRelate(\'{idx}\');" name="data_parent_type{idx}">{linkbeans_options}</select>'+'&nbsp;</td><td style="padding: 0px !important;margin:0px; !important"><input id="data_parent_id{idx}" name="data_parent_id{idx}" type="hidden" value="">'+'<input class="sqsEnabled" id="data_parent_name{idx}" name="data_parent_name{idx}" type="text" value="">&nbsp;<button type="button" class="button" onclick="SUGAR.email2.composeLayout.callopenpopupForEmail2({idx});"><img src="index.php?entryPoint=getImage&themeName=default&imageName=id-ff-select.png" align="absmiddle" border="0"></button>'+' </td></tr></tbody></table></th>'+' </tr>'+' <tr>'+' <td>'+' <div style="margin:5px;">'+' <table cellpadding="4" cellspacing="0" border="0" width="100%">'+' <tr>'+' <td class="emailUILabel" NOWRAP >'+' <label for="addressFrom{idx}">{app_strings.LBL_EMAIL_FROM}:</label>'+' </td>'+' <td class="emailUIField" NOWRAP>'+' <div>'+' &nbsp;&nbsp;<select style="width: 500px;" class="ac_input" id="addressFrom{idx}" name="addressFrom{idx}"></select>'+' </div>'+' </td>'+' </tr>'+' <tr>'+' <td class="emailUILabel" NOWRAP>'+' <button class="button" type="button" onclick="SUGAR.email2.addressBook.selectContactsDialogue(\'addressTO{idx}\')">'+' {app_strings.LBL_EMAIL_TO}:'+' </button>'+' </td>'+' <td class="emailUIField" NOWRAP>'+' <div class="ac_autocomplete">'+' &nbsp;&nbsp;<input class="ac_input" type="text" size="96" id="addressTO{idx}" title="{app_strings.LBL_EMAIL_TO}" name="addressTO{idx}" onkeyup="SE.composeLayout.showAddressDetails(this);">'+' <span class="rolloverEmail"> <a id="MoreaddressTO{idx}" href="#" style="display: none;">+<span id="DetailaddressTO{idx}">&nbsp;</span></a> </span>'+' <div class="ac_container" id="addressToAC{idx}"></div>'+' </div>'+' </td>'+' </tr>'+' <tr id="add_addr_options_tr{idx}">'+' <td class="emailUILabel" NOWRAP>&nbsp;</td><td class="emailUIField" valign="top" NOWRAP>&nbsp;&nbsp;<span id="cc_span{idx}"><a href="#" onclick="SE.composeLayout.showHiddenAddress(\'cc\',\'{idx}\');">{mod_strings.LBL_ADD_CC}</a></span><span id="bcc_cc_sep{idx}">&nbsp;{mod_strings.LBL_ADD_CC_BCC_SEP}&nbsp;</span><span id="bcc_span{idx}"><a href="#" onclick="SE.composeLayout.showHiddenAddress(\'bcc\',\'{idx}\');">{mod_strings.LBL_ADD_BCC}</a></span></td>'+' </tr>'+' <tr class="yui-hidden" id="cc_tr{idx}">'+' <td class="emailUILabel" NOWRAP>'+' <button class="button" type="button" onclick="SUGAR.email2.addressBook.selectContactsDialogue(\'addressCC{idx}\')">'+' {app_strings.LBL_EMAIL_CC}:'+' </button>'+' </td>'+' <td class="emailUIField" NOWRAP>'+' <div class="ac_autocomplete">'+' &nbsp;&nbsp;<input class="ac_input" type="text" size="96" id="addressCC{idx}" name="addressCC{idx}" title="{app_strings.LBL_EMAIL_CC}" onkeyup="SE.composeLayout.showAddressDetails(this);">'+' <span class="rolloverEmail"> <a id="MoreaddressCC{idx}" href="#" style="display: none;">+<span id="DetailaddressCC{idx}">&nbsp;</span></a> </span>'+' <div class="ac_container" id="addressCcAC{idx}"></div>'+' </div>'+' </td>'+' </tr>'+' <tr class="yui-hidden" id="bcc_tr{idx}">'+' <td class="emailUILabel" NOWRAP>'+' <button class="button" type="button" onclick="SUGAR.email2.addressBook.selectContactsDialogue(\'addressBCC{idx}\')">'+' {app_strings.LBL_EMAIL_BCC}:'+' </button>'+' </td>'+' <td class="emailUIField" NOWRAP>'+' <div class="ac_autocomplete">'+' &nbsp;&nbsp;<input class="ac_input" type="text" size="96" id="addressBCC{idx}" name="addressBCC{idx}" title="{app_strings.LBL_EMAIL_BCC}" onkeyup="SE.composeLayout.showAddressDetails(this);">'+' <span class="rolloverEmail"> <a id="MoreaddressBCC{idx}" href="#" style="display: none;">+<span id="DetailaddressBCC{idx}">&nbsp;</span></a> </span>'+' <div class="ac_container" id="addressBccAC{idx}"></div>'+' </div>'+' </td>'+' </tr>'+' <tr>'+' <td class="emailUILabel" NOWRAP width="1%">'+' <label for="emailSubject{idx}">{app_strings.LBL_EMAIL_SUBJECT}:</label>'+' </td>'+' <td class="emailUIField" NOWRAP width="99%">'+' <div class="ac_autocomplete">'+' &nbsp;&nbsp;<input class="ac_input" type="text" size="96" id="emailSubject{idx}" name="subject{idx}" value="" maxlength="'+SUGAR.email2.composeLayout.subjectMaxlen+'">'+' </div>'+' </td>'+' </tr>'+' </table>'+' </div>'+' </td>'+' </tr>'+' </table>'+' <textarea id="htmleditor{idx}" name="htmleditor{idx}" style="width:100%; height: 100px;"></textarea>'+' <div id="divAttachments{idx}" class="ylayout-inactive-content">'+' <div style="padding:5px;">'+' <table cellpadding="2" cellspacing="0" border="0">'+' <tr>'+' <th>'+' <b>{app_strings.LBL_EMAIL_ATTACHMENTS}</b>'+' <br />'+' &nbsp;'+' </th>'+' </tr>'+' <tr>'+' <td>'+' <input type="button" name="add_file_button" onclick="SUGAR.email2.composeLayout.addFileField();" value="{mod_strings.LBL_ADD_FILE}" class="button" />'+' <div id="addedFiles{idx}" name="addedFiles{idx}"></div>'+' </td>'+' </tr>'+' <tr>'+' <td>'+' &nbsp;'+' <br />'+' &nbsp;'+' </td>'+' </tr>'+' <tr>'+' <th>'+' <b>{app_strings.LBL_EMAIL_ATTACHMENTS2}</b>'+' <br />'+' &nbsp;'+' </th>'+' </tr>'+' <tr>'+' <td>'+' <input type="button" name="add_document_button" onclick="SUGAR.email2.composeLayout.addDocumentField({idx});" value="{mod_strings.LBL_ADD_DOCUMENT}" class="button" />'+' <div id="addedDocuments{idx}"></div>'+' </td>'+' </tr>'+' <tr>'+' <td>'+' &nbsp;'+' <br />'+' &nbsp;'+' </td>'+' </tr>'+' <tr>'+' <th>'+' <div id="templateAttachmentsTitle{idx}" style="display:none"><b>{app_strings.LBL_EMAIL_ATTACHMENTS3}</b></div>'+' <br />'+' &nbsp;'+' </th>'+' </tr>'+' <tr>'+' <td>'+' <div id="addedTemplateAttachments{idx}"></div>'+' </td>'+' </tr>'+' </table>'+' </div>'+' </div>'+' </form>'+' <div id="divOptions{idx}" class="ylayout-inactive-content"'+' <div style="padding:5px;">'+' <form name="composeOptionsForm{idx}" id="composeOptionsForm{idx}">'+' <table border="0" width="100%">'+' <tr>'+' <td NOWRAP style="padding:2px;">'+' <b>{app_strings.LBL_EMAIL_TEMPLATES}:</b>'+' </td>'+' </tr>'+' <tr>'+' <td NOWRAP style="padding:2px;">'+' <select name="email_template{idx}" id="email_template{idx}" onchange="SUGAR.email2.composeLayout.applyEmailTemplate(\'{idx}\', this.options[this.selectedIndex].value);"></select>'+' </td>'+' </tr>'+' </table>'+' <br />'+' <table border="0" width="100%">'+' <tr>'+' <td NOWRAP style="padding:2px;">'+' <b>{app_strings.LBL_EMAIL_SIGNATURES}:</b>'+' </td>'+' </tr>'+' <tr>'+' <td NOWRAP style="padding:2px;">'+' <select name="signatures{idx}" id="signatures{idx}" onchange="SUGAR.email2.composeLayout.setSignature(\'{idx}\');"></select>'+' </td>'+' </tr>'+' </table>'+' <table border="0" width="100%">'+' <tr>'+' <td NOWRAP style="padding:2px;">'+' <input type="checkbox" id="setEditor{idx}" name="setEditor{idx}" value="1" onclick="SUGAR.email2.composeLayout.renderTinyMCEToolBar(\'{idx}\', this.checked);"/>&nbsp;'+' <b>{mod_strings.LBL_SEND_IN_PLAIN_TEXT}</b>'+' </td>'+' </tr>'+' </table>'+' </form>'+' </div> '+' </div>'+'</div>';/* End of File modules/Emails/javascript/composeEmailTemplate.js */
+SUGAR.email2.templates['compose']='<div id="composeLayout{idx}" class="ylayout-inactive-content"></div>'+'<div id="composeOverFrame{idx}" style="height:100%;width:100%;position:absolute;top:0px">'+' <form id="emailCompose{idx}" name="ComposeEditView{idx}" action="index.php" method="POST">'+' <input type="hidden" id="email_id{idx}" name="email_id" value="">'+' <input type="hidden" id="uid{idx}" name="uid" value="">'+' <input type="hidden" id="ieId{idx}" name="ieId" value="">'+' <input type="hidden" id="mbox{idx}" name="mbox" value="">'+' <input type="hidden" id="type{idx}" name="type" value="">'+' <input type="hidden" id="composeLayoutId" name="composeLayoutId" value="shouldNotSeeMe">'+' <input type="hidden" id="composeType" name="composeType">'+' <input type="hidden" id="fromAccount" name="fromAccount">'+' <input type="hidden" id="sendSubject" name="sendSubject">'+' <input type="hidden" id="sendDescription" name="sendDescription">'+' <input type="hidden" id="sendTo" name="sendTo">'+' <input type="hidden" id="sendBcc" name="sendBcc">'+' <input type="hidden" id="sendCc" name="sendCc">'+' <input type="hidden" id="setEditor" name="setEditor">'+' <input type="hidden" id="saveToSugar" name="saveToSugar">'+' <input type="hidden" id="parent_id" name="parent_id">'+' <input type="hidden" id="parent_type" name="parent_type">'+' <input type="hidden" id="attachments" name="attachments">'+' <input type="hidden" id="documents" name="documents">'+' <input type="hidden" id="outbound_email{idx}" name="outbound_email">'+' <input type="hidden" id="templateAttachments" name="templateAttachments">'+' <input type="hidden" id="templateAttachmentsRemove{idx}" name="templateAttachmentsRemove">'+' <table id="composeHeaderTable{idx}" cellpadding="0" cellspacing="0" border="0" width="100%" class="list">'+' <tr>'+' <th><table cellpadding="0" cellspacing="0" border="0"><tbody><tr ><td style="padding: 0px !important;margin:0px; !important" >'+' <button type="button" class="button" onclick="SUGAR.email2.composeLayout.sendEmail({idx}, false);"><img src="index.php?entryPoint=getImage&themeName='+SUGAR.themes.theme_name+'&imageName=icon_email_send.gif" align="absmiddle" border="0"> {app_strings.LBL_EMAIL_SEND}</button>'+' <button type="button" class="button" onclick="SUGAR.email2.composeLayout.saveDraft({idx}, false);"><img src="index.php?entryPoint=getImage&themeName='+SUGAR.themes.theme_name+'&imageName=icon_email_save.gif" align="absmiddle" border="0"> {app_strings.LBL_EMAIL_SAVE_DRAFT}</button>'+' <button type="button" class="button" onclick="SUGAR.email2.composeLayout.showAttachmentPanel({idx}, false);"><img src="index.php?entryPoint=getImage&themeName='+SUGAR.themes.theme_name+'&imageName=icon_email_attach.gif" align="absmiddle" border="0"> {app_strings.LBL_EMAIL_ATTACHMENT}</button>'+' <button type="button" class="button" onclick="SUGAR.email2.composeLayout.showOptionsPanel({idx}, false);"><img src="index.php?entryPoint=getImage&themeName='+SUGAR.themes.theme_name+'&imageName=icon_email_options.gif" align="absmiddle" border="0"> {app_strings.LBL_EMAIL_OPTIONS}</button>'+'</td><td style="padding: 0px !important;margin:0px; !important">&nbsp;&nbsp;{mod_strings.LBL_EMAIL_RELATE}:&nbsp;&nbsp;<select class="select" id="data_parent_type{idx}" onchange="document.getElementById(\'data_parent_name{idx}\').value=\'\';document.getElementById(\'data_parent_id{idx}\').value=\'\'; SUGAR.email2.composeLayout.enableQuickSearchRelate(\'{idx}\');" name="data_parent_type{idx}">{linkbeans_options}</select>'+'&nbsp;</td><td style="padding: 0px !important;margin:0px; !important"><input id="data_parent_id{idx}" name="data_parent_id{idx}" type="hidden" value="">'+'<input class="sqsEnabled" id="data_parent_name{idx}" name="data_parent_name{idx}" type="text" value="">&nbsp;<button type="button" class="button" onclick="SUGAR.email2.composeLayout.callopenpopupForEmail2({idx});"><img src="index.php?entryPoint=getImage&themeName=default&imageName=id-ff-select.png" align="absmiddle" border="0"></button>'+' </td></tr></tbody></table></th>'+' </tr>'+' <tr>'+' <td>'+' <div style="margin:5px;">'+' <table cellpadding="4" cellspacing="0" border="0" width="100%">'+' <tr>'+' <td class="emailUILabel" NOWRAP >'+' <label for="addressFrom{idx}">{app_strings.LBL_EMAIL_FROM}:</label>'+' </td>'+' <td class="emailUIField" NOWRAP>'+' <div>'+' &nbsp;&nbsp;<select style="width: 500px;" class="ac_input" id="addressFrom{idx}" name="addressFrom{idx}"></select>'+' </div>'+' </td>'+' </tr>'+' <tr>'+' <td class="emailUILabel" NOWRAP>'+' <button class="button" type="button" onclick="SUGAR.email2.addressBook.selectContactsDialogue(\'addressTO{idx}\')">'+' {app_strings.LBL_EMAIL_TO}:'+' </button>'+' </td>'+' <td class="emailUIField" NOWRAP>'+' <div class="ac_autocomplete">'+' &nbsp;&nbsp;<input class="ac_input" type="text" size="96" id="addressTO{idx}" title="{app_strings.LBL_EMAIL_TO}" name="addressTO{idx}" onkeyup="SE.composeLayout.showAddressDetails(this);">'+' <span class="rolloverEmail"> <a id="MoreaddressTO{idx}" href="#" style="display: none;">+<span id="DetailaddressTO{idx}">&nbsp;</span></a> </span>'+' <div class="ac_container" id="addressToAC{idx}"></div>'+' </div>'+' </td>'+' </tr>'+' <tr id="add_addr_options_tr{idx}">'+' <td class="emailUILabel" NOWRAP>&nbsp;</td><td class="emailUIField" valign="top" NOWRAP>&nbsp;&nbsp;<span id="cc_span{idx}"><a href="#" onclick="SE.composeLayout.showHiddenAddress(\'cc\',\'{idx}\');">{mod_strings.LBL_ADD_CC}</a></span><span id="bcc_cc_sep{idx}">&nbsp;{mod_strings.LBL_ADD_CC_BCC_SEP}&nbsp;</span><span id="bcc_span{idx}"><a href="#" onclick="SE.composeLayout.showHiddenAddress(\'bcc\',\'{idx}\');">{mod_strings.LBL_ADD_BCC}</a></span></td>'+' </tr>'+' <tr class="yui-hidden" id="cc_tr{idx}">'+' <td class="emailUILabel" NOWRAP>'+' <button class="button" type="button" onclick="SUGAR.email2.addressBook.selectContactsDialogue(\'addressCC{idx}\')">'+' {app_strings.LBL_EMAIL_CC}:'+' </button>'+' </td>'+' <td class="emailUIField" NOWRAP>'+' <div class="ac_autocomplete">'+' &nbsp;&nbsp;<input class="ac_input" type="text" size="96" id="addressCC{idx}" name="addressCC{idx}" title="{app_strings.LBL_EMAIL_CC}" onkeyup="SE.composeLayout.showAddressDetails(this);">'+' <span class="rolloverEmail"> <a id="MoreaddressCC{idx}" href="#" style="display: none;">+<span id="DetailaddressCC{idx}">&nbsp;</span></a> </span>'+' <div class="ac_container" id="addressCcAC{idx}"></div>'+' </div>'+' </td>'+' </tr>'+' <tr class="yui-hidden" id="bcc_tr{idx}">'+' <td class="emailUILabel" NOWRAP>'+' <button class="button" type="button" onclick="SUGAR.email2.addressBook.selectContactsDialogue(\'addressBCC{idx}\')">'+' {app_strings.LBL_EMAIL_BCC}:'+' </button>'+' </td>'+' <td class="emailUIField" NOWRAP>'+' <div class="ac_autocomplete">'+' &nbsp;&nbsp;<input class="ac_input" type="text" size="96" id="addressBCC{idx}" name="addressBCC{idx}" title="{app_strings.LBL_EMAIL_BCC}" onkeyup="SE.composeLayout.showAddressDetails(this);">'+' <span class="rolloverEmail"> <a id="MoreaddressBCC{idx}" href="#" style="display: none;">+<span id="DetailaddressBCC{idx}">&nbsp;</span></a> </span>'+' <div class="ac_container" id="addressBccAC{idx}"></div>'+' </div>'+' </td>'+' </tr>'+' <tr>'+' <td class="emailUILabel" NOWRAP width="1%">'+' <label for="emailSubject{idx}">{app_strings.LBL_EMAIL_SUBJECT}:</label>'+' </td>'+' <td class="emailUIField" NOWRAP width="99%">'+' <div class="ac_autocomplete">'+' &nbsp;&nbsp;<input class="ac_input" type="text" size="96" id="emailSubject{idx}" name="subject{idx}" value="" maxlength="'+SUGAR.email2.composeLayout.subjectMaxlen+'">'+' </div>'+' </td>'+' </tr>'+' </table>'+' </div>'+' </td>'+' </tr>'+' </table>'+' <textarea id="htmleditor{idx}" name="htmleditor{idx}" style="width:100%; height: 100px;"></textarea>'+' <div id="divAttachments{idx}" class="ylayout-inactive-content">'+' <div style="padding:5px;">'+' <table cellpadding="2" cellspacing="0" border="0">'+' <tr>'+' <th>'+' <b>{app_strings.LBL_EMAIL_ATTACHMENTS}</b>'+' <br />'+' &nbsp;'+' </th>'+' </tr>'+' <tr>'+' <td>'+' <input type="button" name="add_file_button" onclick="SUGAR.email2.composeLayout.addFileField();" value="{mod_strings.LBL_ADD_FILE}" class="button" />'+' <div id="addedFiles{idx}" name="addedFiles{idx}"></div>'+' </td>'+' </tr>'+' <tr>'+' <td>'+' &nbsp;'+' <br />'+' &nbsp;'+' </td>'+' </tr>'+' <tr>'+' <th>'+' <b>{app_strings.LBL_EMAIL_ATTACHMENTS2}</b>'+' <br />'+' &nbsp;'+' </th>'+' </tr>'+' <tr>'+' <td>'+' <input type="button" name="add_document_button" onclick="SUGAR.email2.composeLayout.addDocumentField({idx});" value="{mod_strings.LBL_ADD_DOCUMENT}" class="button" />'+' <div id="addedDocuments{idx}"></div>'+' </td>'+' </tr>'+' <tr>'+' <td>'+' &nbsp;'+' <br />'+' &nbsp;'+' </td>'+' </tr>'+' <tr>'+' <th>'+' <div id="templateAttachmentsTitle{idx}" style="display:none"><b>{app_strings.LBL_EMAIL_ATTACHMENTS3}</b></div>'+' <br />'+' &nbsp;'+' </th>'+' </tr>'+' <tr>'+' <td>'+' <div id="addedTemplateAttachments{idx}"></div>'+' </td>'+' </tr>'+' </table>'+' </div>'+' </div>'+' </form>'+' <div id="divOptions{idx}" class="ylayout-inactive-content"'+' <div style="padding:5px;">'+' <form name="composeOptionsForm{idx}" id="composeOptionsForm{idx}">'+' <table border="0" width="100%">'+' <tr>'+' <td NOWRAP style="padding:2px;">'+' <b>{app_strings.LBL_EMAIL_TEMPLATES}:</b>'+' </td>'+' </tr>'+' <tr>'+' <td NOWRAP style="padding:2px;">'+' <select name="email_template{idx}" id="email_template{idx}" onchange="SUGAR.email2.composeLayout.applyEmailTemplate(\'{idx}\', this.options[this.selectedIndex].value);"></select>'+' </td>'+' </tr>'+' </table>'+' <br />'+' <table border="0" width="100%">'+' <tr>'+' <td NOWRAP style="padding:2px;">'+' <b>{app_strings.LBL_EMAIL_SIGNATURES}:</b>'+' </td>'+' </tr>'+' <tr>'+' <td NOWRAP style="padding:2px;">'+' <select name="signatures{idx}" id="signatures{idx}" onchange="SUGAR.email2.composeLayout.setSignature(\'{idx}\');"></select>'+' </td>'+' </tr>'+' </table>'+' <table border="0" width="100%">'+' <tr>'+' <td NOWRAP style="padding:2px;">'+' <input type="checkbox" id="setEditor{idx}" name="setEditor{idx}" value="1" onclick="SUGAR.email2.composeLayout.renderTinyMCEToolBar(\'{idx}\', this.checked);"/>&nbsp;'+' <b>{mod_strings.LBL_SEND_IN_PLAIN_TEXT}</b>'+' </td>'+' </tr>'+' </table>'+' </form>'+' </div> '+' </div>'+'</div>';/* End of File modules/Emails/javascript/composeEmailTemplate.js */
SUGAR.email2.templates['displayOneEmail']='<div class="emailDetailTable" style="height:100%">'+'<div id="viewMenuDiv{idx}"></div>'+'<div width="100%" class="displayEmailValue">'+' <button type="button" class="button" onclick="SUGAR.email2.composeLayout.c0_replyForwardEmail(\'{meta.ieId}\', \'{meta.uid}\', \'{meta.mbox}\', \'reply\');"><img src="index.php?entryPoint=getImage&themeName='+SUGAR.themes.theme_name+'&imageName=icon_email_reply.gif" align="absmiddle" border="0"> {app_strings.LBL_EMAIL_REPLY}</button>'+' <button type="button" class="button" onclick="SUGAR.email2.composeLayout.c0_replyForwardEmail(\'{meta.ieId}\', \'{meta.uid}\', \'{meta.mbox}\', \'replyAll\');"><img src="index.php?entryPoint=getImage&themeName='+SUGAR.themes.theme_name+'&imageName=icon_email_replyall.gif" align="absmiddle" border="0"> {app_strings.LBL_EMAIL_REPLY_ALL}</button>'+' <button type="button" class="button" onclick="SUGAR.email2.composeLayout.c0_replyForwardEmail(\'{meta.ieId}\', \'{meta.uid}\', \'{meta.mbox}\', \'forward\');"><img src="index.php?entryPoint=getImage&themeName='+SUGAR.themes.theme_name+'&imageName=icon_email_forward.gif" align="absmiddle" border="0"> {app_strings.LBL_EMAIL_FORWARD}</button>'+' <button type="button" class="button" onclick="SUGAR.email2.detailView.emailDeleteSingle(\'{meta.ieId}\', \'{meta.uid}\', \'{meta.mbox}\');"><img src="index.php?entryPoint=getImage&themeName='+SUGAR.themes.theme_name+'&imageName=icon_email_delete.gif" align="absmiddle" border="0"> {app_strings.LBL_EMAIL_DELETE}</button>'+' <button type="button" class="button" onclick="SUGAR.email2.detailView.viewPrintable(\'{meta.ieId}\', \'{meta.uid}\', \'{meta.mbox}\');"><img src="index.php?entryPoint=getImage&themeName='+SUGAR.themes.theme_name+'&imageName=Print_Email.gif" align="absmiddle" border="0"> {app_strings.LBL_EMAIL_PRINT}</button>'+' <button id="btnEmailView{idx}" type="button" class="button" onclick="SUGAR.email2.detailView.showViewMenu(\'{meta.ieId}\', \'{meta.uid}\', \'{meta.mbox}\');"><img src="index.php?entryPoint=getImage&themeName='+SUGAR.themes.theme_name+'&imageName=icon_email_view.gif" align="absmiddle" border="0"> {app_strings.LBL_EMAIL_VIEW} <img src="themes/default/images/more.gif" align="absmiddle" border="0"></button>'+' <button id="archiveEmail{idx}" type="button" class="button" onclick="SUGAR.email2.detailView.importEmail(\'{meta.ieId}\', \'{meta.uid}\', \'{meta.mbox}\');"><img src="themes/default/images/icon_email_archive.gif" align="absmiddle" border="0"> {app_strings.LBL_EMAIL_IMPORT_EMAIL}</button>'+' <button id="quickCreateSpan{meta.panelId}" type="button" class="button" onclick="SUGAR.email2.detailView.showQuickCreate(\'{meta.ieId}\', \'{meta.uid}\', \'{meta.mbox}\');"><img src="themes/default/images/icon_email_create.gif" align="absmiddle" border="0"> {app_strings.LBL_EMAIL_QUICK_CREATE} <img src="themes/default/images/more.gif" align="absmiddle" border="0"></button>'+' <button type="button" id="showDeialViewForEmail{meta.panelId}" class="button" onclick="SUGAR.email2.contextMenus.showEmailDetailViewInPopup(\'{meta.ieId}\', \'{meta.uid}\', \'{meta.mbox}\');"><img src="themes/default/images/icon_email_relate.gif" align="absmiddle" border="0"> {app_strings.LBL_EMAIL_VIEW_RELATIONSHIPS}</button>'+'</div>'+' <table cellpadding="0" cellspacing="0" border="0" width="100%" >'+' <tr>'+' <td NOWRAP valign="top" width="1%" class="displayEmailLabel">'+' {app_strings.LBL_EMAIL_FROM}:'+' </td>'+' <td width="99%" class="displayEmailValue">'+' {email.from_addr}'+' </td>'+' </tr>'+' <tr>'+' <td NOWRAP valign="top" class="displayEmailLabel">'+' {app_strings.LBL_EMAIL_SUBJECT}:'+' </td>'+' <td NOWRAP valign="top" class="displayEmailValue">'+' <b>{email.name}</b>'+' </td>'+' </tr>'+' <tr>'+' <td NOWRAP valign="top" class="displayEmailLabel">'+' {app_strings.LBL_EMAIL_DATE_SENT_BY_SENDER}:'+' </td>'+' <td class="displayEmailValue">'+' {email.date_start} {email.time_start}'+' </td>'+' </tr>'+' <tr>'+' <td NOWRAP valign="top" class="displayEmailLabel">'+' {app_strings.LBL_EMAIL_TO}:'+' </td>'+' <td class="displayEmailValue">'+' {email.toaddrs}'+' </td>'+' </tr>'+' <tr>{meta.cc}</tr>'+' <tr>{email.attachments}</tr>'+' </table>'+' <div id="displayEmailFrameDiv{idx}" name="displayEmailFrameDiv{idx}"><iframe id="displayEmailFrame{idx}" src="modules/Emails/templates/_blank.html" width="100%" height="100%" frameborder="0"></iframe></div>'+'</div>';/* End of File modules/Emails/javascript/displayOneEmailTemplate.js */
View
16 cache/include/javascript/sugar_grp_jsolait.js
@@ -104,9 +104,7 @@ GLOBAL_REGISTRY.focus.fields.date_start=date_start;if(has_meridiem){GLOBAL_REGIS
GLOBAL_REGISTRY.focus.fields.duration_hours=document.forms[form_name].duration_hours.value;GLOBAL_REGISTRY.focus.fields.duration_minutes=document.forms[form_name].duration_minutes.value;GLOBAL_REGISTRY.focus.fields.datetime_start=SugarDateTime.mysql2jsDateTime(GLOBAL_REGISTRY.focus.fields.date_start,GLOBAL_REGISTRY.focus.fields.time_start);GLOBAL_REGISTRY.scheduler_attendees_obj.init();GLOBAL_REGISTRY.scheduler_attendees_obj.display();}
SugarWidgetScheduler.prototype.display=function(){this.parentNode.innerHTML='';var attendees=new SugarWidgetSchedulerAttendees();attendees.load(this.parentNode);var search=new SugarWidgetSchedulerSearch();search.load(this.parentNode);}
SugarClass.inherit("SugarWidgetSchedulerAttendees","SugarClass");function SugarWidgetSchedulerAttendees(){this.init();}
-SugarWidgetSchedulerAttendees.prototype.init=function(){SugarWidgetSchedulerAttendees.allowedTypes=['Contact','Lead'];$(document).ready(function()
-{$('#add_parent_invitee_label').css('visibility','hidden');SugarWidgetSchedulerAttendees.setAddParentLinkVisibility();$('#parent_type').change(function()
-{SugarWidgetSchedulerAttendees.setAddParentLinkVisibility();});});var form_name;if(typeof document.EditView!='undefined')
+SugarWidgetSchedulerAttendees.prototype.init=function(){var form_name;if(typeof document.EditView!='undefined')
form_name="EditView";else if(typeof document.CalendarEditView!='undefined')
form_name="CalendarEditView";else
return;GLOBAL_REGISTRY.scheduler_attendees_obj=this;var date_start=document.forms[form_name].date_start.value;var hour_start=parseInt(date_start.substring(11,13),10);var minute_start=parseInt(date_start.substring(14,16),10);var has_meridiem=/am|pm/i.test(date_start);if(has_meridiem){var meridiem=trim(date_start.substring(16));}
@@ -134,18 +132,6 @@ if(typeof GLOBAL_REGISTRY.focus.users_arr_hash=='undefined'){GLOBAL_REGISTRY.foc
for(var i=0;i<GLOBAL_REGISTRY.focus.users_arr.length;i++){var row=new SugarWidgetScheduleRow(this.timeslots);row.focus_bean=GLOBAL_REGISTRY.focus.users_arr[i];GLOBAL_REGISTRY.focus.users_arr_hash[GLOBAL_REGISTRY.focus.users_arr[i]['fields']['id']]=GLOBAL_REGISTRY.focus.users_arr[i];row.load(thetable);}}
SugarWidgetSchedulerAttendees.form_add_attendee=function(list_row){if(typeof(GLOBAL_REGISTRY.result_list[list_row])!='undefined'&&typeof(GLOBAL_REGISTRY.focus.users_arr_hash[GLOBAL_REGISTRY.result_list[list_row].fields.id])=='undefined'){GLOBAL_REGISTRY.focus.users_arr[GLOBAL_REGISTRY.focus.users_arr.length]=GLOBAL_REGISTRY.result_list[list_row];}
GLOBAL_REGISTRY.scheduler_attendees_obj.display();}
-SugarWidgetSchedulerAttendees.setAddParentLinkVisibility=function()
-{parent_type=$('#parent_type option:selected').text();if($.inArray(parent_type,SugarWidgetSchedulerAttendees.allowedTypes)>-1)
-{$('#add_parent_invitee').parent().css('display','');}
-else
-{$('#add_parent_invitee').parent().css('display','none');}}
-SugarWidgetSchedulerAttendees.formAddParent=function()
-{parent_id=$("#parent_id").val();parent_name=$("#parent_name").val();parent_type=$("#parent_type option:selected").text();if(parent_id.length>0&&$.inArray(parent_type,SugarWidgetSchedulerAttendees.allowedTypes)>-1)
-{invitee={fields:{id:parent_id,full_name:parent_name},module:parent_type};contains=false;for(var i=0;i<GLOBAL_REGISTRY.focus.users_arr.length;i++)
-{if(GLOBAL_REGISTRY.focus.users_arr[i]['fields']['id']==invitee['fields']['id'])
-{contains=true;break;}}
-if(!contains)
-{GLOBAL_REGISTRY.focus.users_arr[GLOBAL_REGISTRY.focus.users_arr.length]=invitee;GLOBAL_REGISTRY.scheduler_attendees_obj.display();}}}
SugarClass.inherit("SugarWidgetScheduleRow","SugarClass");function SugarWidgetScheduleRow(timeslots){this.init(timeslots);}
SugarWidgetScheduleRow.prototype.init=function(timeslots){this.timeslots=timeslots;}
SugarWidgetScheduleRow.prototype.load=function(thetableid){this.thetableid=thetableid;var self=this;vcalClient=new SugarVCalClient();if(typeof(GLOBAL_REGISTRY['freebusy_adjusted'])=='undefined'||typeof(GLOBAL_REGISTRY['freebusy_adjusted'][this.focus_bean.fields.id])=='undefined'){global_request_registry[req_count]=[this,'display'];vcalClient.load(this.focus_bean.fields.id,req_count);req_count++;}else{this.display();}}
View
6 cache/include/javascript/sugar_grp_quickcomp.js
@@ -150,7 +150,7 @@ var out=displayTemplate.exec({'app_strings':app_strings,'theme':theme,'idx':'Pre
SED.viewDialog.setHeader(ret.title);SED.viewDialog.setBody(ret.html);SED.viewDialog.render();SED.viewDialog.show();},showQuickCreateForm:function(o){var SED=SUGAR.email2.detailView;var ret=YAHOO.lang.JSON.parse(o.responseText);if(!SED.quickCreateDialog){SED.quickCreateDialog=new YAHOO.widget.Dialog("quickCreateForEmail",{modal:true,visible:true,fixedcenter:true,constraintoviewport:true,shadow:true});SED.quickCreateDialog.renderEvent.subscribe(function(){var viewH=YAHOO.util.Dom.getViewportHeight();var contH=0;for(var i in this.body.childNodes){if(this.body.childNodes[i].clientHeight){contH+=this.body.childNodes[i].clientHeight;}else if(this.body.childNodes[i].offsetHeight){contH+=this.body.childNodes[i].offsetHeight;}}
this.body.style.width="800px";this.body.style.height=(viewH-75>contH?(contH+10):(viewH-75))+"px";this.body.style.overflow="auto";},SED.quickCreateDialog);SED.quickCreateDialog.hideEvent.subscribe(function(){var qsFields=YAHOO.util.Dom.getElementsByClassName('.sqsEnabled',null,this.body);});SED.quickCreateDialog.setHeader(app_strings.LBL_EMAIL_QUICK_CREATE);}
if(ret.html){ret.html=ret.html.replace('<script type="text/javascript" src="include/SugarEmailAddress/SugarEmailAddress.js"></script>',"");}
-SED.quickCreateDialog.setBody(ret.html?ret.html:"&nbsp;");SED.quickCreateDialog.render();SUGAR.util.evalScript(ret.html+'<script language="javascript">enableQS(true);</script>');SED.quickCreateDialog.ieId=ret.ieId;SED.quickCreateDialog.uid=ret.uid;SED.quickCreateDialog.mbox=ret.mbox;SED.quickCreateDialog.qcmodule=ret.module;SED.quickCreateDialog.show();var editForm=document.getElementById('form_EmailQCView_'+ret.module);if(editForm){editForm.module.value='Emails';var count=SUGAR.EmailAddressWidget.count[ret.module]?SUGAR.EmailAddressWidget.count[ret.module]:0;var tableId=YAHOO.util.Dom.getElementsByClassName('emailaddresses','table',editForm)[0];tableId=tableId?tableId.id:tableId;var instId=ret.module+count;SED.quickCreateEmailsToAdd=ret.emailAddress;SED.quickCreateEmailCallback=function(instId,tableId){if(tableId){var eaw=new SUGAR.EmailAddressWidget.instances[instId];if(eaw){eaw.prefillEmailAddresses(tableId,SUGAR.email2.detailView.quickCreateEmailsToAdd);}else{window.setTimeout(function(){SUGAR.email2.detailView.quickCreateEmailCallback(instId,tableId);},100);}}}
+SED.quickCreateDialog.setBody(ret.html?ret.html:"&nbsp;");SED.quickCreateDialog.render();SUGAR.util.evalScript(ret.html+'<script language="javascript">enableQS(true);</script>');SED.quickCreateDialog.ieId=ret.ieId;SED.quickCreateDialog.uid=ret.uid;SED.quickCreateDialog.mbox=ret.mbox;SED.quickCreateDialog.qcmodule=ret.module;SED.quickCreateDialog.show();var editForm=document.getElementById('form_EmailQCView_'+ret.module);if(editForm){editForm.module.value='Emails';var count=SUGAR.EmailAddressWidget.count[ret.module]?SUGAR.EmailAddressWidget.count[ret.module]:0;var tableId=YAHOO.util.Dom.getElementsByClassName('emailaddresses','table',editForm)[0];tableId=tableId?tableId.id:tableId;var instId=ret.module+(count-1);SED.quickCreateEmailsToAdd=ret.emailAddress;SED.quickCreateEmailCallback=function(instId,tableId){if(tableId){var eaw=SUGAR.EmailAddressWidget.instances[instId];if(eaw){eaw.prefillEmailAddresses(tableId,SUGAR.email2.detailView.quickCreateEmailsToAdd);}else{window.setTimeout(function(){SUGAR.email2.detailView.quickCreateEmailCallback(instId,tableId);},100);}}}
window.setTimeout(function(){SUGAR.email2.detailView.quickCreateEmailCallback(instId,tableId);},100);}},saveQuickCreateForm:function(o){SUGAR.hideMessageBox();SUGAR.email2.detailView.quickCreateDialog.hide();validate['EditView']=[];},saveQuickCreateFormAndReply:function(o){SUGAR.hideMessageBox();var ret=YAHOO.lang.JSON.parse(o.responseText);SUGAR.email2.detailView.quickCreateDialog.hide();var qcd=SUGAR.email2.detailView.quickCreateDialog;var type=(qcd.qcmodule=='Cases')?'replyCase':'reply';if(ret){var emailID=ret.id;SUGAR.email2.composeLayout.c0_replyForwardEmail(null,ret.id,'sugar::Emails',type);}else{SUGAR.email2.composeLayout.c0_replyForwardEmail(qcd.ieId,qcd.uid,qcd.mbox,type);}
validate['EditView']=[];},saveQuickCreateFormAndAddToAddressBook:function(o){SUGAR.hideMessageBox();SUGAR.email2.detailView.quickCreateDialog.hide();SUGAR.email2.complexLayout.findPanel('contactsTab').show();validate['EditView']=[];},handleAssignmentDialogAssignAction:function(){var assign_user_id=window.document.forms['Distribute'].elements['assigned_user_id'].value;var dist='direct';var users=false;var rules=false;var get="";var found_teams=false;var warning_message=mod_strings.LBL_WARN_NO_USERS;if(!found_teams&&assign_user_id=='')
{alert(warning_message);return;}
@@ -448,7 +448,7 @@ var sigs=document.getElementById('signatures'+idx);SE.util.emptySelectOptions(si
sigs.options.add(opt);}
var htmlEmail=document.getElementById('setEditor'+idx);if(SE.userPrefs.emailSettings.sendPlainText==1){htmlEmail.checked=true;}else{htmlEmail.checked=false;}
SE.tinyInstances[SE.tinyInstances.currentHtmleditor].ready=true;},replyForwardEmailStage2:function(){SE.util.clearHiddenFieldValues('emailUIForm');SUGAR.showMessageBox(app_strings.LBL_EMAIL_RETRIEVING_MESSAGE,app_strings.LBL_EMAIL_ONE_MOMENT);var ieId=SE.composeLayout.replyForwardObj.ieId;var uid=SE.composeLayout.replyForwardObj.uid;var mbox=SE.composeLayout.replyForwardObj.mbox;var type=SE.composeLayout.replyForwardObj.type;var idx=SE.composeLayout.currentInstanceId;var sugarEmail=(SE.composeLayout.replyForwardObj.sugarEmail)?'&sugarEmail=true':"";document.getElementById('emailSubject'+idx).value=type;document.getElementById('emailUIAction').value='composeEmail';document.getElementById('composeType').value=type;document.getElementById('ieId').value=ieId;document.getElementById('uid').value=uid;document.getElementById('mbox').value=mbox;document.getElementById('setEditor'+idx).checked=SE.userPrefs.emailSettings.sendPlainText==1?true:false;var formObject=document.getElementById('emailUIForm');YAHOO.util.Connect.setForm(formObject);var sendType=type;AjaxObject.startRequest(callbackReplyForward,urlStandard+"&composeType="+type+sugarEmail);},showHiddenAddress:function(addrType,idx){Dom.removeClass(addrType+"_tr"+idx,"yui-hidden");Dom.addClass(addrType+"_span"+idx,"yui-hidden");Dom.addClass("bcc_cc_sep"+idx,"yui-hidden");this[addrType+'Hidden'+idx]=false;Dom.insertAfter("add_addr_options_tr"+idx,'bcc_tr'+idx);if((typeof(this['ccHidden'+idx])!='undefined'&&typeof(this['bccHidden'+idx])!='undefined')&&(this['ccHidden'+idx]==false&&this['bccHidden'+idx]==false))
-Dom.addClass("add_addr_options_tr"+idx,"yui-hidden");},hideHiddenAddresses:function(idx){var addrTypes=['cc','bcc'];for(var i=0;i<addrTypes.length;i++)
+Dom.addClass("add_addr_options_tr"+idx,"yui-hidden");SE.composeLayout.resizeEditor(idx);},hideHiddenAddresses:function(idx){var addrTypes=['cc','bcc'];for(var i=0;i<addrTypes.length;i++)
{Dom.addClass(addrTypes[i]+"_tr"+idx,"yui-hidden");Dom.removeClass(addrTypes[i]+"_span"+idx,"yui-hidden");this[addrTypes[i]+'Hidden'+idx]=true}
Dom.removeClass("bcc_cc_sep"+idx,"yui-hidden");Dom.removeClass("add_addr_options_tr"+idx,"yui-hidden");Dom.insertBefore("add_addr_options_tr"+idx,'bcc_tr'+idx);}};SE.util={cleanUids:function(str){var seen=new Object();var clean="";var arr=new String(str).split(",");for(var i=0;i<arr.length;i++){if(seen[arr[i]]){continue;}
clean+=(clean!="")?",":"";clean+=arr[i];seen[arr[i]]=true;}
@@ -465,7 +465,7 @@ return searchChild;}
return false;},cascadeNodes:function(parent,fn,scope,args){for(i in parent.children){var child=parent.children[i];var s=scope?scope:child;var a=args?args:child;fn.call(s,a);SE.util.cascadeNodes(child,fn,scope,args);}}};})();/* End of File modules/Emails/javascript/EmailUICompose.js */
-SUGAR.email2.templates['compose']='<div id="composeLayout{idx}" class="ylayout-inactive-content"></div>'+'<div id="composeOverFrame{idx}" style="height:100%;width:100%">'+' <form id="emailCompose{idx}" name="ComposeEditView{idx}" action="index.php" method="POST">'+' <input type="hidden" id="email_id{idx}" name="email_id" value="">'+' <input type="hidden" id="uid{idx}" name="uid" value="">'+' <input type="hidden" id="ieId{idx}" name="ieId" value="">'+' <input type="hidden" id="mbox{idx}" name="mbox" value="">'+' <input type="hidden" id="type{idx}" name="type" value="">'+' <input type="hidden" id="composeLayoutId" name="composeLayoutId" value="shouldNotSeeMe">'+' <input type="hidden" id="composeType" name="composeType">'+' <input type="hidden" id="fromAccount" name="fromAccount">'+' <input type="hidden" id="sendSubject" name="sendSubject">'+' <input type="hidden" id="sendDescription" name="sendDescription">'+' <input type="hidden" id="sendTo" name="sendTo">'+' <input type="hidden" id="sendBcc" name="sendBcc">'+' <input type="hidden" id="sendCc" name="sendCc">'+' <input type="hidden" id="setEditor" name="setEditor">'+' <input type="hidden" id="saveToSugar" name="saveToSugar">'+' <input type="hidden" id="parent_id" name="parent_id">'+' <input type="hidden" id="parent_type" name="parent_type">'+' <input type="hidden" id="attachments" name="attachments">'+' <input type="hidden" id="documents" name="documents">'+' <input type="hidden" id="outbound_email{idx}" name="outbound_email">'+' <input type="hidden" id="templateAttachments" name="templateAttachments">'+' <input type="hidden" id="templateAttachmentsRemove{idx}" name="templateAttachmentsRemove">'+' <table id="composeHeaderTable{idx}" cellpadding="0" cellspacing="0" border="0" width="100%" class="list">'+' <tr>'+' <th><table cellpadding="0" cellspacing="0" border="0"><tbody><tr ><td style="padding: 0px !important;margin:0px; !important" >'+' <button type="button" class="button" onclick="SUGAR.email2.composeLayout.sendEmail({idx}, false);"><img src="index.php?entryPoint=getImage&themeName='+SUGAR.themes.theme_name+'&imageName=icon_email_send.gif" align="absmiddle" border="0"> {app_strings.LBL_EMAIL_SEND}</button>'+' <button type="button" class="button" onclick="SUGAR.email2.composeLayout.saveDraft({idx}, false);"><img src="index.php?entryPoint=getImage&themeName='+SUGAR.themes.theme_name+'&imageName=icon_email_save.gif" align="absmiddle" border="0"> {app_strings.LBL_EMAIL_SAVE_DRAFT}</button>'+' <button type="button" class="button" onclick="SUGAR.email2.composeLayout.showAttachmentPanel({idx}, false);"><img src="index.php?entryPoint=getImage&themeName='+SUGAR.themes.theme_name+'&imageName=icon_email_attach.gif" align="absmiddle" border="0"> {app_strings.LBL_EMAIL_ATTACHMENT}</button>'+' <button type="button" class="button" onclick="SUGAR.email2.composeLayout.showOptionsPanel({idx}, false);"><img src="index.php?entryPoint=getImage&themeName='+SUGAR.themes.theme_name+'&imageName=icon_email_options.gif" align="absmiddle" border="0"> {app_strings.LBL_EMAIL_OPTIONS}</button>'+'</td><td style="padding: 0px !important;margin:0px; !important">&nbsp;&nbsp;{mod_strings.LBL_EMAIL_RELATE}:&nbsp;&nbsp;<select class="select" id="data_parent_type{idx}" onchange="document.getElementById(\'data_parent_name{idx}\').value=\'\';document.getElementById(\'data_parent_id{idx}\').value=\'\'; SUGAR.email2.composeLayout.enableQuickSearchRelate(\'{idx}\');" name="data_parent_type{idx}">{linkbeans_options}</select>'+'&nbsp;</td><td style="padding: 0px !important;margin:0px; !important"><input id="data_parent_id{idx}" name="data_parent_id{idx}" type="hidden" value="">'+'<input class="sqsEnabled" id="data_parent_name{idx}" name="data_parent_name{idx}" type="text" value="">&nbsp;<button type="button" class="button" onclick="SUGAR.email2.composeLayout.callopenpopupForEmail2({idx});"><img src="index.php?entryPoint=getImage&themeName=default&imageName=id-ff-select.png" align="absmiddle" border="0"></button>'+' </td></tr></tbody></table></th>'+' </tr>'+' <tr>'+' <td>'+' <div style="margin:5px;">'+' <table cellpadding="4" cellspacing="0" border="0" width="100%">'+' <tr>'+' <td class="emailUILabel" NOWRAP >'+' <label for="addressFrom{idx}">{app_strings.LBL_EMAIL_FROM}:</label>'+' </td>'+' <td class="emailUIField" NOWRAP>'+' <div>'+' &nbsp;&nbsp;<select style="width: 500px;" class="ac_input" id="addressFrom{idx}" name="addressFrom{idx}"></select>'+' </div>'+' </td>'+' </tr>'+' <tr>'+' <td class="emailUILabel" NOWRAP>'+' <button class="button" type="button" onclick="SUGAR.email2.addressBook.selectContactsDialogue(\'addressTO{idx}\')">'+' {app_strings.LBL_EMAIL_TO}:'+' </button>'+' </td>'+' <td class="emailUIField" NOWRAP>'+' <div class="ac_autocomplete">'+' &nbsp;&nbsp;<input class="ac_input" type="text" size="96" id="addressTO{idx}" title="{app_strings.LBL_EMAIL_TO}" name="addressTO{idx}" onkeyup="SE.composeLayout.showAddressDetails(this);">'+' <span class="rolloverEmail"> <a id="MoreaddressTO{idx}" href="#" style="display: none;">+<span id="DetailaddressTO{idx}">&nbsp;</span></a> </span>'+' <div class="ac_container" id="addressToAC{idx}"></div>'+' </div>'+' </td>'+' </tr>'+' <tr id="add_addr_options_tr{idx}">'+' <td class="emailUILabel" NOWRAP>&nbsp;</td><td class="emailUIField" valign="top" NOWRAP>&nbsp;&nbsp;<span id="cc_span{idx}"><a href="#" onclick="SE.composeLayout.showHiddenAddress(\'cc\',\'{idx}\');">{mod_strings.LBL_ADD_CC}</a></span><span id="bcc_cc_sep{idx}">&nbsp;{mod_strings.LBL_ADD_CC_BCC_SEP}&nbsp;</span><span id="bcc_span{idx}"><a href="#" onclick="SE.composeLayout.showHiddenAddress(\'bcc\',\'{idx}\');">{mod_strings.LBL_ADD_BCC}</a></span></td>'+' </tr>'+' <tr class="yui-hidden" id="cc_tr{idx}">'+' <td class="emailUILabel" NOWRAP>'+' <button class="button" type="button" onclick="SUGAR.email2.addressBook.selectContactsDialogue(\'addressCC{idx}\')">'+' {app_strings.LBL_EMAIL_CC}:'+' </button>'+' </td>'+' <td class="emailUIField" NOWRAP>'+' <div class="ac_autocomplete">'+' &nbsp;&nbsp;<input class="ac_input" type="text" size="96" id="addressCC{idx}" name="addressCC{idx}" title="{app_strings.LBL_EMAIL_CC}" onkeyup="SE.composeLayout.showAddressDetails(this);">'+' <span class="rolloverEmail"> <a id="MoreaddressCC{idx}" href="#" style="display: none;">+<span id="DetailaddressCC{idx}">&nbsp;</span></a> </span>'+' <div class="ac_container" id="addressCcAC{idx}"></div>'+' </div>'+' </td>'+' </tr>'+' <tr class="yui-hidden" id="bcc_tr{idx}">'+' <td class="emailUILabel" NOWRAP>'+' <button class="button" type="button" onclick="SUGAR.email2.addressBook.selectContactsDialogue(\'addressBCC{idx}\')">'+' {app_strings.LBL_EMAIL_BCC}:'+' </button>'+' </td>'+' <td class="emailUIField" NOWRAP>'+' <div class="ac_autocomplete">'+' &nbsp;&nbsp;<input class="ac_input" type="text" size="96" id="addressBCC{idx}" name="addressBCC{idx}" title="{app_strings.LBL_EMAIL_BCC}" onkeyup="SE.composeLayout.showAddressDetails(this);">'+' <span class="rolloverEmail"> <a id="MoreaddressBCC{idx}" href="#" style="display: none;">+<span id="DetailaddressBCC{idx}">&nbsp;</span></a> </span>'+' <div class="ac_container" id="addressBccAC{idx}"></div>'+' </div>'+' </td>'+' </tr>'+' <tr>'+' <td class="emailUILabel" NOWRAP width="1%">'+' <label for="emailSubject{idx}">{app_strings.LBL_EMAIL_SUBJECT}:</label>'+' </td>'+' <td class="emailUIField" NOWRAP width="99%">'+' <div class="ac_autocomplete">'+' &nbsp;&nbsp;<input class="ac_input" type="text" size="96" id="emailSubject{idx}" name="subject{idx}" value="" maxlength="'+SUGAR.email2.composeLayout.subjectMaxlen+'">'+' </div>'+' </td>'+' </tr>'+' </table>'+' </div>'+' </td>'+' </tr>'+' </table>'+' <textarea id="htmleditor{idx}" name="htmleditor{idx}" style="width:100%; height: 100px;"></textarea>'+' <div id="divAttachments{idx}" class="ylayout-inactive-content">'+' <div style="padding:5px;">'+' <table cellpadding="2" cellspacing="0" border="0">'+' <tr>'+' <th>'+' <b>{app_strings.LBL_EMAIL_ATTACHMENTS}</b>'+' <br />'+' &nbsp;'+' </th>'+' </tr>'+' <tr>'+' <td>'+' <input type="button" name="add_file_button" onclick="SUGAR.email2.composeLayout.addFileField();" value="{mod_strings.LBL_ADD_FILE}" class="button" />'+' <div id="addedFiles{idx}" name="addedFiles{idx}"></div>'+' </td>'+' </tr>'+' <tr>'+' <td>'+' &nbsp;'+' <br />'+' &nbsp;'+' </td>'+' </tr>'+' <tr>'+' <th>'+' <b>{app_strings.LBL_EMAIL_ATTACHMENTS2}</b>'+' <br />'+' &nbsp;'+' </th>'+' </tr>'+' <tr>'+' <td>'+' <input type="button" name="add_document_button" onclick="SUGAR.email2.composeLayout.addDocumentField({idx});" value="{mod_strings.LBL_ADD_DOCUMENT}" class="button" />'+' <div id="addedDocuments{idx}"></div>'+' </td>'+' </tr>'+' <tr>'+' <td>'+' &nbsp;'+' <br />'+' &nbsp;'+' </td>'+' </tr>'+' <tr>'+' <th>'+' <div id="templateAttachmentsTitle{idx}" style="display:none"><b>{app_strings.LBL_EMAIL_ATTACHMENTS3}</b></div>'+' <br />'+' &nbsp;'+' </th>'+' </tr>'+' <tr>'+' <td>'+' <div id="addedTemplateAttachments{idx}"></div>'+' </td>'+' </tr>'+' </table>'+' </div>'+' </div>'+' </form>'+' <div id="divOptions{idx}" class="ylayout-inactive-content"'+' <div style="padding:5px;">'+' <form name="composeOptionsForm{idx}" id="composeOptionsForm{idx}">'+' <table border="0" width="100%">'+' <tr>'+' <td NOWRAP style="padding:2px;">'+' <b>{app_strings.LBL_EMAIL_TEMPLATES}:</b>'+' </td>'+' </tr>'+' <tr>'+' <td NOWRAP style="padding:2px;">'+' <select name="email_template{idx}" id="email_template{idx}" onchange="SUGAR.email2.composeLayout.applyEmailTemplate(\'{idx}\', this.options[this.selectedIndex].value);"></select>'+' </td>'+' </tr>'+' </table>'+' <br />'+' <table border="0" width="100%">'+' <tr>'+' <td NOWRAP style="padding:2px;">'+' <b>{app_strings.LBL_EMAIL_SIGNATURES}:</b>'+' </td>'+' </tr>'+' <tr>'+' <td NOWRAP style="padding:2px;">'+' <select name="signatures{idx}" id="signatures{idx}" onchange="SUGAR.email2.composeLayout.setSignature(\'{idx}\');"></select>'+' </td>'+' </tr>'+' </table>'+' <table border="0" width="100%">'+' <tr>'+' <td NOWRAP style="padding:2px;">'+' <input type="checkbox" id="setEditor{idx}" name="setEditor{idx}" value="1" onclick="SUGAR.email2.composeLayout.renderTinyMCEToolBar(\'{idx}\', this.checked);"/>&nbsp;'+' <b>{mod_strings.LBL_SEND_IN_PLAIN_TEXT}</b>'+' </td>'+' </tr>'+' </table>'+' </form>'+' </div> '+' </div>'+'</div>';/* End of File modules/Emails/javascript/composeEmailTemplate.js */
+SUGAR.email2.templates['compose']='<div id="composeLayout{idx}" class="ylayout-inactive-content"></div>'+'<div id="composeOverFrame{idx}" style="height:100%;width:100%;position:absolute;top:0px">'+' <form id="emailCompose{idx}" name="ComposeEditView{idx}" action="index.php" method="POST">'+' <input type="hidden" id="email_id{idx}" name="email_id" value="">'+' <input type="hidden" id="uid{idx}" name="uid" value="">'+' <input type="hidden" id="ieId{idx}" name="ieId" value="">'+' <input type="hidden" id="mbox{idx}" name="mbox" value="">'+' <input type="hidden" id="type{idx}" name="type" value="">'+' <input type="hidden" id="composeLayoutId" name="composeLayoutId" value="shouldNotSeeMe">'+' <input type="hidden" id="composeType" name="composeType">'+' <input type="hidden" id="fromAccount" name="fromAccount">'+' <input type="hidden" id="sendSubject" name="sendSubject">'+' <input type="hidden" id="sendDescription" name="sendDescription">'+' <input type="hidden" id="sendTo" name="sendTo">'+' <input type="hidden" id="sendBcc" name="sendBcc">'+' <input type="hidden" id="sendCc" name="sendCc">'+' <input type="hidden" id="setEditor" name="setEditor">'+' <input type="hidden" id="saveToSugar" name="saveToSugar">'+' <input type="hidden" id="parent_id" name="parent_id">'+' <input type="hidden" id="parent_type" name="parent_type">'+' <input type="hidden" id="attachments" name="attachments">'+' <input type="hidden" id="documents" name="documents">'+' <input type="hidden" id="outbound_email{idx}" name="outbound_email">'+' <input type="hidden" id="templateAttachments" name="templateAttachments">'+' <input type="hidden" id="templateAttachmentsRemove{idx}" name="templateAttachmentsRemove">'+' <table id="composeHeaderTable{idx}" cellpadding="0" cellspacing="0" border="0" width="100%" class="list">'+' <tr>'+' <th><table cellpadding="0" cellspacing="0" border="0"><tbody><tr ><td style="padding: 0px !important;margin:0px; !important" >'+' <button type="button" class="button" onclick="SUGAR.email2.composeLayout.sendEmail({idx}, false);"><img src="index.php?entryPoint=getImage&themeName='+SUGAR.themes.theme_name+'&imageName=icon_email_send.gif" align="absmiddle" border="0"> {app_strings.LBL_EMAIL_SEND}</button>'+' <button type="button" class="button" onclick="SUGAR.email2.composeLayout.saveDraft({idx}, false);"><img src="index.php?entryPoint=getImage&themeName='+SUGAR.themes.theme_name+'&imageName=icon_email_save.gif" align="absmiddle" border="0"> {app_strings.LBL_EMAIL_SAVE_DRAFT}</button>'+' <button type="button" class="button" onclick="SUGAR.email2.composeLayout.showAttachmentPanel({idx}, false);"><img src="index.php?entryPoint=getImage&themeName='+SUGAR.themes.theme_name+'&imageName=icon_email_attach.gif" align="absmiddle" border="0"> {app_strings.LBL_EMAIL_ATTACHMENT}</button>'+' <button type="button" class="button" onclick="SUGAR.email2.composeLayout.showOptionsPanel({idx}, false);"><img src="index.php?entryPoint=getImage&themeName='+SUGAR.themes.theme_name+'&imageName=icon_email_options.gif" align="absmiddle" border="0"> {app_strings.LBL_EMAIL_OPTIONS}</button>'+'</td><td style="padding: 0px !important;margin:0px; !important">&nbsp;&nbsp;{mod_strings.LBL_EMAIL_RELATE}:&nbsp;&nbsp;<select class="select" id="data_parent_type{idx}" onchange="document.getElementById(\'data_parent_name{idx}\').value=\'\';document.getElementById(\'data_parent_id{idx}\').value=\'\'; SUGAR.email2.composeLayout.enableQuickSearchRelate(\'{idx}\');" name="data_parent_type{idx}">{linkbeans_options}</select>'+'&nbsp;</td><td style="padding: 0px !important;margin:0px; !important"><input id="data_parent_id{idx}" name="data_parent_id{idx}" type="hidden" value="">'+'<input class="sqsEnabled" id="data_parent_name{idx}" name="data_parent_name{idx}" type="text" value="">&nbsp;<button type="button" class="button" onclick="SUGAR.email2.composeLayout.callopenpopupForEmail2({idx});"><img src="index.php?entryPoint=getImage&themeName=default&imageName=id-ff-select.png" align="absmiddle" border="0"></button>'+' </td></tr></tbody></table></th>'+' </tr>'+' <tr>'+' <td>'+' <div style="margin:5px;">'+' <table cellpadding="4" cellspacing="0" border="0" width="100%">'+' <tr>'+' <td class="emailUILabel" NOWRAP >'+' <label for="addressFrom{idx}">{app_strings.LBL_EMAIL_FROM}:</label>'+' </td>'+' <td class="emailUIField" NOWRAP>'+' <div>'+' &nbsp;&nbsp;<select style="width: 500px;" class="ac_input" id="addressFrom{idx}" name="addressFrom{idx}"></select>'+' </div>'+' </td>'+' </tr>'+' <tr>'+' <td class="emailUILabel" NOWRAP>'+' <button class="button" type="button" onclick="SUGAR.email2.addressBook.selectContactsDialogue(\'addressTO{idx}\')">'+' {app_strings.LBL_EMAIL_TO}:'+' </button>'+' </td>'+' <td class="emailUIField" NOWRAP>'+' <div class="ac_autocomplete">'+' &nbsp;&nbsp;<input class="ac_input" type="text" size="96" id="addressTO{idx}" title="{app_strings.LBL_EMAIL_TO}" name="addressTO{idx}" onkeyup="SE.composeLayout.showAddressDetails(this);">'+' <span class="rolloverEmail"> <a id="MoreaddressTO{idx}" href="#" style="display: none;">+<span id="DetailaddressTO{idx}">&nbsp;</span></a> </span>'+' <div class="ac_container" id="addressToAC{idx}"></div>'+' </div>'+' </td>'+' </tr>'+' <tr id="add_addr_options_tr{idx}">'+' <td class="emailUILabel" NOWRAP>&nbsp;</td><td class="emailUIField" valign="top" NOWRAP>&nbsp;&nbsp;<span id="cc_span{idx}"><a href="#" onclick="SE.composeLayout.showHiddenAddress(\'cc\',\'{idx}\');">{mod_strings.LBL_ADD_CC}</a></span><span id="bcc_cc_sep{idx}">&nbsp;{mod_strings.LBL_ADD_CC_BCC_SEP}&nbsp;</span><span id="bcc_span{idx}"><a href="#" onclick="SE.composeLayout.showHiddenAddress(\'bcc\',\'{idx}\');">{mod_strings.LBL_ADD_BCC}</a></span></td>'+' </tr>'+' <tr class="yui-hidden" id="cc_tr{idx}">'+' <td class="emailUILabel" NOWRAP>'+' <button class="button" type="button" onclick="SUGAR.email2.addressBook.selectContactsDialogue(\'addressCC{idx}\')">'+' {app_strings.LBL_EMAIL_CC}:'+' </button>'+' </td>'+' <td class="emailUIField" NOWRAP>'+' <div class="ac_autocomplete">'+' &nbsp;&nbsp;<input class="ac_input" type="text" size="96" id="addressCC{idx}" name="addressCC{idx}" title="{app_strings.LBL_EMAIL_CC}" onkeyup="SE.composeLayout.showAddressDetails(this);">'+' <span class="rolloverEmail"> <a id="MoreaddressCC{idx}" href="#" style="display: none;">+<span id="DetailaddressCC{idx}">&nbsp;</span></a> </span>'+' <div class="ac_container" id="addressCcAC{idx}"></div>'+' </div>'+' </td>'+' </tr>'+' <tr class="yui-hidden" id="bcc_tr{idx}">'+' <td class="emailUILabel" NOWRAP>'+' <button class="button" type="button" onclick="SUGAR.email2.addressBook.selectContactsDialogue(\'addressBCC{idx}\')">'+' {app_strings.LBL_EMAIL_BCC}:'+' </button>'+' </td>'+' <td class="emailUIField" NOWRAP>'+' <div class="ac_autocomplete">'+' &nbsp;&nbsp;<input class="ac_input" type="text" size="96" id="addressBCC{idx}" name="addressBCC{idx}" title="{app_strings.LBL_EMAIL_BCC}" onkeyup="SE.composeLayout.showAddressDetails(this);">'+' <span class="rolloverEmail"> <a id="MoreaddressBCC{idx}" href="#" style="display: none;">+<span id="DetailaddressBCC{idx}">&nbsp;</span></a> </span>'+' <div class="ac_container" id="addressBccAC{idx}"></div>'+' </div>'+' </td>'+' </tr>'+' <tr>'+' <td class="emailUILabel" NOWRAP width="1%">'+' <label for="emailSubject{idx}">{app_strings.LBL_EMAIL_SUBJECT}:</label>'+' </td>'+' <td class="emailUIField" NOWRAP width="99%">'+' <div class="ac_autocomplete">'+' &nbsp;&nbsp;<input class="ac_input" type="text" size="96" id="emailSubject{idx}" name="subject{idx}" value="" maxlength="'+SUGAR.email2.composeLayout.subjectMaxlen+'">'+' </div>'+' </td>'+' </tr>'+' </table>'+' </div>'+' </td>'+' </tr>'+' </table>'+' <textarea id="htmleditor{idx}" name="htmleditor{idx}" style="width:100%; height: 100px;"></textarea>'+' <div id="divAttachments{idx}" class="ylayout-inactive-content">'+' <div style="padding:5px;">'+' <table cellpadding="2" cellspacing="0" border="0">'+' <tr>'+' <th>'+' <b>{app_strings.LBL_EMAIL_ATTACHMENTS}</b>'+' <br />'+' &nbsp;'+' </th>'+' </tr>'+' <tr>'+' <td>'+' <input type="button" name="add_file_button" onclick="SUGAR.email2.composeLayout.addFileField();" value="{mod_strings.LBL_ADD_FILE}" class="button" />'+' <div id="addedFiles{idx}" name="addedFiles{idx}"></div>'+' </td>'+' </tr>'+' <tr>'+' <td>'+' &nbsp;'+' <br />'+' &nbsp;'+' </td>'+' </tr>'+' <tr>'+' <th>'+' <b>{app_strings.LBL_EMAIL_ATTACHMENTS2}</b>'+' <br />'+' &nbsp;'+' </th>'+' </tr>'+' <tr>'+' <td>'+' <input type="button" name="add_document_button" onclick="SUGAR.email2.composeLayout.addDocumentField({idx});" value="{mod_strings.LBL_ADD_DOCUMENT}" class="button" />'+' <div id="addedDocuments{idx}"></div>'+' </td>'+' </tr>'+' <tr>'+' <td>'+' &nbsp;'+' <br />'+' &nbsp;'+' </td>'+' </tr>'+' <tr>'+' <th>'+' <div id="templateAttachmentsTitle{idx}" style="display:none"><b>{app_strings.LBL_EMAIL_ATTACHMENTS3}</b></div>'+' <br />'+' &nbsp;'+' </th>'+' </tr>'+' <tr>'+' <td>'+' <div id="addedTemplateAttachments{idx}"></div>'+' </td>'+' </tr>'+' </table>'+' </div>'+' </div>'+' </form>'+' <div id="divOptions{idx}" class="ylayout-inactive-content"'+' <div style="padding:5px;">'+' <form name="composeOptionsForm{idx}" id="composeOptionsForm{idx}">'+' <table border="0" width="100%">'+' <tr>'+' <td NOWRAP style="padding:2px;">'+' <b>{app_strings.LBL_EMAIL_TEMPLATES}:</b>'+' </td>'+' </tr>'+' <tr>'+' <td NOWRAP style="padding:2px;">'+' <select name="email_template{idx}" id="email_template{idx}" onchange="SUGAR.email2.composeLayout.applyEmailTemplate(\'{idx}\', this.options[this.selectedIndex].value);"></select>'+' </td>'+' </tr>'+' </table>'+' <br />'+' <table border="0" width="100%">'+' <tr>'+' <td NOWRAP style="padding:2px;">'+' <b>{app_strings.LBL_EMAIL_SIGNATURES}:</b>'+' </td>'+' </tr>'+' <tr>'+' <td NOWRAP style="padding:2px;">'+' <select name="signatures{idx}" id="signatures{idx}" onchange="SUGAR.email2.composeLayout.setSignature(\'{idx}\');"></select>'+' </td>'+' </tr>'+' </table>'+' <table border="0" width="100%">'+' <tr>'+' <td NOWRAP style="padding:2px;">'+' <input type="checkbox" id="setEditor{idx}" name="setEditor{idx}" value="1" onclick="SUGAR.email2.composeLayout.renderTinyMCEToolBar(\'{idx}\', this.checked);"/>&nbsp;'+' <b>{mod_strings.LBL_SEND_IN_PLAIN_TEXT}</b>'+' </td>'+' </tr>'+' </table>'+' </form>'+' </div> '+' </div>'+'</div>';/* End of File modules/Emails/javascript/composeEmailTemplate.js */
function complexLayoutInit(){var se=SUGAR.email2;var Dom=YAHOO.util.Dom;se.e2Layout={getInnerLayout:function(rows){se.listViewLayout=new YAHOO.widget.Layout('listViewDiv',{parent:se.complexLayout,border:true,hideOnLayout:true,height:400,units:[{position:"center",scroll:false,split:true,body:"<div id='emailGrid'></div><div id='dt-pag-nav'></div> "},{position:"bottom",scroll:true,collapse:false,resize:true,useShim:true,height:'250',body:"<div id='listBottom' />"},{position:"right",scroll:true,collapse:false,resize:true,useShim:true,width:'250',body:"<div id='listRight' />",titlebar:false}]});se.complexLayout.on("render",function(){var height=SUGAR.email2.innerLayout.get("element").clientHeight-30;SUGAR.email2.innerLayout.get("activeTab").get("contentEl").parentNode.style.height=height+"px";SUGAR.email2.listViewLayout.set("height",height);SUGAR.email2.listViewLayout.render();});se.listViewLayout.render();se.listViewLayout.get("element").parentNode.parentNode.style.padding="0px"
View
2  data/Link2.php
@@ -303,7 +303,7 @@ public function getSide() {
{
if ((strtolower($this->def['side']) == 'left' || $this->def['side'] == REL_LHS)
//Some relationships make have left in the vardef erroneously if generated by module builder
- && $this->name != $this->relationship->def['join_key_lhs'])
+ && (empty($this->relationship->def['join_key_lhs']) || $this->name != $this->relationship->def['join_key_lhs']))
{
return REL_LHS ;
}
View
24 data/Relationships/SugarRelationship.php
@@ -115,12 +115,14 @@
/**
* @param $link Link2 removes all the beans associated with this link from the relationship
- * @return boolean true if it was successful, false if it was not
+ * @return boolean true if all beans were successfully removed or there
+ * were not related beans, false otherwise
*/
public function removeAll($link)
{
$focus = $link->getFocus();
$related = $link->getBeans();
+ $result = true;
foreach($related as $relBean)
{
if (empty($relBean->id)) {
@@ -128,12 +130,18 @@ public function removeAll($link)
}
if ($link->getSide() == REL_LHS)
- return $this->remove($focus, $relBean);
+ {
+ $sub_result = $this->remove($focus, $relBean);
+ }
else
- return $this->remove($relBean, $focus);
+ {
+ $sub_result = $this->remove($relBean, $focus);
+ }
+
+ $result = $result && $sub_result;
}
- return false;
+ return $result;
}
/**
@@ -434,6 +442,14 @@ public static function resaveRelatedBeans()
{
$bean->save();
}
+ else
+ {
+ // Bug 55942 save the in-save id which will be used to send workflow alert later
+ if (isset($bean->id) && !empty($_SESSION['WORKFLOW_ALERTS']))
+ {
+ $_SESSION['WORKFLOW_ALERTS']['id'] = $bean->id;
+ }
+ }
}
}
View
88 data/SugarBean.php
@@ -73,7 +73,14 @@ class SugarBean
*/
var $db;
- /**
+ /**
+ * Unique object identifier
+ *
+ * @var string
+ */
+ public $id;
+
+ /**
* When createing a bean, you can specify a value in the id column as
* long as that value is unique. During save, if the system finds an
* id, it assumes it is an update. Setting new_with_id to true will
@@ -271,12 +278,18 @@ class SugarBean
* @var array
*/
protected $loaded_relationships = array();
-
+
/**
* set to true if dependent fields updated
*/
protected $is_updated_dependent_fields = false;
-
+
+ /**
+ * Blowfish encryption key
+ * @var string
+ */
+ static protected $field_key;
+
/**
* Constructor for the bean, it performs following tasks:
*
@@ -466,11 +479,11 @@ function get_audit_table_name()
*
* Internal function, do not override.
*/
- public function get_custom_table_name()
- {
- return $this->getTableName().'_cstm';
+ public function get_custom_table_name()
+ {
+ return $this->getTableName().'_cstm';
}
-
+
/**
* If auditing is enabled, create the audit table.
*
@@ -1703,8 +1716,8 @@ protected function set_relationship_info($exclude = array())
// if LHSModule and RHSModule are same module use left link to add new item b/s of:
// $rel_id and $rel_link are not emty - request is from subpanel
// $rel_link contains relationship name - checked by call load_relationship
- $this->load_relationship($rel_link);
- if ( !empty($this->$rel_link) && $this->$rel_link->getRelationshipObject() && $this->$rel_link->getRelationshipObject()->getLHSModule() == $this->$rel_link->getRelationshipObject()->getRHSModule() )
+ $isRelationshipLoaded = $this->load_relationship($rel_link);
+ if ($isRelationshipLoaded && !empty($this->$rel_link) && $this->$rel_link->getRelationshipObject() && $this->$rel_link->getRelationshipObject()->getLHSModule() == $this->$rel_link->getRelationshipObject()->getRHSModule() )
{
$new_rel_link = $this->$rel_link->getRelationshipObject()->getLHSLink();
}
@@ -2209,7 +2222,7 @@ function retrieve($id = -1, $encode=true,$deleted=true)
{
$this->custom_fields->fill_relationships();
}
-
+
$this->is_updated_dependent_fields = false;
$this->fill_in_additional_detail_fields();
$this->fill_in_relationship_fields();
@@ -2220,7 +2233,7 @@ function retrieve($id = -1, $encode=true,$deleted=true)
{
$this->fetched_rel_row[$rel_field_name['name']] = $this->$rel_field_name['name'];
}
- }
+ }
//make a copy of fields in the relationship_fields array. These field values will be used to
//clear relationship.
foreach ( $this->field_defs as $key => $def )
@@ -2554,12 +2567,12 @@ function get_related_list($child_seed,$related_field_name, $order_by = "", $wher
}
$this->load_relationship($related_field_name);
-
+
if ($this->$related_field_name instanceof Link) {
-
+
$query_array = $this->$related_field_name->getQuery(true);
} else {
-
+
$query_array = $this->$related_field_name->getQuery(array(
"return_as_array" => true,
'where' => '1=1' // hook for 'where' clause in M2MRelationship file
@@ -2648,6 +2661,8 @@ protected static function build_sub_queries_for_union($subpanel_list, $subpanel_
$submodulename = $this_subpanel->_instance_properties['module'];
$submoduleclass = $beanList[$submodulename];
//require_once($beanFiles[$submoduleclass]);
+
+ /** @var SugarBean $submodule */
$submodule = new $submoduleclass();
$subwhere = $where_definition;
@@ -2676,7 +2691,10 @@ protected static function build_sub_queries_for_union($subpanel_list, $subpanel_
$params['include_custom_fields'] = !$subpanel_def->isCollection();
$params['collection_list'] = $subpanel_def->get_inst_prop_value('collection_list');
- $subquery = $submodule->create_new_list_query('',$subwhere ,$list_fields,$params, 0,'', true,$parentbean);
+ // use single select in case when sorting by relate field
+ $singleSelect = $submodule->is_relate_field($order_by);
+
+ $subquery = $submodule->create_new_list_query('',$subwhere ,$list_fields,$params, 0,'', true,$parentbean, $singleSelect);
$subquery['select'] = $subquery['select']." , '$panel_name' panel_name ";
$subquery['from'] = $subquery['from'].$query_array['join'];
@@ -3151,7 +3169,8 @@ function create_new_list_query($order_by, $where,$filter=array(),$params=array()
$jtcount++;
}
}
- if($data['type'] == 'relate' && isset($data['link']))
+
+ if ($this->is_relate_field($field))
{
$this->load_relationship($data['link']);
if(!empty($this->$data['link']))
@@ -4328,6 +4347,7 @@ function mark_deleted($id)
$tracker = new Tracker();
$tracker->makeInvisibleForAll($id);
+
// call the custom business logic
$this->call_custom_logic("after_delete", $custom_logic_arguments);
}
@@ -4580,7 +4600,7 @@ function get_list_view_array()
static $cache = array();
// cn: bug 12270 - sensitive fields being passed arbitrarily in listViews
$sensitiveFields = array('user_hash' => '');
-
+
$return_array = Array();
global $app_list_strings, $mod_strings;
foreach($this->field_defs as $field=>$value){
@@ -5337,6 +5357,15 @@ function add_address_streets(
$this->$street_field = trim($this->$street_field, "\n");
}
}
+
+ protected function getEncryptKey()
+ {
+ if(empty(self::$field_key)) {
+ self::$field_key = blowfishGetKey('encrypt_field');
+ }
+ return self::$field_key;
+ }
+
/**
* Encrpyt and base64 encode an 'encrypt' field type in the bean using Blowfish. The default system key is stored in cache/Blowfish/{keytype}
* @param STRING value -plain text value of the bean field.
@@ -5345,7 +5374,7 @@ function add_address_streets(
function encrpyt_before_save($value)
{
require_once("include/utils/encryption_utils.php");
- return blowfishEncode(blowfishGetKey('encrypt_field'),$value);
+ return blowfishEncode($this->getEncryptKey(), $value);
}
/**
@@ -5355,8 +5384,9 @@ function encrpyt_before_save($value)
*/
function decrypt_after_retrieve($value)
{
+ if(empty($value)) return $value; // no need to decrypt empty
require_once("include/utils/encryption_utils.php");
- return blowfishDecode(blowfishGetKey('encrypt_field'), $value);
+ return blowfishDecode($this->getEncryptKey(), $value);
}
/**
@@ -5548,4 +5578,24 @@ public function create_export_query($order_by, $where)
{
return $this->create_new_list_query($order_by, $where, array(), array(), 0, '', false, $this, true, true);
}
+
+ /**
+ * Determine whether the given field is a relate field
+ *
+ * @param string $field Field name
+ * @return bool
+ */
+ protected function is_relate_field($field)
+ {
+ if (!isset($this->field_defs[$field]))
+ {
+ return false;
+ }
+
+ $field_def = $this->field_defs[$field];
+
+ return isset($field_def['type'])
+ && $field_def['type'] == 'relate'
+ && isset($field_def['link']);
+ }
}
View
129 files.md5
@@ -1,5 +1,5 @@
<?php
-// created: 2012-10-17 11:27:55
+// created: 2012-11-19 10:30:23
$md5_string = array (
'./LICENSE.txt' => 'd3f150e4a5bed444763ebe8a81742a95',
'./.htaccess' => 'd41d8cd98f00b204e9800998ecf8427e',
@@ -268,7 +268,7 @@ $md5_string = array (
'./include/HTMLPurifier/standalone/HTMLPurifier/EntityLookup/entities.ser' => '0effa122c2636c1b1d5ed4b900e51e68',
'./include/HTMLPurifier/standalone/HTMLPurifier/Printer.php' => '530db343c69ec3d4ba27e09e4b837903',
'./include/HTMLPurifier/VERSION' => 'c9e4dc50b8d6ed20385fdca95873b3a5',
- './include/HTMLPurifier/HTMLPurifier.standalone.php' => '98906b387369850c456a850dbf20b9da',
+ './include/HTMLPurifier/HTMLPurifier.standalone.php' => '7780b45f4f623b2fb08b04c3aed3f0ce',
'./include/HTMLPurifier/LICENSE' => 'a1b3d3e45e8422eed104489842a6f546',
'./include/HTMLPurifier/CREDITS' => 'a5f9ddecea015543001404c0a9bfd181',
'./include/SugarHtml/SugarHtml.php' => '058c02dae665d65a0c630927988e9594',
@@ -292,7 +292,7 @@ $md5_string = array (
'./include/Sugarpdf/Sugarpdf.php' => '7e44d3d7308df3c1e5fad15c776c88ee',
'./include/Sugarpdf/sugarpdf_default.php' => '7f19994bcf11b5d98801c3739eab57a2',
'./include/Sugarpdf/sugarpdf_config.php' => '3768422dd5bfb14aca352ea209a0ebae',
- './include/clean.php' => 'e95a4b6caeb54b3064cda0c7748dd3be',
+ './include/clean.php' => '4ec6c61c8c04aacee15897e05bf9e07f',
'./include/externalAPI/ExternalAPIFactory.php' => '0dfa0647b6b6484f28927eb5018749e0',
'./include/externalAPI/cmis_repository_wrapper.php' => 'ff3bb54e2abd73334bb05df8b6920b8d',
'./include/externalAPI/Base/WebDocument.php' => 'ede22580002f6416a2502dee7d0be18f',
@@ -475,7 +475,7 @@ $md5_string = array (
'./include/SugarCharts/swf/groupByChart.swf' => '2eca03fe41128001349bacf997b1fedc',
'./include/SugarCharts/SugarChartFactory.php' => '4873cc48dd3a2258af3a7998713b2398',
'./include/SugarCharts/JsChart.php' => '93080932f4335c6ef0c74049d3c566ce',
- './include/SugarCharts/SugarChart.php' => '4a1139531b33ab4f62d26c4316ffef65',
+ './include/SugarCharts/SugarChart.php' => '323ee23a6d0775f348ed6184feab960e',
'./include/SugarCharts/Jit/js/sugarCharts.js' => '643ed60792a2efe2c62c6ee3f094d735',
'./include/SugarCharts/Jit/js/mySugarCharts.js' => '6b3dd85fe7c6d5714b6d12c63e536982',
'./include/SugarCharts/Jit/js/Jit/jit.js' => 'de9a71d630e97395d4bae316c5995fca',
@@ -576,7 +576,7 @@ $md5_string = array (
'./include/nusoap/license.txt' => '25823f4a2e463ab2c6b5873f07e428e1',
'./include/nusoap/class.wsdl.php' => 'cd7f1a43ca08891ac1ce04d4d1282c49',
'./include/nusoap/class.soap_val.php' => '084a898ecf261c201427fd41d4ee40e0',
- './include/utils.php' => '5184935200fafb7e32b0e99321d939f6',
+ './include/utils.php' => '132cf74e2ac611d2975de859a9a5eeda',
'./include/SugarHttpClient.php' => '87fa99a397caaaceb121a21d91ed5260',
'./include/Sugar_Smarty.php' => 'ac140125309e194a7f43747d41417cd4',
'./include/phpmailer/extras/htmlfilter.php' => '4d5143899340a690d41a4959428ea674',
@@ -620,7 +620,7 @@ $md5_string = array (
'./include/database/MssqlHelper.php' => '6b3a36ab4462e0f838c35e0e74e0f02b',
'./include/database/DBManagerFactory.php' => '021c6c562cd96f304544af0e336dc736',
'./include/database/SqlsrvManager.php' => '4a3d6c5e56ae8fe5fdb07ead522c324e',
- './include/database/MssqlManager.php' => 'a57a3088cab4b17101698bbf8b8e52a4',
+ './include/database/MssqlManager.php' => '093b32e8227a2e186265800a0c37cce3',
'./include/timezone/timezones.php' => '15844342704f03ef8d40603abe9aa99b',
'./include/SugarSQLValidate.php' => 'eb288af9ccb9828370ef3999ad926619',
'./include/connectors/ConnectorFactory.php' => '33d27fc539bbd684cf7deb0cea6ed37d',
@@ -651,7 +651,7 @@ $md5_string = array (
'./include/templates/Template.php' => '36ef9b944d7e36d9853d9879f6194969',
'./include/templates/TemplateGroupChooser.php' => '6ae99e0ff3795b613d03ec0474e52c46',
'./include/TemplateHandler/TemplateHandler.php' => '4da8355d19789c5c532c621d12d049ed',
- './include/SugarTheme/SugarTheme.php' => 'dcebbc005e58ed68b7923423e614f516',
+ './include/SugarTheme/SugarTheme.php' => '301d36442a1c85b5c23c1a9741c58b7e',
'./include/SugarTheme/getImage.php' => '19291feae95e57bc666eec37b612664e',
'./include/SugarTheme/SugarSprites.php' => '10818287a033eed727e4269522cc7044',
'./include/SugarTheme/cssmin.php' => '05384ba957435def09368425e4480688',
@@ -659,7 +659,7 @@ $md5_string = array (
'./include/SugarDependentDropdown/javascript/SugarDependentDropdown.js' => '4d077b3991c83098e4bca166bc715071',
'./include/SugarDependentDropdown/SugarDependentDropdown.php' => '86eb13e7c54068ec87679e98a4e0d406',
'./include/export_utils.php' => '885a0dd6cda051658520a90f522f787f',
- './include/globalControlLinks.php' => 'e5ce2b2390cb6a83129779cfe6d20f57',
+ './include/globalControlLinks.php' => 'ed8fa6c0797f56e3326a18e3980ce65f',
'./include/SugarTinyMCE.php' => 'a00a969d2a2df9dbbc80ead4af9b40de',
'./include/tabs.php' => '7cf9418691424c673218c535fec27a05',
'./include/SugarOAuthServer.php' => '2213c81d7cef1884997b4a0d38216fd9',
@@ -744,7 +744,7 @@ $md5_string = array (
'./include/EditView/EditView2.php' => 'a03923ba3c798ef5990abd23d83948f7',
'./include/EditView/PopupQuickCreate.php' => '9a8b7a895799ed90058b3e070ad7f672',
'./include/EditView/SugarVCR.tpl' => '5b46cb6d983f213ec90733aa54bfba45',
- './include/EditView/EditView.tpl' => 'fe408b4bea39633daf1025738f1f4b4e',
+ './include/EditView/EditView.tpl' => '25515351fd6fe70f692136f1eb9cc39f',
'./include/EditView/QuickCreate.php' => 'a4351f400593c2a1933176d8e34bc82c',
'./include/EditView/SubpanelQuickEdit.php' => 'f7bc58f5f93c60cf2953ec9dbf1e0b15',
'./include/SugarQueue/SugarCronJobs.php' => 'd7b547d698238a2bd170c86ce3ed67e1',
@@ -798,7 +798,7 @@ $md5_string = array (
'./include/javascript/sugar_yui_overrides.js' => '2044e4ff54670e82359c21cca12b2dd5',
'./include/javascript/cookie.js' => '88a6745e90f7c043394eca8b106068b2',
'./include/javascript/popup_parent_helper.js' => '592953cb14307a0ce288261d40c4f8a9',
- './include/javascript/sugar_3.js' => 'fa4ca2af1a0b212ed34c8063cd4b9adb',
+ './include/javascript/sugar_3.js' => '166f28da9c36b77606b421a6d584d43d',
'./include/javascript/jquery.js' => '819fb9d29c24f79d34343e9f182aaf24',
'./include/javascript/sugar_connection_event_listener.js' => '27234843e68e64fc9c399044619320be',
'./include/javascript/jsclass_async.js' => 'd725c16df9803e561437c4a2e13d1372',
@@ -2552,7 +2552,7 @@ $md5_string = array (
'./include/MVC/View/tpls/xsrf.tpl' => 'd62524430cf4e4701fe86737f8a7682f',
'./include/MVC/View/tpls/modulelistmenu.tpl' => '136df5b86eb938738c37bc836c8ace97',
'./include/MVC/View/views/view.metadata.php' => '358be31f180b06068b9c9296de8a5415',
- './include/MVC/View/views/view.importvcardsave.php' => '06077ded9cb261005b36a33aac9f3188',
+ './include/MVC/View/views/view.importvcardsave.php' => '35e68b8497091ca8ab4c02c4ab63ac68',
'./include/MVC/View/views/view.quickedit.php' => '986cc9fda8e782b31668586ed5d296e0',
'./include/MVC/View/views/view.quickcreate.php' => '49806236c0cc41cc5a8b39c2008f6c4f',
'./include/MVC/View/views/view.detail.config.php' => 'c39a0838b0caa86281c6f500779260df',
@@ -2560,12 +2560,12 @@ $md5_string = array (
'./include/MVC/View/views/view.vcard.php' => 'b28901f6dd26f4b92c82a50b562610fb',
'./include/MVC/View/views/view.multiedit.php' => '14e60eed1da6bdd4484a9fba241ac7a0',
'./include/MVC/View/views/view.list.php' => '3d73c1e5d7d7310bb54cf1a8ca7b0e28',
- './include/MVC/View/views/view.popup.php' => 'e7269ffc993b42942c3441a3e63f4e20',
+ './include/MVC/View/views/view.popup.php' => '20de3c54cb9040995f2e1435b4c048ca',
'./include/MVC/View/views/view.quick.php' => '4c1fda7615101d7c9a11af7e9c495289',
'./include/MVC/View/views/view.xml.php' => '5ca6f033ae95a3d8d7eacbaaac86d58a',
'./include/MVC/View/views/view.sugarpdf.config.php' => '85c23b2aa8b6af2b82efc3eae453a118',
'./include/MVC/View/views/view.favorites.php' => 'e8585f22c20d50e37895a3c968f6790e',
- './include/MVC/View/views/view.importvcard.php' => 'c066d470c13bdd9d41fddef1d0d01bff',
+ './include/MVC/View/views/view.importvcard.php' => '6adb2efc88d04eb2514fa974426abd3d',
'./include/MVC/View/views/view.ajaxui.php' => '2b6496589d96202d453cb98ffbc51d3a',
'./include/MVC/View/views/view.classic.config.php' => '5d90625b2648beb884b29c10a076b1fe',
'./include/MVC/View/views/view.edit.php' => 'c815bae865c215630d964e590db57aca',
@@ -2641,7 +2641,7 @@ $md5_string = array (
'./include/pclzip/gnu-lgpl.txt' => '7fbc338309ac38fefcd64b04bb903e34',
'./include/pclzip/pclzip.lib.php' => 'f42cfbdfccc2dcd85df39638ae2d141c',
'./include/SugarEmailAddress/SugarEmailAddress.js' => '6217eae817e6af59e21666cc3087a9d9',
- './include/SugarEmailAddress/SugarEmailAddress.php' => '2673a2bec92c810eedc4d1cc7bd63952',
+ './include/SugarEmailAddress/SugarEmailAddress.php' => '3099caeb2dd86f89e3d90c4bc5c1f00d',
'./include/SugarEmailAddress/templates/forDuplicatesView.tpl' => '7606911a788f6fa0f4aca806679e4098',
'./include/SugarEmailAddress/templates/forDetailView.tpl' => '8a913b1d6cbaf35ff7237c8c6022af9c',
'./include/SugarEmailAddress/templates/forWideFormBodyView.tpl' => '0dc9422da0b8ec60a58ae06d7215c3fb',
@@ -2704,7 +2704,7 @@ $md5_string = array (
'./include/Smarty/plugins/modifier.lower.php' => '014241bdc9356e4db65ff84902e868d2',
'./include/Smarty/plugins/function.html_image.php' => '06abba1563143b4b1190ca07d53b0a0d',
'./include/Smarty/plugins/function.config_load.php' => '752a15886ca6ee831f2ab650ab09fe4e',
- './include/Smarty/plugins/function.sugar_button.php' => 'ff430938e7a1ca7f7d2cac229170779d',
+ './include/Smarty/plugins/function.sugar_button.php' => '8df59ad4424dd32178bc34cd4da80cc5',
'./include/Smarty/plugins/function.sugar_ajax_url.php' => 'a0f1b3ec9077718a4a020b2be4f12b66',
'./include/Smarty/plugins/function.popup.php' => 'cf231d09647d1b1cf0adf5904b66b6a6',
'./include/Smarty/plugins/function.sugar_variable_constructor.php' => '6561cdb5987f989d18090a4713c9a27a',
@@ -2762,9 +2762,9 @@ $md5_string = array (
'./include/Smarty/plugins/function.html_options.php' => 'a7903c34c86b166373946497fac2b7bb',
'./include/Smarty/plugins/function.sugar_replace_vars.php' => '0d5489b730db3efb79e2d1731e28f4ad',
'./include/Smarty/README' => '1a3fe37eed420a020489d1082ea150c8',
- './include/Smarty/Smarty_Compiler.class.php' => 'b9a859a96c0d005cee69253bac461599',
+ './include/Smarty/Smarty_Compiler.class.php' => 'bfeedb6825aa028558e057fede645c58',
'./include/DetailView/footer.tpl' => '82f240a39faba85858e561048e23fffd',
- './include/DetailView/header.tpl' => 'a265fdffd2265242afdd508cf9e2863b',
+ './include/DetailView/header.tpl' => '271c7dc1c8fa257bfe656211c882e93c',
'./include/DetailView/DetailView.tpl' => 'a3c4dd95d931815f9845a09fe2e3da33',
'./include/DetailView/DetailView.php' => '3df8ccba8aca6dffb5969c47001d7435',
'./include/DetailView/DetailView2.php' => '4f800afa17ab95068341a3474e78fb76',
@@ -2774,13 +2774,13 @@ $md5_string = array (
'./include/generic/SugarWidgets/SugarWidgetSubPanelEditRoleButton.php' => 'ffd2ba1b7c2b0124a3b70dc00009a94d',
'./include/generic/SugarWidgets/SugarWidgetSubPanelTopComposeEmailButton.php' => 'b6375e51b1f1f3b827c9aa300cdd065e',
'./include/generic/SugarWidgets/SugarWidgetFieldurl.php' => '8909a2b419250e770cd07129da34b6d7',
- './include/generic/SugarWidgets/SugarWidgetFieldcurrency.php' => '2839093eafaefeeaaf94933f5a66b904',
+ './include/generic/SugarWidgets/SugarWidgetFieldcurrency.php' => '7a98d1fd1cbea5efb1e82b233c794f9b',
'./include/generic/SugarWidgets/SugarWidgetSubPanelTopCreateAccountNameButton.php' => 'be445affddc003efff8e6206031385a0',
'./include/generic/SugarWidgets/SugarWidgetFielddatepicker.php' => 'dee020ff9030fee04b450be6d2f57db4',
'./include/generic/SugarWidgets/SugarWidgetFieldchar.php' => 'ff4c04e9e87b53eabd82a38fe8c16e35',
'./include/generic/SugarWidgets/SugarWidgetFieldmultienum.php' => 'ef4f0eec6d7fb12bd9b76d9f26ce0cb6',
'./include/generic/SugarWidgets/SugarWidgetField.php' => '677f2d56818b2b35611e73799d80140b',
- './include/generic/SugarWidgets/SugarWidgetSubPanelIcon.php' => '2a22c376b999d71977dcbcf33b48941c',
+ './include/generic/SugarWidgets/SugarWidgetSubPanelIcon.php' => '5fc930adb49d6ea0cc0bc381e41e59ef',
'./include/generic/SugarWidgets/SugarWidgetSubPanelTopMessage.php' => 'a61dac690bca32a9da19652d34d277a5',
'./include/generic/SugarWidgets/SugarWidgetFieldvarchar.php' => 'e5b8d2c27312e5494f0020949e4d6d83',
'./include/generic/SugarWidgets/SugarWidgetFieldbool.php' => '16a9aa475696846daf03073c8b107a86',
@@ -2791,6 +2791,7 @@ $md5_string = array (
'./include/generic/SugarWidgets/SugarWidgetFieldsingleenum.php' => '0338edf920bf35a9d965509024f94473',
'./include/generic/SugarWidgets/SugarWidgetSubPanelLoadSignedButton.php' => '1ec69a812e9d70198969fc8c753e6256',
'./include/generic/SugarWidgets/SugarWidgetSubPanelTopSelectContactsButton.php' => 'b9e8b558ba286954747abfde1920fb24',
+ './include/generic/SugarWidgets/SugarWidgetFieldcurrency_id.php' => '82b683c04041c83281d4a9544c4fa388',
'./include/generic/SugarWidgets/SugarWidgetFielddate.php' => 'efccab584bdb7950220abab57c1290aa',
'./include/generic/SugarWidgets/SugarWidgetFielduser_name.php' => 'ac7581e728a68f2f08292dd2ff53def4',
'./include/generic/SugarWidgets/SugarWidgetFieldid.php' => 'c8e80e951a61d6edbab6051cececa3c7',
@@ -2825,7 +2826,7 @@ $md5_string = array (
'./include/generic/SugarWidgets/SugarWidgetSubPanelTopButton.php' => '934a6ff7977d2b3501d1551e31445b3b',
'./include/generic/SugarWidgets/SugarWidgetSubPanelEditButton.php' => '396cf26585199d9f4709af3e21de089c',
'./include/generic/SugarWidgets/SugarWidgetSubPanelTopCreateCampaignLogEntryButton.php' => 'eda0760a68c648b6924ff97e44d294e5',
- './include/generic/SugarWidgets/SugarWidgetReportField.php' => '4046f65a6ccbbb49386e9b19fc756cf7',
+ './include/generic/SugarWidgets/SugarWidgetReportField.php' => '437d608346ca8511beff7763493148f7',
'./include/generic/SugarWidgets/SugarWidgetSubPanelCloseButton.php' => '8add175bc8b9b0576efc420c9211d7b1',
'./include/generic/SugarWidgets/SugarWidgetSubPanelTopCreateNoteButton.php' => '3d0a6b29a27135a455a781a0a81e24f8',
'./include/generic/SugarWidgets/SugarWidgetFieldnum.php' => '15c06a35b7f2ee9f0a41716d5b6d393d',
@@ -2842,7 +2843,7 @@ $md5_string = array (
'./include/TimeDate.php' => 'a16a335faac57bf6c82e1ccb338965af',
'./include/Localization/Localization.php' => '4457d1268188679cb77909a29a8ca988',
'./include/SugarLogger/SugarLogger.php' => '836fbd1cd96d4e27752cea9f59c0df26',
- './include/SugarLogger/LoggerManager.php' => '602f6d77fbd6d38119e8d94b71222927',
+ './include/SugarLogger/LoggerManager.php' => '6875c6e63bf813acd76d5d867bc2b040',
'./include/SugarLogger/LoggerTemplate.php' => '3fc58dcd911a3be4116d4a1190e89a17',
'./include/SugarCache/SugarCacheMemory.php' => '4c04271ae1c5e1ba4266c4c88e88fa47',
'./include/SugarCache/SugarCachesMash.php' => 'a84aec8a29c65205c426b29625ed4fa8',
@@ -2879,7 +2880,7 @@ $md5_string = array (
'./dictionary.php' => '19245b9374ee0cfc7048c87c7548652e',
'./HandleAjaxCall.php' => 'e8f0cb63050a3f85e26d5f295c54d8b6',
'./ModuleInstall/extensions.php' => 'd17953438bdd75848cce5a5dbe929e5e',
- './ModuleInstall/ModuleScanner.php' => 'ca20e34ae03ca921c68eb4195d4efe4b',
+ './ModuleInstall/ModuleScanner.php' => 'b9570c5d23ff6527607e0e562bb9f728',
'./ModuleInstall/ModuleInstaller.php' => '7595862d0c0fbaaba337058ed6e61ba7',
'./ModuleInstall/PackageManager/tpls/PackageForm.tpl' => 'b0f7f452c6c32251c1e88f3f06422018',
'./ModuleInstall/PackageManager/tpls/PackageManagerScripts.tpl' => '305b5d5a2ea5f04c533b982a5f1422ee',
@@ -3301,7 +3302,7 @@ $md5_string = array (
'./SugarSecurity.php' => 'e87f1efee51af1d8801dc2376068cee3',
'./export.php' => '7639b2373c4d0c73765033d70abfb55d',
'./data/BeanFactory.php' => '5148eb779611ca40e342900456fc6f29',
- './data/SugarBean.php' => '592c181708651b1b9faed97f9f41df68',
+ './data/SugarBean.php' => '889c583c98275bdacc9335de2d8cd9e4',
'./data/Link.php' => 'de95f31cf30c2f46a234c4a840c01f84',
'./data/Relationships/One2OneRelationship.php' => '88194998edcdad83a887aa1ef014d5de',
'./data/Relationships/EmailAddressRelationship.php' => '1a46e6504810e22a7854b64af2377fdf',
@@ -3309,9 +3310,9 @@ $md5_string = array (
'./data/Relationships/RelationshipFactory.php' => '4c70024ff9b3bbfa9eeb76095f33d472',
'./data/Relationships/One2MBeanRelationship.php' => '18c6acb5e2f0f51d31fb5078a689102c',
'./data/Relationships/One2OneBeanRelationship.php' => '654eafffcc24bad9f464a76f0973843e',
- './data/Relationships/SugarRelationship.php' => 'f80aa20b39d590f2007c218fee7fba67',
+ './data/Relationships/SugarRelationship.php' => '458dca2d05e2324badc20455b73c01b8',
'./data/Relationships/One2MRelationship.php' => 'ec99c10eadc77da58700a0418995d78a',
- './data/Link2.php' => 'c2a24b7c7b5eb91e22fb6ad2eb27b8c5',
+ './data/Link2.php' => 'd65bf580583f873b488ded104f8fd8ac',
'./data/Tracker.php' => '78c6ca1fadfe9e7984b001fed296f332',
'./service/core/SugarRestUtils.php' => '183a0d813c88928451133af63934b686',
'./service/core/webservice.php' => 'e27d4bc434ba5536dce4022124104126',
@@ -3386,7 +3387,7 @@ $md5_string = array (
'./modules/Leads/LeadsQuickCreate.php' => '22025cf0899bc6ff093e5406a83fb2f7',
'./modules/Leads/Capture.php' => '8345afcd9e0aaa04101a74329b0360f7',
'./modules/Leads/Save.php' => '7a4c01eb0290f41237426b2059a85114',
- './modules/Leads/tpls/ConvertLead.tpl' => 'b545b499629ae94f250a664725bbd3fd',
+ './modules/Leads/tpls/ConvertLead.tpl' => '150ba28e60466e4aa1f873fb47a65203',
'./modules/Leads/tpls/ConvertLeadHeader.tpl' => '1f863d5d7fb31492d3dc8c14df4bdbc2',
'./modules/Leads/tpls/EditConvertLead.tpl' => '1546ed54811c02bf8deb822160cc7ac3',
'./modules/Leads/tpls/QuickCreate.tpl' => '7a20b8143b5328b4380553c6f8ecc25d',
@@ -3399,7 +3400,7 @@ $md5_string = array (
'./modules/Leads/views/view.list.php' => '47e14d2db5e9b71d410c74ef07142f53',
'./modules/Leads/views/view.edit.php' => '4208b82205cf63936b78da5eac7df01f',
'./modules/Leads/views/view.detail.php' => 'a9442c60e714251976831e4f045c1808',
- './modules/Leads/views/view.convertlead.php' => '7f599cc8b88be9e6242798979df720b2',
+ './modules/Leads/views/view.convertlead.php' => 'd8d4d82f76a782de52b46ddc73f15508',
'./modules/Leads/controller.php' => 'a60222b4af972a0171cf83640ea35103',
'./modules/Leads/field_arrays.php' => 'cdb8bd3732b0e84e9d1efe50e77e1ff4',
'./modules/Leads/Lead.php' => '77b1e1c182ce6b63c01147735ea44949',
@@ -3658,7 +3659,7 @@ $md5_string = array (
'./modules/Calendar/tpls/repeat.tpl' => 'a522ad903cfad55945eff151fb0e223b',
'./modules/Calendar/tpls/shared_users.tpl' => '06446eeee9f3f40013e89d185706e3f7',
'./modules/Calendar/tpls/settings.tpl' => '5d6bb4517be10eb4cb98019b19d18a08',
- './modules/Calendar/tpls/main.tpl' => 'e4986b66baccfadcb7e1506b0c8b6318',
+ './modules/Calendar/tpls/main.tpl' => '6a98dba4d9f2fab70a0f942eaddeef1e',
'./modules/Calendar/tpls/header.tpl' => '8662039740d66edc1579f6de9b04e174',
'./modules/Calendar/tpls/editHeader.tpl' => 'bc0d87d835fdde3fd76141efe81d8182',
'./modules/Calendar/tpls/empty.tpl' => '01fef0770302cd5098e331c34ae37122',
@@ -3716,7 +3717,7 @@ $md5_string = array (
'./modules/Emails/MassDelete.php' => 'de2897f4e36f3c288b7afb9035a33abc',
'./modules/Emails/SearchFormMyInbox.html' => '8487a40c120546ed57546d86fbdc8aba',
'./modules/Emails/PopupDocuments.php' => 'b99f58a5b000491bad4783f45b744ed2',
- './modules/Emails/EmailUI.php' => '5631e6d90775fa51f01411565c2d1dde',
+ './modules/Emails/EmailUI.php' => 'db89368b13fd5c3eca42f3b719500795',
'./modules/Emails/Status.php' => '8fac7135044f4315e917a5eb2d4d8ce3',
'./modules/Emails/Save.php' => '3c0ea8c00c5422e321632a64beb6af93',
'./modules/Emails/ListViewHome.html' => 'fbb035479e1194d9ac96039ade4b80f5',
@@ -3791,13 +3792,13 @@ $md5_string = array (
'./modules/Emails/metadata/additionalDetails.php' => 'd6245f09b4988484416ffea3ee28118d',
'./modules/Emails/Check.php' => 'e955c7c45b1d2488cc57ada923142575',
'./modules/Emails/SugarRoutingAsync.php' => '0a9ca1ac80b9c759693c1b2e9cbda26d',
- './modules/Emails/javascript/composeEmailTemplate.js' => '0701570fcd6d72e8e51d3bbc4e10336d',
+ './modules/Emails/javascript/composeEmailTemplate.js' => 'e19471934b9acab4ebeeebdbcd4b7fc0',
'./modules/Emails/javascript/Email.js' => '7a8528f141f6de141336426c497dfbcd',
'./modules/Emails/javascript/email_popup_helper.js' => '104dd8dd391a907e53606df613d90f34',
'./modules/Emails/javascript/init.js' => 'b48256570c9c73556b36248fd7b45d8b',
'./modules/Emails/javascript/displayOneEmailTemplate.js' => '4efbf9ed736dffca56a40d16456adf58',
- './modules/Emails/javascript/ajax.js' => '8f5fe6bceb18a5f88c98dea09eacffcd',
- './modules/Emails/javascript/EmailUICompose.js' => 'a4b38e26f0fd9bd8e70d8d4e2df26241',
+ './modules/Emails/javascript/ajax.js' => '21be3e955c6335f63c6b15d8bb35f0de',
+ './modules/Emails/javascript/EmailUICompose.js' => '03df76552ac939af2f08c2476099147f',
'./modules/Emails/javascript/EmailUI.js' => '8a62cd712eb4f7c5fac2713f00a160d6',
'./modules/Emails/javascript/grid.js' => '3f466dcfd19ed70d90ff386eb40ff28d',
'./modules/Emails/javascript/viewPrintable.js' => '1e5ed81de106298be2e5c11f955c6a09',
@@ -3917,7 +3918,7 @@ $md5_string = array (
'./modules/InboundEmail/DetailView.php' => 'a171268c4c9e85ac2fc62efce30deeb7',
'./modules/InboundEmail/Delete.php' => 'b49ee65d8850ff8ff370ebf237b0acb5',
'./modules/InboundEmail/Popup.php' => '472052c2da7990c6e8d63a0a2dccbbd2',
- './modules/InboundEmail/InboundEmail.php' => 'ca1009a956a5d7740a576b0e05c397ec',
+ './modules/InboundEmail/InboundEmail.php' => 'f2adbcc06eef05480de2abf6b442f46e',
'./modules/InboundEmail/ListView.html' => 'd76aa28386e3f7165f62dabfc6f0beb7',
'./modules/InboundEmail/index.php' => '6b54e0739c45bd059cc2da5f3aa41d9a',
'./modules/InboundEmail/language/en_us.lang.php' => 'ae833e99a3be579da67788c144af7ee2',
@@ -4049,7 +4050,7 @@ $md5_string = array (
'./modules/ModuleBuilder/MB/MBModule.php' => 'db62117969740eb4bf8418c7caca92d6',
'./modules/ModuleBuilder/MB/AjaxCompose.php' => '0cf04c16ff5531e9b354a21bb56fb17c',
'./modules/ModuleBuilder/MB/MBPackageTree.php' => '479f8be396033c768a3b82780d8420a9',
- './modules/ModuleBuilder/MB/MBPackage.php' => '7b0dc087a0aed5de9714440717fccee2',
+ './modules/ModuleBuilder/MB/MBPackage.php' => '55948258b4a7d82185166256b6092dfc',
'./modules/ModuleBuilder/MB/MBVardefs.php' => 'b20c90fac5d47104d918ec502b3781ae',
'./modules/ModuleBuilder/MB/MBLanguage.php' => '1d1a81b9394953038980af83a724792b',
'./modules/ModuleBuilder/MB/ModuleBuilder.php' => 'ea380cbffc685a656b46226437940b27',
@@ -4087,7 +4088,7 @@ $md5_string = array (
'./modules/ProjectTask/tpls/QuickCreate.tpl' => '271f79cf1bed2a22e8af11bd08dd4787',
'./modules/ProjectTask/Menu.php' => '89042afae82de62f44b2a5d0c8b3b2d6',
'./modules/ProjectTask/vardefs.php' => '5f8f544c3bffa4ae13260b430023ab1d',
- './modules/ProjectTask/views/view.list.php' => 'cb8de25506273a8d5ec84c0e54c4433f',
+ './modules/ProjectTask/views/view.list.php' => '3cfcb8594c5e0b19bbd5aa37394e30b1',
'./modules/ProjectTask/Forms.html' => '9ef4e37c85db5975ea0db243a2a47903',
'./modules/ProjectTask/field_arrays.php' => '83b7d207a5bd035dca4b347460168838',
'./modules/ProjectTask/MyProjectTasks.html' => '195e2ce8f43de26924bd8aeecef70a23',
@@ -4163,7 +4164,7 @@ $md5_string = array (
'./modules/Tasks/Dashlets/MyTasksDashlet/MyTasksDashlet.meta.php' => '719d34858e77076907e79c48d35a621b',
'./modules/Tasks/Dashlets/MyTasksDashlet/MyTasksDashlet.php' => '33b8a83c6c1555983393b8f0918698e2',
'./modules/Tasks/language/en_us.lang.php' => 'b74f5f371636fec60f50199402160c3b',
- './modules/Tasks/Task.php' => '87b0ac5c07c05a726e5a5b585409386f',
+ './modules/Tasks/Task.php' => '483af7b3adcbf9da488ebd6101868cac',
'./modules/Opportunities/SubPanelViewProjects.html' => 'ee53a295ab36aa28c8907678365f84f1',
'./modules/Opportunities/Save.php' => 'c09e98757bed656984ff81482a5a6b30',
'./modules/Opportunities/tpls/QuickCreate.tpl' => '731c98d4b49e7a608da03ce0819a2204',
@@ -4309,7 +4310,7 @@ $md5_string = array (
'./modules/Users/views/view.detail.php' => 'ea79f6d76e0b9ac1650a018fca3f857a',
'./modules/Users/controller.php' => 'ab707e79b219d0f9a9302b7549cf9d8e',
'./modules/Users/SaveSignature.php' => 'cc2276e326ce4a58a4fce9b147302c4f',
- './modules/Users/User.php' => '5ba0dc1bb9bbd39eb5125c73976ee3a5',
+ './modules/Users/User.php' => 'e330d44d37c1321448195c4c8453df4b',
'./modules/Users/login.tpl' => 'ea831fdb2eaeac643665acb6cb947f33',
'./modules/Users/LoggedOut.tpl' => '56f709612a02e111d2411a771b11cd80',
'./modules/Users/SaveTimezone.php' => '3a27e5b03cbb1a9501401521dd2c1168',
@@ -4480,9 +4481,9 @@ $md5_string = array (
'./modules/Calls/tpls/QuickCreate.tpl' => '83609a9e601a5599dc3f3d2674665941',
'./modules/Calls/tpls/detailHeader.tpl' => '80c5550af52dc424831101182a9a0dce',
'./modules/Calls/Menu.php' => '858bb3073b45d382034626a6ae3e13dd',
- './modules/Calls/vardefs.php' => 'be5564766ac098579f75769feb16a236',
+ './modules/Calls/vardefs.php' => 'ac2980875114f34a8d087846144549cc',
'./modules/Calls/CallsQuickCreate.php' => '1d0f9551f8a18c310d5c37f80a7ee82a',
- './modules/Calls/CallFormBase.php' => '9641734f0901841f24960fc3f5846303',
+ './modules/Calls/CallFormBase.php' => '5d05ab5c814c2b716ca3b7ee015f17a0',
'./modules/Calls/views/view.list.php' => '5b950a91d105b087fdf4a2972f082e54',
'./modules/Calls/views/view.edit.php' => '8c94e4b5f35e895b73cf1236abb252fb',
'./modules/Calls/Call.php' => '730aa76c67ae97883a61557b1c607cae',
@@ -4491,7 +4492,7 @@ $md5_string = array (
'./modules/Calls/metadata/searchdefs.php' => '892464b109427176fc0dc9ca870ae1e4',
'./modules/Calls/metadata/subpaneldefs.php' => '74cfe6de17819f40cc6aca39a688a4bd',
'./modules/Calls/metadata/quickcreatedefs.php' => 'b9a18b440a38cffd04461985c688cbbd',
- './modules/Calls/metadata/editviewdefs.php' => '43826b2f9b118c4a86da2dc33b9978a3',
+ './modules/Calls/metadata/editviewdefs.php' => '716496f9957a632976fa583a0d075196',
'./modules/Calls/metadata/SearchFields.php' => '478819054d7ea0c931e4601ccbfd62b4',
'./modules/Calls/metadata/subpanels/ForHistory.php' => 'f645f3a7148de0c2ad69f2c8c9797784',
'./modules/Calls/metadata/subpanels/ForActivities.php' => '9c8bae8ce3153c87403ea4b9c3ee0d19',
@@ -4503,9 +4504,9 @@ $md5_string = array (
'./modules/Calls/Dashlets/MyCallsDashlet/MyCallsDashlet.data.php' => 'bbb096633528bb22b112d6e3dc78d9d1',
'./modules/Calls/Dashlets/MyCallsDashlet/MyCallsDashlet.meta.php' => '81158ed6fa50d810929b4ff429657161',
'./modules/Calls/Dashlets/MyCallsDashlet/MyCallsDashlet.php' => '6bf0c16b793ffcadcf14333530dafe83',
- './modules/Calls/language/en_us.lang.php' => '191b9e3d6488873d207ab9e5b62d7b99',
+ './modules/Calls/language/en_us.lang.php' => '7fb36747cd1457db91de6f2f10f04a5f',
'./modules/Calls/SubPanelViewInvitees.html' => '4e7eeaa3d0ea3807ce8632669df1e176',
- './modules/ACLActions/ACLAction.php' => '46bd8be93b5b7dc499a1e6da89e3e4e9',
+ './modules/ACLActions/ACLAction.php' => '0f8782115fb3453d6fb61170cc0d2541',
'./modules/ACLActions/Menu.php' => '8e2a919d4a5ef7be81da1d595c040756',
'./modules/ACLActions/vardefs.php' => 'acc6dad81ee8c5f6a1d703b997bab517',
'./modules/ACLActions/actiondefs.php' => 'b9ba5b27e8883574dd8852b6db41a7f3',
@@ -4747,7 +4748,7 @@ $md5_string = array (
'./modules/Activities/views/view.modulelistmenu.php' => '632432dc452616687ef23799a059a025',
'./modules/Activities/SubPanelView.php' => '8edeb509f915078bf8fcec18fcea2906',
'./modules/Activities/OpenListView.php' => '4eea6e4645852f3139c66e31cb69e772',
- './modules/Activities/EmailReminder.php' => 'c1ca405a74fe0625c88519ba63533554',
+ './modules/Activities/EmailReminder.php' => '92209921b81daede2b8f8d1c14f365dd',
'./modules/Activities/metadata/subpaneldefs.php' => '653c92853e062ec5a9a4f957b2bcddc0',
'./modules/Activities/Popup_picker.html' => 'fe2b0d186e38b29321a8db0cefabde30',
'./modules/Activities/SubPanelViewContacts.html' => 'ba5a475b493fcfb2b9dcec79380f9137',
@@ -4806,7 +4807,7 @@ $md5_string = array (
'./modules/SchedulersJobs/field_arrays.php' => 'a60602bff510c911ba742833413eba93',
'./modules/SchedulersJobs/metadata/subpanels/default.php' => 'c3629eb7760c975cdb22ea22cbe16a9c',
'./modules/SchedulersJobs/language/en_us.lang.php' => 'b0d407e5774510304e1b0ea6c794e25c',
- './modules/SchedulersJobs/SchedulersJob.php' => 'c9a7e0499326ffeb7a81556ccb0783f7',
+ './modules/SchedulersJobs/SchedulersJob.php' => '47ddd29db51a67a93f2308192a720ee1',
'./modules/Contacts/Contact.js' => '9f9de844775302199af4542ed5928a30',
'./modules/Contacts/ContactOpportunityRelationshipEdit.php' => '989748fbb9350215e6fc966a50b2523d',
'./modules/Contacts/Email_picker.html' => 'ffc5a233b91fe04b5c27e1e4d07487a7',
@@ -4906,7 +4907,7 @@ $md5_string = array (
'./modules/Import/tpls/step2.tpl' => '1a122667e5e8efdf7df90350a4c3cd73',
'./modules/Import/Menu.php' => '034a5c49ca2cf04f95b2465e051e8c98',
'./modules/Import/vardefs.php' => '60cff61c52c1283ffe7dd161c28c074a',
- './modules/Import/ImportDuplicateCheck.php' => '98eee0e91c80c0ab173076538acceeba',
+ './modules/Import/ImportDuplicateCheck.php' => 'db288c59aec0610a8a344b3557b554e2',
'./modules/Import/ImportFieldSanitize.php' => 'd32a76f0cabb2f5dba570ae8b0d440e3',
'./modules/Import/Importer.php' => 'f4ab99e7a716228d8bfa6a220bc6a1ba',
'./modules/Import/views/view.dupcheck.php' => '80fded0509056a60cb59280a656b4e7d',
@@ -4983,7 +4984,7 @@ $md5_string = array (
'./modules/Project/language/en_us.lang.php' => 'c62a8abfa09841a60c54f90e6c9d4e6a',
'./modules/Project/SubPanelView.html' => 'a8cfd450c5a10dac0f401a57c430a519',
'./modules/Project/ProjectQuickCreate.php' => '0b45e5508713bd8397d38194ed2743ae',
- './modules/Meetings/jsclass_scheduler.js' => 'b22f203a83ddee9499d28e3be3b53bde',
+ './modules/Meetings/jsclass_scheduler.js' => 'b1364e950a651985cf5523353211bfde',
'./modules/Meetings/duration_dependency.js' => '68137bd02d0b9cff86e857ffe2d758a8',
'./modules/Meetings/Save.php' => '82a55c7692d587e20236135aca956f43',
'./modules/Meetings/tpls/footer.tpl' => 'e0a83373e481789efd51511c01acd3e6',
@@ -4994,9 +4995,9 @@ $md5_string = array (
'./modules/Meetings/tpls/detailHeader.tpl' => '80c5550af52dc424831101182a9a0dce',
'./modules/Meetings/tpls/reminders.tpl' => '5848a89a0337c9b681979a8776441d7c',
'./modules/Meetings/Menu.php' => '63348eb6a3845e5d48389fe80ed6bfff',
- './modules/Meetings/vardefs.php' => 'd0058766c72a3d3bc8f69fcf5236aaab',
+ './modules/Meetings/vardefs.php' => '36101b541ce81f67bb17078a3bc17063',
'./modules/Meetings/JoinExternalMeeting.php' => 'b71a1a110ff5483fc45d49859d1a5ed4',
- './modules/Meetings/Meeting.php' => '74f83a963ce41c971ffe9ac9c02c9528',
+ './modules/Meetings/Meeting.php' => '5ef820fa297c19095d2f63b9b4b3bf7a',
'./modules/Meetings/views/view.listbytype.php' => '3ebd214c8727254c33c32619615a8eb4',
'./modules/Meetings/views/view.list.php' => 'ba747ebcc7fff9f6036e532056d12fb8',
'./modules/Meetings/views/view.edit.php' => '12b46ccee3f27ce1dfc45187db422e59',
@@ -5005,7 +5006,7 @@ $md5_string = array (
'./modules/Meetings/metadata/searchdefs.php' => '1812616f0e6dc434312700ebdcf5fe51',
'./modules/Meetings/metadata/subpaneldefs.php' => '9fcb40ed13d8cffc9cc054e0908726b1',
'./modules/Meetings/metadata/quickcreatedefs.php' => 'd32ee617268e3c5aa6e97e9e796d81f3',
- './modules/Meetings/metadata/editviewdefs.php' => '266280a6fc7cecbf8bd70c78dc0ac420',
+ './modules/Meetings/metadata/editviewdefs.php' => '72c96ea4f33ace58cf879e7ad660723e',
'./modules/Meetings/metadata/SearchFields.php' => '06b45aadf77c191d52f16b79c912f896',
'./modules/Meetings/metadata/subpanels/ForHistory.php' => '28f07ed10e8d45bca8121a9bd1f76fba',
'./modules/Meetings/metadata/subpanels/ForActivities.php' => '06fbdaca02a664e63b06dd5cef35ca0a',
@@ -5019,29 +5020,29 @@ $md5_string = array (
'./modules/Meetings/Dashlets/MyMeetingsDashlet/MyMeetingsDashlet.meta.php' => '1f17c035ab5229249ccb4dbbb51a1d39',
'./modules/Meetings/Dashlets/MyMeetingsDashlet/MyMeetingsDashlet.php' => '4a6c86deb8c094a5eee079604ea3af3b',
'./modules/Meetings/MeetingsQuickCreate.php' => '5e67b447ae39ad80afe5588a4a293388',
- './modules/Meetings/language/en_us.lang.php' => '12c53ba42da07a141e3d0f214459b6b0',
+ './modules/Meetings/language/en_us.lang.php' => '5fdc57290ad2a3267928821da294b0dc',
'./modules/Meetings/SubPanelViewInvitees.html' => '7f9d1da5e8384457cadabf14412a88a5',
- './modules/Meetings/MeetingFormBase.php' => '1e71c4b3b44293526272618eb16c8d41',
+ './modules/Meetings/MeetingFormBase.php' => '125d67b87d70e61e2e074c9279bb4090',
'./modules/Administration/RepairIndex.php' => '31d55e4ce8069277191685e503ade848',
'./modules/Administration/RepairActivities.php' => '51359b6e6594e7587fdfd3ef50ebb944',
'./modules/Administration/RepairSeedUsers.php' => '835c36a2118b92fb8c1bcdad8f49baae',
'./modules/Administration/callJSRepair.php' => '1552f4690bbd2dbc9119f80c833fd609',
- './modules/Administration/Locale.php' => '79886ced9700447db850e04dacebe525',
+ './modules/Administration/Locale.php' => 'f48d8862b913691cd47933e96bfce969',
'./modules/Administration/repairDatabase.php' => '71ce415b8b9c3a1b4eff54074c38f70e',
'./modules/Administration/RepairFieldCasing.php' => '3745cce20da1779ce71f71021f8d0ac9',
'./modules/Administration/PasswordManager.tpl' => 'c8ce6ce9bfb3977986fa3e6659840457',
'./modules/Administration/repairSelectModule.php' => '0b5056adf4e7229d67c20b60f8842bba',
- './modules/Administration/UpgradeWizard_prepare.php' => '79d0670ca24e0948af4a4396ba3c689a',
+ './modules/Administration/UpgradeWizard_prepare.php' => 'f9b9a9b02c57590e37164f1250cb38f1',
'./modules/Administration/QuickRepairAndRebuild.php' => 'b4006c2d2925ba20d5403b6a081e1be5',
'./modules/Administration/DiagnosticDelete.php' => '800d39b37b8bbd477de71a27eba085b2',
'./modules/Administration/Save.php' => '15bb3509086e8bbadaa0564c02c780b6',
- './modules/Administration/UpgradeWizard.php' => '44260efe5d777ba21db42e70f378900f',
+ './modules/Administration/UpgradeWizard.php' => 'acde8d41b11180562a218e78372072ca',
'./modules/Administration/ncc_config.php' => '42cd8fc45ba496786a136fe08ab93166',
'./modules/Administration/Menu.php' => '8516a0e9af7e0a5fcc61b4d87b123cc2',
'./modules/Administration/vardefs.php' => 'a4b3781befd4731cfacc25e7ab51380d',
'./modules/Administration/Upgrade.php' => '9da6aaf655be2c986158e50a772d904f',
'./modules/Administration/SugarSpriteBuilder.php' => '95bb50747b7f6903959bb58404c4a586',
- './modules/Administration/UpgradeWizardCommon.php' => '6692078482ee14f39d6120ed762a83d8',
+ './modules/Administration/UpgradeWizardCommon.php' => 'c043461c8685562f2745e461d8fe43ef',
'./modules/Administration/index.tpl' => 'c934bbbb1b6c1d224160d3eb2474f880',
'./modules/Administration/ExportCustomFieldStructure.php' => 'ee31a1faf8364f2164b6b0dd3561c920',
'./modules/Administration/RebuildConfig.php' => '39fe5857d01ec5a38c41f25deba490e3',
@@ -5099,7 +5100,7 @@ $md5_string = array (
'./modules/Administration/PasswordManager.php' => '11ef65dbd8f4ef09c813483507fff134',
'./modules/Administration/Locale.tpl' => 'bb9afeb5e9db4919bdcd1808cabf2999',
'./modules/Administration/RebuildExpressionPlugins.php' => 'a926f301737fb11ba1a71673eb51424c',
- './modules/Administration/language/en_us.lang.php' => 'b228aa901531c6c26903232abae8993e',
+ './modules/Administration/language/en_us.lang.php' => '9e652f62a573f42b00177b4538e9db37',
'./modules/Administration/UpgradeHistory.php' => 'a9ec8a2612a5d3404e974d53de8b4311',
'./modules/Administration/upgrade_custom_relationships.php' => 'fe1239f73daa16e6a8b7f3170c8cad23',
'./modules/Administration/ImportCustomFieldStructure.php' => 'fd2baf8134f11375810c5c4daa52c889',
@@ -5266,16 +5267,16 @@ $md5_string = array (
'./modules/Home/LastViewed.php' => 'e4fd8c8ebf25ad8a93173deabf4b35bc',
'./modules/Home/AddToFavorites.php' => '2d1240598be9e7f74c497fe3a6578868',
'./modules/Home/TrainingPortal.php' => '1ec4a300d6dfd51f80eb642eee05f0f0',
- './cache/include/javascript/sugar_grp_jsolait.js' => '3cb26c71028e55342bfbac69a6d9a851',
- './cache/include/javascript/sugar_grp_quickcomp.js' => '7cb7287770e281b471fc8753e06c6ffb',
- './cache/include/javascript/sugar_grp_emails.js' => 'ba25857e9cb53d11cb20bc5dae61cec8',
+ './cache/include/javascript/sugar_grp_jsolait.js' => '9aced6d7d2669515690f61e506834ed9',
+ './cache/include/javascript/sugar_grp_quickcomp.js' => 'feb5c26dd77dd0b333f3b6660b75d792',
+ './cache/include/javascript/sugar_grp_emails.js' => '773266de297a33b88e3d85731f3cafce',
'./cache/include/javascript/sugar_grp_yui2.js' => '53c8d4d026a0adc7ea775e6488245de5',
'./cache/include/javascript/sugar_grp_yui_widgets.css' => '17f5b268fda1a8a3e27b41ebefe4d408',
'./cache/include/javascript/sugar_grp_yui_widgets.js' => '35fe43cba48260f75b169dd1af5c64fe',
'./cache/include/javascript/sugar_grp1_yui.js' => '9c3853420e26cad638181691de71e991',
'./cache/include/javascript/sugar_field_grp.js' => '339b3b1d92f554dbac7fad410360c8f1',
'./cache/include/javascript/sugar_grp1_jquery.js' => '9c164fdc669d8af0c3e11559154a214c',
- './cache/include/javascript/sugar_grp1.js' => '8829293fb198afd43a6eb77bb47a2959',
+ './cache/include/javascript/sugar_grp1.js' => 'a636431c8995f7ba5e714e252f180e14',
'./cache/layout/index.html' => '9cd784063d39b18d308932c28c385853',
'./cache/images/index.html' => '9cd784063d39b18d308932c28c385853',
'./cache/xml/index.html' => '9cd784063d39b18d308932c28c385853',
@@ -5346,7 +5347,7 @@ $md5_string = array (
'./metadata/prospect_lists_prospectsMetaData.php' => 'fe3dc7d813428ca0fa774884a88ef5c4',
'./metadata/inboundEmail_autoreplyMetaData.php' => '7c670a62c7142827bbdf675c8b4be221',
'./metadata/acl_roles_actionsMetaData.php' => 'a3446107943a271bf6e329a80deb06e8',
- './sugar_version.php' => 'f75a5d5392cb7e4910b46e5b4aaaa8f3',
+ './sugar_version.php' => '3ccf4839df9359186ce630aa45dedf47',
'./cron.php' => '96a6fd7893809132e902086e77dde30c',
'./log4php/LoggerManager.php' => 'fa34194306cd50c01b71d8d5060ee362',
'./TreeData.php' => '7040af43bf01c450f4e225ece5e3f30c',
@@ -6001,7 +6002,7 @@ $md5_string = array (
'./themes/Sugar5/tpls/_companyLogo.tpl' => 'aec162121df756deaeb8b2b24a877b65',
'./themes/Sugar5/tpls/footer.tpl' => 'fbb48d80817323aacb010b920bd5921d',
'./themes/Sugar5/tpls/header.tpl' => 'f4f2a382c900e9186faba11ce64803c7',
- './themes/Sugar5/tpls/_head.tpl' => '53d3a8d5836d1ff25b252b39340d9dda',
+ './themes/Sugar5/tpls/_head.tpl' => '17375ddb7a0b3aef07dabf1af258356d',
'./themes/Sugar5/tpls/_welcome.tpl' => 'a758aa0298fc3a281dc9906e6f5ca48f',
'./themes/Sugar5/tpls/_headerModuleList.tpl' => 'efa0fa3a938be9be6735ea564a546c31',
'./themes/Sugar5/tpls/_headerLastViewed.tpl' => '3b96479b265365920c2f1d36bad25b18',
@@ -6614,7 +6615,7 @@ $md5_string = array (
'./jssource/src_files/modules/Currencies/EditView.js' => '83b17318ef591148bbc75e2aebb5c8d5',
'./jssource/src_files/modules/Administration/javascript/Async.js' => 'd0e7a85e67bde67980dad376c11f1221',
'./jssource/src_files/modules/Administration/javascript/Administration.js' => '8c7eb2c4bd0024ab3f020d84c58ef1d5',
- './jssource/src_files/modules/Meetings/jsclass_scheduler.js' => '3d3817196769cec073bad93d15ac6494',
+ './jssource/src_files/modules/Meetings/jsclass_scheduler.js' => '38fd2043bdc095d22960685a08729dab',
'./jssource/src_files/modules/Meetings/duration_dependency.js' => '59bac762067bf2baa5fa6d52824d0338',
'./jssource/src_files/modules/Project/Project.js' => '935ffab1d5effc64a12e43c5ed8f243d',
'./jssource/src_files/modules/Contacts/Contact.js' => '57e5e967dd1d1f623d4248922115f258',
@@ -7423,7 +7424,7 @@ $md5_string = array (
'./jssource/src_files/include/javascript/sugar_yui_overrides.js' => 'ac6afa48c7c53dd7a52fc0e812c54d4f',
'./jssource/src_files/include/javascript/cookie.js' => 'c4e6168195f22c5fbb1780a0745bde24',
'./jssource/src_files/include/javascript/popup_parent_helper.js' => 'c546e26584026b47054eecbcba234410',
- './jssource/src_files/include/javascript/sugar_3.js' => '5c77eccc2b45d09ad5f9dfbd96ba4444',
+ './jssource/src_files/include/javascript/sugar_3.js' => '5b206cdd17cc44ea63cbbf5e9930ea2d',
'./jssource/src_files/include/javascript/jquery.js' => '219073097031d9c1a95a1291d66f3a10',
'./jssource/src_files/include/javascript/sugar_connection_event_listener.js' => 'e38a0e0155991cbc8fabaa59bcb1b705',
'./jssource/src_files/include/javascript/jsclass_async.js' => '95072f5177e01c78662f14596255402e',
View
4 include/DetailView/header.tpl
@@ -50,7 +50,7 @@ SUGAR.util.doWhen(function(){
<table cellpadding="0" cellspacing="0" border="0" width="100%" id="">
<tr>
-<td class="buttons" align="left" NOWRAP width="20%">
+<td class="buttons" align="left" NOWRAP width="80%">
<div class="actionsContainer">
{{if !isset($form.buttons)}}
{{sugar_button module="$module" id="EDIT" view="$view" form_id="formDetailView" appendTo="detail_header_buttons"}}
@@ -100,7 +100,7 @@ SUGAR.util.doWhen(function(){
</td>
-<td align="right" width="80%">{$ADMIN_EDIT}
+<td align="right" width="20%">{$ADMIN_EDIT}
{{if $panelCount == 0}}
{{* Render tag for VCR control if SHOW_VCR_CONTROL is true *}}
{{if $SHOW_VCR_CONTROL}}
View
2  include/EditView/EditView.tpl
@@ -111,7 +111,7 @@ class="yui-navset"
{{/if}}
</h4>
{{/if}}
-<table width="100%" border="0" cellspacing="1" cellpadding="0" {{if $label == 'DEFAULT'}} id='Default_{$module}_Subpanel' {{else}} id='{{$label}}' {{/if}} class="edit view panelContainer">
+<table width="100%" border="0" cellspacing="1" cellpadding="0" {{if $label == 'DEFAULT'}} id='Default_{$module}_Subpanel' {{else}} id='{{$label}}' {{/if}} class="yui3-skin-sam edit view panelContainer">
{{assign var='rowCount' value=0}}
View
1  include/HTMLPurifier/HTMLPurifier.standalone.php
@@ -812,7 +812,6 @@ public function validateToken(&$token, &$config, $context) {
// constants are slow, so we use as few as possible
if (!defined('HTMLPURIFIER_PREFIX')) {
define('HTMLPURIFIER_PREFIX', dirname(__FILE__) . '/standalone');
- set_include_path(HTMLPURIFIER_PREFIX . PATH_SEPARATOR . get_include_path());
}
// accomodations for versions earlier than 5.0.2
View
2  include/MVC/View/views/view.importvcard.php
@@ -48,7 +48,7 @@
class ViewImportvcard extends SugarView
{
var $type = 'edit';
-
+
public function __construct()
{
parent::SugarView();
View
2  include/MVC/View/views/view.importvcardsave.php
@@ -47,7 +47,7 @@
class ViewImportvcardsave extends SugarView
{
var $type = 'save';
-
+
public function __construct()
{
parent::SugarView();
View
2  include/MVC/View/views/view.popup.php
@@ -93,7 +93,7 @@ function display(){
if(!empty($this->bean) && isset($_REQUEST[$this->module.'2_'.strtoupper($this->bean->object_name).'_offset'])) {
if(!empty($_REQUEST['current_query_by_page'])) {
$blockVariables = array('mass', 'uid', 'massupdate', 'delete', 'merge', 'selectCount',
- 'lvso', 'sortOrder', 'orderBy', 'request_data', 'current_query_by_page');
+ 'sortOrder', 'orderBy', 'request_data', 'current_query_by_page');
$current_query_by_page = unserialize(base64_decode($_REQUEST['current_query_by_page']));
foreach($current_query_by_page as $search_key=>$search_value) {
if($search_key != $this->module.'2_'.strtoupper($this->bean->object_name).'_offset'
View
41 include/Smarty/Smarty_Compiler.class.php
@@ -26,8 +26,6 @@
* @package Smarty
*/
-
-
/**
* Template compiling class
* @package Smarty
@@ -162,7 +160,7 @@ function Smarty_Compiler()
. '(?:\s*,\s*' . $this->_obj_single_param_regexp . ')*)?\)';
$this->_obj_start_regexp = '(?:' . $this->_dvar_regexp . '(?:' . $this->_obj_ext_regexp . ')+)';
$this->_obj_call_regexp = '(?:' . $this->_obj_start_regexp . '(?:' . $this->_obj_params_regexp . ')?(?:' . $this->_dvar_math_regexp . '(?:' . $this->_num_const_regexp . '|' . $this->_dvar_math_var_regexp . ')*)?)';
-
+
// matches valid modifier syntax:
// |foo
// |@foo
@@ -333,7 +331,7 @@ function _compile_file($resource_name, $source_content, &$compiled_content)
for ($j = $i + 1; $j < $for_max; $j++) {
/* remove leading and trailing whitespaces of each line */
$text_blocks[$j] = preg_replace('![\t ]*[\r\n]+[\t ]*!', '', $text_blocks[$j]);
- if ($compiled_tags[$j] == '{/strip}') {
+ if ($compiled_tags[$j] == '{/strip}') {
/* remove trailing whitespaces from the last text_block */
$text_blocks[$j] = rtrim($text_blocks[$j]);
}
@@ -427,7 +425,7 @@ function _compile_tag($template_tag)
/* Matched comment. */
if (substr($template_tag, 0, 1) == '*' && substr($template_tag, -1) == '*')
return '';
-
+
/* Split tag into two three parts: command, command modifiers and the arguments. */
if(! preg_match('~^(?:(' . $this->_num_const_regexp . '|' . $this->_obj_call_regexp . '|' . $this->_var_regexp
. '|\/?' . $this->_reg_obj_regexp . '|\/?' . $this->_func_regexp . ')(' . $this->_mod_regexp . '*))
@@ -435,7 +433,7 @@ function _compile_tag($template_tag)
~xs', $template_tag, $match)) {
$this->_syntax_error("unrecognized tag: $template_tag",