diff --git a/gulliver/js/tinymce/jscripts/tiny_mce/plugins/pmSimpleUploader/editor_plugin.js b/gulliver/js/tinymce/jscripts/tiny_mce/plugins/pmSimpleUploader/editor_plugin.js
new file mode 100644
index 000000000..90487919b
--- /dev/null
+++ b/gulliver/js/tinymce/jscripts/tiny_mce/plugins/pmSimpleUploader/editor_plugin.js
@@ -0,0 +1,69 @@
+/**
+* Name: editor_plugin_src.js (for pmSimpleUploader tinyMCE plugin)
+**/
+
+(function(){
+ var strPluginURL;
+ tinymce.create('tinymce.plugins.pmSimpleUploaderPlugin', {
+ init: function(ed, url)
+ {
+ strPluginURL = url; // store the URL for future use..
+ ed.addCommand('mcepmSimpleUploader', function() {
+ pmSimpleUploader();
+ });
+ ed.addButton('pmSimpleUploader', {
+ title: 'pmSimpleUploader',
+ label : 'Upload File',
+ cmd: 'mcepmSimpleUploader',
+ image: url + '/img/pmSimpleUploader.png'
+ });
+ },
+ createControl: function(n, cm) {
+ return null;
+ },
+ getPluginURL: function() {
+ return strPluginURL;
+ }
+ });
+ tinymce.PluginManager.add('pmSimpleUploader', tinymce.plugins.pmSimpleUploaderPlugin);
+})();
+
+// this function can get called from the plugin inint (above) or from the callback on advlink/advimg plugins..
+// in the latter case, win and type will be set.. In the rist case, we will just update the main editor window
+// with the path of the uploaded file
+function pmSimpleUploader(field_name, url, type, win) {
+ var strPluginPath = tinyMCE.activeEditor.plugins.pmSimpleUploader.getPluginURL(); // get the path to the uploader plugin
+ var strUploaderURL = strPluginPath + "/uploader.php"; // generate the path to the uploader script
+ var strUploadPath = tinyMCE.activeEditor.getParam('plugin_pmSimpleUploader_upload_path'); // get the relative upload path
+ var strSubstitutePath = tinyMCE.activeEditor.getParam('plugin_pmSimpleUploader_upload_substitute_path'); // get the path we'll substitute for the for the upload path (i.e. fully qualified)
+
+ if (strUploaderURL.indexOf("?") < 0){ // if we were called without any GET params
+ strUploaderURL = strUploaderURL + "?type=" + type + "&d=" + strUploadPath + "&subs=" + strSubstitutePath; // add our own params
+ } else {
+ strUploaderURL = strUploaderURL + "&type=" + type + "&d=" + strUploadPath + "&subs=" + strSubstitutePath;
+ }
+ tinyMCE.activeEditor.windowManager.open({ // open the plugin popup
+ file : strUploaderURL,
+ title : 'Upload from file',
+ width : 500,
+ height : 100,
+ resizable : "yes",
+ inline : 1, // This parameter only has an effect if you use the inlinepopups plugin!
+ close_previous : "no"
+ }, {
+ window : win,
+ input : field_name
+ });
+
+ return false;
+}
+// This function will get called when the uploader is done uploading the file and ready to update
+// calling dialog and close the upload popup
+// strReturnURL should be the string with the path to the uploaded file
+function closePluginPopup(){
+ tinyMCEPopup.close(); // close popup window
+}
+
+function updateEditorContent(serializedHTML){
+ tinyMCE.activeEditor.execCommand('mceSetContent', false, serializedHTML);
+}
\ No newline at end of file
diff --git a/gulliver/js/tinymce/jscripts/tiny_mce/plugins/pmVariablePicker/editor_plugin.js b/gulliver/js/tinymce/jscripts/tiny_mce/plugins/pmVariablePicker/editor_plugin.js
new file mode 100644
index 000000000..8941d8204
--- /dev/null
+++ b/gulliver/js/tinymce/jscripts/tiny_mce/plugins/pmVariablePicker/editor_plugin.js
@@ -0,0 +1,83 @@
+/**
+* Name: editor_plugin_src.js (for pmVariablePicker tinyMCE plugin)
+**/
+
+(function(){
+ var strPluginURL;
+ tinymce.create('tinymce.plugins.pmVariablePickerPlugin', {
+ init: function(ed, url)
+ {
+ strPluginURL = url; // store the URL for future use..
+ ed.addCommand('mcepmVariablePicker', function() {
+ pmVariablePicker();
+ });
+ ed.addButton('pmVariablePicker', {
+ title: 'pmVariablePicker',
+ label : ' @#',
+ cmd: 'mcepmVariablePicker',
+ image: url + '/img/picker.png'
+ });
+ },
+ createControl: function(n, cm) {
+ return null;
+ },
+ getPluginURL: function() {
+ return strPluginURL;
+ }
+ });
+ tinymce.PluginManager.add('pmVariablePicker', tinymce.plugins.pmVariablePickerPlugin);
+})();
+
+// this function can get called from the plugin inint (above) or from the callback on advlink/advimg plugins..
+// in the latter case, win and type will be set.. In the rist case, we will just update the main editor window
+// with the path of the uploaded file
+function pmVariablePicker(field_name, url, type, win) {
+
+ var uloc=String(location);
+ //alert(uloc);
+ var new_text = uloc.split('/');
+ var loc='/'+new_text[3]+'/'+new_text[4]+'/'+new_text[5]+'/controls/varsAjax?displayOption=tinyMCE&sSymbol=@@&&sProcess='+tinyMCE.activeEditor.processID;
+ var strPluginPath = tinyMCE.activeEditor.plugins.pmVariablePicker.getPluginURL(); // get the path to the uploader plugin
+ var strUploaderURL = strPluginPath + "/uploader.php"; // generate the path to the uploader script
+ var strUploadPath = tinyMCE.activeEditor.getParam('plugin_pmVariablePicker_upload_path'); // get the relative upload path
+ var strSubstitutePath = tinyMCE.activeEditor.getParam('plugin_pmVariablePicker_upload_substitute_path'); // get the path we'll substitute for the for the upload path (i.e. fully qualified)
+
+ if (strUploaderURL.indexOf("?") < 0){ // if we were called without any GET params
+ strUploaderURL = strUploaderURL + "?type=" + type + "&d=" + strUploadPath + "&subs=" + strSubstitutePath; // add our own params
+ } else {
+ strUploaderURL = strUploaderURL + "&type=" + type + "&d=" + strUploadPath + "&subs=" + strSubstitutePath;
+ }
+ //tinyMCE.activeEditor.anyVariable='path/to/ProcessMaker'
+ tinyMCE.activeEditor.windowManager.open({ // open the plugin popup
+ //file : '/sysworkflow/en/classic/controls/varsAjax?displayOption=tinyMCE&sSymbol=@@',
+ file : loc,
+ title : 'Upload Variable',
+ width : '600px',
+ height : '330px',
+ resizable : "yes",
+ scrollbars : "no",
+ overflow : false,
+ inline : 1, // This parameter only has an effect if you use the inlinepopups plugin!
+ close_previous : "no"
+ }, {
+ window : win,
+ input : field_name
+ });
+
+ return false;
+}
+// This function will get called when the uploader is done uploading the file and ready to update
+// calling dialog and close the upload popup
+// strReturnURL should be the string with the path to the uploaded file
+function closePluginPopup(){
+ tinyMCEPopup.close(); // close popup window
+}
+
+function updateEditorContent(serializedHTML){
+ tinyMCE.activeEditor.execCommand('mceInsertContent', false, serializedHTML);
+}
+
+function insertFormVar(fieldName,serializedHTML){
+ tinyMCE.activeEditor.execCommand('mceInsertContent', false, serializedHTML);
+ closePluginPopup();
+}
diff --git a/gulliver/system/class.bootstrap.php b/gulliver/system/class.bootstrap.php
index 7eece039c..5b920db24 100644
--- a/gulliver/system/class.bootstrap.php
+++ b/gulliver/system/class.bootstrap.php
@@ -220,8 +220,8 @@ class Bootstrap
}
$smarty = new Smarty ();
- $smarty->compile_dir = g::sys_get_temp_dir ();
- $smarty->cache_dir = g::sys_get_temp_dir ();
+ $smarty->compile_dir = Bootstrap::sys_get_temp_dir ();
+ $smarty->cache_dir = Bootstrap::sys_get_temp_dir ();
$smarty->config_dir = PATH_THIRDPARTY . 'smarty/configs';
$smarty->template_dir = PATH_TEMPLATE;
@@ -888,47 +888,37 @@ class Bootstrap
* @return string
*/
public function streamJSTranslationFile($filename, $locale = 'en') {
- header ( 'Content-Type: text/javascript' );
+ $defaultTranslations = Array ();
+ $foreignTranslations = Array ();
- if (! Bootstrap::LoadTranslationObject ( $locale )) {
- header ( 'Cache-Control: no-cache' );
- header ( 'Pragma: no-cache' );
- return;
- }
+ //if the default translations table doesn't exist we can't proceed
+ if (! is_file( PATH_LANGUAGECONT . 'translation.en' )) {
+ return ;
+ }
+ //load the translations table
+ require_once (PATH_LANGUAGECONT . 'translation.en');
+ $defaultTranslations = $translation;
- global $translation;
+ //if some foreign language was requested and its translation file exists
+ if ($locale != 'en' && file_exists( PATH_LANGUAGECONT . 'translation.' . $locale )) {
+ require_once (PATH_LANGUAGECONT . 'translation.' . $locale); //load the foreign translations table
+ $foreignTranslations = $translation;
+ }
- // if userAgent (BROWSER) is MSIE we need special headers to avoid MSIE
- // behaivor.
- $userAgent = strtolower ( $_SERVER ['HTTP_USER_AGENT'] );
- if (file_exists ( $filename )) {
- $mtime = filemtime ( $filename );
- } else {
- $mtime = date ( 'U' );
- }
+ if (defined( "SHOW_UNTRANSLATED_AS_TAG" ) && SHOW_UNTRANSLATED_AS_TAG != 0) {
+ $translation = $foreignTranslations;
+ } else {
+ $translation = array_merge( $defaultTranslations, $foreignTranslations );
+ }
- $gmt_mtime = gmdate ( "D, d M Y H:i:s", $mtime ) . " GMT";
- header ( 'Pragma: cache' );
- header ( 'ETag: "' . md5 ( $mtime . $filename ) . '"' );
- header ( "Last-Modified: " . $gmt_mtime );
- header ( 'Cache-Control: public' );
- header ( "Expires: " . gmdate ( "D, d M Y H:i:s", time () + 30 * 60 * 60 * 24 ) . " GMT" ); // 1
- // month
- if (isset ( $_SERVER ['HTTP_IF_MODIFIED_SINCE'] )) {
- if ($_SERVER ['HTTP_IF_MODIFIED_SINCE'] == $gmt_mtime) {
- header ( 'HTTP/1.1 304 Not Modified' );
- exit ();
- }
- }
+ $calendarJs = '';
+ $calendarJsFile = PATH_GULLIVER_HOME . "js/widgets/js-calendar/lang/" . $locale .".js";
+ if (! file_exists($calendarJsFile)) {
+ $calendarJsFile = PATH_GULLIVER_HOME . "js/widgets/js-calendar/lang/en.js";
+ }
+ $calendarJs = file_get_contents($calendarJsFile) . "\n";
- if (isset ( $_SERVER ['HTTP_IF_NONE_MATCH'] )) {
- if (str_replace ( '"', '', stripslashes ( $_SERVER ['HTTP_IF_NONE_MATCH'] ) ) == md5 ( $mtime . $filename )) {
- header ( "HTTP/1.1 304 Not Modified" );
- exit ();
- }
- }
-
- return 'var TRANSLATIONS = ' . Bootstrap::json_encode ( $translation ) . ";\n";
+ return $calendarJs . 'var TRANSLATIONS = ' . Bootstrap::json_encode( $translation ) . ';' ;
}
/**
diff --git a/gulliver/system/class.wysiwygEditor.php b/gulliver/system/class.wysiwygEditor.php
index 63d12e987..b658f8362 100644
--- a/gulliver/system/class.wysiwygEditor.php
+++ b/gulliver/system/class.wysiwygEditor.php
@@ -76,14 +76,14 @@ class XmlForm_Field_WYSIWYG_EDITOR extends XmlForm_Field
*/
public function attachEvents ($element)
{
-
+
$editorDefinition = 'tinyMCE.baseURL = "/js/tinymce/jscripts/tiny_mce"; ';
-
+
switch ($this->editorType){
case 'EMAIL_TEMPLATE':
$editorDefinition .= '
// is necessary the process uid variable in order to load the picker correctly
- var formProcessID = document.getElementById("form[pro_uid]").value;
+ var formProcessID = document.getElementById("form[pro_uid]").value;
tinyMCE.init({
theme : "advanced",
plugins : "advhr,advimage,advlink,advlist,autolink,autoresize,autosave,contextmenu,directionality,emotions,example,example_dependency,fullpage,fullscreen,iespell,inlinepopups,insertdatetime,layer,legacyoutput,lists,media,nonbreaking,noneditable,pagebreak,paste,preview,print,save,searchreplace,spellchecker,style,tabfocus,table,template,visualblocks,visualchars,wordcount,xhtmlxtras,pmSimpleUploader,pmVariablePicker",
@@ -91,9 +91,7 @@ class XmlForm_Field_WYSIWYG_EDITOR extends XmlForm_Field
editor_selector : "tmceEditor",
width : 760,
height : "'.$this->height.'",
- //theme_advanced_buttons1 : "pmSimpleUploader,|,pmVariablePicker,|,bold,italic,underline,|,justifyleft,justifycenter,justifyright,justifyfull",
- //theme_advanced_buttons2 : "bold,italic,underline,|,justifyleft,justifycenter,justifyright,justifyfull",
-
+
theme_advanced_buttons1 : "pmSimpleUploader,|,pmVariablePicker,|,bold,italic,underline,|,justifyleft,justifycenter,justifyright,justifyfull,|,fontselect,fontsizeselect,|,cut,copy,paste,|,bullist,numlist,|,outdent,indent,blockquote",
theme_advanced_buttons2 : "tablecontrols,|,undo,redo,|,link,unlink,image,|,forecolor,backcolor,|,hr,removeformat,visualaid,|,sub,sup,|,ltr,rtl,|,code",
oninit: function (){
@@ -115,7 +113,7 @@ class XmlForm_Field_WYSIWYG_EDITOR extends XmlForm_Field
';
break;
case 'OUTPUT_DOCUMENT':
- $editorDefinition .= '
+ $editorDefinition .= '
// is necessary the process uid variable in order to load the picker correctly
var formProcessID = document.getElementById("form[PRO_UID]").value;
tinyMCE.init({
@@ -125,13 +123,11 @@ class XmlForm_Field_WYSIWYG_EDITOR extends XmlForm_Field
editor_selector : "tmceEditor",
width : "770",
height : "305",
- //theme_advanced_buttons1 : "pmSimpleUploader,|,pmVariablePicker",
- //theme_advanced_buttons2 : "fontselect,bold,italic,underline,forecolor,backcolor,|,justifyleft,justifycenter,justifyright,justifyfull,|,link,numlist,bullist,|,code",
-
+
theme_advanced_buttons1 : "pmSimpleUploader,|,pmVariablePicker,|,bold,italic,underline,|,justifyleft,justifycenter,justifyright,justifyfull,|,fontselect,fontsizeselect,|,cut,copy,paste,|,bullist,numlist,|,outdent,indent,blockquote",
theme_advanced_buttons2 : "tablecontrols,|,undo,redo,|,link,unlink,image,|,forecolor,backcolor,|,hr,removeformat,visualaid,|,sub,sup,|,ltr,rtl,|,code",
oninit: function (){
- tinyMCE.activeEditor.processID=formProcessID;
+ tinyMCE.activeEditor.processID=formProcessID;
},
onchange_callback: function(inst) {
if(inst.isDirty()) {
@@ -154,9 +150,9 @@ class XmlForm_Field_WYSIWYG_EDITOR extends XmlForm_Field
editor_selector : "tmceEditor",
width : "700",
height : "300",
- theme_advanced_buttons1 : "pmSimpleUploader,|,pmVariablePicker,|,bold,italic,underline,|,justifyleft,justifycenter,justifyright,justifyfull,|,fontselect,fontsizeselect,|,cut,copy,paste,|,bullist,numlist",
+ theme_advanced_buttons1 : "bold,italic,underline,|,justifyleft,justifycenter,justifyright,justifyfull,|,fontselect,fontsizeselect,|,cut,copy,paste,|,bullist,numlist",
theme_advanced_buttons2 : "outdent,indent,blockquote,|,undo,redo,|,link,unlink,image,|,forecolor,backcolor,|,hr,removeformat,visualaid,|,sub,sup,|,ltr,rtl,|,code",
-
+
skin : "o2k7",
skin_variant : "silver",
@@ -176,7 +172,7 @@ class XmlForm_Field_WYSIWYG_EDITOR extends XmlForm_Field
return true;
}
});
-
+
';
break;
default:
@@ -188,7 +184,7 @@ class XmlForm_Field_WYSIWYG_EDITOR extends XmlForm_Field
editor_selector : "tmceEditor",
width : "'. $this->width. '",
height : "'. $this->height. '",
- theme_advanced_buttons3_add : "fullpage",
+ theme_advanced_buttons3_add : "fullpage",
handle_event_callback : function(e) {
if(this.isDirty()) {
this.save();
diff --git a/workflow/engine/classes/class.spool.php b/workflow/engine/classes/class.spool.php
index 406cbba94..1650fd9cd 100755
--- a/workflow/engine/classes/class.spool.php
+++ b/workflow/engine/classes/class.spool.php
@@ -86,8 +86,8 @@ class spoolRun
$this->ExceptionCode['WARNING'] = 2;
$this->ExceptionCode['NOTICE'] = 3;
- $this->longMailEreg = '/(.*)(<([\w\-\.]+@[\w\-_\.]+\.\w{2,3})+>)/';
- $this->mailEreg = '/^([\w\-_\.]+@[\w\-_\.]+\.\w{2,3}+)$/';
+ $this->longMailEreg = '/(.*)(<([\w\-\.]+@[\w\-_\.]+\.\w{2,5})+>)/';
+ $this->mailEreg = '/^([\w\-_\.]+@[\w\-_\.]+\.\w{2,5}+)$/';
}
/**
@@ -138,6 +138,10 @@ class spoolRun
*/
public function create ($aData)
{
+ if (is_array($aData['app_msg_attach'])) {
+ $attachment = implode(",", $aData['app_msg_attach']);
+ $aData['app_msg_attach'] = $attachment;
+ }
$aData['app_msg_show_message'] = (isset($aData['app_msg_show_message'])) ? $aData['app_msg_show_message'] : 1;
$sUID = $this->db_insert( $aData );
@@ -300,7 +304,7 @@ class spoolRun
$this->fileData['envelope_to'][] = "$val";
}
}
- } else if ($text != '') {
+ } elseif ($text != '') {
$this->fileData['envelope_to'][] = "$text";
} else {
$this->fileData['envelope_to'] = Array ();
@@ -315,7 +319,7 @@ class spoolRun
$this->fileData['envelope_cc'][] = "$valcc";
}
}
- } else if ($textcc != '') {
+ } elseif ($textcc != '') {
$this->fileData['envelope_cc'][] = "$textcc";
} else {
$this->fileData['envelope_cc'] = Array ();
@@ -330,7 +334,7 @@ class spoolRun
$this->fileData['envelope_bcc'][] = "$valbcc";
}
}
- } else if ($textbcc != '') {
+ } elseif ($textbcc != '') {
$this->fileData['envelope_bcc'][] = "$textbcc";
} else {
$this->fileData['envelope_bcc'] = Array ();
@@ -542,10 +546,10 @@ class spoolRun
if ($aConfiguration["MESS_ENABLED"] == "1") {
require_once ("classes/model/AppMessage.php");
- if ($aConfiguration['MESS_RAUTH'] == false || (is_string($aConfiguration['MESS_RAUTH']) && $aConfiguration['MESS_RAUTH'] == 'false')) {
- $aConfiguration['MESS_RAUTH'] = 0;
- } else {
- $aConfiguration['MESS_RAUTH'] = 1;
+ if ($aConfiguration['MESS_RAUTH'] == false || (is_string($aConfiguration['MESS_RAUTH']) && $aConfiguration['MESS_RAUTH'] == 'false')) {
+ $aConfiguration['MESS_RAUTH'] = 0;
+ } else {
+ $aConfiguration['MESS_RAUTH'] = 1;
}
$this->setConfig( array ("MESS_ENGINE" => $aConfiguration["MESS_ENGINE"],"MESS_SERVER" => $aConfiguration["MESS_SERVER"],"MESS_PORT" => $aConfiguration["MESS_PORT"],"MESS_ACCOUNT" => $aConfiguration["MESS_ACCOUNT"],"MESS_PASSWORD" => $aConfiguration["MESS_PASSWORD"],"SMTPAuth" => $aConfiguration["MESS_RAUTH"],"SMTPSecure" => $aConfiguration["SMTPSecure"]
diff --git a/workflow/engine/classes/class.tasks.php b/workflow/engine/classes/class.tasks.php
index fbb2eda83..b451e6445 100755
--- a/workflow/engine/classes/class.tasks.php
+++ b/workflow/engine/classes/class.tasks.php
@@ -88,8 +88,18 @@ class Tasks
{
try {
$aTasks = array ();
+ $sDelimiter = DBAdapter::getStringDelimiter();
$oCriteria = new Criteria( 'workflow' );
$oCriteria->add( TaskPeer::PRO_UID, $sProUid );
+ $aConditions = array ();
+ $aConditions[] = array (TaskPeer::TAS_UID,ContentPeer::CON_ID
+ );
+ $aConditions[] = array (ContentPeer::CON_CATEGORY,$sDelimiter . 'TAS_TITLE' . $sDelimiter
+ );
+ $aConditions[] = array (ContentPeer::CON_LANG,$sDelimiter . SYS_LANG . $sDelimiter
+ );
+ $oCriteria->addJoinMC( $aConditions, Criteria::LEFT_JOIN );
+ $oCriteria->addAscendingOrderByColumn( ContentPeer::CON_VALUE );
$oDataset = TaskPeer::doSelectRS( $oCriteria );
$oDataset->setFetchmode( ResultSet::FETCHMODE_ASSOC );
$oDataset->next();
diff --git a/workflow/engine/classes/model/om/BaseOutputDocument.php b/workflow/engine/classes/model/om/BaseOutputDocument.php
index 3746c7135..b71ff437f 100755
--- a/workflow/engine/classes/model/om/BaseOutputDocument.php
+++ b/workflow/engine/classes/model/om/BaseOutputDocument.php
@@ -12,7 +12,7 @@ include_once 'classes/model/OutputDocumentPeer.php';
/**
* Base class that represents a row from the 'OUTPUT_DOCUMENT' table.
*
- *
+ *
*
* @package workflow.classes.model.om
*/
@@ -163,7 +163,7 @@ abstract class BaseOutputDocument extends BaseObject implements Persistent
/**
* Get the [out_doc_uid] column value.
- *
+ *
* @return string
*/
public function getOutDocUid()
@@ -174,7 +174,7 @@ abstract class BaseOutputDocument extends BaseObject implements Persistent
/**
* Get the [pro_uid] column value.
- *
+ *
* @return string
*/
public function getProUid()
@@ -185,7 +185,7 @@ abstract class BaseOutputDocument extends BaseObject implements Persistent
/**
* Get the [out_doc_report_generator] column value.
- *
+ *
* @return string
*/
public function getOutDocReportGenerator()
@@ -196,7 +196,7 @@ abstract class BaseOutputDocument extends BaseObject implements Persistent
/**
* Get the [out_doc_landscape] column value.
- *
+ *
* @return int
*/
public function getOutDocLandscape()
@@ -207,7 +207,7 @@ abstract class BaseOutputDocument extends BaseObject implements Persistent
/**
* Get the [out_doc_media] column value.
- *
+ *
* @return string
*/
public function getOutDocMedia()
@@ -218,7 +218,7 @@ abstract class BaseOutputDocument extends BaseObject implements Persistent
/**
* Get the [out_doc_left_margin] column value.
- *
+ *
* @return int
*/
public function getOutDocLeftMargin()
@@ -229,7 +229,7 @@ abstract class BaseOutputDocument extends BaseObject implements Persistent
/**
* Get the [out_doc_right_margin] column value.
- *
+ *
* @return int
*/
public function getOutDocRightMargin()
@@ -240,7 +240,7 @@ abstract class BaseOutputDocument extends BaseObject implements Persistent
/**
* Get the [out_doc_top_margin] column value.
- *
+ *
* @return int
*/
public function getOutDocTopMargin()
@@ -251,7 +251,7 @@ abstract class BaseOutputDocument extends BaseObject implements Persistent
/**
* Get the [out_doc_bottom_margin] column value.
- *
+ *
* @return int
*/
public function getOutDocBottomMargin()
@@ -262,7 +262,7 @@ abstract class BaseOutputDocument extends BaseObject implements Persistent
/**
* Get the [out_doc_generate] column value.
- *
+ *
* @return string
*/
public function getOutDocGenerate()
@@ -273,7 +273,7 @@ abstract class BaseOutputDocument extends BaseObject implements Persistent
/**
* Get the [out_doc_type] column value.
- *
+ *
* @return string
*/
public function getOutDocType()
@@ -284,7 +284,7 @@ abstract class BaseOutputDocument extends BaseObject implements Persistent
/**
* Get the [out_doc_current_revision] column value.
- *
+ *
* @return int
*/
public function getOutDocCurrentRevision()
@@ -295,7 +295,7 @@ abstract class BaseOutputDocument extends BaseObject implements Persistent
/**
* Get the [out_doc_field_mapping] column value.
- *
+ *
* @return string
*/
public function getOutDocFieldMapping()
@@ -306,7 +306,7 @@ abstract class BaseOutputDocument extends BaseObject implements Persistent
/**
* Get the [out_doc_versioning] column value.
- *
+ *
* @return int
*/
public function getOutDocVersioning()
@@ -317,7 +317,7 @@ abstract class BaseOutputDocument extends BaseObject implements Persistent
/**
* Get the [out_doc_destination_path] column value.
- *
+ *
* @return string
*/
public function getOutDocDestinationPath()
@@ -328,7 +328,7 @@ abstract class BaseOutputDocument extends BaseObject implements Persistent
/**
* Get the [out_doc_tags] column value.
- *
+ *
* @return string
*/
public function getOutDocTags()
@@ -339,7 +339,7 @@ abstract class BaseOutputDocument extends BaseObject implements Persistent
/**
* Get the [out_doc_pdf_security_enabled] column value.
- *
+ *
* @return int
*/
public function getOutDocPdfSecurityEnabled()
@@ -350,7 +350,7 @@ abstract class BaseOutputDocument extends BaseObject implements Persistent
/**
* Get the [out_doc_pdf_security_open_password] column value.
- *
+ *
* @return string
*/
public function getOutDocPdfSecurityOpenPassword()
@@ -361,7 +361,7 @@ abstract class BaseOutputDocument extends BaseObject implements Persistent
/**
* Get the [out_doc_pdf_security_owner_password] column value.
- *
+ *
* @return string
*/
public function getOutDocPdfSecurityOwnerPassword()
@@ -372,7 +372,7 @@ abstract class BaseOutputDocument extends BaseObject implements Persistent
/**
* Get the [out_doc_pdf_security_permissions] column value.
- *
+ *
* @return string
*/
public function getOutDocPdfSecurityPermissions()
@@ -383,7 +383,7 @@ abstract class BaseOutputDocument extends BaseObject implements Persistent
/**
* Set the value of [out_doc_uid] column.
- *
+ *
* @param string $v new value
* @return void
*/
@@ -405,7 +405,7 @@ abstract class BaseOutputDocument extends BaseObject implements Persistent
/**
* Set the value of [pro_uid] column.
- *
+ *
* @param string $v new value
* @return void
*/
@@ -427,7 +427,7 @@ abstract class BaseOutputDocument extends BaseObject implements Persistent
/**
* Set the value of [out_doc_report_generator] column.
- *
+ *
* @param string $v new value
* @return void
*/
@@ -449,7 +449,7 @@ abstract class BaseOutputDocument extends BaseObject implements Persistent
/**
* Set the value of [out_doc_landscape] column.
- *
+ *
* @param int $v new value
* @return void
*/
@@ -471,7 +471,7 @@ abstract class BaseOutputDocument extends BaseObject implements Persistent
/**
* Set the value of [out_doc_media] column.
- *
+ *
* @param string $v new value
* @return void
*/
@@ -493,7 +493,7 @@ abstract class BaseOutputDocument extends BaseObject implements Persistent
/**
* Set the value of [out_doc_left_margin] column.
- *
+ *
* @param int $v new value
* @return void
*/
@@ -515,7 +515,7 @@ abstract class BaseOutputDocument extends BaseObject implements Persistent
/**
* Set the value of [out_doc_right_margin] column.
- *
+ *
* @param int $v new value
* @return void
*/
@@ -537,7 +537,7 @@ abstract class BaseOutputDocument extends BaseObject implements Persistent
/**
* Set the value of [out_doc_top_margin] column.
- *
+ *
* @param int $v new value
* @return void
*/
@@ -559,7 +559,7 @@ abstract class BaseOutputDocument extends BaseObject implements Persistent
/**
* Set the value of [out_doc_bottom_margin] column.
- *
+ *
* @param int $v new value
* @return void
*/
@@ -581,7 +581,7 @@ abstract class BaseOutputDocument extends BaseObject implements Persistent
/**
* Set the value of [out_doc_generate] column.
- *
+ *
* @param string $v new value
* @return void
*/
@@ -603,7 +603,7 @@ abstract class BaseOutputDocument extends BaseObject implements Persistent
/**
* Set the value of [out_doc_type] column.
- *
+ *
* @param string $v new value
* @return void
*/
@@ -625,7 +625,7 @@ abstract class BaseOutputDocument extends BaseObject implements Persistent
/**
* Set the value of [out_doc_current_revision] column.
- *
+ *
* @param int $v new value
* @return void
*/
@@ -647,7 +647,7 @@ abstract class BaseOutputDocument extends BaseObject implements Persistent
/**
* Set the value of [out_doc_field_mapping] column.
- *
+ *
* @param string $v new value
* @return void
*/
@@ -669,7 +669,7 @@ abstract class BaseOutputDocument extends BaseObject implements Persistent
/**
* Set the value of [out_doc_versioning] column.
- *
+ *
* @param int $v new value
* @return void
*/
@@ -691,7 +691,7 @@ abstract class BaseOutputDocument extends BaseObject implements Persistent
/**
* Set the value of [out_doc_destination_path] column.
- *
+ *
* @param string $v new value
* @return void
*/
@@ -713,7 +713,7 @@ abstract class BaseOutputDocument extends BaseObject implements Persistent
/**
* Set the value of [out_doc_tags] column.
- *
+ *
* @param string $v new value
* @return void
*/
@@ -735,7 +735,7 @@ abstract class BaseOutputDocument extends BaseObject implements Persistent
/**
* Set the value of [out_doc_pdf_security_enabled] column.
- *
+ *
* @param int $v new value
* @return void
*/
@@ -757,7 +757,7 @@ abstract class BaseOutputDocument extends BaseObject implements Persistent
/**
* Set the value of [out_doc_pdf_security_open_password] column.
- *
+ *
* @param string $v new value
* @return void
*/
@@ -779,7 +779,7 @@ abstract class BaseOutputDocument extends BaseObject implements Persistent
/**
* Set the value of [out_doc_pdf_security_owner_password] column.
- *
+ *
* @param string $v new value
* @return void
*/
@@ -801,7 +801,7 @@ abstract class BaseOutputDocument extends BaseObject implements Persistent
/**
* Set the value of [out_doc_pdf_security_permissions] column.
- *
+ *
* @param string $v new value
* @return void
*/
@@ -1038,7 +1038,7 @@ abstract class BaseOutputDocument extends BaseObject implements Persistent
* an aggreagated array of ValidationFailed objects will be returned.
*
* @param array $columns Array of column names to validate.
- * @return mixed true if all validations pass;
+ * @return mixed true if all validations pass;
array of ValidationFailed objects otherwise.
*/
protected function doValidate($columns = null)
diff --git a/workflow/engine/config/schema.xml b/workflow/engine/config/schema.xml
index 09f63c350..10ce70cb5 100755
--- a/workflow/engine/config/schema.xml
+++ b/workflow/engine/config/schema.xml
@@ -2045,6 +2045,24 @@