diff --git a/workflow/engine/bin/tasks/cliWorkspaces.php b/workflow/engine/bin/tasks/cliWorkspaces.php index 123d2957a..300b3f008 100755 --- a/workflow/engine/bin/tasks/cliWorkspaces.php +++ b/workflow/engine/bin/tasks/cliWorkspaces.php @@ -270,6 +270,19 @@ CLI::taskArg('workspace', true, true); CLI::taskRun("run_migrate_list_unassigned"); /*----------------------------------********---------------------------------*/ +CLI::taskName('migrate-content'); +CLI::taskDescription(<<xssFilterHard($args); + $workspaces = get_workspaces_from_args($args); + $lang = array_key_exists("lang", $opts) ? $opts['lang'] : SYS_LANG; + $start = microtime(true); + CLI::logging("> Optimizing content data...\n"); + foreach ($workspaces as $workspace) { + if (!defined('SYS_SYS')) { + define('SYS_SYS', $workspace->name); + } + print_r('Regenerating content in: ' . pakeColor::colorize($workspace->name, 'INFO') . "\n"); + CLI::logging("-> Regenerating content \n"); + $workspace->migrateContentRun($workspace->name, $lang); + } + $stop = microtime(true); + CLI::logging("<*> Optimizing content data Process took " . ($stop - $start) . " seconds.\n"); +} diff --git a/workflow/engine/classes/class.AppSolr.php b/workflow/engine/classes/class.AppSolr.php index b57cdf1b6..937f2406b 100755 --- a/workflow/engine/classes/class.AppSolr.php +++ b/workflow/engine/classes/class.AppSolr.php @@ -834,7 +834,7 @@ class AppSolr $c->addAsColumn ('USR_PREV_LAST', 'uprev.USR_LASTNAME'); $c->addAsColumn ('PREVIOUS_USR_UID', 'uprev.USR_UID'); - $c->addAsColumn ('APP_TAS_TITLE', 'ctastitle.CON_VALUE'); + $c->addAsColumn ('APP_TAS_TITLE', TaskPeer::TAS_TITLE); $c->addAsColumn ('APP_THREAD_STATUS', 'at.APP_THREAD_STATUS'); $c->addSelectColumn (AppDelegationPeer::APP_OVERDUE_PERCENTAGE); @@ -853,7 +853,6 @@ class AppSolr $c->addAlias ('u', 'USERS'); $c->addAlias ('uprev', 'USERS'); $c->addAlias ('adprev', 'APP_DELEGATION'); - $c->addAlias ('ctastitle', 'CONTENT'); $c->addAlias ('at', 'APP_THREAD'); $aConditions = array (); @@ -880,14 +879,9 @@ class AppSolr 'adprev.DEL_INDEX' ); $c->addJoinMC ($aConditions, Criteria::LEFT_JOIN); - - $aConditions = array (); - $aConditions [] = array ( - AppDelegationPeer::TAS_UID, - 'ctastitle.CON_ID' - ); - $c->addJoinMC ($aConditions, Criteria::LEFT_JOIN); - + + $c->addJoin(AppDelegationPeer::TAS_UID, TaskPeer::TAS_UID); + $aConditions = array (); $aConditions [] = array ( 'adprev.USR_UID', @@ -908,10 +902,7 @@ class AppSolr $c->add (AppDelegationPeer::APP_UID, $aappUIDs, Criteria::IN ); //$c->add (AppDelegationPeer::DEL_INDEX, $delIndex); - - $c->add ('ctastitle.CON_CATEGORY', 'TAS_TITLE'); - $c->add ('ctastitle.CON_LANG', 'en'); - + $rs = AppDelegationPeer::doSelectRS ($c); $rs->setFetchmode (ResultSet::FETCHMODE_ASSOC); // echo $c->toString(); @@ -954,7 +945,7 @@ class AppSolr $c->addAsColumn ('USR_PREV_LAST', 'uprev.USR_LASTNAME'); $c->addAsColumn ('PREVIOUS_USR_UID', 'uprev.USR_UID'); - $c->addAsColumn ('APP_TAS_TITLE', 'ctastitle.CON_VALUE'); + $c->addAsColumn ('APP_TAS_TITLE', TaskPeer::TAS_TITLE); $c->addAsColumn ('APP_THREAD_STATUS', 'at.APP_THREAD_STATUS'); $c->addSelectColumn (AppDelegationPeer::APP_OVERDUE_PERCENTAGE); @@ -973,7 +964,6 @@ class AppSolr $c->addAlias ('u', 'USERS'); $c->addAlias ('uprev', 'USERS'); $c->addAlias ('adprev', 'APP_DELEGATION'); - $c->addAlias ('ctastitle', 'CONTENT'); $c->addAlias ('at', 'APP_THREAD'); $aConditions = array (); @@ -993,14 +983,9 @@ class AppSolr 'adprev.DEL_INDEX' ); $c->addJoinMC ($aConditions, Criteria::LEFT_JOIN); - - $aConditions = array (); - $aConditions [] = array ( - AppDelegationPeer::TAS_UID, - 'ctastitle.CON_ID' - ); - $c->addJoinMC ($aConditions, Criteria::LEFT_JOIN); - + + $c->addJoin(AppDelegationPeer::TAS_UID, TaskPeer::TAS_UID); + $aConditions = array (); $aConditions [] = array ( 'adprev.USR_UID', @@ -1021,10 +1006,7 @@ class AppSolr $c->add (AppDelegationPeer::APP_UID, $appUID); $c->add (AppDelegationPeer::DEL_INDEX, $delIndex); - - $c->add ('ctastitle.CON_CATEGORY', 'TAS_TITLE'); - $c->add ('ctastitle.CON_LANG', 'en'); - + $rs = AppDelegationPeer::doSelectRS ($c); $rs->setFetchmode (ResultSet::FETCHMODE_ASSOC); // echo $c->toString(); @@ -2609,6 +2591,7 @@ class AppSolr $c = new Criteria (); $c->addSelectColumn (ApplicationPeer::APP_UID); + $c->addSelectColumn (ApplicationPeer::APP_TITLE); $c->addSelectColumn (ApplicationPeer::APP_NUMBER); $c->addSelectColumn (ApplicationPeer::APP_STATUS); $c->addSelectColumn (ApplicationPeer::PRO_UID); @@ -2616,10 +2599,9 @@ class AppSolr $c->addSelectColumn (ApplicationPeer::APP_FINISH_DATE); $c->addSelectColumn (ApplicationPeer::APP_UPDATE_DATE); $c->addSelectColumn (ApplicationPeer::APP_DATA); - - $c->addAsColumn ('APP_TITLE', 'capp.CON_VALUE'); - $c->addAsColumn ('PRO_TITLE', 'cpro.CON_VALUE'); - + + $c->addSelectColumn (ProcessPeer::PRO_TITLE); + $c->addSelectColumn ('ad.DEL_INDEX'); $c->addSelectColumn ('ad.DEL_PREVIOUS'); $c->addSelectColumn ('ad.TAS_UID'); @@ -2644,43 +2626,12 @@ class AppSolr $c->addSelectColumn ('at.APP_THREAD_PARENT'); $c->addSelectColumn ('at.APP_THREAD_STATUS'); - $c->addAlias ('capp', 'CONTENT'); - $c->addAlias ('cpro', 'CONTENT'); $c->addAlias ('ad', 'APP_DELEGATION'); $c->addAlias ('at', 'APP_THREAD'); - $aConditions = array (); - $aConditions [] = array ( - ApplicationPeer::APP_UID, - 'capp.CON_ID' - ); - $aConditions [] = array ( - 'capp.CON_CATEGORY', - DBAdapter::getStringDelimiter () . 'APP_TITLE' . DBAdapter::getStringDelimiter () - ); - $aConditions [] = array ( - 'capp.CON_LANG', - DBAdapter::getStringDelimiter () . 'en' . DBAdapter::getStringDelimiter () - ); - $c->addJoinMC ($aConditions, Criteria::LEFT_JOIN); - - $aConditions = array (); - $aConditions [] = array ( - ApplicationPeer::PRO_UID, - 'cpro.CON_ID' - ); - $aConditions [] = array ( - 'cpro.CON_CATEGORY', - DBAdapter::getStringDelimiter () . 'PRO_TITLE' . DBAdapter::getStringDelimiter () - ); - $aConditions [] = array ( - 'cpro.CON_LANG', - DBAdapter::getStringDelimiter () . 'en' . DBAdapter::getStringDelimiter () - ); - $c->addJoinMC ($aConditions, Criteria::LEFT_JOIN); - + $c->addJoin (ApplicationPeer::PRO_UID, ProcessPeer::PRO_UID, Criteria::LEFT_JOIN); $c->addJoin (ApplicationPeer::APP_UID, 'ad.APP_UID', Criteria::JOIN); - + $aConditions = array (); $aConditions [] = array ( 'ad.APP_UID', @@ -2725,6 +2676,7 @@ class AppSolr $c = new Criteria (); $c->addSelectColumn (ApplicationPeer::APP_UID); + $c->addSelectColumn (ApplicationPeer::APP_TITLE); $c->addSelectColumn (ApplicationPeer::APP_NUMBER); $c->addSelectColumn (ApplicationPeer::APP_STATUS); $c->addSelectColumn (ApplicationPeer::PRO_UID); @@ -2733,8 +2685,7 @@ class AppSolr $c->addSelectColumn (ApplicationPeer::APP_UPDATE_DATE); $c->addSelectColumn (ApplicationPeer::APP_DATA); - $c->addAsColumn ('APP_TITLE', 'capp.CON_VALUE'); - $c->addAsColumn ('PRO_TITLE', 'cpro.CON_VALUE'); + $c->addSelectColumn ('pro.PRO_TITLE'); $c->addSelectColumn ('ad.DEL_INDEX'); $c->addSelectColumn ('ad.DEL_PREVIOUS'); @@ -2766,43 +2717,12 @@ class AppSolr $c->addAsColumn("PRO_CATEGORY_UID", "pro.PRO_CATEGORY"); - $c->addAlias ('capp', 'CONTENT'); - $c->addAlias ('cpro', 'CONTENT'); $c->addAlias ('ad', 'APP_DELEGATION'); $c->addAlias ('at', 'APP_THREAD'); $c->addAlias ('ade', 'APP_DELAY'); $c->addAlias ("pro", ProcessPeer::TABLE_NAME); - $aConditions = array (); - $aConditions [] = array ( - ApplicationPeer::APP_UID, - 'capp.CON_ID' - ); - $aConditions [] = array ( - 'capp.CON_CATEGORY', - DBAdapter::getStringDelimiter () . 'APP_TITLE' . DBAdapter::getStringDelimiter () - ); - $aConditions [] = array ( - 'capp.CON_LANG', - DBAdapter::getStringDelimiter () . 'en' . DBAdapter::getStringDelimiter () - ); - $c->addJoinMC ($aConditions, Criteria::LEFT_JOIN); - - $aConditions = array (); - $aConditions [] = array ( - ApplicationPeer::PRO_UID, - 'cpro.CON_ID' - ); - $aConditions [] = array ( - 'cpro.CON_CATEGORY', - DBAdapter::getStringDelimiter () . 'PRO_TITLE' . DBAdapter::getStringDelimiter () - ); - $aConditions [] = array ( - 'cpro.CON_LANG', - DBAdapter::getStringDelimiter () . 'en' . DBAdapter::getStringDelimiter () - ); - $c->addJoinMC ($aConditions, Criteria::LEFT_JOIN); - + $c->addJoin (ApplicationPeer::PRO_UID, ProcessPeer::PRO_UID, Criteria::LEFT_JOIN); $c->addJoin (ApplicationPeer::APP_UID, 'ad.APP_UID', Criteria::JOIN); $aConditions = array (); diff --git a/workflow/engine/classes/class.case.php b/workflow/engine/classes/class.case.php index 596c46629..116a76317 100755 --- a/workflow/engine/classes/class.case.php +++ b/workflow/engine/classes/class.case.php @@ -200,32 +200,13 @@ class Cases $c = new Criteria(); $c->addSelectColumn(TaskPeer::TAS_UID); + $c->addSelectColumn(TaskPeer::TAS_TITLE); $c->addSelectColumn(TaskPeer::PRO_UID); - $c->addAsColumn('TAS_TITLE', 'C1.CON_VALUE'); - $c->addAsColumn('PRO_TITLE', 'C2.CON_VALUE'); - $c->addAlias('C1', 'CONTENT'); - $c->addAlias('C2', 'CONTENT'); - $aConditions = array(); - $aConditions[] = array(TaskPeer::TAS_UID, 'C1.CON_ID'); - $aConditions[] = array( - 'C1.CON_CATEGORY', DBAdapter::getStringDelimiter() . 'TAS_TITLE' . DBAdapter::getStringDelimiter() - ); - $aConditions[] = array( - 'C1.CON_LANG', DBAdapter::getStringDelimiter() . SYS_LANG . DBAdapter::getStringDelimiter() - ); - $c->addJoinMC($aConditions, Criteria::LEFT_JOIN); - $aConditions = array(); - $aConditions[] = array(TaskPeer::PRO_UID, 'C2.CON_ID'); - $aConditions[] = array( - 'C2.CON_CATEGORY', DBAdapter::getStringDelimiter() . 'PRO_TITLE' . DBAdapter::getStringDelimiter() - ); - $aConditions[] = array( - 'C2.CON_LANG', DBAdapter::getStringDelimiter() . SYS_LANG . DBAdapter::getStringDelimiter() - ); - $c->addJoinMC($aConditions, Criteria::LEFT_JOIN); + $c->addSelectColumn(ProcessPeer::PRO_TITLE); + $c->addJoin (TaskPeer::PRO_UID, ProcessPeer::PRO_UID, Criteria::LEFT_JOIN); $c->add(TaskPeer::TAS_UID, $tasks, Criteria::IN); - $c->addAscendingOrderByColumn('PRO_TITLE'); - $c->addAscendingOrderByColumn('TAS_TITLE'); + $c->addAscendingOrderByColumn(ProcessPeer::PRO_TITLE); + $c->addAscendingOrderByColumn(TaskPeer::TAS_TITLE); $rs = TaskPeer::doSelectRS($c); $rs->setFetchmode(ResultSet::FETCHMODE_ASSOC); $rs->next(); @@ -304,11 +285,9 @@ class Cases $c = new Criteria(); $c->addSelectColumn(TaskPeer::TAS_UID); + $c->addSelectColumn(TaskPeer::TAS_TITLE); $c->addSelectColumn(TaskPeer::PRO_UID); - $c->addAsColumn('TAS_TITLE', 'C1.CON_VALUE'); - $c->addAsColumn('PRO_TITLE', 'C2.CON_VALUE'); - $c->addAlias('C1', 'CONTENT'); - $c->addAlias('C2', 'CONTENT'); + $c->addSelectColumn(ProcessPeer::PRO_TITLE); if ($typeView == 'category') { $c->addAsColumn('PRO_CATEGORY', 'PCS.PRO_CATEGORY'); $c->addAsColumn('CATEGORY_NAME', 'PCSCAT.CATEGORY_NAME'); @@ -322,28 +301,11 @@ class Cases $c->addJoinMC($aConditions, Criteria::LEFT_JOIN); } - $aConditions = array(); - $aConditions[] = array(TaskPeer::TAS_UID, 'C1.CON_ID'); - $aConditions[] = array( - 'C1.CON_CATEGORY', DBAdapter::getStringDelimiter() . 'TAS_TITLE' . DBAdapter::getStringDelimiter() - ); - $aConditions[] = array( - 'C1.CON_LANG', DBAdapter::getStringDelimiter() . SYS_LANG . DBAdapter::getStringDelimiter() - ); - $c->addJoinMC($aConditions, Criteria::LEFT_JOIN); - $aConditions = array(); - $aConditions[] = array(TaskPeer::PRO_UID, 'C2.CON_ID'); - $aConditions[] = array( - 'C2.CON_CATEGORY', DBAdapter::getStringDelimiter() . 'PRO_TITLE' . DBAdapter::getStringDelimiter() - ); - $aConditions[] = array( - 'C2.CON_LANG', DBAdapter::getStringDelimiter() . SYS_LANG . DBAdapter::getStringDelimiter() - ); - $c->addJoinMC($aConditions, Criteria::LEFT_JOIN); + $c->addJoin (TaskPeer::PRO_UID, ProcessPeer::PRO_UID, Criteria::LEFT_JOIN); $c->add(TaskPeer::TAS_UID, $tasks, Criteria::IN); - $c->addAscendingOrderByColumn('PRO_TITLE'); - $c->addAscendingOrderByColumn('TAS_TITLE'); + $c->addAscendingOrderByColumn(ProcessPeer::PRO_TITLE); + $c->addAscendingOrderByColumn(TaskPeer::TAS_TITLE); $rs = TaskPeer::doSelectRS($c); $rs->setFetchmode(ResultSet::FETCHMODE_ASSOC); @@ -447,32 +409,13 @@ class Cases $c = new Criteria(); $c->addSelectColumn(TaskPeer::TAS_UID); + $c->addSelectColumn(TaskPeer::TAS_TITLE); $c->addSelectColumn(TaskPeer::PRO_UID); - $c->addAsColumn('TAS_TITLE', 'C1.CON_VALUE'); - $c->addAsColumn('PRO_TITLE', 'C2.CON_VALUE'); - $c->addAlias('C1', 'CONTENT'); - $c->addAlias('C2', 'CONTENT'); - $aConditions = array(); - $aConditions[] = array(TaskPeer::TAS_UID, 'C1.CON_ID'); - $aConditions[] = array( - 'C1.CON_CATEGORY', DBAdapter::getStringDelimiter() . 'TAS_TITLE' . DBAdapter::getStringDelimiter() - ); - $aConditions[] = array( - 'C1.CON_LANG', DBAdapter::getStringDelimiter() . SYS_LANG . DBAdapter::getStringDelimiter() - ); - $c->addJoinMC($aConditions, Criteria::LEFT_JOIN); - $aConditions = array(); - $aConditions[] = array(TaskPeer::PRO_UID, 'C2.CON_ID'); - $aConditions[] = array( - 'C2.CON_CATEGORY', DBAdapter::getStringDelimiter() . 'PRO_TITLE' . DBAdapter::getStringDelimiter() - ); - $aConditions[] = array( - 'C2.CON_LANG', DBAdapter::getStringDelimiter() . SYS_LANG . DBAdapter::getStringDelimiter() - ); - $c->addJoinMC($aConditions, Criteria::LEFT_JOIN); + $c->addSelectColumn(ProcessPeer::PRO_TITLE); + $c->addJoin (TaskPeer::PRO_UID, ProcessPeer::PRO_UID, Criteria::LEFT_JOIN); $c->add(TaskPeer::TAS_UID, $tasks, Criteria::IN); - $c->addAscendingOrderByColumn('PRO_TITLE'); - $c->addAscendingOrderByColumn('TAS_TITLE'); + $c->addAscendingOrderByColumn(ProcessPeer::PRO_TITLE); + $c->addAscendingOrderByColumn(TaskPeer::TAS_TITLE); $rs = TaskPeer::doSelectRS($c); $rs->setFetchmode(ResultSet::FETCHMODE_ASSOC); $rs->next(); @@ -750,35 +693,23 @@ class Cases for ($r = count($currentDelegations) - 1; $r >= 0; $r--) { $c = new Criteria(); $c->clearSelectColumns(); - $c->addSelectColumn(ContentPeer::CON_CATEGORY); - $c->addSelectColumn(ContentPeer::CON_VALUE); - $c->add(ContentPeer::CON_ID, $currentDelegations[$r]->getTasUid()); - $c->add(ContentPeer::CON_LANG, $lang); + $c->addSelectColumn(TaskPeer::TAS_DEF_TITLE); + $c->addSelectColumn(TaskPeer::TAS_DEF_DESCRIPTION); + $c->add(TaskPeer::TAS_UID, $currentDelegations[$r]->getTasUid()); $rs = TaskPeer::doSelectRS($c); $rs->setFetchmode(ResultSet::FETCHMODE_ASSOC); - $rs->next(); - $row = $rs->getRow(); - - while (is_array($row)) { - switch ($row['CON_CATEGORY']) { - case 'TAS_DEF_TITLE': - $tasDefTitle = $row['CON_VALUE']; - if ($tasDefTitle != '' && !$bUpdatedDefTitle) { - $res['APP_TITLE'] = G::replaceDataField($tasDefTitle, $aAppData); - $bUpdatedDefTitle = true; - } - break; - case 'TAS_DEF_DESCRIPTION': - $tasDefDescription = $row['CON_VALUE']; - $tasDefDescription = $row['CON_VALUE']; - if ($tasDefDescription != '' && !$bUpdatedDefDescription) { - $res['APP_DESCRIPTION'] = G::replaceDataField($tasDefDescription, $aAppData); - $bUpdatedDefDescription = true; - } - break; - } - $rs->next(); + while ($rs->next()) { $row = $rs->getRow(); + $tasDefTitle = $row['TAS_DEF_TITLE']; + if ($tasDefTitle != '' && !$bUpdatedDefTitle) { + $res['APP_TITLE'] = G::replaceDataField($tasDefTitle, $aAppData); + $bUpdatedDefTitle = true; + } + $tasDefDescription = $row['TAS_DEF_DESCRIPTION']; + if ($tasDefDescription != '' && !$bUpdatedDefDescription) { + $res['APP_DESCRIPTION'] = G::replaceDataField($tasDefDescription, $aAppData); + $bUpdatedDefDescription = true; + } } } return $res; @@ -817,71 +748,51 @@ class Cases while (is_array($rowCri)) { $c = new Criteria(); $c->clearSelectColumns(); - $c->addSelectColumn(ContentPeer::CON_CATEGORY); - $c->addSelectColumn(ContentPeer::CON_VALUE); - $c->add(ContentPeer::CON_ID, $rowCri['TAS_UID']); - $c->add(ContentPeer::CON_LANG, $lang); - $c->add(ContentPeer::CON_CATEGORY, array("TAS_DEF_TITLE", "TAS_DEF_DESCRIPTION"), Criteria::IN); + $c->addSelectColumn(TaskPeer::TAS_DEF_TITLE); + $c->addSelectColumn(TaskPeer::TAS_DEF_DESCRIPTION); + $c->add(TaskPeer::TAS_UID, $rowCri['TAS_UID']); $rs = TaskPeer::doSelectRS($c); $rs->setFetchmode(ResultSet::FETCHMODE_ASSOC); - while ($rs->next()) { $row = $rs->getRow(); + $tasDefTitle = trim($row['TAS_DEF_TITLE']); + if ($tasDefTitle != '' && !$bUpdatedDefTitle) { + $newAppTitle = G::replaceDataField($tasDefTitle, $aAppData); + $res['APP_TITLE'] = $newAppTitle; + if (!(isset($fields['APP_TITLE']) && $fields['APP_TITLE'] == $newAppTitle)) { + $bUpdatedDefTitle = true; + /// updating the value in content for row (APP_TITLE,$lan) + $con = Propel::getConnection('workflow'); + $c1 = new Criteria('workflow'); + $c1->add(ContentPeer::CON_CATEGORY, 'APP_TITLE'); + $c1->add(ContentPeer::CON_ID, $sAppUid); + $c1->add(ContentPeer::CON_LANG, $lang); - switch ($row['CON_CATEGORY']) { - case 'TAS_DEF_TITLE': - if ($bUpdatedDefTitle) { - break; - } - $tasDefTitle = trim($row['CON_VALUE']); - if ($tasDefTitle != '') { - $newAppTitle = G::replaceDataField($tasDefTitle, $aAppData); - $res['APP_TITLE'] = $newAppTitle; - if (isset($fields['APP_TITLE']) && $fields['APP_TITLE'] == $newAppTitle) { - break; - } - $bUpdatedDefTitle = true; - /// updating the value in content for row (APP_TITLE,$lan) - $con = Propel::getConnection('workflow'); - $c1 = new Criteria('workflow'); - $c1->add(ContentPeer::CON_CATEGORY, 'APP_TITLE'); - $c1->add(ContentPeer::CON_ID, $sAppUid); - $c1->add(ContentPeer::CON_LANG, $lang); - - // update set - $c2 = new Criteria('workflow'); - $c2->add(ContentPeer::CON_VALUE, $newAppTitle); - BasePeer::doUpdate($c1, $c2, $con); - } - break; - case 'TAS_DEF_DESCRIPTION': - if ($bUpdatedDefDescription) { - break; - } - $tasDefDescription = trim($row['CON_VALUE']); - if ($tasDefDescription != '') { - $newAppDescription = G::replaceDataField($tasDefDescription, $aAppData); - $res['APP_DESCRIPTION'] = $newAppDescription; - if (isset($fields['APP_DESCRIPTION']) && - $fields['APP_DESCRIPTION'] == $newAppDescription) { - break; - } - $bUpdatedDefDescription = true; - /// updating the value in content for row (APP_TITLE,$lan) - $con = Propel::getConnection('workflow'); - $c1 = new Criteria('workflow'); - $c1->add(ContentPeer::CON_CATEGORY, 'APP_DESCRIPTION'); - $c1->add(ContentPeer::CON_ID, $sAppUid); - $c1->add(ContentPeer::CON_LANG, $lang); - // update set - $c2 = new Criteria('workflow'); - $c2->add(ContentPeer::CON_VALUE, $newAppDescription); - BasePeer::doUpdate($c1, $c2, $con); - } - break; + // update set + $c2 = new Criteria('workflow'); + $c2->add(ContentPeer::CON_VALUE, $newAppTitle); + BasePeer::doUpdate($c1, $c2, $con); + } + } + $tasDefDescription = trim($row['TAS_DEF_DESCRIPTION']); + if ($tasDefDescription != '' && !$bUpdatedDefDescription) { + $newAppDescription = G::replaceDataField($tasDefDescription, $aAppData); + $res['APP_DESCRIPTION'] = $newAppDescription; + if (!(isset($fields['APP_DESCRIPTION']) && $fields['APP_DESCRIPTION'] == $newAppDescription)) { + $bUpdatedDefDescription = true; + /// updating the value in content for row (APP_TITLE,$lan) + $con = Propel::getConnection('workflow'); + $c1 = new Criteria('workflow'); + $c1->add(ContentPeer::CON_CATEGORY, 'APP_DESCRIPTION'); + $c1->add(ContentPeer::CON_ID, $sAppUid); + $c1->add(ContentPeer::CON_LANG, $lang); + // update set + $c2 = new Criteria('workflow'); + $c2->add(ContentPeer::CON_VALUE, $newAppDescription); + BasePeer::doUpdate($c1, $c2, $con); + } } } - $rsCri->next(); $rowCri = $rsCri->getRow(); } @@ -2615,7 +2526,6 @@ class Cases public function getTransferHistoryCriteria($sAppUid) { $c = new Criteria('workflow'); - $c->addAsColumn('TAS_TITLE', 'TAS_TITLE.CON_VALUE'); $c->addSelectColumn(UsersPeer::USR_FIRSTNAME); $c->addSelectColumn(UsersPeer::USR_LASTNAME); $c->addSelectColumn(AppDelegationPeer::DEL_DELEGATE_DATE); @@ -2639,6 +2549,7 @@ class Cases $c->addSelectColumn(AppDelegationPeer::DEL_INIT_DATE); $c->addSelectColumn(AppDelayPeer::APP_ENABLE_ACTION_DATE); $c->addSelectColumn(AppDelayPeer::APP_DISABLE_ACTION_DATE); + $c->addSelectColumn(TaskPeer::TAS_TITLE); //APP_DELEGATION LEFT JOIN USERS $c->addJoin(AppDelegationPeer::USR_UID, UsersPeer::USR_UID, Criteria::LEFT_JOIN); @@ -2651,14 +2562,8 @@ class Cases $app[] = array(AppDelegationPeer::APP_UID, AppDelayPeer::APP_UID); $c->addJoinMC($app, Criteria::LEFT_JOIN); - //LEFT JOIN CONTENT TAS_TITLE - $c->addAlias("TAS_TITLE", 'CONTENT'); - $del = DBAdapter::getStringDelimiter(); - $appTitleConds = array(); - $appTitleConds[] = array(AppDelegationPeer::TAS_UID, 'TAS_TITLE.CON_ID'); - $appTitleConds[] = array('TAS_TITLE.CON_CATEGORY', $del . 'TAS_TITLE' . $del); - $appTitleConds[] = array('TAS_TITLE.CON_LANG', $del . SYS_LANG . $del); - $c->addJoinMC($appTitleConds, Criteria::LEFT_JOIN); + //LEFT JOIN TASK TAS_TITLE + $c->addJoin(AppDelegationPeer::TAS_UID, TaskPeer::TAS_UID, Criteria::LEFT_JOIN); //WHERE $c->add(AppDelegationPeer::APP_UID, $sAppUid); @@ -2742,6 +2647,7 @@ class Cases $c = new Criteria('workflow'); $c->clearSelectColumns(); $c->addSelectColumn(ApplicationPeer::APP_UID); + $c->addSelectColumn(ApplicationPeer::APP_TITLE); $c->addSelectColumn(ApplicationPeer::APP_NUMBER); $c->addSelectColumn(ApplicationPeer::APP_UPDATE_DATE); $c->addSelectColumn(ApplicationPeer::PRO_UID); @@ -2766,9 +2672,8 @@ class Cases $c->addSelectColumn(UsersPeer::USR_UID); $c->addAsColumn('APP_CURRENT_USER', "CONCAT(USERS.USR_LASTNAME, ' ', USERS.USR_FIRSTNAME)"); $c->addSelectColumn(ApplicationPeer::APP_STATUS); - $c->addAsColumn('APP_TITLE', 'APP_TITLE.CON_VALUE'); - $c->addAsColumn('APP_PRO_TITLE', 'PRO_TITLE.CON_VALUE'); - $c->addAsColumn('APP_TAS_TITLE', 'TAS_TITLE.CON_VALUE'); + $c->addAsColumn('APP_PRO_TITLE', ProcessPeer::PRO_TITLE); + $c->addAsColumn('APP_TAS_TITLE', TaskPeer::TAS_TITLE); //$c->addAsColumn('APP_DEL_PREVIOUS_USER', 'APP_LAST_USER.USR_USERNAME'); $c->addAsColumn( 'APP_DEL_PREVIOUS_USER', "CONCAT(APP_LAST_USER.USR_LASTNAME, @@ -2776,38 +2681,17 @@ class Cases APP_LAST_USER.USR_FIRSTNAME)" ); - $c->addAlias("APP_TITLE", 'CONTENT'); - $c->addAlias("PRO_TITLE", 'CONTENT'); - $c->addAlias("TAS_TITLE", 'CONTENT'); $c->addAlias("APP_PREV_DEL", 'APP_DELEGATION'); $c->addAlias("APP_LAST_USER", 'USERS'); $c->addJoin(ApplicationPeer::APP_UID, AppDelegationPeer::APP_UID, Criteria::LEFT_JOIN); + $c->addJoin(ApplicationPeer::PRO_UID, ProcessPeer::PRO_UID, Criteria::LEFT_JOIN); $c->addJoin(AppDelegationPeer::TAS_UID, TaskPeer::TAS_UID, Criteria::LEFT_JOIN); $appThreadConds[] = array(ApplicationPeer::APP_UID, AppThreadPeer::APP_UID); $appThreadConds[] = array(AppDelegationPeer::DEL_INDEX, AppThreadPeer::DEL_INDEX); $c->addJoinMC($appThreadConds, Criteria::LEFT_JOIN); $c->addJoin(AppDelegationPeer::USR_UID, UsersPeer::USR_UID, Criteria::LEFT_JOIN); - $del = DBAdapter::getStringDelimiter(); - $appTitleConds = array(); - $appTitleConds[] = array(ApplicationPeer::APP_UID, 'APP_TITLE.CON_ID'); - $appTitleConds[] = array('APP_TITLE.CON_CATEGORY', $del . 'APP_TITLE' . $del); - $appTitleConds[] = array('APP_TITLE.CON_LANG', $del . SYS_LANG . $del); - $c->addJoinMC($appTitleConds, Criteria::LEFT_JOIN); - - $proTitleConds = array(); - $proTitleConds[] = array(ApplicationPeer::PRO_UID, 'PRO_TITLE.CON_ID'); - $proTitleConds[] = array('PRO_TITLE.CON_CATEGORY', $del . 'PRO_TITLE' . $del); - $proTitleConds[] = array('PRO_TITLE.CON_LANG', $del . SYS_LANG . $del); - $c->addJoinMC($proTitleConds, Criteria::LEFT_JOIN); - - $tasTitleConds = array(); - $tasTitleConds[] = array(AppDelegationPeer::TAS_UID, 'TAS_TITLE.CON_ID'); - $tasTitleConds[] = array('TAS_TITLE.CON_CATEGORY', $del . 'TAS_TITLE' . $del); - $tasTitleConds[] = array('TAS_TITLE.CON_LANG', $del . SYS_LANG . $del); - $c->addJoinMC($tasTitleConds, Criteria::LEFT_JOIN); - $prevConds = array(); $prevConds[] = array(ApplicationPeer::APP_UID, 'APP_PREV_DEL.APP_UID'); $prevConds[] = array('APP_PREV_DEL.DEL_INDEX', AppDelegationPeer::DEL_PREVIOUS); @@ -2991,6 +2875,7 @@ class Cases $c = new Criteria('workflow'); $c->clearSelectColumns(); $c->addSelectColumn(ApplicationPeer::APP_UID); + $c->addSelectColumn(ApplicationPeer::APP_TITLE); $c->addSelectColumn(ApplicationPeer::APP_NUMBER); $c->addSelectColumn(ApplicationPeer::APP_UPDATE_DATE); $c->addSelectColumn(ApplicationPeer::PRO_UID); @@ -3010,40 +2895,17 @@ class Cases $c->addSelectColumn(UsersPeer::USR_UID); $c->addAsColumn('APP_CURRENT_USER', "CONCAT(USERS.USR_LASTNAME, ' ', USERS.USR_FIRSTNAME)"); $c->addSelectColumn(ApplicationPeer::APP_STATUS); - $c->addAsColumn('APP_TITLE', 'APP_TITLE.CON_VALUE'); - $c->addAsColumn('APP_PRO_TITLE', 'PRO_TITLE.CON_VALUE'); - $c->addAsColumn('APP_TAS_TITLE', 'TAS_TITLE.CON_VALUE'); - - $c->addAlias("APP_TITLE", 'CONTENT'); - $c->addAlias("PRO_TITLE", 'CONTENT'); - $c->addAlias("TAS_TITLE", 'CONTENT'); + $c->addAsColumn('APP_PRO_TITLE', ProcessPeer::PRO_TITLE); + $c->addAsColumn('APP_TAS_TITLE', TaskPeer::TAS_TITLE); $c->addJoin(ApplicationPeer::APP_UID, AppDelegationPeer::APP_UID, Criteria::LEFT_JOIN); + $c->addJoin(ApplicationPeer::PRO_UID, ProcessPeer::PRO_UID, Criteria::LEFT_JOIN); $c->addJoin(AppDelegationPeer::TAS_UID, TaskPeer::TAS_UID, Criteria::LEFT_JOIN); $appThreadConds[] = array(ApplicationPeer::APP_UID, AppThreadPeer::APP_UID); $appThreadConds[] = array(AppDelegationPeer::DEL_INDEX, AppThreadPeer::DEL_INDEX); $c->addJoinMC($appThreadConds, Criteria::LEFT_JOIN); $c->addJoin(AppDelegationPeer::USR_UID, UsersPeer::USR_UID, Criteria::LEFT_JOIN); - $del = DBAdapter::getStringDelimiter(); - $appTitleConds = array(); - $appTitleConds[] = array(ApplicationPeer::APP_UID, 'APP_TITLE.CON_ID'); - $appTitleConds[] = array('APP_TITLE.CON_CATEGORY', $del . 'APP_TITLE' . $del); - $appTitleConds[] = array('APP_TITLE.CON_LANG', $del . SYS_LANG . $del); - $c->addJoinMC($appTitleConds, Criteria::LEFT_JOIN); - // - $proTitleConds = array(); - $proTitleConds[] = array(ApplicationPeer::PRO_UID, 'PRO_TITLE.CON_ID'); - $proTitleConds[] = array('PRO_TITLE.CON_CATEGORY', $del . 'PRO_TITLE' . $del); - $proTitleConds[] = array('PRO_TITLE.CON_LANG', $del . SYS_LANG . $del); - $c->addJoinMC($proTitleConds, Criteria::LEFT_JOIN); - // - $tasTitleConds = array(); - $tasTitleConds[] = array(AppDelegationPeer::TAS_UID, 'TAS_TITLE.CON_ID'); - $tasTitleConds[] = array('TAS_TITLE.CON_CATEGORY', $del . 'TAS_TITLE' . $del); - $tasTitleConds[] = array('TAS_TITLE.CON_LANG', $del . SYS_LANG . $del); - $c->addJoinMC($tasTitleConds, Criteria::LEFT_JOIN); - $c->add(AppDelegationPeer::USR_UID, ''); $c->add(AppDelegationPeer::TAS_UID, $aTasks, Criteria::IN); break; @@ -3177,19 +3039,14 @@ class Cases $c->addAsColumn('APP_CURRENT_USER', "CONCAT(USERS.USR_LASTNAME, ' ', USERS.USR_FIRSTNAME)"); $c->addSelectColumn(ApplicationPeer::APP_STATUS); if ($titles) { - $c->addAsColumn('APP_TITLE', 'APP_TITLE.CON_VALUE'); - $c->addAsColumn('APP_PRO_TITLE', 'PRO_TITLE.CON_VALUE'); - $c->addAsColumn('APP_TAS_TITLE', 'TAS_TITLE.CON_VALUE'); + $c->addSelectColumn(ApplicationPeer::APP_TITLE); + $c->addAsColumn('APP_PRO_TITLE', ProcessPeer::PRO_TITLE); + $c->addAsColumn('APP_TAS_TITLE', TaskPeer::TAS_TITLE); } //$c->addAsColumn('APP_DEL_PREVIOUS_USER', 'APP_LAST_USER.USR_USERNAME'); $c->addAsColumn( 'APP_DEL_PREVIOUS_USER', "CONCAT(APP_LAST_USER.USR_LASTNAME, ' ', APP_LAST_USER.USR_FIRSTNAME)"); - if ($titles) { - $c->addAlias("APP_TITLE", 'CONTENT'); - $c->addAlias("PRO_TITLE", 'CONTENT'); - $c->addAlias("TAS_TITLE", 'CONTENT'); - } $c->addAlias("APP_PREV_DEL", 'APP_DELEGATION'); $c->addAlias("APP_LAST_USER", 'USERS'); @@ -3201,24 +3058,7 @@ class Cases $c->addJoin(AppDelegationPeer::USR_UID, UsersPeer::USR_UID, Criteria::LEFT_JOIN); if ($titles) { - $del = DBAdapter::getStringDelimiter(); - $appTitleConds = array(); - $appTitleConds[] = array(ApplicationPeer::APP_UID, 'APP_TITLE.CON_ID'); - $appTitleConds[] = array('APP_TITLE.CON_CATEGORY', $del . 'APP_TITLE' . $del); - $appTitleConds[] = array('APP_TITLE.CON_LANG', $del . SYS_LANG . $del); - $c->addJoinMC($appTitleConds, Criteria::LEFT_JOIN); - - $proTitleConds = array(); - $proTitleConds[] = array(ApplicationPeer::PRO_UID, 'PRO_TITLE.CON_ID'); - $proTitleConds[] = array('PRO_TITLE.CON_CATEGORY', $del . 'PRO_TITLE' . $del); - $proTitleConds[] = array('PRO_TITLE.CON_LANG', $del . SYS_LANG . $del); - $c->addJoinMC($proTitleConds, Criteria::LEFT_JOIN); - - $tasTitleConds = array(); - $tasTitleConds[] = array(AppDelegationPeer::TAS_UID, 'TAS_TITLE.CON_ID'); - $tasTitleConds[] = array('TAS_TITLE.CON_CATEGORY', $del . 'TAS_TITLE' . $del); - $tasTitleConds[] = array('TAS_TITLE.CON_LANG', $del . SYS_LANG . $del); - $c->addJoinMC($tasTitleConds, Criteria::LEFT_JOIN); + $c->addJoin(ApplicationPeer::PRO_UID, ProcessPeer::PRO_UID, Criteria::LEFT_JOIN); } $prevConds = array(); @@ -3260,6 +3100,7 @@ class Cases $c = new Criteria('workflow'); $c->clearSelectColumns(); $c->addSelectColumn(ApplicationPeer::APP_UID); + $c->addSelectColumn(ApplicationPeer::APP_TITLE); $c->addSelectColumn(ApplicationPeer::APP_NUMBER); $c->addSelectColumn(ApplicationPeer::APP_UPDATE_DATE); $c->addSelectColumn(AppDelegationPeer::DEL_PRIORITY); @@ -3276,45 +3117,23 @@ class Cases $c->addSelectColumn(UsersPeer::USR_UID); $c->addAsColumn('APP_CURRENT_USER', "CONCAT(USERS.USR_LASTNAME, ' ', USERS.USR_FIRSTNAME)"); $c->addSelectColumn(ApplicationPeer::APP_STATUS); - $c->addAsColumn('APP_TITLE', 'APP_TITLE.CON_VALUE'); - $c->addAsColumn('APP_PRO_TITLE', 'PRO_TITLE.CON_VALUE'); - $c->addAsColumn('APP_TAS_TITLE', 'TAS_TITLE.CON_VALUE'); + $c->addAsColumn('APP_PRO_TITLE', ProcessPeer::PRO_TITLE); + $c->addAsColumn('APP_TAS_TITLE', TaskPeer::TAS_TITLE); //$c->addAsColumn('APP_DEL_PREVIOUS_USER', 'APP_LAST_USER.USR_USERNAME'); $c->addAsColumn( 'APP_DEL_PREVIOUS_USER', "CONCAT(APP_LAST_USER.USR_LASTNAME, ' ', APP_LAST_USER.USR_FIRSTNAME)"); - $c->addAlias("APP_TITLE", 'CONTENT'); - $c->addAlias("PRO_TITLE", 'CONTENT'); - $c->addAlias("TAS_TITLE", 'CONTENT'); $c->addAlias("APP_PREV_DEL", 'APP_DELEGATION'); $c->addAlias("APP_LAST_USER", 'USERS'); $c->addJoin(ApplicationPeer::APP_UID, AppDelegationPeer::APP_UID, Criteria::LEFT_JOIN); + $c->addJoin(ApplicationPeer::PRO_UID, ProcessPeer::PRO_UID, Criteria::LEFT_JOIN); $c->addJoin(AppDelegationPeer::TAS_UID, TaskPeer::TAS_UID, Criteria::LEFT_JOIN); $appThreadConds[] = array(ApplicationPeer::APP_UID, AppThreadPeer::APP_UID); $appThreadConds[] = array(AppDelegationPeer::DEL_INDEX, AppThreadPeer::DEL_INDEX); $c->addJoinMC($appThreadConds, Criteria::LEFT_JOIN); $c->addJoin(AppDelegationPeer::USR_UID, UsersPeer::USR_UID, Criteria::LEFT_JOIN); - $del = DBAdapter::getStringDelimiter(); - $appTitleConds = array(); - $appTitleConds[] = array(ApplicationPeer::APP_UID, 'APP_TITLE.CON_ID'); - $appTitleConds[] = array('APP_TITLE.CON_CATEGORY', $del . 'APP_TITLE' . $del); - $appTitleConds[] = array('APP_TITLE.CON_LANG', $del . SYS_LANG . $del); - $c->addJoinMC($appTitleConds, Criteria::LEFT_JOIN); - - $proTitleConds = array(); - $proTitleConds[] = array(ApplicationPeer::PRO_UID, 'PRO_TITLE.CON_ID'); - $proTitleConds[] = array('PRO_TITLE.CON_CATEGORY', $del . 'PRO_TITLE' . $del); - $proTitleConds[] = array('PRO_TITLE.CON_LANG', $del . SYS_LANG . $del); - $c->addJoinMC($proTitleConds, Criteria::LEFT_JOIN); - - $tasTitleConds = array(); - $tasTitleConds[] = array(AppDelegationPeer::TAS_UID, 'TAS_TITLE.CON_ID'); - $tasTitleConds[] = array('TAS_TITLE.CON_CATEGORY', $del . 'TAS_TITLE' . $del); - $tasTitleConds[] = array('TAS_TITLE.CON_LANG', $del . SYS_LANG . $del); - $c->addJoinMC($tasTitleConds, Criteria::LEFT_JOIN); - $prevConds = array(); $prevConds[] = array(ApplicationPeer::APP_UID, 'APP_PREV_DEL.APP_UID'); $prevConds[] = array('APP_PREV_DEL.DEL_INDEX', AppDelegationPeer::DEL_PREVIOUS); @@ -5492,7 +5311,9 @@ class Cases $appDelegation = AppDelegationPeer::retrieveByPK($applicationUid, $aTask['DEL_INDEX']); if (!is_null($appDelegation)) { - $arrayData2['TAS_TITLE'] = Content::load('TAS_TITLE', '', $appDelegation->getTasUid(), SYS_LANG); + $oTask = new Task(); + $aTask = $oTask->load($appDelegation->getTasUid()); + $arrayData2['TAS_TITLE'] = $aTask['TAS_TITLE']; $arrayData2['DEL_TASK_DUE_DATE'] = $appDelegation->getDelTaskDueDate(); } } else { @@ -6840,6 +6661,7 @@ class Cases $c = new Criteria('workflow'); $c->clearSelectColumns(); $c->addSelectColumn(ApplicationPeer::APP_UID); + $c->addSelectColumn(ApplicationPeer::APP_TITLE); $c->addSelectColumn(ApplicationPeer::APP_NUMBER); $c->addSelectColumn(ApplicationPeer::APP_UPDATE_DATE); $c->addSelectColumn(AppDelegationPeer::DEL_PRIORITY); @@ -6854,46 +6676,24 @@ class Cases $c->addSelectColumn(UsersPeer::USR_UID); $c->addAsColumn('APP_CURRENT_USER', "CONCAT(USERS.USR_LASTNAME, ' ', USERS.USR_FIRSTNAME)"); $c->addSelectColumn(ApplicationPeer::APP_STATUS); - $c->addAsColumn('APP_TITLE', 'APP_TITLE.CON_VALUE'); - $c->addAsColumn('APP_PRO_TITLE', 'PRO_TITLE.CON_VALUE'); - $c->addAsColumn('APP_TAS_TITLE', 'TAS_TITLE.CON_VALUE'); + $c->addAsColumn('APP_PRO_TITLE', ProcessPeer::PRO_TITLE); + $c->addAsColumn('APP_TAS_TITLE', TaskPeer::TAS_TITLE); //$c->addAsColumn('APP_DEL_PREVIOUS_USER', 'APP_LAST_USER.USR_USERNAME'); $c->addAsColumn( 'APP_DEL_PREVIOUS_USER', "CONCAT(APP_LAST_USER.USR_LASTNAME, ' ', APP_LAST_USER.USR_FIRSTNAME)" ); - $c->addAlias("APP_TITLE", 'CONTENT'); - $c->addAlias("PRO_TITLE", 'CONTENT'); - $c->addAlias("TAS_TITLE", 'CONTENT'); $c->addAlias("APP_PREV_DEL", 'APP_DELEGATION'); $c->addAlias("APP_LAST_USER", 'USERS'); $c->addJoin(ApplicationPeer::APP_UID, AppDelegationPeer::APP_UID, Criteria::LEFT_JOIN); + $c->addJoin(ApplicationPeer::PRO_UID, ProcessPeer::PRO_UID, Criteria::LEFT_JOIN); $c->addJoin(AppDelegationPeer::TAS_UID, TaskPeer::TAS_UID, Criteria::LEFT_JOIN); $appThreadConds[] = array(ApplicationPeer::APP_UID, AppThreadPeer::APP_UID); $appThreadConds[] = array(AppDelegationPeer::DEL_INDEX, AppThreadPeer::DEL_INDEX); $c->addJoinMC($appThreadConds, Criteria::LEFT_JOIN); $c->addJoin(AppDelegationPeer::USR_UID, UsersPeer::USR_UID, Criteria::LEFT_JOIN); - $del = DBAdapter::getStringDelimiter(); - $appTitleConds = array(); - $appTitleConds[] = array(ApplicationPeer::APP_UID, 'APP_TITLE.CON_ID'); - $appTitleConds[] = array('APP_TITLE.CON_CATEGORY', $del . 'APP_TITLE' . $del); - $appTitleConds[] = array('APP_TITLE.CON_LANG', $del . SYS_LANG . $del); - $c->addJoinMC($appTitleConds, Criteria::LEFT_JOIN); - - $proTitleConds = array(); - $proTitleConds[] = array(ApplicationPeer::PRO_UID, 'PRO_TITLE.CON_ID'); - $proTitleConds[] = array('PRO_TITLE.CON_CATEGORY', $del . 'PRO_TITLE' . $del); - $proTitleConds[] = array('PRO_TITLE.CON_LANG', $del . SYS_LANG . $del); - $c->addJoinMC($proTitleConds, Criteria::LEFT_JOIN); - - $tasTitleConds = array(); - $tasTitleConds[] = array(AppDelegationPeer::TAS_UID, 'TAS_TITLE.CON_ID'); - $tasTitleConds[] = array('TAS_TITLE.CON_CATEGORY', $del . 'TAS_TITLE' . $del); - $tasTitleConds[] = array('TAS_TITLE.CON_LANG', $del . SYS_LANG . $del); - $c->addJoinMC($tasTitleConds, Criteria::LEFT_JOIN); - $prevConds = array(); $prevConds[] = array(ApplicationPeer::APP_UID, 'APP_PREV_DEL.APP_UID'); $prevConds[] = array('APP_PREV_DEL.DEL_INDEX', AppDelegationPeer::DEL_PREVIOUS); diff --git a/workflow/engine/classes/class.groups.php b/workflow/engine/classes/class.groups.php index 7ab419557..017728717 100755 --- a/workflow/engine/classes/class.groups.php +++ b/workflow/engine/classes/class.groups.php @@ -209,17 +209,11 @@ class Groups $oCriteria = new Criteria('workflow'); $oCriteria->addSelectColumn(GroupwfPeer::GRP_UID); $oCriteria->addSelectColumn(GroupwfPeer::GRP_STATUS); - $oCriteria->addSelectColumn(ContentPeer::CON_VALUE); - $oCriteria->addJoin(GroupwfPeer::GRP_UID, ContentPeer::CON_ID, Criteria::LEFT_JOIN); $oCriteria->add(GroupwfPeer::GRP_UID, $gUIDs, Criteria::NOT_IN); $oCriteria->add(GroupwfPeer::GRP_STATUS, 'ACTIVE'); - $oCriteria->add(ContentPeer::CON_CATEGORY, 'GRP_TITLE'); - $oCriteria->add(ContentPeer::CON_LANG, SYS_LANG); - if ($filter != '') { - $oCriteria->add(ContentPeer::CON_VALUE, '%' . $filter . '%', Criteria::LIKE); + $oCriteria->add(GroupwfPeer::GRP_TITLE, '%' . $filter . '%', Criteria::LIKE); } - return $oCriteria; } catch (exception $e) { throw $e; @@ -240,18 +234,12 @@ class Groups $oCriteria->addSelectColumn(GroupwfPeer::GRP_UID); $oCriteria->addSelectColumn(GroupwfPeer::GRP_STATUS); $oCriteria->addSelectColumn(GroupwfPeer::GRP_LDAP_DN); - $oCriteria->addSelectColumn(ContentPeer::CON_VALUE); $oCriteria->addJoin(GroupUserPeer::GRP_UID, GroupwfPeer::GRP_UID, Criteria::LEFT_JOIN); - $oCriteria->addJoin(GroupwfPeer::GRP_UID, ContentPeer::CON_ID, Criteria::LEFT_JOIN); $oCriteria->add(GroupUserPeer::USR_UID, $sUserUid, Criteria::EQUAL); $oCriteria->add(GroupwfPeer::GRP_STATUS, 'ACTIVE'); - $oCriteria->add(ContentPeer::CON_CATEGORY, 'GRP_TITLE'); - $oCriteria->add(ContentPeer::CON_LANG, SYS_LANG); - if ($filter != '') { - $oCriteria->add(ContentPeer::CON_VALUE, '%' . $filter . '%', Criteria::LIKE); + $oCriteria->add(GroupwfPeer::GRP_TITLE, '%' . $filter . '%', Criteria::LIKE); } - return $oCriteria; } catch (exception $e) { throw $e; @@ -261,7 +249,7 @@ class Groups public function getGroupsForUser($usrUid) { $criteria = $this->getAssignedGroupsCriteria($usrUid); - $criteria->addAscendingOrderByColumn(ContentPeer::CON_VALUE); + $criteria->addAscendingOrderByColumn(GroupwfPeer::GRP_TITLE); $dataset = GroupwfPeer::doSelectRS($criteria); $dataset->setFetchmode(ResultSet::FETCHMODE_ASSOC); $dataset->next(); diff --git a/workflow/engine/classes/class.pmDashlet.php b/workflow/engine/classes/class.pmDashlet.php index 853b053b0..f26ea6560 100644 --- a/workflow/engine/classes/class.pmDashlet.php +++ b/workflow/engine/classes/class.pmDashlet.php @@ -132,7 +132,7 @@ class PMDashlet extends DashletInstance implements DashletInterface $departmentInstance = new Department(); try { $department = $departmentInstance->load( $row['DAS_INS_OWNER_UID'] ); - $row['DAS_INS_OWNER_TITLE'] = $department['DEPO_TITLE']; + $row['DAS_INS_OWNER_TITLE'] = $department['DEP_TITLE']; } catch (Exception $error) { $this->remove( $row['DAS_INS_UID'] ); $row['DAS_INS_UID'] = ''; diff --git a/workflow/engine/classes/class.pmFunctions.php b/workflow/engine/classes/class.pmFunctions.php index 0f2f93807..fbf00b1b5 100755 --- a/workflow/engine/classes/class.pmFunctions.php +++ b/workflow/engine/classes/class.pmFunctions.php @@ -1897,20 +1897,20 @@ function PMFGenerateOutputDocument ($outputID, $sApplication = null, $index = nu * @label PMF Group List * @link http://wiki.processmaker.com/index.php/ProcessMaker_Functions#PMFGroupList.28.29 * + * @param string | $regex = null | String to search | Optional parameter. + * @param int | $start = null | Start | Optional parameter. + * @param int | $limit = null | Limit | Optional parameter. * @return array | $rows | List of groups | An array of groups * */ -function PMFGroupList () //its test was successfull +function PMFGroupList ($regex = null, $start = null, $limit = null) //its test was successfull { G::LoadClass( 'wsBase' ); $ws = new wsBase(); - $result = $ws->groupList(); - $rows = Array (); - $i = 1; + $result = $ws->groupList($regex, $start, $limit); + $rows = array(); if (isset( $result )) { - foreach ($result as $item) { - $rows[$i ++] = $item; - } + $rows = array_combine(range(1, count($result)), array_values($result)); } return $rows; } @@ -2984,7 +2984,7 @@ function PMFSaveCurrentData () * @name PMFTasksListByProcessId * @label PMF Tasks List By Process Id * @param string | $processId | ID Process | To get the current process id, use the system variable @@PROCESS - * @param string | $lang | Language | Is the language of the text, that must be the same to the column: "CON_LANG" of the CONTENT table + * @param string | $lang | Language | This parameter actually is not used, the same is kept by backward compatibility.Is the language of the text, that must be the same to the column: "CON_LANG" of the CONTENT table * @return array | $result | Array result | Array of associative arrays which contain the unique task ID and title */ function PMFTasksListByProcessId($processId, $lang = 'en') @@ -2992,11 +2992,7 @@ function PMFTasksListByProcessId($processId, $lang = 'en') $result = array(); $criteria = new Criteria("workflow"); $criteria->addSelectColumn(TaskPeer::TAS_UID); - $criteria->addSelectColumn(ContentPeer::CON_VALUE); - $criteria->addSelectColumn(ContentPeer::CON_LANG); - $criteria->addJoin(TaskPeer::TAS_UID, ContentPeer::CON_ID, Criteria::INNER_JOIN); - $criteria->add(ContentPeer::CON_CATEGORY, 'TAS_TITLE', Criteria::EQUAL); - $criteria->add(ContentPeer::CON_LANG, $lang, Criteria::EQUAL); + $criteria->addSelectColumn(TaskPeer::TAS_TITLE); $criteria->add(TaskPeer::PRO_UID, $processId, Criteria::EQUAL); $ds = TaskPeer::doSelectRS($criteria); $ds->setFetchmode(ResultSet::FETCHMODE_ASSOC); @@ -3033,12 +3029,8 @@ function PMFGetProcessUidByName($processName = '') $criteria = new Criteria('workflow'); $criteria->addSelectColumn(ProcessPeer::PRO_UID); - - $criteria->addJoin(ContentPeer::CON_ID, ProcessPeer::PRO_UID, Criteria::LEFT_JOIN); - $criteria->add(ContentPeer::CON_VALUE, $processName, Criteria::EQUAL); - $criteria->add(ContentPeer::CON_CATEGORY, 'PRO_TITLE', Criteria::EQUAL); - - $rsCriteria = ContentPeer::doSelectRS($criteria); + $criteria->add(ProcessPeer::PRO_TITLE, $processName, Criteria::EQUAL); + $rsCriteria = ProcessPeer::doSelectRS($criteria); $rsCriteria->setFetchmode(ResultSet::FETCHMODE_ASSOC); if ($rsCriteria->next()) { @@ -3174,14 +3166,18 @@ function PMFDynaFormFields($dynUid, $appUid = false, $delIndex = 0) * @name PMFGetTaskName * @label PMF Get Task Title Text * @param string | $taskUid | ID Task | Is the identifier of task, that must be the same to the column: "TAS_UID" of the TASK table - * @param string | $lang | Language | Is the language of the text, that must be the same to the column: "CON_LANG" of the CONTENT table + * @param string | $lang | Language | This parameter actually is not used, the same is kept by backward compatibility. Is the language of the text, that must be the same to the column: "CON_LANG" + * of the CONTENT table * @return string | $text | Translated text | the translated text of a string in Content */ function PMFGetTaskName($taskUid, $lang = SYS_LANG) { if (empty($taskUid)) { return false; } - return PMFGeti18nText($taskUid, 'TAS_TITLE', $lang); + $oTask = new \Task(); + $aTasks = $oTask->load($taskUid); + $text = isset($aTasks["TAS_TITLE"]) ? $aTasks["TAS_TITLE"] : false; + return $text; } /** @@ -3256,7 +3252,20 @@ function PMFGetGroupUID($groupName) */ function PMFGetTaskUID($taskName, $proUid = null) { - return PMFGetUidFromText($taskName, 'TAS_TITLE', $proUid); + $oCriteria = new Criteria('workflow'); + $oCriteria->addSelectColumn(TaskPeer::TAS_UID); + $oCriteria->add(TaskPeer::TAS_TITLE, $taskName); + if(!is_null($proUid)){ + $oCriteria->add(TaskPeer::PRO_UID, $proUid); + } + $oDataset = TaskPeer::doSelectRS($oCriteria); + $oDataset->setFetchmode(ResultSet::FETCHMODE_ASSOC); + $uids = array(); + while ($row = $oDataset->getRow()) { + $uids[] = $row['TAS_UID']; + $oDataset->next(); + } + return $uids; } /** diff --git a/workflow/engine/classes/class.processMap.php b/workflow/engine/classes/class.processMap.php index 679f0c115..676684fe2 100755 --- a/workflow/engine/classes/class.processMap.php +++ b/workflow/engine/classes/class.processMap.php @@ -98,48 +98,34 @@ class processMap $oCriteria = new Criteria('workflow'); $oCriteria->addSelectColumn(TaskPeer::PRO_UID); $oCriteria->addSelectColumn(TaskPeer::TAS_UID); - $oCriteria->addSelectColumn(ContentPeer::CON_VALUE); + $oCriteria->addSelectColumn(TaskPeer::TAS_TITLE); $oCriteria->addSelectColumn(TaskPeer::TAS_START); $oCriteria->addSelectColumn(TaskPeer::TAS_POSX); $oCriteria->addSelectColumn(TaskPeer::TAS_POSY); $oCriteria->addSelectColumn(TaskPeer::TAS_COLOR); $oCriteria->addSelectColumn(TaskPeer::TAS_TYPE); - $aConditions = array(); - $aConditions[] = array(0 => TaskPeer::TAS_UID, 1 => ContentPeer::CON_ID); - $aConditions[] = array(0 => ContentPeer::CON_CATEGORY, 1 => DBAdapter::getStringDelimiter() . 'TAS_TITLE' . DBAdapter::getStringDelimiter() ); - $aConditions[] = array(0 => ContentPeer::CON_LANG, 1 => DBAdapter::getStringDelimiter() . SYS_LANG . DBAdapter::getStringDelimiter() ); - $oCriteria->addJoinMC($aConditions, Criteria::LEFT_JOIN); $oCriteria->add(TaskPeer::PRO_UID, $sProcessUID); $oDataset = TaskPeer::doSelectRS($oCriteria, Propel::getDbConnection('workflow_ro')); $oDataset->setFetchmode(ResultSet::FETCHMODE_ASSOC); $oDataset->next(); while ($aRow1 = $oDataset->getRow()) { - $oTask = new StdClass(); + $oTask = new stdClass(); $oTask->uid = $aRow1['TAS_UID']; $oTask->task_type = $aRow1['TAS_TYPE']; if ($aRow1['TAS_TYPE'] == 'NORMAL') { - if (($aRow1['CON_VALUE'] == "")) { + if (($aRow1['TAS_TITLE'] == "")) { //There is no Label in Current SYS_LANG language so try to find in English - by default $oTask1 = new Task(); $aFields1 = $oTask1->load($oTask->uid); - $aRow1['CON_VALUE'] = $oTask1->getTasTitle(); + $aRow1['TAS_TITLE'] = $oTask1->getTasTitle(); } - $oTask->label = htmlentities($aRow1['CON_VALUE'], ENT_QUOTES, 'UTF-8'); + $oTask->label = htmlentities($aRow1['TAS_TITLE'], ENT_QUOTES, 'UTF-8'); } else { $oCriteria = new Criteria('workflow'); - $del = DBAdapter::getStringDelimiter(); $oCriteria->add(SubProcessPeer::PRO_PARENT, $aRow1['PRO_UID']); $oCriteria->add(SubProcessPeer::TAS_PARENT, $aRow1['TAS_UID']); - - $oCriteria->addAsColumn('TAS_TITLE', 'C1.CON_VALUE'); - $oCriteria->addAlias("C1", 'CONTENT'); - $tasTitleConds = array(); - $tasTitleConds[] = array(SubProcessPeer::TAS_PARENT, 'C1.CON_ID' ); - $tasTitleConds[] = array('C1.CON_CATEGORY', $del . 'TAS_TITLE' . $del ); - $tasTitleConds[] = array('C1.CON_LANG', $del . SYS_LANG . $del); - $oCriteria->addJoinMC($tasTitleConds, Criteria::LEFT_JOIN); - + $oCriteria->addJoin(SubProcessPeer::TAS_PARENT, TaskPeer::TAS_UID); $oDatasetX = SubProcessPeer::doSelectRS($oCriteria, Propel::getDbConnection('workflow_ro')); $oDatasetX->setFetchmode(ResultSet::FETCHMODE_ASSOC); $oDatasetX->next(); @@ -153,10 +139,10 @@ class processMap } } $oTask->taskINI = (strtolower($aRow1['TAS_START']) == 'true' ? true : false); - $oTask->position = new StdClass(); + $oTask->position = new stdClass(); $oTask->position->x = (int) $aRow1['TAS_POSX']; $oTask->position->y = (int) $aRow1['TAS_POSY']; - $oTask->derivation = new StdClass(); + $oTask->derivation = new stdClass(); $oTask->derivation->type = ''; $oTask->derivation->to = array(); $oCriteria = new Criteria('workflow'); @@ -189,7 +175,7 @@ class processMap $aRow2['ROU_TYPE'] = 8; break; } - $oTo = new StdClass(); + $oTo = new stdClass(); $oTo->task = $aRow2['ROU_NEXT_TASK']; $oTo->condition = $aRow2['ROU_CONDITION']; $oTo->executant = $aRow2['ROU_TO_LAST_USER']; @@ -967,13 +953,7 @@ class processMap } $oCriteria = new Criteria('workflow'); $oCriteria->addSelectColumn(InputDocumentPeer::INP_DOC_UID); - $oCriteria->addAsColumn('INP_DOC_TITLE', 'C.CON_VALUE'); - $oCriteria->addAlias('C', 'CONTENT'); - $aConditions = array(); - $aConditions[] = array(InputDocumentPeer::INP_DOC_UID, 'C.CON_ID' ); - $aConditions[] = array('C.CON_CATEGORY', $sDelimiter . 'INP_DOC_TITLE' . $sDelimiter ); - $aConditions[] = array('C.CON_LANG', $sDelimiter . SYS_LANG . $sDelimiter ); - $oCriteria->addJoinMC($aConditions, Criteria::LEFT_JOIN); + $oCriteria->addSelectColumn(InputDocumentPeer::INP_DOC_TITLE); $oCriteria->add(InputDocumentPeer::PRO_UID, $sProcessUID); $oCriteria->add(InputDocumentPeer::INP_DOC_UID, $sUIDs, Criteria::NOT_IN); $oDataset = InputDocumentPeer::doSelectRS($oCriteria, Propel::getDbConnection('workflow_ro')); @@ -983,7 +963,9 @@ class processMap if (($aRow['INP_DOC_TITLE'] == null) || ($aRow['INP_DOC_TITLE'] == "")) { // There is no transaltion for this Document name, try to get/regenerate the label - $aRow['INP_DOC_TITLE'] = Content::Load("INP_DOC_TITLE", "", $aRow['INP_DOC_UID'], SYS_LANG); + $oInputDocument = new InputDocument; + $row = $oInputDocument->load($aRow['INP_DOC_UID']); + $aRow['INP_DOC_TITLE'] = $row['INP_DOC_TITLE']; } $aBB[] = array('STEP_UID' => $aRow['INP_DOC_UID'], 'STEP_TITLE' => $aRow['INP_DOC_TITLE'], 'STEP_TYPE_OBJ' => 'INPUT_DOCUMENT', 'STEP_MODE' => '' ); $oDataset->next(); @@ -1356,7 +1338,7 @@ class processMap { try { $oCriteria = new Criteria('workflow'); - $oCriteria->addSelectColumn('TAS_UID'); + $oCriteria->addSelectColumn(TaskPeer::TAS_UID); $oCriteria->add(TaskPeer::PRO_UID, $sProcessUID); $oDataset = TaskPeer::doSelectRS($oCriteria); $oDataset->setFetchmode(ResultSet::FETCHMODE_ASSOC); @@ -1366,50 +1348,29 @@ class processMap while ($oDataset->next()) { $aRow = $oDataset->getRow(); - $aTasks[] = $aRow["TAS_UID"]; $iTaskNumber = $iTaskNumber + 1; } if ($iTaskNumber > 0) { $criteria = new Criteria("workflow"); - - $criteria->addSelectColumn(ContentPeer::CON_LANG); - $criteria->addSelectColumn(ContentPeer::CON_VALUE); - $criteria->add(ContentPeer::CON_ID, $aTasks, Criteria::IN); - $criteria->add(ContentPeer::CON_CATEGORY, "TAS_TITLE"); - - $rsSQLCON = ContentPeer::doSelectRS($criteria); + $criteria->addSelectColumn(TaskPeer::TAS_TITLE); + $criteria->add(TaskPeer::TAS_UID, $aTasks, Criteria::IN); + $rsSQLCON = TaskPeer::doSelectRS($criteria); $rsSQLCON->setFetchmode(ResultSet::FETCHMODE_ASSOC); - $numMaxLang = 0; $numMax = 0; - while ($rsSQLCON->next()) { $row = $rsSQLCON->getRow(); - - $conLang = $row["CON_LANG"]; - $conValue = $row["CON_VALUE"]; - + $conValue = $row["TAS_TITLE"]; if (preg_match("/^\S+\s(\d+)$/", $conValue, $matches)) { $n = intval($matches[1]); - - if ($conLang == SYS_LANG) { - if ($n > $numMaxLang) { - $numMaxLang = $n; - } - } else { - if ($n > $numMax) { - $numMax = $n; - } + if ($n > $numMax) { + $numMax = $n; } } } - if ($numMaxLang > 0) { - $numMax = $numMaxLang; - } - if ($numMax > 0 && $numMax > $iTaskNumber) { $iTaskNumber = $numMax + 1; } else { @@ -1420,7 +1381,7 @@ class processMap } $oTask = new Task(); - $oNewTask = new StdClass(); + $oNewTask = new stdClass(); $oNewTask->label = G::LoadTranslation('ID_TASK') . ' ' . $iTaskNumber; $oNewTask->uid = $oTask->create(array('PRO_UID' => $sProcessUID, 'TAS_TITLE' => $oNewTask->label, 'TAS_POSX' => $iX, 'TAS_POSY' => $iY, 'TAS_WIDTH' => $iWidth, 'TAS_HEIGHT' => $iHeight )); $oNewTask->statusIcons = array(); @@ -2149,24 +2110,11 @@ class processMap public function getInputDocumentsCriteria($sProcessUID = '') { - $sDelimiter = DBAdapter::getStringDelimiter(); $oCriteria = new Criteria('workflow'); $oCriteria->addSelectColumn(InputDocumentPeer::INP_DOC_UID); + $oCriteria->addSelectColumn(InputDocumentPeer::INP_DOC_TITLE); + $oCriteria->addSelectColumn(InputDocumentPeer::INP_DOC_DESCRIPTION); $oCriteria->addSelectColumn(InputDocumentPeer::PRO_UID); - $oCriteria->addAsColumn('INP_DOC_TITLE', 'C1.CON_VALUE'); - $oCriteria->addAsColumn('INP_DOC_DESCRIPTION', 'C2.CON_VALUE'); - $oCriteria->addAlias('C1', 'CONTENT'); - $oCriteria->addAlias('C2', 'CONTENT'); - $aConditions = array(); - $aConditions[] = array(InputDocumentPeer::INP_DOC_UID, 'C1.CON_ID' ); - $aConditions[] = array('C1.CON_CATEGORY', $sDelimiter . 'INP_DOC_TITLE' . $sDelimiter ); - $aConditions[] = array('C1.CON_LANG', $sDelimiter . SYS_LANG . $sDelimiter ); - $oCriteria->addJoinMC($aConditions, Criteria::LEFT_JOIN); - $aConditions = array(); - $aConditions[] = array(InputDocumentPeer::INP_DOC_UID, 'C2.CON_ID' ); - $aConditions[] = array('C2.CON_CATEGORY', $sDelimiter . 'INP_DOC_DESCRIPTION' . $sDelimiter ); - $aConditions[] = array('C2.CON_LANG', $sDelimiter . SYS_LANG . $sDelimiter ); - $oCriteria->addJoinMC($aConditions, Criteria::LEFT_JOIN); $oCriteria->add(InputDocumentPeer::PRO_UID, $sProcessUID); $oDataset = InputDocumentPeer::doSelectRS($oCriteria, Propel::getDbConnection('workflow_ro')); @@ -3198,17 +3146,11 @@ class processMap $oCriteria->addSelectColumn(StepSupervisorPeer::STEP_TYPE_OBJ); $oCriteria->addSelectColumn(StepSupervisorPeer::STEP_UID_OBJ); $oCriteria->addSelectColumn(StepSupervisorPeer::STEP_POSITION); - $oCriteria->addAsColumn('INP_DOC_TITLE', 'C.CON_VALUE'); - $oCriteria->addAlias('C', 'CONTENT'); + $oCriteria->addSelectColumn(InputDocumentPeer::INP_DOC_TITLE); $aConditions = array(); $aConditions[] = array(StepSupervisorPeer::STEP_UID_OBJ, InputDocumentPeer::INP_DOC_UID); $aConditions[] = array(StepSupervisorPeer::STEP_TYPE_OBJ, $sDelimiter . 'INPUT_DOCUMENT' . $sDelimiter); $oCriteria->addJoinMC($aConditions, Criteria::LEFT_JOIN); - $aConditions = array(); - $aConditions[] = array(InputDocumentPeer::INP_DOC_UID, 'C.CON_ID'); - $aConditions[] = array('C.CON_CATEGORY', $sDelimiter . 'INP_DOC_TITLE' . $sDelimiter); - $aConditions[] = array('C.CON_LANG', $sDelimiter . SYS_LANG . $sDelimiter); - $oCriteria->addJoinMC($aConditions, Criteria::LEFT_JOIN); $oCriteria->add(StepSupervisorPeer::PRO_UID, $sProcessUID); $oCriteria->add(StepSupervisorPeer::STEP_TYPE_OBJ, 'INPUT_DOCUMENT'); $oCriteria->addAscendingOrderByColumn(StepSupervisorPeer::STEP_POSITION); @@ -3304,17 +3246,10 @@ class processMap $aUIDS[] = $aRow['STEP_UID_OBJ']; $oDataset->next(); } - $sDelimiter = DBAdapter::getStringDelimiter(); $oCriteria = new Criteria('workflow'); $oCriteria->addSelectColumn(InputDocumentPeer::INP_DOC_UID); + $oCriteria->addSelectColumn(InputDocumentPeer::INP_DOC_TITLE); $oCriteria->addSelectColumn(InputDocumentPeer::PRO_UID); - $oCriteria->addAsColumn('INP_DOC_TITLE', 'C.CON_VALUE'); - $oCriteria->addAlias('C', 'CONTENT'); - $aConditions = array(); - $aConditions[] = array(InputDocumentPeer::INP_DOC_UID, 'C.CON_ID'); - $aConditions[] = array('C.CON_CATEGORY', $sDelimiter . 'INP_DOC_TITLE' . $sDelimiter); - $aConditions[] = array('C.CON_LANG', $sDelimiter . SYS_LANG . $sDelimiter); - $oCriteria->addJoinMC($aConditions, Criteria::LEFT_JOIN); $oCriteria->add(InputDocumentPeer::PRO_UID, $sProcessUID); $oCriteria->add(InputDocumentPeer::INP_DOC_UID, $aUIDS, Criteria::NOT_IN); return $oCriteria; @@ -3474,16 +3409,10 @@ class processMap ); $oCriteria = new Criteria('workflow'); $oCriteria->addSelectColumn(GroupwfPeer::GRP_UID); - $oCriteria->addAsColumn('GRP_TITLE', ContentPeer::CON_VALUE); - - $aConditions [] = array(GroupwfPeer::GRP_UID, ContentPeer::CON_ID); - $aConditions [] = array(ContentPeer::CON_CATEGORY, DBAdapter::getStringDelimiter() . 'GRP_TITLE' . DBAdapter::getStringDelimiter()); - $aConditions [] = array(ContentPeer::CON_LANG, DBAdapter::getStringDelimiter() . SYS_LANG . DBAdapter::getStringDelimiter()); - - $oCriteria->addJoinMC($aConditions, Criteria::LEFT_JOIN); + $oCriteria->addSelectColumn(GroupwfPeer::GRP_TITLE); $oCriteria->add(GroupwfPeer::GRP_UID, $aGRUS, Criteria::NOT_IN); - $oCriteria->addAscendingOrderByColumn(ContentPeer::CON_VALUE); + $oCriteria->addAscendingOrderByColumn(GroupwfPeer::GRP_TITLE); $oDataset = GroupwfPeer::doSelectRS($oCriteria); $oDataset->setFetchmode(ResultSet::FETCHMODE_ASSOC); $oDataset->next(); @@ -4068,14 +3997,9 @@ class processMap $usersGroups = '