diff --git a/apiary.apib b/apiary.apib index 286ab2db3..4336e4615 100644 --- a/apiary.apib +++ b/apiary.apib @@ -1,7 +1,7 @@ HOST: http://www.processmaker.com/api/1.0/{workspace}/ --- ProcessMaker "Michelangelo" API v1 --- --- - Welcome to ProcessMaker API documentation. + Welcome to API documentation. All comments can be written in (support [Markdown](http://daringfireball.net/projects/markdown/syntax) syntax) *(This API is under development yet, please wait for a final v1 release)* diff --git a/workflow/engine/classes/IndicatorsCalculator.php b/workflow/engine/classes/IndicatorsCalculator.php index 7973342ed..213c38471 100644 --- a/workflow/engine/classes/IndicatorsCalculator.php +++ b/workflow/engine/classes/IndicatorsCalculator.php @@ -784,11 +784,18 @@ class IndicatorsCalculator $criteria->addAsColumn('average', 'ROUND(AVG(TOTAL_TIME_BY_TASK/TOTAL_CASES_OUT), 2)'); $criteria->addAsColumn('sdv', 'ROUND(STDDEV(TOTAL_TIME_BY_TASK/TOTAL_CASES_OUT), 2)'); $criteria->add(UsrReportingPeer::TAS_UID, $tasUid); + // Add GROUP BY clause to avoid error 'missing GROUP BY clause in your SQL query' + $criteria->addGroupByColumn(UsrReportingPeer::TOTAL_CASES_OUT); $dataset = UsrReportingPeer::doSelectRS($criteria); $dataset->setFetchmode(ResultSet::FETCHMODE_ASSOC); $dataset->next(); $result = $dataset->getRow(); + if (is_null($result)) { + $result = []; + $result['average'] = 0; + $result['sdv'] = 0; + } return $result; } catch (Exception $error) { throw $error; diff --git a/workflow/engine/content/translations/english/processmaker.en.po b/workflow/engine/content/translations/english/processmaker.en.po index 88f9cd737..3ef0a54bd 100755 --- a/workflow/engine/content/translations/english/processmaker.en.po +++ b/workflow/engine/content/translations/english/processmaker.en.po @@ -39399,48 +39399,6 @@ msgstr "Login" msgid "[login/login.xml?FORGOT_PASWORD_LINK] Forgot Password" msgstr "Forgot Password" -# login/loginpm3.xml?TITLE -# login/loginpm3.xml -#: title - TITLE -msgid "[login/loginpm3.xml?TITLE] Login" -msgstr "Login" - -# login/loginpm3.xml?USR_USERNAME -# login/loginpm3.xml -#: text - USR_USERNAME -msgid "[login/loginpm3.xml?USR_USERNAME] User" -msgstr "User" - -# login/loginpm3.xml?USR_PASSWORD -# login/loginpm3.xml -#: text - USR_PASSWORD -msgid "[login/loginpm3.xml?USR_PASSWORD] Password" -msgstr "Password" - -# login/loginpm3.xml?USR_PASSWORD_MASK -# login/loginpm3.xml -#: password - USR_PASSWORD_MASK -msgid "[login/loginpm3.xml?USR_PASSWORD_MASK] Password" -msgstr "Password" - -# login/loginpm3.xml?USER_LANG -# login/loginpm3.xml -#: dropdown - USER_LANG -msgid "[login/loginpm3.xml?USER_LANG] Language" -msgstr "Language" - -# login/loginpm3.xml?BSUBMIT -# login/loginpm3.xml -#: button - BSUBMIT -msgid "[login/loginpm3.xml?BSUBMIT] Login" -msgstr "Login" - -# login/loginpm3.xml?FORGOT_PASWORD_LINK -# login/loginpm3.xml -#: link - FORGOT_PASWORD_LINK -msgid "[login/loginpm3.xml?FORGOT_PASWORD_LINK] Forgot Password" -msgstr "Forgot Password" - # login/newSite.xml?NEW_WORKSPACE # login/newSite.xml #: title - NEW_WORKSPACE @@ -47229,30 +47187,6 @@ msgstr "Pin" msgid "Enter" msgstr "Enter" -# tracker/loginpm3.xml?TITLE -# tracker/loginpm3.xml -#: title - TITLE -msgid "[tracker/loginpm3.xml?TITLE] CASE TRACKER" -msgstr "CASE TRACKER" - -# tracker/loginpm3.xml?CASE -# tracker/loginpm3.xml -#: Text - CASE -msgid "[tracker/loginpm3.xml?CASE] Case Code" -msgstr "Case Code" - -# tracker/loginpm3.xml?PIN -# tracker/loginpm3.xml -#: password - PIN -msgid "[tracker/loginpm3.xml?PIN] Pin" -msgstr "Pin" - -# tracker/loginpm3.xml?BSUBMIT -# tracker/loginpm3.xml -#: submit - BSUBMIT -msgid "[tracker/loginpm3.xml?BSUBMIT] Enter" -msgstr "Enter" - # tracker/tracker_AvailableCaseTrackerObjects.xml?OBJECT_TITLE # tracker/tracker_AvailableCaseTrackerObjects.xml #: text - OBJECT_TITLE diff --git a/workflow/engine/methods/login/login.php b/workflow/engine/methods/login/login.php index 1f9b4fc5f..57ee7b9a7 100644 --- a/workflow/engine/methods/login/login.php +++ b/workflow/engine/methods/login/login.php @@ -175,9 +175,6 @@ $_SESSION["USERNAME_PREVIOUS2"] = $usernamePrevious2; $_SESSION['NW_PASSWORD'] = $pass; $_SESSION['NW_PASSWORD2'] = $pass1; -//translation -//$Translations = G::getModel("Translation"); -//require_once "classes/model/Translation.php"; $Translations = new Translation(); $translationsTable = $Translations->getTranslationEnvironments(); @@ -214,51 +211,8 @@ $G_PUBLISH = new Publisher(); $version = explode('.', trim(file_get_contents(PATH_GULLIVER . 'VERSION'))); $version = isset($version[0]) ? intval($version[0]) : 0; Cache::put("FAILED_LOGINS{$usernamePrevious2}", $sFailedLogins, 1800); //this value will be lost after 30 minutes -if ($version >= 3) { - $G_PUBLISH->AddContent('xmlform', 'xmlform', 'login/loginpm3', '', $aFields, SYS_URI . 'login/authentication.php'); -} else { - $G_PUBLISH->AddContent('xmlform', 'xmlform', 'login/login', '', $aFields, SYS_URI . 'login/authentication.php'); -} +$G_PUBLISH->AddContent('xmlform', 'xmlform', 'login/login', '', $aFields, SYS_URI . 'login/authentication.php'); -//get the serverconf singleton, and check if we can send the heartbeat -$oServerConf = ServerConf::getSingleton(); -$partnerFlag = (defined('PARTNER_FLAG')) ? PARTNER_FLAG : false; -if (!$partnerFlag) { - $sflag = $oServerConf->getHeartbeatProperty('HB_OPTION', 'HEART_BEAT_CONF'); - $sflag = (trim($sflag) != '') ? $sflag : '1'; - - //get date of next beat - $nextBeatDate = $oServerConf->getHeartbeatProperty('HB_NEXT_BEAT_DATE', 'HEART_BEAT_CONF'); - - //if flag to send heartbeat is enabled, and it is time to send heartbeat, sent it using asynchronous beat. - if (($sflag == "1") && ((strtotime("now") > $nextBeatDate) || is_null($nextBeatDate))) { - $oHeadPublisher = headPublisher::getSingleton(); - //To do: we need to change to ExtJs - $oHeadPublisher->addScriptCode('var flagHeartBeat = 1;'); - } else { - $oHeadPublisher->addScriptCode('var flagHeartBeat = 0;'); - } -} else { - $oHeadPublisher->addScriptCode('var flagHeartBeat = 0;'); -} - -//check if we show the panel with the getting started info - -require_once 'classes/model/Configuration.php'; -$oConfiguration = new Configuration(); -$oCriteria = new Criteria('workflow'); -$oCriteria->add(ConfigurationPeer::CFG_UID, 'getStarted'); -$oCriteria->add(ConfigurationPeer::OBJ_UID, ''); -$oCriteria->add(ConfigurationPeer::CFG_VALUE, '1'); -$oCriteria->add(ConfigurationPeer::PRO_UID, ''); -$oCriteria->add(ConfigurationPeer::USR_UID, ''); -$oCriteria->add(ConfigurationPeer::APP_UID, ''); -$flagGettingStarted = ConfigurationPeer::doCount($oCriteria); -if ($flagGettingStarted == 0) { - $oHeadPublisher->addScriptCode('var flagGettingStarted = 1;'); -} else { - $oHeadPublisher->addScriptCode('var flagGettingStarted = 0;'); -} $dummy = ''; diff --git a/workflow/engine/methods/services/login_getStarted.php b/workflow/engine/methods/services/login_getStarted.php deleted file mode 100644 index 43f67c334..000000000 --- a/workflow/engine/methods/services/login_getStarted.php +++ /dev/null @@ -1,70 +0,0 @@ -. - * - * For more information, contact Colosa Inc, 2566 Le Jeune Rd., - * Coral Gables, FL, 33134, USA, or email info@colosa.com. - */ -$G_PUBLISH = new Publisher(); - -$fileGetStart = PATH_SKINS . SYS_SKIN . PATH_SEP . 'login_getStarted.html'; -if (!file_exists($fileGetStart)) { - $fileGetStart = PATH_SKIN_ENGINE . SYS_SKIN . PATH_SEP . 'login_getStarted.html'; - if (!file_exists($fileGetStart)) { - $fileGetStart = PATH_CUSTOM_SKINS . SYS_SKIN . PATH_SEP . 'login_getStarted.html'; - if (!file_exists($fileGetStart)) { - $fileGetStart = PATH_TPL . 'services/login_getStarted.html'; - } - } -} - -$oTemplatePower = new TemplatePower( $fileGetStart ); -$oTemplatePower->prepare(); -/* -$oTemplatePower->newBlock('users'); -$oTemplatePower->assign('USR_UID', $aUser['USR_UID']); -$oTemplatePower->assign('USR_FULLNAME', $aData['USR_FIRSTNAME'] . ' ' . $aData['USR_LASTNAME'] . ' (' . $aData['USR_USERNAME'] . ')'); -*/ -$userName = 'admin'; -$userPass = "The password introduced at the time of installing the application. (If you did not change the password by default is $userName)"; -if(isset($_SESSION['NW_PASSWORD'])){ - if($_SESSION['NW_PASSWORD'] != ''){ - $userPass = $_SESSION['NW_PASSWORD']; - } -} -require_once 'classes/model/Users.php'; -$oCriteria = new Criteria( 'workflow' ); -$oCriteria->addSelectColumn( UsersPeer::USR_USERNAME); -$oCriteria->add( UsersPeer::USR_UID, '00000000000000000000000000000001', Criteria::IN ); -$oDataset = UsersPeer::doSelectRS( $oCriteria ); -$oDataset->setFetchmode( ResultSet::FETCHMODE_ASSOC ); -$aData = array (); -if ($oDataset->next()) { - $aData = $oDataset->getRow(); - $userName = $aData['USR_USERNAME']; -} - -$oTemplatePower->assign("URL_MABORAK_JS", G::browserCacheFilesUrl("/js/maborak/core/maborak.js")); -$oTemplatePower->assign("name", $userName); -$oTemplatePower->assign("pass", $userPass); - -$G_PUBLISH->AddContent( 'template', '', '', '', $oTemplatePower ); - -G::RenderPage( 'publish', 'raw' ); - diff --git a/workflow/engine/templates/main/login.js b/workflow/engine/templates/main/login.js index 138d96467..36048a8e4 100644 --- a/workflow/engine/templates/main/login.js +++ b/workflow/engine/templates/main/login.js @@ -5,7 +5,7 @@ * @author Erik Amaru Ortiz */ -var loadMask = function(){ +var lo adMask = function(){ return { init: function() { var loading = Ext.get('loading'); @@ -69,9 +69,6 @@ var Login = function() { Ext.msgBoxSlider.msgTopCenter(flyNotify.type, flyNotify.title, flyNotify.text, flyNotify.time); } - if (flagGettingStarted) { - this.gettingStartedWindow.show(); - } } } }(); @@ -349,29 +346,6 @@ Login.initComponents = function() }) }); - this.gettingStartedWindow = new Ext.Window({ - id: 'gettingStartedWindow', - layout: 'fit', - title: '', - width: 640, - height: 500, //180, - //iconCls: 'ux-auth-header-icon', - closable: true, - resizable: false, - plain: true, - draggable: false, - modal:true, - //autoLoad: '../services/login_getStarted.php' - items: [ - { - xtype: 'iframepanel', - defaultSrc : '../services/login_getStarted.php', - loadMask:{msg:_('ID_LOADING')}, - bodyStyle:{height: (PMExt.getBrowser().screen.height-60) + 'px', overflow:'auto'}, - width:588 - } - ] - }); //Ext.getCmp('login-form').hide(); } diff --git a/workflow/engine/templates/services/login_getStarted.html b/workflow/engine/templates/services/login_getStarted.html deleted file mode 100644 index 3f16c5a20..000000000 --- a/workflow/engine/templates/services/login_getStarted.html +++ /dev/null @@ -1,145 +0,0 @@ - - - - - - - - - - - - - - -
- - -

Welcome to ProcessMaker


-

To get started log in using the following credentials:

- Username: {name}
- Password: {pass}

-

We suggest you follow our 7 easy videos to automate your workflow. You can see a demo of each step at http://www.processmaker.com/tutorials/

- - Other Resources:
- PM Wiki - Manuals
- PM Forum - Ask Questions

- -

We hope you enjoy using ProcessMaker. For more information about our enterprise support and consulting services contact us.

-

The ProcessMaker Team

- - Don't show me again -
- - - - diff --git a/workflow/engine/xmlform/login/login.html b/workflow/engine/xmlform/login/login.html index fe97cc24a..df8f0d053 100644 --- a/workflow/engine/xmlform/login/login.html +++ b/workflow/engine/xmlform/login/login.html @@ -1,47 +1,38 @@ -
-
-
- - - - -
- - -
{$form.USR_PASSWORD}
- - - - - - - - - - - - - - - - - - - - - - - - - -
{$form.TITLE}
{$USR_USERNAME}{$form.USR_USERNAME}
{$USR_PASSWORD_MASK}{$form.USR_PASSWORD_MASK}
{$USER_LANG}{$form.USER_LANG}
{$form.URL}
{$form.BSUBMIT}
{$form.FORGOT_PASWORD_LINK}
-
-
-
-
- - + + + + \ No newline at end of file + + diff --git a/workflow/engine/xmlform/login/login.xml b/workflow/engine/xmlform/login/login.xml index c680929e9..dd4da8891 100644 --- a/workflow/engine/xmlform/login/login.xml +++ b/workflow/engine/xmlform/login/login.xml @@ -1,15 +1,17 @@ - + + + <en><![CDATA[Login]]></en> - + - + @@ -21,7 +23,7 @@ SELECT LANG_ID, LANG_NAME FROM langOptions - + 0) + document.getElementById("form[USR_PASSWORD_MASK]").setAttribute("type", "text"); + document.login.submit(); }.extend(document.getElementById('form[BSUBMIT]'))); ]]> + diff --git a/workflow/engine/xmlform/login/loginpm3.html b/workflow/engine/xmlform/login/loginpm3.html deleted file mode 100644 index df8f0d053..000000000 --- a/workflow/engine/xmlform/login/loginpm3.html +++ /dev/null @@ -1,38 +0,0 @@ -
-

{php}echo G::LoadTranslation('ID_LOGIN_TITLE');{/php}

-
- -
- - - {$form.BROWSER_TIME_ZONE_OFFSET} -
{$form.USR_PASSWORD}
-
- - {$form.USR_USERNAME} - {$form.USR_PASSWORD_MASK} - {$form.USER_LANG} - {$form.URL} -
-
- -
- {$form.BSUBMIT} - {$form.FORGOT_PASWORD_LINK} - -
- -
- - - - diff --git a/workflow/engine/xmlform/login/loginpm3.xml b/workflow/engine/xmlform/login/loginpm3.xml deleted file mode 100644 index 3fe339dc9..000000000 --- a/workflow/engine/xmlform/login/loginpm3.xml +++ /dev/null @@ -1,175 +0,0 @@ - - - - - - <en><![CDATA[Login]]></en> - - - - - - - - - - - -SELECT LANG_ID, LANG_NAME FROM langOptions - - - - - - - - - - - 0) - document.getElementById("form[USR_PASSWORD_MASK]").setAttribute("type", "text"); - document.login.submit(); -}.extend(document.getElementById('form[BSUBMIT]'))); - -]]> - - diff --git a/workflow/public_html/images/get_started.png b/workflow/public_html/images/get_started.png deleted file mode 100644 index d343a4ea3..000000000 Binary files a/workflow/public_html/images/get_started.png and /dev/null differ diff --git a/workflow/public_html/sysGeneric.php b/workflow/public_html/sysGeneric.php index 4f921293d..c1a90f3b6 100644 --- a/workflow/public_html/sysGeneric.php +++ b/workflow/public_html/sysGeneric.php @@ -893,7 +893,8 @@ if (!defined('EXECUTE_BY_CRON')) { global $G_PUBLISH; $G_PUBLISH = new Publisher(); - $G_PUBLISH->AddContent('xmlform', 'xmlform', 'login' . PATH_SEP . 'TimeZoneAlert', '', $arrayData, SYS_URI . 'login/updateTimezone'); + $G_PUBLISH->AddContent('xmlform', 'xmlform', 'login/TimeZoneAlert', '', $arrayData, SYS_URI . 'login/updateTimezone'); + G::RenderPage('publish'); exit(0); }