PM-321 Hacer funcionar el administrador del Cases List Builder SOLVED
- It don't have the functionality - PM-322 Hacer funcionar el Cases List Builder. - Files are added for cases list.
This commit is contained in:
@@ -33,7 +33,7 @@ try {
|
||||
$confReassignList = getReassignList();
|
||||
|
||||
// evaluates an action and the configuration for the list that will be rendered
|
||||
$config = getAdditionalFields( $action, (class_exists( 'enterprisePlugin' ) ? $confCasesList : array ()) );
|
||||
$config = getAdditionalFields( $action, $confCasesList );
|
||||
$columns = $config['caseColumns'];
|
||||
$readerFields = $config['caseReaderFields'];
|
||||
$reassignColumns = $confReassignList['caseColumns'];
|
||||
|
||||
19
workflow/engine/methods/cases/casesListSetup.php
Normal file
19
workflow/engine/methods/cases/casesListSetup.php
Normal file
@@ -0,0 +1,19 @@
|
||||
<?php
|
||||
global $RBAC;
|
||||
|
||||
if ($RBAC->userCanAccess("PM_SETUP") != 1 || $RBAC->userCanAccess("PM_SETUP_ADVANCE") != 1) {
|
||||
G::SendTemporalMessage("ID_USER_HAVENT_RIGHTS_PAGE", "error", "labels");
|
||||
exit(0);
|
||||
}
|
||||
|
||||
$availableFields = array();
|
||||
|
||||
$oHeadPublisher = &headPublisher::getSingleton();
|
||||
|
||||
$oHeadPublisher->addExtJsScript( 'cases/casesListSetup', false ); //adding a javascript file .js
|
||||
$oHeadPublisher->addContent( 'cases/casesListSetup' ); //adding a html file .html.
|
||||
$oHeadPublisher->assignNumber("pageSize", 20); //sending the page size
|
||||
$oHeadPublisher->assignNumber("availableFields", G::json_encode($availableFields));
|
||||
|
||||
G::RenderPage("publish", "extJs");
|
||||
|
||||
758
workflow/engine/methods/cases/proxyPMTablesFieldList.php
Normal file
758
workflow/engine/methods/cases/proxyPMTablesFieldList.php
Normal file
@@ -0,0 +1,758 @@
|
||||
<?php
|
||||
/**
|
||||
* Method defined and copied from processmaker/workflow/engine/classes/class.configuration.php
|
||||
*
|
||||
*/
|
||||
function casesListDefaultFieldsAndConfig($action, $translation = 1)
|
||||
{
|
||||
$caseColumns = array();
|
||||
$caseReaderFields = array();
|
||||
|
||||
switch ($action) {
|
||||
case "draft":
|
||||
$caseColumns[] = array("header" => "#", "dataIndex" => "APP_NUMBER", "width" => 45, "align" => "center");
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_SUMMARY") : "**ID_SUMMARY**", "dataIndex" => "CASE_SUMMARY", "width" => 45, "align" => "center", "sortable" => false);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_CASES_NOTES") : "**ID_CASES_NOTES**", "dataIndex" => "CASE_NOTES_COUNT", "width" => 45, "align" => "center", "sortable" => false);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_CASE") : "**ID_CASE**", "dataIndex" => "APP_TITLE", "width" => 150);
|
||||
$caseColumns[] = array("header" => "UserUid", "dataIndex" => "USR_UID", "width" => 50, "hidden" => true, "hideable" => false);
|
||||
$caseColumns[] = array("header" => "PreUsrUid", "dataIndex" => "PREVIOUS_USR_UID", "width" => 50, "hidden" => true, "hideable" => false);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_PROCESS") : "**ID_PROCESS**", "dataIndex" => "APP_PRO_TITLE", "width" => 120);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_TASK") : "**ID_TASK**", "dataIndex" => "APP_TAS_TITLE", "width" => 120);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_DUE_DATE") : "**ID_DUE_DATE**", "dataIndex" => "DEL_TASK_DUE_DATE", "width" => 110);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_LAST_MODIFY") : "**ID_LAST_MODIFY**", "dataIndex" => "APP_UPDATE_DATE", "width" => 110);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_PRIORITY") : "**ID_PRIORITY**", "dataIndex" => "DEL_PRIORITY", "width" => 50);
|
||||
|
||||
$caseReaderFields[] = array("name" => "APP_UID");
|
||||
$caseReaderFields[] = array("name" => "USR_UID");
|
||||
$caseReaderFields[] = array("name" => "PREVIOUS_USR_UID");
|
||||
$caseReaderFields[] = array("name" => "APP_NUMBER");
|
||||
$caseReaderFields[] = array("name" => "APP_STATUS");
|
||||
$caseReaderFields[] = array("name" => "DEL_INDEX");
|
||||
$caseReaderFields[] = array("name" => "APP_TITLE");
|
||||
$caseReaderFields[] = array("name" => "APP_PRO_TITLE");
|
||||
$caseReaderFields[] = array("name" => "APP_TAS_TITLE");
|
||||
$caseReaderFields[] = array("name" => "APP_DEL_PREVIOUS_USER");
|
||||
$caseReaderFields[] = array("name" => "APP_CURRENT_USER");
|
||||
$caseReaderFields[] = array("name" => "DEL_TASK_DUE_DATE");
|
||||
$caseReaderFields[] = array("name" => "APP_UPDATE_DATE");
|
||||
$caseReaderFields[] = array("name" => "DEL_PRIORITY");
|
||||
$caseReaderFields[] = array("name" => "APP_STATUS");
|
||||
$caseReaderFields[] = array("name" => "APP_FINISH_DATE");
|
||||
$caseReaderFields[] = array("name" => "CASE_SUMMARY");
|
||||
$caseReaderFields[] = array("name" => "CASE_NOTES_COUNT");
|
||||
break;
|
||||
case "paused":
|
||||
$caseColumns[] = array("header" => "#", "dataIndex" => "APP_NUMBER", "width" => 45, "align" => "center");
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_SUMMARY") : "**ID_SUMMARY**", "dataIndex" => "CASE_SUMMARY", "width" => 45, "align" => "center", "sortable" => false);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_CASES_NOTES") : "**ID_CASES_NOTES**", "dataIndex" => "CASE_NOTES_COUNT", "width" => 45, "align" => "center", "sortable" => false);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_CASE") : "**ID_CASE**", "dataIndex" => "APP_TITLE", "width" => 150);
|
||||
$caseColumns[] = array("header" => "UserUid", "dataIndex" => "USR_UID", "width" => 50, "hidden" => true, "hideable" => false);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_PROCESS") : "**ID_PROCESS**", "dataIndex" => "APP_PRO_TITLE", "width" => 120);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_TASK") : "**ID_TASK**", "dataIndex" => "APP_TAS_TITLE", "width" => 120);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_SENT_BY") : "**ID_SENT_BY**", "dataIndex" => "APP_DEL_PREVIOUS_USER", "width" => 90);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_LAST_MODIFY") : "**ID_LAST_MODIFY**", "dataIndex" => "APP_UPDATE_DATE", "width" => 80);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_THREAD_INDEX") : "**ID_THREAD_INDEX**", "dataIndex" => "APP_THREAD_INDEX", "width" => 80);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_DEL_INDEX") : "**ID_DEL_INDEX**", "dataIndex" => "DEL_INDEX", "width" => 80);
|
||||
|
||||
$caseReaderFields[] = array("name" => "APP_UID");
|
||||
$caseReaderFields[] = array("name" => "USR_UID");
|
||||
$caseReaderFields[] = array("name" => "PREVIOUS_USR_UID");
|
||||
$caseReaderFields[] = array("name" => "PREVIOUS_USR_FIRSTNAME");
|
||||
$caseReaderFields[] = array("name" => "PREVIOUS_USR_LASTNAME");
|
||||
$caseReaderFields[] = array("name" => "PREVIOUS_USR_USERNAME");
|
||||
$caseReaderFields[] = array("name" => "APP_NUMBER");
|
||||
$caseReaderFields[] = array("name" => "APP_STATUS");
|
||||
$caseReaderFields[] = array("name" => "DEL_INDEX");
|
||||
$caseReaderFields[] = array("name" => "APP_TITLE");
|
||||
$caseReaderFields[] = array("name" => "APP_PRO_TITLE");
|
||||
$caseReaderFields[] = array("name" => "APP_TAS_TITLE");
|
||||
$caseReaderFields[] = array("name" => "APP_DEL_PREVIOUS_USER");
|
||||
$caseReaderFields[] = array("name" => "APP_CURRENT_USER");
|
||||
$caseReaderFields[] = array("name" => "DEL_TASK_DUE_DATE");
|
||||
$caseReaderFields[] = array("name" => "APP_UPDATE_DATE");
|
||||
$caseReaderFields[] = array("name" => "DEL_PRIORITY");
|
||||
$caseReaderFields[] = array("name" => "APP_STATUS");
|
||||
$caseReaderFields[] = array("name" => "APP_FINISH_DATE");
|
||||
$caseReaderFields[] = array("name" => "APP_THREAD_INDEX");
|
||||
$caseReaderFields[] = array("name" => "CASE_SUMMARY");
|
||||
$caseReaderFields[] = array("name" => "CASE_NOTES_COUNT");
|
||||
break;
|
||||
case "unassigned":
|
||||
$caseColumns[] = array("header" => "#", "dataIndex" => "APP_NUMBER", "width" => 40, "align" => "left");
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_SUMMARY") : "**ID_SUMMARY**", "dataIndex" => "CASE_SUMMARY", "width" => 45, "align" => "center", "sortable" => false);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_CASES_NOTES") : "**ID_CASES_NOTES**", "dataIndex" => "CASE_NOTES_COUNT", "width" => 45, "align" => "center", "sortable" => false);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_CASE") : "**ID_CASE**", "dataIndex" => "APP_TITLE", "width" => 150);
|
||||
$caseColumns[] = array("header" => "UserUid", "dataIndex" => "USR_UID", "width" => 50, "hidden" => true, "hideable" => false);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_PROCESS") : "**ID_PROCESS**", "dataIndex" => "APP_PRO_TITLE", "width" => 120);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_TASK") : "**ID_TASK**", "dataIndex" => "APP_TAS_TITLE", "width" => 120);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_SENT_BY") : "**ID_SENT_BY**", "dataIndex" => "APP_DEL_PREVIOUS_USER", "width" => 90);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_DUE_DATE") : "**ID_DUE_DATE**", "dataIndex" => "DEL_TASK_DUE_DATE", "width" => 110);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_LAST_MODIFY") : "**ID_LAST_MODIFY**", "dataIndex" => "APP_UPDATE_DATE", "width" => 80);
|
||||
//$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_COMPLETED_BY_USER") : "**ID_COMPLETED_BY_USER**", "dataIndex" => "APP_CURRENT_USER", "width" => 110);
|
||||
//$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_FINISH_DATE") : "**ID_FINISH_DATE**", "dataIndex" => "APP_FINISH_DATE", "width" => 50);
|
||||
|
||||
$caseReaderFields[] = array("name" => "APP_UID");
|
||||
$caseReaderFields[] = array("name" => "USR_UID");
|
||||
$caseReaderFields[] = array("name" => "PREVIOUS_USR_UID");
|
||||
$caseReaderFields[] = array("name" => "PREVIOUS_USR_FIRSTNAME");
|
||||
$caseReaderFields[] = array("name" => "PREVIOUS_USR_LASTNAME");
|
||||
$caseReaderFields[] = array("name" => "PREVIOUS_USR_USERNAME");
|
||||
$caseReaderFields[] = array("name" => "APP_NUMBER");
|
||||
$caseReaderFields[] = array("name" => "APP_STATUS");
|
||||
$caseReaderFields[] = array("name" => "DEL_INDEX");
|
||||
$caseReaderFields[] = array("name" => "APP_TITLE");
|
||||
$caseReaderFields[] = array("name" => "APP_PRO_TITLE");
|
||||
$caseReaderFields[] = array("name" => "APP_TAS_TITLE");
|
||||
$caseReaderFields[] = array("name" => "APP_DEL_PREVIOUS_USER");
|
||||
$caseReaderFields[] = array("name" => "APP_CURRENT_USER");
|
||||
$caseReaderFields[] = array("name" => "DEL_TASK_DUE_DATE");
|
||||
$caseReaderFields[] = array("name" => "APP_UPDATE_DATE");
|
||||
$caseReaderFields[] = array("name" => "DEL_PRIORITY");
|
||||
$caseReaderFields[] = array("name" => "APP_STATUS");
|
||||
$caseReaderFields[] = array("name" => "APP_FINISH_DATE");
|
||||
$caseReaderFields[] = array("name" => "CASE_SUMMARY");
|
||||
$caseReaderFields[] = array("name" => "CASE_NOTES_COUNT");
|
||||
break;
|
||||
case "sent":
|
||||
case "participated":
|
||||
$caseColumns[] = array("header" => "#", "dataIndex" => "APP_NUMBER", "width" => 45, "align" => "center");
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_SUMMARY") : "**ID_SUMMARY**", "dataIndex" => "CASE_SUMMARY", "width" => 45, "align" => "center", "sortable" => false);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_CASES_NOTES") : "**ID_CASES_NOTES**", "dataIndex" => "CASE_NOTES_COUNT", "width" => 45, "align" => "center", "sortable" => false);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_CASE") : "**ID_CASE**", "dataIndex" => "APP_TITLE", "width" => 150);
|
||||
$caseColumns[] = array("header" => "UserUid", "dataIndex" => "USR_UID", "width" => 50, "hidden" => true, "hideable" => false);
|
||||
$caseColumns[] = array("header" => "PreUsrUid", "dataIndex" => "PREVIOUS_USR_UID", "width" => 50, "hidden" => true, "hideable" => false);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_PROCESS") : "**ID_PROCESS**", "dataIndex" => "APP_PRO_TITLE", "width" => 120);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_TASK") : "**ID_TASK**", "dataIndex" => "APP_TAS_TITLE", "width" => 120);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_LAST_MODIFY") : "**ID_LAST_MODIFY**", "dataIndex" => "APP_UPDATE_DATE", "width" => 80);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_STATUS") : "**ID_STATUS**", "dataIndex" => "APP_STATUS", "width" => 50);
|
||||
|
||||
$caseReaderFields[] = array("name" => "APP_UID");
|
||||
$caseReaderFields[] = array("name" => "USR_UID");
|
||||
$caseReaderFields[] = array("name" => "PREVIOUS_USR_UID");
|
||||
$caseReaderFields[] = array("name" => "PREVIOUS_USR_FIRSTNAME");
|
||||
$caseReaderFields[] = array("name" => "PREVIOUS_USR_LASTNAME");
|
||||
$caseReaderFields[] = array("name" => "PREVIOUS_USR_USERNAME");
|
||||
$caseReaderFields[] = array("name" => "APP_NUMBER");
|
||||
$caseReaderFields[] = array("name" => "APP_STATUS");
|
||||
$caseReaderFields[] = array("name" => "DEL_INDEX");
|
||||
$caseReaderFields[] = array("name" => "APP_TITLE");
|
||||
$caseReaderFields[] = array("name" => "APP_PRO_TITLE");
|
||||
$caseReaderFields[] = array("name" => "APP_TAS_TITLE");
|
||||
$caseReaderFields[] = array("name" => "APP_DEL_PREVIOUS_USER");
|
||||
$caseReaderFields[] = array("name" => "APP_CURRENT_USER");
|
||||
$caseReaderFields[] = array("name" => "DEL_TASK_DUE_DATE");
|
||||
$caseReaderFields[] = array("name" => "APP_UPDATE_DATE");
|
||||
$caseReaderFields[] = array("name" => "DEL_PRIORITY");
|
||||
$caseReaderFields[] = array("name" => "APP_STATUS");
|
||||
$caseReaderFields[] = array("name" => "APP_FINISH_DATE");
|
||||
$caseReaderFields[] = array("name" => "CASE_SUMMARY");
|
||||
$caseReaderFields[] = array("name" => "CASE_NOTES_COUNT");
|
||||
break;
|
||||
case "search":
|
||||
case "simple_search":
|
||||
$caseColumns[] = array("header" => "#", "dataIndex" => "APP_NUMBER", "width" => 45, "align" => "center");
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_SUMMARY") : "**ID_SUMMARY**", "dataIndex" => "CASE_SUMMARY", "width" => 45, "align" => "center", "sortable" => false);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_CASES_NOTES") : "**ID_CASES_NOTES**", "dataIndex" => "CASE_NOTES_COUNT", "width" => 45, "align" => "center", "sortable" => false);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_CASE") : "**ID_CASE**", "dataIndex" => "APP_TITLE", "width" => 100);
|
||||
$caseColumns[] = array("header" => "UserUid", "dataIndex" => "USR_UID", "width" => 50, "hidden" => true, "hideable" => false);
|
||||
$caseColumns[] = array("header" => "PreUsrUid", "dataIndex" => "PREVIOUS_USR_UID", "width" => 50, "hidden" => true, "hideable" => false);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_TASK") : "**ID_TASK**", "dataIndex" => "APP_TAS_TITLE", "width" => 120);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_PROCESS") : "**ID_PROCESS**", "dataIndex" => "APP_PRO_TITLE", "width" => 120);
|
||||
//$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_SENT_BY") : "**ID_SENT_BY**", "dataIndex" => "APP_DEL_PREVIOUS_USER", "width" => 120 );
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_CURRENT_USER") : "**ID_CURRENT_USER**", "dataIndex" => "APP_CURRENT_USER", "width" => 120, "sortable" => false);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_LAST_MODIFY") : "**ID_LAST_MODIFY**", "dataIndex" => "APP_UPDATE_DATE", "width" => 80);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_DELEGATION_DATE") : "**ID_DELEGATION_DATE**", "dataIndex" => "DEL_DELEGATE_DATE", "width" => 80);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_DUE_DATE") : "**ID_DUE_DATE**", "dataIndex" => "DEL_TASK_DUE_DATE", "width" => 80);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_STATUS") : "**ID_STATUS**", "dataIndex" => "APP_STATUS", "width" => 50);
|
||||
|
||||
$caseReaderFields[] = array("name" => "APP_UID");
|
||||
$caseReaderFields[] = array("name" => "USR_UID");
|
||||
$caseReaderFields[] = array("name" => "PREVIOUS_USR_UID");
|
||||
$caseReaderFields[] = array("name" => "APP_NUMBER");
|
||||
$caseReaderFields[] = array("name" => "APP_STATUS");
|
||||
$caseReaderFields[] = array("name" => "DEL_INDEX");
|
||||
$caseReaderFields[] = array("name" => "APP_TITLE");
|
||||
$caseReaderFields[] = array("name" => "APP_PRO_TITLE");
|
||||
$caseReaderFields[] = array("name" => "APP_TAS_TITLE");
|
||||
$caseReaderFields[] = array("name" => "APP_DEL_PREVIOUS_USER");
|
||||
$caseReaderFields[] = array("name" => "APP_CURRENT_USER");
|
||||
$caseReaderFields[] = array("name" => "DEL_TASK_DUE_DATE");
|
||||
$caseReaderFields[] = array("name" => "APP_UPDATE_DATE");
|
||||
$caseReaderFields[] = array("name" => "DEL_DELEGATE_DATE");
|
||||
$caseReaderFields[] = array("name" => "DEL_PRIORITY");
|
||||
$caseReaderFields[] = array("name" => "APP_STATUS");
|
||||
$caseReaderFields[] = array("name" => "APP_FINISH_DATE");
|
||||
$caseReaderFields[] = array("name" => "CASE_SUMMARY");
|
||||
$caseReaderFields[] = array("name" => "CASE_NOTES_COUNT");
|
||||
break;
|
||||
case "to_revise":
|
||||
$caseColumns[] = array("header" => "#", "dataIndex" => "APP_NUMBER", "width" => 45, "align" => "center");
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_SUMMARY") : "**ID_SUMMARY**", "dataIndex" => "CASE_SUMMARY", "width" => 45, "align" => "center", "sortable" => false);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_CASES_NOTES") : "**ID_CASES_NOTES**", "dataIndex" => "CASE_NOTES_COUNT", "width" => 45, "align" => "center", "sortable" => false);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_CASE") : "**ID_CASE**", "dataIndex" => "APP_TITLE", "width" => 150);
|
||||
$caseColumns[] = array("header" => "UserUid", "dataIndex" => "USR_UID", "width" => 50,"hidden" => true, "hideable" => false);
|
||||
$caseColumns[] = array("header" => "PreUsrUid", "dataIndex" => "PREVIOUS_USR_UID", "width" => 50, "hidden" => true, "hideable" => false);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_PROCESS") : "**ID_PROCESS**", "dataIndex" => "APP_PRO_TITLE", "width" => 120);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_TASK") : "**ID_TASK**", "dataIndex" => "APP_TAS_TITLE", "width" => 120);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_SENT_BY") : "**ID_SENT_BY**", "dataIndex" => "APP_DEL_PREVIOUS_USER", "width" => 90);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_CURRENT_USER") : "**ID_CURRENT_USER**", "dataIndex" => "APP_CURRENT_USER", "width" => 90, "sortable" => false);
|
||||
//$caseColumns[] = array("header" => "Sent By", "dataIndex" => "APP_DEL_PREVIOUS_USER", "width" => 90);
|
||||
//$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_LAST_MODIFY") : "**ID_LAST_MODIFY**", "dataIndex" => "APP_UPDATE_DATE", "width" => 110);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_PRIORITY") : "**ID_PRIORITY**", "dataIndex" => "DEL_PRIORITY", "width" => 50);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_STATUS") : "**ID_STATUS**", "dataIndex" => "APP_STATUS", "width" => 50);
|
||||
|
||||
$caseReaderFields[] = array("name" => "APP_UID");
|
||||
$caseReaderFields[] = array("name" => "USR_UID");
|
||||
$caseReaderFields[] = array("name" => "PREVIOUS_USR_UID");
|
||||
$caseReaderFields[] = array("name" => "PREVIOUS_USR_FIRSTNAME");
|
||||
$caseReaderFields[] = array("name" => "PREVIOUS_USR_LASTNAME");
|
||||
$caseReaderFields[] = array("name" => "PREVIOUS_USR_USERNAME");
|
||||
$caseReaderFields[] = array("name" => "APP_NUMBER");
|
||||
$caseReaderFields[] = array("name" => "DEL_INDEX");
|
||||
$caseReaderFields[] = array("name" => "APP_TITLE");
|
||||
$caseReaderFields[] = array("name" => "APP_PRO_TITLE");
|
||||
$caseReaderFields[] = array("name" => "APP_TAS_TITLE");
|
||||
//$caseReaderFields[] = array("name" => "APP_DEL_PREVIOUS_USER");
|
||||
$caseReaderFields[] = array("name" => "APP_CURRENT_USER");
|
||||
$caseReaderFields[] = array("name" => "DEL_TASK_DUE_DATE");
|
||||
$caseReaderFields[] = array("name" => "APP_UPDATE_DATE");
|
||||
$caseReaderFields[] = array("name" => "DEL_PRIORITY");
|
||||
$caseReaderFields[] = array("name" => "APP_STATUS");
|
||||
$caseReaderFields[] = array("name" => "APP_FINISH_DATE");
|
||||
$caseReaderFields[] = array("name" => "APP_DEL_PREVIOUS_USER");
|
||||
$caseReaderFields[] = array("name" => "CASE_SUMMARY");
|
||||
$caseReaderFields[] = array("name" => "CASE_NOTES_COUNT");
|
||||
break;
|
||||
case "to_reassign":
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_SUMMARY") : "**ID_SUMMARY**", "dataIndex" => "CASE_SUMMARY", "width" => 45, "align" => "center", "sortable" => false);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_CASES_NOTES") : "**ID_CASES_NOTES**", "dataIndex" => "CASE_NOTES_COUNT", "width" => 45, "align" => "center", "sortable" => false);
|
||||
$caseColumns[] = array("header" => "UserUid", "dataIndex" => "USR_UID", "width" => 50, "hidden" => true, "hideable" => false);
|
||||
$caseColumns[] = array("header" => "PreUsrUid", "dataIndex" => "PREVIOUS_USR_UID", "width" => 50, "hidden" => true, "hideable" => false);
|
||||
$caseColumns[] = array("header" => "#", "dataIndex" => "APP_NUMBER", "width" => 45, "align" => "center");
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_CASE") : "**ID_CASE**", "dataIndex" => "APP_TITLE", "width" => 150);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_PROCESS") : "**ID_PROCESS**", "dataIndex" => "APP_PRO_TITLE", "width" => 120);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_TASK") : "**ID_TASK**", "dataIndex" => "APP_TAS_TITLE", "width" => 120);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_CURRENT_USER") : "**ID_CURRENT_USER**", "dataIndex" => "APP_CURRENT_USER", "width" => 90, "sortable" => false);
|
||||
//$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_SENT_BY") : "**ID_SENT_BY**", "dataIndex" => "APP_DEL_PREVIOUS_USER", "width" => 90);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_LAST_MODIFY") : "**ID_LAST_MODIFY**", "dataIndex" => "APP_UPDATE_DATE", "width" => 110);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_STATUS") : "**ID_STATUS**", "dataIndex" => "APP_STATUS", "width" => 50);
|
||||
|
||||
$caseReaderFields[] = array("name" => "TAS_UID");
|
||||
$caseReaderFields[] = array("name" => "DEL_INDEX");
|
||||
$caseReaderFields[] = array("name" => "APP_UID");
|
||||
$caseReaderFields[] = array("name" => "USR_UID");
|
||||
$caseReaderFields[] = array("name" => "PREVIOUS_USR_UID");
|
||||
$caseReaderFields[] = array("name" => "APP_NUMBER");
|
||||
$caseReaderFields[] = array("name" => "APP_TITLE");
|
||||
$caseReaderFields[] = array("name" => "APP_TAS_TITLE");
|
||||
$caseReaderFields[] = array("name" => "APP_PRO_TITLE");
|
||||
$caseReaderFields[] = array("name" => "APP_CURRENT_USER");
|
||||
//$caseReaderFields[] = array("name" => "APP_DEL_PREVIOUS_USER");
|
||||
$caseReaderFields[] = array("name" => "APP_UPDATE_DATE");
|
||||
$caseReaderFields[] = array("name" => "APP_STATUS");
|
||||
$caseReaderFields[] = array("name" => "CASE_SUMMARY");
|
||||
$caseReaderFields[] = array("name" => "CASE_NOTES_COUNT");
|
||||
break;
|
||||
case "gral":
|
||||
$caseColumns[] = array("header" => "#", "dataIndex" => "APP_NUMBER", "width" => 45, "align" => "center");
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_SUMMARY") : "**ID_SUMMARY**", "dataIndex" => "CASE_SUMMARY", "width" => 45, "align" => "center", "sortable" => false);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_CASES_NOTES") : "**ID_CASES_NOTES**", "dataIndex" => "CASE_NOTES_COUNT", "width" => 45, "align" => "center", "sortable" => false);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_CASE") : "**ID_CASE**", "dataIndex" => "APP_TITLE", "width" => 150);
|
||||
$caseColumns[] = array("header" => "UserUid", "dataIndex" => "USR_UID", "width" => 50, "hidden" => true, "hideable" => false);
|
||||
$caseColumns[] = array("header" => "PreUsrUid", "dataIndex" => "PREVIOUS_USR_UID", "width" => 50, "hidden" => true, "hideable" => false);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_TASK") : "**ID_TASK**", "dataIndex" => "APP_TAS_TITLE", "width" => 120);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_PROCESS") : "**ID_PROCESS**", "dataIndex" => "APP_PRO_TITLE", "width" => 120);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_CURRENT_USER") : "**ID_CURRENT_USER**", "dataIndex" => "APP_CURRENT_USER", "width" => 90, "sortable" => false);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_SENT_BY") : "**ID_SENT_BY**", "dataIndex" => "APP_DEL_PREVIOUS_USER", "width" => 90);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_LAST_MODIFY") : "**ID_LAST_MODIFY**", "dataIndex" => "APP_UPDATE_DATE", "width" => 110);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_STATUS") : "**ID_STATUS**", "dataIndex" => "APP_STATUS", "width" => 50);
|
||||
|
||||
$caseReaderFields[] = array("name" => "APP_UID");
|
||||
$caseReaderFields[] = array("name" => "USR_UID");
|
||||
$caseReaderFields[] = array("name" => "PREVIOUS_USR_UID");
|
||||
$caseReaderFields[] = array("name" => "APP_NUMBER");
|
||||
$caseReaderFields[] = array("name" => "APP_TITLE");
|
||||
$caseReaderFields[] = array("name" => "APP_TAS_TITLE");
|
||||
$caseReaderFields[] = array("name" => "APP_PRO_TITLE");
|
||||
$caseReaderFields[] = array("name" => "APP_CURRENT_USER");
|
||||
$caseReaderFields[] = array("name" => "APP_DEL_PREVIOUS_USER");
|
||||
$caseReaderFields[] = array("name" => "APP_UPDATE_DATE");
|
||||
$caseReaderFields[] = array("name" => "APP_STATUS");
|
||||
$caseReaderFields[] = array("name" => "CASE_SUMMARY");
|
||||
$caseReaderFields[] = array("name" => "CASE_NOTES_COUNT");
|
||||
break;
|
||||
case "todo":
|
||||
default:
|
||||
//todo
|
||||
$caseColumns[] = array("header" => "#", "dataIndex" => "APP_NUMBER", "width" => 45, "align" => "center");
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_SUMMARY") : "**ID_SUMMARY**", "dataIndex" => "CASE_SUMMARY", "width" => 45, "align" => "center", "sortable" => false);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_CASES_NOTES") : "**ID_CASES_NOTES**", "dataIndex" => "CASE_NOTES_COUNT", "width" => 45, "align" => "center", "sortable" => false);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_CASE") : "**ID_CASE**", "dataIndex" => "APP_TITLE", "width" => 150);
|
||||
$caseColumns[] = array("header" => "UserUid", "dataIndex" => "USR_UID", "width" => 50, "hidden" => true, "hideable" => false);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_PROCESS") : "**ID_PROCESS**", "dataIndex" => "APP_PRO_TITLE", "width" => 120);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_TASK") : "**ID_TASK**", "dataIndex" => "APP_TAS_TITLE", "width" => 120);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_SENT_BY") : "**ID_SENT_BY**", "dataIndex" => "APP_DEL_PREVIOUS_USER", "width" => 90);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_DUE_DATE") : "**ID_DUE_DATE**", "dataIndex" => "DEL_TASK_DUE_DATE", "width" => 110);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_LAST_MODIFY") : "**ID_LAST_MODIFY**", "dataIndex" => "APP_UPDATE_DATE", "width" => 110);
|
||||
$caseColumns[] = array("header" => ($translation == 1)? G::LoadTranslation("ID_PRIORITY") : "**ID_PRIORITY**", "dataIndex" => "DEL_PRIORITY", "width" => 50);
|
||||
|
||||
$caseReaderFields[] = array("name" => "APP_UID");
|
||||
$caseReaderFields[] = array("name" => "USR_UID");
|
||||
$caseReaderFields[] = array("name" => "PREVIOUS_USR_UID");
|
||||
$caseReaderFields[] = array("name" => "PREVIOUS_USR_FIRSTNAME");
|
||||
$caseReaderFields[] = array("name" => "PREVIOUS_USR_LASTNAME");
|
||||
$caseReaderFields[] = array("name" => "PREVIOUS_USR_USERNAME");
|
||||
$caseReaderFields[] = array("name" => "DEL_INDEX");
|
||||
$caseReaderFields[] = array("name" => "APP_NUMBER");
|
||||
$caseReaderFields[] = array("name" => "APP_TITLE");
|
||||
$caseReaderFields[] = array("name" => "APP_PRO_TITLE");
|
||||
$caseReaderFields[] = array("name" => "APP_TAS_TITLE");
|
||||
$caseReaderFields[] = array("name" => "APP_DEL_PREVIOUS_USER");
|
||||
$caseReaderFields[] = array("name" => "DEL_TASK_DUE_DATE");
|
||||
$caseReaderFields[] = array("name" => "APP_UPDATE_DATE");
|
||||
$caseReaderFields[] = array("name" => "DEL_PRIORITY");
|
||||
$caseReaderFields[] = array("name" => "APP_FINISH_DATE");
|
||||
$caseReaderFields[] = array("name" => "APP_CURRENT_USER");
|
||||
$caseReaderFields[] = array("name" => "APP_STATUS");
|
||||
$caseReaderFields[] = array("name" => "CASE_SUMMARY");
|
||||
$caseReaderFields[] = array("name" => "CASE_NOTES_COUNT");
|
||||
break;
|
||||
}
|
||||
|
||||
return array("caseColumns" => $caseColumns, "caseReaderFields" => $caseReaderFields, "rowsperpage" => 20, "dateformat" => "M d, Y");
|
||||
}
|
||||
|
||||
function getDefaultConfig($action, $translation)
|
||||
{
|
||||
$config = new Configurations();
|
||||
|
||||
if (method_exists($config, "casesListDefaultFieldsAndConfig")) {
|
||||
$arrayConfig = $config->casesListDefaultFieldsAndConfig($action, $translation);
|
||||
} else {
|
||||
$arrayConfig = casesListDefaultFieldsAndConfig($action, $translation);
|
||||
}
|
||||
|
||||
return $arrayConfig;
|
||||
}
|
||||
|
||||
function getDefaultFields($action, $translation)
|
||||
{
|
||||
$config = new Configurations();
|
||||
|
||||
if (method_exists($config, "casesListDefaultFieldsAndConfig")) {
|
||||
$arrayConfig = $config->casesListDefaultFieldsAndConfig($action, $translation);
|
||||
} else {
|
||||
$arrayConfig = casesListDefaultFieldsAndConfig($action, $translation);
|
||||
}
|
||||
|
||||
//Table APP_DELAY, fields
|
||||
$appDelayField = array(
|
||||
"APP_DELAY_UID",
|
||||
//"PRO_UID",
|
||||
//"APP_UID",
|
||||
"APP_THREAD_INDEX",
|
||||
"APP_DEL_INDEX",
|
||||
"APP_TYPE",
|
||||
//"APP_STATUS",
|
||||
"APP_NEXT_TASK",
|
||||
"APP_DELEGATION_USER",
|
||||
"APP_ENABLE_ACTION_USER",
|
||||
"APP_ENABLE_ACTION_DATE",
|
||||
"APP_DISABLE_ACTION_USER",
|
||||
"APP_DISABLE_ACTION_DATE",
|
||||
"APP_AUTOMATIC_DISABLED_DATE"
|
||||
);
|
||||
|
||||
$arrayField = array();
|
||||
|
||||
//Required fields for AppCacheView.php - addPMFieldsToCriteria()
|
||||
$arrayField[] = array("name" => "APP_UID", "fieldType" => "key", "label" => ($translation == 1)? G::LoadTranslation("ID_CASESLIST_APP_UID") : "**ID_CASESLIST_APP_UID**", "align" => "left", "width" => 80);
|
||||
$arrayField[] = array("name" => "DEL_INDEX", "fieldType" => "key" , "label" => ($translation == 1)? G::LoadTranslation("ID_CASESLIST_DEL_INDEX") : "**ID_CASESLIST_DEL_INDEX**", "align" => "left", "width" => 50);
|
||||
$arrayField[] = array("name" => "USR_UID", "fieldType" => "case field", "label" => ($translation == 1)? G::LoadTranslation("ID_CASESLIST_USR_UID") : "**ID_CASESLIST_USR_UID**", "align" => "left", "width" => 100);
|
||||
$arrayField[] = array("name" => "PREVIOUS_USR_UID", "fieldType" => "case field" , "label" => ($translation == 1)? G::LoadTranslation("ID_CASESLIST_PREVIOUS_USR_UID") : "**ID_CASESLIST_PREVIOUS_USR_UID**", "align" => "left", "width" => 100);
|
||||
|
||||
if (count($arrayConfig["caseColumns"]) > 0) {
|
||||
foreach ($arrayConfig["caseColumns"] as $index1 => $value1) {
|
||||
if (!isset($value1["hidden"])) {
|
||||
$arrayAux1 = $value1;
|
||||
$arrayAux2 = array();
|
||||
|
||||
foreach ($arrayAux1 as $index2 => $value2) {
|
||||
$indexAux = $index2;
|
||||
|
||||
switch ($index2) {
|
||||
case "dataIndex":
|
||||
$indexAux = "name";
|
||||
break;
|
||||
case "header":
|
||||
$indexAux = "label";
|
||||
break;
|
||||
}
|
||||
$arrayAux2[$indexAux] = $value2;
|
||||
}
|
||||
|
||||
$arrayAux2["fieldType"] = (!in_array($arrayAux2["name"], $appDelayField))? "case field" : "delay field";
|
||||
$arrayAux2["align"] = (isset($arrayAux2["align"]))? $arrayAux2["align"] : "left";
|
||||
$arrayAux2["width"] = (isset($arrayAux2["width"]))? intval($arrayAux2["width"]): 100;
|
||||
|
||||
$arrayField[] = $arrayAux2;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$arrayField = calculateGridIndex($arrayField);
|
||||
|
||||
return $arrayField;
|
||||
}
|
||||
|
||||
function setAvailableFields($arrayAvailableField, $arrayField)
|
||||
{
|
||||
$i = 0;
|
||||
$arrayFieldResult = array();
|
||||
|
||||
foreach ($arrayAvailableField as $index1 => $value1) {
|
||||
$fieldType = "PM Table";
|
||||
|
||||
foreach ($arrayField as $index2 => $value2) {
|
||||
if ($value2["name"] == $value1) {
|
||||
$fieldType = $value2["fieldType"];
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
$arrayFieldResult[$i] = array("name" => $value1, "gridIndex" => $i, "fieldType" => $fieldType);
|
||||
$i = $i + 1;
|
||||
}
|
||||
|
||||
return $arrayFieldResult;
|
||||
}
|
||||
|
||||
function setCasesListFields($arrayCasesListField, $arrayField)
|
||||
{
|
||||
$i = 0;
|
||||
$arrayFieldResult = array();
|
||||
|
||||
foreach ($arrayCasesListField as $index1 => $value1) {
|
||||
$fieldName = $value1->name;
|
||||
|
||||
$fieldTypeAux = "PM Table";
|
||||
$fieldLabelAux = $fieldName;
|
||||
$fieldAlignAux = "left";
|
||||
$fieldWidthAux = 100;
|
||||
|
||||
foreach ($arrayField as $index2 => $value2) {
|
||||
if ($value2["name"] == $fieldName) {
|
||||
$fieldTypeAux = $value2["fieldType"];
|
||||
$fieldLabelAux = $value2["label"];
|
||||
$fieldAlignAux = $value2["align"];
|
||||
$fieldWidthAux = $value2["width"];
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
$fieldType = $fieldTypeAux;
|
||||
$fieldLabel = (isset($value1->label) && trim($value1->label) != "")? $value1->label : $fieldLabelAux;
|
||||
$fieldAlign = (isset($value1->align) && trim($value1->align) != "")? $value1->align : $fieldAlignAux;
|
||||
$fieldWidth = (isset($value1->width) && trim($value1->width) != "")? intval($value1->width) : $fieldWidthAux;
|
||||
|
||||
$arrayFieldResult[$i] = array("name" => $fieldName, "gridIndex" => $i, "fieldType" => $fieldType, "label" => $fieldLabel, "align" => $fieldAlign, "width" => $fieldWidth);
|
||||
$i = $i + 1;
|
||||
}
|
||||
|
||||
return $arrayFieldResult;
|
||||
}
|
||||
|
||||
function fieldSet()
|
||||
{
|
||||
global $conf;
|
||||
global $confCasesList;
|
||||
global $action;
|
||||
|
||||
if (is_array($confCasesList)) {
|
||||
$validConfig = isset($confCasesList["first"]) && isset($confCasesList["second"]);
|
||||
} else {
|
||||
$validConfig = false;
|
||||
}
|
||||
|
||||
if (!$validConfig) {
|
||||
$arrayField = getDefaultFields($action, 0);
|
||||
$arrayConfig = getDefaultConfig($action, 0);
|
||||
|
||||
$result = genericJsonResponse("", array(), $arrayField, $arrayConfig["rowsperpage"], $arrayConfig["dateformat"]);
|
||||
|
||||
$conf->saveObject($result, "casesList", $action, "", "", "");
|
||||
|
||||
echo G::json_encode($result);
|
||||
} else {
|
||||
echo G::json_encode($confCasesList);
|
||||
}
|
||||
}
|
||||
|
||||
function fieldReset($translation)
|
||||
{
|
||||
global $action;
|
||||
|
||||
$arrayField = getDefaultFields($action, $translation);
|
||||
$arrayConfig = getDefaultConfig($action, $translation);
|
||||
|
||||
$result = genericJsonResponse("", array(), $arrayField, $arrayConfig["rowsperpage"], $arrayConfig["dateformat"]);
|
||||
|
||||
echo G::json_encode($result);
|
||||
}
|
||||
|
||||
function fieldComplete($translation)
|
||||
{
|
||||
global $action;
|
||||
|
||||
$arrayField = getDefaultFields($action, $translation);
|
||||
$arrayConfig = getDefaultConfig($action, $translation);
|
||||
|
||||
//Get values from JSON request
|
||||
$first = G::json_decode((isset($_POST["first"]))? $_POST["first"] : G::json_encode(array()));
|
||||
$second = G::json_decode((isset($_POST["second"]))? $_POST["second"] : G::json_encode(array()));
|
||||
$pmtable = (isset($_POST["pmtable"]))? $_POST["pmtable"] : "";
|
||||
$rowsperpage = (isset($_POST["rowsperpage"]))? $_POST["rowsperpage"] : $arrayConfig["rowsperpage"];
|
||||
$dateformat = (isset($_POST["dateformat"]) && !empty($_POST["dateformat"]))? $_POST["dateformat"] : $arrayConfig["dateformat"];
|
||||
|
||||
//Complete fields
|
||||
foreach ($first as $index1 => $value1) {
|
||||
$indexAux = 0;
|
||||
$sw = 0;
|
||||
|
||||
foreach ($arrayField as $index2 => $value2) {
|
||||
if ($value2["name"] == $value1) {
|
||||
$indexAux = $index1;
|
||||
$sw = 1;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if ($sw == 1) {
|
||||
unset($first[$indexAux]);
|
||||
}
|
||||
}
|
||||
|
||||
foreach ($arrayField as $index1 => $value1) {
|
||||
$sw = 0;
|
||||
|
||||
foreach ($second as $index2 => $value2) {
|
||||
if ($value2->name == $value1["name"]) {
|
||||
$sw = 1;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if ($sw == 0) {
|
||||
$item = new stdClass();
|
||||
$item->name = $value1["name"];
|
||||
|
||||
array_push($second, $item);
|
||||
}
|
||||
}
|
||||
|
||||
$arrayNewFirst = setAvailableFields($first, $arrayField);
|
||||
$arrayNewSecond = setCasesListFields($second, $arrayField);
|
||||
|
||||
$result = genericJsonResponse($pmtable, $arrayNewFirst, $arrayNewSecond, $rowsperpage, $dateformat);
|
||||
|
||||
echo G::json_encode($result);
|
||||
}
|
||||
|
||||
function fieldLabelReset($translation)
|
||||
{
|
||||
global $action;
|
||||
|
||||
$arrayField = getDefaultFields($action, $translation);
|
||||
$arrayConfig = getDefaultConfig($action, $translation);
|
||||
|
||||
//Get values from JSON request
|
||||
$first = G::json_decode((isset($_POST["first"]))? $_POST["first"] : G::json_encode(array()));
|
||||
$second = G::json_decode((isset($_POST["second"]))? $_POST["second"] : G::json_encode(array()));
|
||||
$pmtable = (isset($_POST["pmtable"]))? $_POST["pmtable"] : "";
|
||||
$rowsperpage = (isset($_POST["rowsperpage"]))? $_POST["rowsperpage"] : $arrayConfig["rowsperpage"];
|
||||
$dateformat = (isset($_POST["dateformat"]) && !empty($_POST["dateformat"]))? $_POST["dateformat"] : $arrayConfig["dateformat"];
|
||||
|
||||
//Reset label's fields
|
||||
foreach ($second as $index1 => $value1) {
|
||||
foreach ($arrayField as $index2 => $value2) {
|
||||
if ($value2["name"] == $value1->name) {
|
||||
$value1->label = $value2["label"];
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$arrayNewFirst = setAvailableFields($first, $arrayField);
|
||||
$arrayNewSecond = setCasesListFields($second, $arrayField);
|
||||
|
||||
$result = genericJsonResponse($pmtable, $arrayNewFirst, $arrayNewSecond, $rowsperpage, $dateformat);
|
||||
|
||||
echo G::json_encode($result);
|
||||
}
|
||||
|
||||
function fieldSave()
|
||||
{
|
||||
global $conf;
|
||||
global $action;
|
||||
|
||||
$arrayField = getDefaultFields($action, 0);
|
||||
$arrayConfig = getDefaultConfig($action, 0);
|
||||
|
||||
//Get values from JSON request
|
||||
$first = G::json_decode((isset($_POST["first"]))? $_POST["first"] : G::json_encode(array()));
|
||||
$second = G::json_decode((isset($_POST["second"]))? $_POST["second"] : G::json_encode(array()));
|
||||
$pmtable = (isset($_POST["pmtable"]))? $_POST["pmtable"] : "";
|
||||
$rowsperpage = (isset($_POST["rowsperpage"]))? $_POST["rowsperpage"] : $arrayConfig["rowsperpage"];
|
||||
$dateformat = (isset($_POST["dateformat"]) && !empty($_POST["dateformat"]))? $_POST["dateformat"] : $arrayConfig["dateformat"];
|
||||
|
||||
//Adding the key fields to second array
|
||||
//Required fields for AppCacheView.php - addPMFieldsToCriteria()
|
||||
$appUid = new stdClass();
|
||||
$appUid->name = "APP_UID";
|
||||
|
||||
$delIndex = new stdClass();
|
||||
$delIndex->name = "DEL_INDEX";
|
||||
|
||||
$usrUid = new stdClass();
|
||||
$usrUid->name = "USR_UID";
|
||||
|
||||
$previousUsrUid = new stdClass();
|
||||
$previousUsrUid->name = "PREVIOUS_USR_UID";
|
||||
|
||||
array_unshift($second, $previousUsrUid);
|
||||
array_unshift($second, $usrUid);
|
||||
array_unshift($second, $delIndex);
|
||||
array_unshift($second, $appUid);
|
||||
|
||||
$arrayNewFirst = setAvailableFields($first, $arrayField);
|
||||
$arrayNewSecond = setCasesListFields($second, $arrayField);
|
||||
|
||||
$result = genericJsonResponse($pmtable, $arrayNewFirst, $arrayNewSecond, $rowsperpage, $dateformat);
|
||||
|
||||
$conf->saveObject($result, "casesList", $action, "", "", "");
|
||||
|
||||
echo G::json_encode($result);
|
||||
}
|
||||
|
||||
require_once ("classes" . PATH_SEP . "model" . PATH_SEP . "Fields.php");
|
||||
|
||||
G::LoadClass("BasePeer");
|
||||
G::LoadClass("configuration");
|
||||
|
||||
$callback = (isset($_POST["callback"]))? $_POST["callback"] : "stcCallback1001";
|
||||
$dir = (isset($_POST["dir"]))? $_POST["dir"] : "DESC";
|
||||
$sort = (isset($_POST["sort"]))? $_POST["sort"] : "";
|
||||
$query = (isset($_POST["query"]))? $_POST["query"] : "";
|
||||
$tabUid = (isset($_POST["table"]))? $_POST["table"] : "";
|
||||
$action = (isset($_POST["action"]))? $_POST["action"] : "todo";
|
||||
$xaction = (isset($_POST["xaction"]))? $_POST["xaction"] : "FIELD_SAVE";
|
||||
|
||||
try {
|
||||
//Load the current configuration for this action, this configuration will be used later
|
||||
$conf = new Configurations();
|
||||
$confCasesList = $conf->loadObject("casesList", $action, "", "", "");
|
||||
|
||||
switch ($xaction) {
|
||||
case "FIELD_SET":
|
||||
if (isset($confCasesList['second']['data'])) {
|
||||
foreach ($confCasesList['second']['data'] as $key => $value) {
|
||||
$confCasesList['second']['data'][$key]['align_label'] = $confCasesList['second']['data'][$key]['align'];
|
||||
}
|
||||
}
|
||||
fieldSet();
|
||||
break;
|
||||
case "FIELD_RESET":
|
||||
case "FIELD_RESET_ID":
|
||||
fieldReset(($xaction == "FIELD_RESET")? 1 : 0);
|
||||
break;
|
||||
case "FIELD_COMPLETE":
|
||||
case "FIELD_COMPLETE_ID":
|
||||
fieldComplete(($xaction == "FIELD_COMPLETE")? 1 : 0);
|
||||
break;
|
||||
case "FIELD_LABEL_RESET":
|
||||
case "FIELD_LABEL_RESET_ID":
|
||||
fieldLabelReset(($xaction == "FIELD_LABEL_RESET")? 1 : 0);
|
||||
break;
|
||||
case "FIELD_SAVE":
|
||||
fieldSave();
|
||||
break;
|
||||
case "getFieldsFromPMTable":
|
||||
xgetFieldsFromPMTable($tabUid);
|
||||
break;
|
||||
}
|
||||
} catch (Exception $e) {
|
||||
echo G::json_encode($e->getMessage());
|
||||
}
|
||||
|
||||
/**
|
||||
* set the generic Json Response, using two array for the grid stores and a string for the pmtable name
|
||||
* @param string $pmtable
|
||||
* @param array $first
|
||||
* @param array $second
|
||||
* @return $response a json string
|
||||
*/
|
||||
function genericJsonResponse($pmtable, $first, $second, $rowsperpage, $dateFormat)
|
||||
{
|
||||
$firstGrid['totalCount'] = count($first);
|
||||
$firstGrid['data'] = $first;
|
||||
$secondGrid['totalCount'] = count($second);
|
||||
$secondGrid['data'] = $second;
|
||||
$result = array();
|
||||
$result['first'] = $firstGrid;
|
||||
$result['second'] = $secondGrid;
|
||||
$result['PMTable'] = isset($pmtable) ? $pmtable : '';
|
||||
$result['rowsperpage'] = isset($rowsperpage) ? $rowsperpage : 20;
|
||||
$result['dateformat'] = isset($dateFormat) && $dateFormat != '' ? $dateFormat : 'M d, Y';
|
||||
return $result;
|
||||
}
|
||||
|
||||
function xgetFieldsFromPMTable($tabUid)
|
||||
{
|
||||
$rows = array();
|
||||
$result = array();
|
||||
// $rows[] = array ( 'name' => 'val 1', 'gridIndex' => '21', 'fieldType' => 'PM Table' );
|
||||
// $rows[] = array ( 'name' => 'val 2', 'gridIndex' => '22', 'fieldType' => 'PM Table' );
|
||||
// $rows[] = array ( 'name' => 'val 3', 'gridIndex' => '23', 'fieldType' => 'PM Table' );
|
||||
//$result['success'] = true;
|
||||
//$result['totalCount'] = count($rows);
|
||||
$oCriteria = new Criteria('workflow');
|
||||
$oCriteria->clearSelectColumns ( );
|
||||
$oCriteria->setDistinct();
|
||||
$oCriteria->addSelectColumn ( FieldsPeer::FLD_NAME );
|
||||
$oCriteria->addSelectColumn ( FieldsPeer::FLD_UID );
|
||||
$oCriteria->addSelectColumn ( FieldsPeer::FLD_INDEX );
|
||||
$oCriteria->add (FieldsPeer::ADD_TAB_UID, $tabUid , CRITERIA::EQUAL );
|
||||
$oCriteria->add (FieldsPeer::FLD_NAME, 'APP_UID' , CRITERIA::NOT_EQUAL );
|
||||
$oCriteria->addDescendingOrderByColumn('FLD_INDEX');
|
||||
$oDataset = FieldsPeer::doSelectRS($oCriteria);
|
||||
$oDataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
|
||||
$oDataset->next();
|
||||
$index = count($rows);
|
||||
|
||||
while ($aRow = $oDataset->getRow()) {
|
||||
$aRow['index'] = ++$index;
|
||||
$aTempRow['name'] = $aRow['FLD_NAME'];
|
||||
$aTempRow['gridIndex'] = $aRow['index'];
|
||||
$aTempRow['fieldType'] = 'PM Table';
|
||||
$rows[] = $aTempRow;
|
||||
$oDataset->next();
|
||||
}
|
||||
|
||||
$result['data'] = $rows;
|
||||
print G::json_encode( $result ) ;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @param Array $fields
|
||||
* @return Array
|
||||
*
|
||||
*/
|
||||
function calculateGridIndex($fields)
|
||||
{
|
||||
for ($i=0; $i<count( $fields ); $i++) {
|
||||
$fields[$i]['gridIndex']=$i+1;
|
||||
}
|
||||
return ($fields);
|
||||
}
|
||||
|
||||
65
workflow/engine/methods/cases/proxyPMTablesList.php
Normal file
65
workflow/engine/methods/cases/proxyPMTablesList.php
Normal file
@@ -0,0 +1,65 @@
|
||||
<?php
|
||||
$callback = isset($_POST['callback']) ? $_POST['callback'] : 'stcCallback1001';
|
||||
$dir = isset($_POST['dir']) ? $_POST['dir'] : 'DESC';
|
||||
$sort = isset($_POST['sort']) ? $_POST['sort'] : '';
|
||||
$query = isset($_POST['query']) ? $_POST['query'] : '';
|
||||
$option = '';
|
||||
|
||||
if ( isset($_GET['t'] ) ) {
|
||||
$option = $_GET['t'];
|
||||
}
|
||||
|
||||
try {
|
||||
G::LoadClass("BasePeer" );
|
||||
require_once ( "classes/model/AdditionalTables.php" );
|
||||
require_once ( "classes/model/Fields.php" );
|
||||
|
||||
$sUIDUserLogged = $_SESSION['USER_LOGGED'];
|
||||
$oCriteria = new Criteria('workflow');
|
||||
$oCriteria->clearSelectColumns ( );
|
||||
$oCriteria->setDistinct();
|
||||
$oCriteria->addSelectColumn ( AdditionalTablesPeer::ADD_TAB_UID );
|
||||
$oCriteria->addSelectColumn ( AdditionalTablesPeer::ADD_TAB_NAME );
|
||||
$oCriteria->addSelectColumn ( FieldsPeer::FLD_NAME );
|
||||
if ( $query != '' ) {
|
||||
$oCriteria->add (AdditionalTablesPeer::ADD_TAB_NAME, $query . '%', Criteria::LIKE);
|
||||
}
|
||||
$oCriteria->addJoin(AdditionalTablesPeer::ADD_TAB_UID, FieldsPeer::ADD_TAB_UID);
|
||||
$oCriteria->add (AdditionalTablesPeer::DBS_UID, 'workflow', CRITERIA::EQUAL );
|
||||
$oCriteria->add (FieldsPeer::FLD_NAME, 'APP_UID', CRITERIA::EQUAL );
|
||||
|
||||
if (isset($limit)) {
|
||||
$oCriteria->setLimit($limit);
|
||||
}
|
||||
|
||||
if (isset($start)) {
|
||||
$oCriteria->setOffset($start);
|
||||
}
|
||||
|
||||
if ($sort != '') {
|
||||
if ($dir == 'DESC') {
|
||||
$oCriteria->addDescendingOrderByColumn( $sort );
|
||||
} else {
|
||||
$oCriteria->addAscendingOrderByColumn( $sort );
|
||||
}
|
||||
}
|
||||
|
||||
$oDataset = AdditionalTablesPeer::doSelectRS($oCriteria);
|
||||
$oDataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
|
||||
$oDataset->next();
|
||||
$result = array();
|
||||
$rows = array();
|
||||
$index = isset($start) ? $start : 0;
|
||||
|
||||
while ($aRow = $oDataset->getRow()) {
|
||||
$aRow['index'] = ++$index;
|
||||
$rows[] = $aRow;
|
||||
$oDataset->next();
|
||||
}
|
||||
$result['totalCount'] = count($rows);
|
||||
$result['data'] = $rows;
|
||||
print G::json_encode( $result );
|
||||
} catch (Exception $e) {
|
||||
print G::json_encode ($e->getMessage());
|
||||
}
|
||||
|
||||
162
workflow/engine/methods/cases/proxyPMTablesSaveFields.php
Normal file
162
workflow/engine/methods/cases/proxyPMTablesSaveFields.php
Normal file
@@ -0,0 +1,162 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* To change this template, choose Tools | Templates
|
||||
* and open the template in the editor.
|
||||
*/
|
||||
|
||||
$callback = isset($_POST['callback']) ? $_POST['callback'] : 'stcCallback1001';
|
||||
$dir = isset($_POST['dir']) ? $_POST['dir'] : 'DESC';
|
||||
$sort = isset($_POST['sort']) ? $_POST['sort'] : '';
|
||||
$query = isset($_POST['query']) ? $_POST['query'] : '';
|
||||
$tabUid = isset($_POST['table']) ? $_POST['table'] : '';
|
||||
$action = isset($_POST['action']) ? $_POST['action'] : 'todo';
|
||||
|
||||
try {
|
||||
G::LoadClass("BasePeer" );
|
||||
require_once ( "classes/model/Fields.php" );
|
||||
//$sUIDUserLogged = $_SESSION['USER_LOGGED'];
|
||||
$oCriteria = new Criteria('workflow');
|
||||
$oCriteria->clearSelectColumns();
|
||||
$oCriteria->setDistinct();
|
||||
$oCriteria->addSelectColumn (FieldsPeer::FLD_NAME);
|
||||
$oCriteria->addSelectColumn (FieldsPeer::FLD_UID);
|
||||
$oCriteria->addSelectColumn (FieldsPeer::FLD_INDEX);
|
||||
|
||||
if ($query != '') {
|
||||
$oCriteria->add (FieldsPeer::FLD_NAME, $query . '%', Criteria::LIKE);
|
||||
}
|
||||
//$oCriteria->addJoin(AdditionalTablesPeer::ADD_TAB_UID, FieldsPeer::ADD_TAB_UID);
|
||||
$oCriteria->add (FieldsPeer::ADD_TAB_UID, $tabUid , CRITERIA::EQUAL );
|
||||
$oCriteria->add (FieldsPeer::FLD_NAME, 'APP_UID' , CRITERIA::NOT_EQUAL );
|
||||
//$oCriteria->add (AppCacheViewPeer::APP_STATUS, "TO_DO" , CRITERIA::EQUAL );
|
||||
//$oCriteria->add (AppCacheViewPeer::USR_UID, $sUIDUserLogged);
|
||||
//$totalCount = AppCacheViewPeer::doCount( $Criteria );
|
||||
//if ( isset($limit) ) $oCriteria->setLimit ( $limit );
|
||||
//if ( isset($start) ) $oCriteria->setOffset ( $start );
|
||||
if ($sort != '') {
|
||||
if ($dir == 'DESC') {
|
||||
$oCriteria->addDescendingOrderByColumn( $sort );
|
||||
} else {
|
||||
$oCriteria->addAscendingOrderByColumn( $sort );
|
||||
} //else {
|
||||
// $oCriteria->addDescendingOrderByColumn('FLD_INDEX');
|
||||
//}
|
||||
$oDataset = FieldsPeer::doSelectRS($oCriteria);
|
||||
$oDataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
|
||||
$oDataset->next();
|
||||
|
||||
$result = array();
|
||||
$rows = array();
|
||||
switch ($action) {
|
||||
case 'todo':
|
||||
// #, Case, task, process, sent by, due date, Last Modify, Priority
|
||||
$rows[] = array( 'name' => 'APP_UID', 'gridIndex' => '0', 'column2' => '0' );
|
||||
$rows[] = array( 'name' => 'DEL_INDEX', 'gridIndex' => '3', 'column2' => '3' );
|
||||
$rows[] = array( 'name' => 'APP_NUMBER', 'gridIndex' => '1', 'column2' => '1' );
|
||||
$rows[] = array( 'name' => 'APP_TITLE', 'gridIndex' => '4', 'column2' => '4' );
|
||||
$rows[] = array( 'name' => 'APP_TAS_TITLE', 'gridIndex' => '6', 'column2' => '6' );
|
||||
$rows[] = array( 'name' => 'APP_PRO_TITLE', 'gridIndex' => '5', 'column2' => '5' );
|
||||
$rows[] = array( 'name' => 'APP_DEL_PREVIOUS_USER', 'gridIndex' => '7', 'column2' => '7' );
|
||||
$rows[] = array( 'name' => 'DEL_TASK_DUE_DATE', 'gridIndex' => '8', 'column2' => '8' );
|
||||
$rows[] = array( 'name' => 'APP_UPDATE_DATE', 'gridIndex' => '9', 'column2' => '9' );
|
||||
$rows[] = array( 'name' => 'DEL_PRIORITY', 'gridIndex' => '10', 'column2' =>'10' );
|
||||
break;
|
||||
case 'draft':
|
||||
//#, Case, task, process, due date, Last Modify, Priority },
|
||||
$rows[] = array( 'name' => 'APP_UID', 'gridIndex' => '0', 'column2' => '0' );
|
||||
$rows[] = array( 'name' => 'DEL_INDEX', 'gridIndex' => '3', 'column2' => '3' );
|
||||
$rows[] = array( 'name' => 'APP_NUMBER', 'gridIndex' => '1', 'column2' => '1' );
|
||||
$rows[] = array( 'name' => 'APP_TITLE', 'gridIndex' => '4', 'column2' => '4' );
|
||||
$rows[] = array( 'name' => 'APP_TAS_TITLE', 'gridIndex' => '6', 'column2' => '6' );
|
||||
$rows[] = array( 'name' => 'APP_PRO_TITLE', 'gridIndex' => '5', 'column2' => '5' );
|
||||
$rows[] = array( 'name' => 'DEL_TASK_DUE_DATE', 'gridIndex' => '8', 'column2' => '8' );
|
||||
$rows[] = array( 'name' => 'APP_UPDATE_DATE', 'gridIndex' => '9', 'column2' => '9' );
|
||||
$rows[] = array( 'name' => 'DEL_PRIORITY', 'gridIndex' => '10', 'column2' =>'10' );
|
||||
break;
|
||||
case 'sent':
|
||||
// #, Case, task, process, current user, sent by, Last Modify, Status
|
||||
$rows[] = array( 'name' => 'APP_UID', 'gridIndex' => '0', 'column2' => '0' );
|
||||
$rows[] = array( 'name' => 'APP_NUMBER', 'gridIndex' => '1', 'column2' => '1' );
|
||||
$rows[] = array( 'name' => 'APP_STATUS', 'gridIndex' => '2', 'column2' => '2' );
|
||||
$rows[] = array( 'name' => 'DEL_INDEX', 'gridIndex' => '3', 'column2' => '3' );
|
||||
$rows[] = array( 'name' => 'APP_TITLE', 'gridIndex' => '4', 'column2' => '4' );
|
||||
$rows[] = array( 'name' => 'APP_PRO_TITLE', 'gridIndex' => '5', 'column2' => '5' );
|
||||
$rows[] = array( 'name' => 'APP_TAS_TITLE', 'gridIndex' => '6', 'column2' => '6' );
|
||||
$rows[] = array( 'name' => 'APP_DEL_PREVIOUS_USER', 'gridIndex' => '7', 'column2' => '7' );
|
||||
$rows[] = array( 'name' => 'DEL_TASK_DUE_DATE', 'gridIndex' => '8', 'column2' => '8' );
|
||||
$rows[] = array( 'name' => 'APP_UPDATE_DATE', 'gridIndex' => '9', 'column2' => '9' );
|
||||
$rows[] = array( 'name' => 'DEL_PRIORITY', 'gridIndex' => '10', 'column2' =>'10' );
|
||||
break;
|
||||
case 'unassigned':
|
||||
$rows[] = array( 'name' => 'APP_UID', 'gridIndex' => '0', 'column2' => '0' );
|
||||
$rows[] = array( 'name' => 'APP_NUMBER', 'gridIndex' => '1', 'column2' => '1' );
|
||||
//$rows[] = array( 'name' => 'APP_STATUS', 'gridIndex' => '2', 'column2' => '2' );
|
||||
//$rows[] = array( 'name' => 'DEL_INDEX', 'gridIndex' => '3', 'column2' => '3' );
|
||||
$rows[] = array( 'name' => 'APP_TITLE', 'gridIndex' => '2', 'column2' => '2' );
|
||||
$rows[] = array( 'name' => 'APP_PRO_TITLE', 'gridIndex' => '3', 'column2' => '3' );
|
||||
$rows[] = array( 'name' => 'APP_TAS_TITLE', 'gridIndex' => '4', 'column2' => '4' );
|
||||
$rows[] = array( 'name' => 'APP_DEL_PREVIOUS_USER', 'gridIndex' => '5', 'column2' => '5' );
|
||||
//$rows[] = array( 'name' => 'DEL_TASK_DUE_DATE', 'gridIndex' => '8', 'column2' => '8' );
|
||||
$rows[] = array( 'name' => 'APP_UPDATE_DATE', 'gridIndex' => '6', 'column2' => '6' );
|
||||
//$rows[] = array( 'name' => 'DEL_PRIORITY', 'gridIndex' => '10', 'column2' =>'10' );
|
||||
break;
|
||||
case 'paused':
|
||||
$rows[] = array( 'name' => 'APP_UID', 'gridIndex' => '0', 'column2' => '0' );
|
||||
$rows[] = array( 'name' => 'APP_NUMBER', 'gridIndex' => '1', 'column2' => '1' );
|
||||
//$rows[] = array( 'name' => 'APP_STATUS', 'gridIndex' => '2', 'column2' => '2' );
|
||||
//$rows[] = array( 'name' => 'DEL_INDEX', 'gridIndex' => '3', 'column2' => '3' );
|
||||
$rows[] = array( 'name' => 'APP_TITLE', 'gridIndex' => '2', 'column2' => '2' );
|
||||
$rows[] = array( 'name' => 'APP_PRO_TITLE', 'gridIndex' => '3', 'column2' => '3' );
|
||||
$rows[] = array( 'name' => 'APP_TAS_TITLE', 'gridIndex' => '4', 'column2' => '4' );
|
||||
$rows[] = array( 'name' => 'APP_DEL_PREVIOUS_USER', 'gridIndex' => '5', 'column2' => '5' );
|
||||
//$rows[] = array( 'name' => 'DEL_TASK_DUE_DATE', 'gridIndex' => '8', 'column2' => '8' );
|
||||
//$rows[] = array( 'name' => 'APP_UPDATE_DATE', 'gridIndex' => '9', 'column2' => '9' );
|
||||
//$rows[] = array( 'name' => 'DEL_PRIORITY', 'gridIndex' => '10', 'column2' =>'10' );
|
||||
break;
|
||||
case 'completed':
|
||||
$rows[] = array( 'name' => 'APP_UID', 'gridIndex' => '0', 'column2' => '0' );
|
||||
$rows[] = array( 'name' => 'APP_NUMBER', 'gridIndex' => '1', 'column2' => '1' );
|
||||
//$rows[] = array( 'name' => 'APP_STATUS', 'gridIndex' => '2', 'column2' => '2' );
|
||||
//$rows[] = array( 'name' => 'DEL_INDEX', 'gridIndex' => '3', 'column2' => '3' );
|
||||
$rows[] = array( 'name' => 'APP_TITLE', 'gridIndex' => '2', 'column2' => '2' );
|
||||
$rows[] = array( 'name' => 'APP_PRO_TITLE', 'gridIndex' => '3', 'column2' => '3' );
|
||||
$rows[] = array( 'name' => 'APP_TAS_TITLE', 'gridIndex' => '4', 'column2' => '4' );
|
||||
$rows[] = array( 'name' => 'APP_DEL_PREVIOUS_USER', 'gridIndex' => '5', 'column2' => '5' );
|
||||
//$rows[] = array( 'name' => 'DEL_TASK_DUE_DATE', 'gridIndex' => '8', 'column2' => '8' );
|
||||
$rows[] = array( 'name' => 'APP_UPDATE_DATE', 'gridIndex' => '6', 'column2' => '6' );
|
||||
//$rows[] = array( 'name' => 'DEL_PRIORITY', 'gridIndex' => '10', 'column2' =>'10' );
|
||||
break;
|
||||
case 'cancelled':
|
||||
$rows[] = array( 'name' => 'APP_UID', 'gridIndex' => '0', 'column2' => '0' );
|
||||
$rows[] = array( 'name' => 'APP_NUMBER', 'gridIndex' => '1', 'column2' => '1' );
|
||||
//$rows[] = array( 'name' => 'APP_STATUS', 'gridIndex' => '2', 'column2' => '2' );
|
||||
//$rows[] = array( 'name' => 'DEL_INDEX', 'gridIndex' => '3', 'column2' => '3' );
|
||||
$rows[] = array( 'name' => 'APP_TITLE', 'gridIndex' => '2', 'column2' => '2' );
|
||||
$rows[] = array( 'name' => 'APP_PRO_TITLE', 'gridIndex' => '3', 'column2' => '3' );
|
||||
$rows[] = array( 'name' => 'APP_TAS_TITLE', 'gridIndex' => '4', 'column2' => '4' );
|
||||
//$rows[] = array( 'name' => 'APP_DEL_PREVIOUS_USER', 'gridIndex' => '7', 'column2' => '7' );
|
||||
$rows[] = array( 'name' => 'DEL_TASK_DUE_DATE', 'gridIndex' => '5', 'column2' => '5' );
|
||||
$rows[] = array( 'name' => 'APP_UPDATE_DATE', 'gridIndex' => '6', 'column2' => '6' );
|
||||
$rows[] = array( 'name' => 'DEL_PRIORITY', 'gridIndex' => '7', 'column2' =>'7' );
|
||||
break;
|
||||
}
|
||||
}
|
||||
$index = count($rows);
|
||||
|
||||
while ($aRow = $oDataset->getRow()) {
|
||||
$aRow['index'] = ++$index;
|
||||
$aTempRow['name'] = $aRow['FLD_NAME'];
|
||||
$aTempRow['gridIndex'] = $aRow['index'];
|
||||
$aTempRow['column2'] = $aTempRow['gridIndex'];
|
||||
$rows[] = $aTempRow;
|
||||
$oDataset->next();
|
||||
}
|
||||
$result['totalCount'] = count($rows);
|
||||
$result['data'] = $rows;
|
||||
//$jsonResult['records'] = $result;
|
||||
print G::json_encode( $result ) ;
|
||||
} catch (Exception $e) {
|
||||
print G::json_encode ($e->getMessage());
|
||||
}
|
||||
|
||||
@@ -20,11 +20,11 @@ if (class_exists("pmLicenseManager")) {
|
||||
$licStatusMsg = " <font color=\"red\">(" . $licenseStatusInfo["message"] . ")</font>";
|
||||
}
|
||||
|
||||
$G_TMP_MENU->AddIdRawOption("PMENTERPRISE", "../enterprise/addonsStore", "Enterprise Plugins Manager" . $licStatusMsg, "", "", "plugins");
|
||||
$G_TMP_MENU->AddIdRawOption("PMENTERPRISE", "../enterprise/addonsStore", G::LoadTranslation('ID_MENU_NAME') . $licStatusMsg, "", "", "plugins");
|
||||
|
||||
if (isset($pmLicenseManagerO->result) && ($pmLicenseManagerO->result == "OK")) {
|
||||
if (file_exists(PATH_HOME . "engine" . PATH_SEP . "methods" . PATH_SEP . "cases" . PATH_SEP . "casesListExtJs.php")) {
|
||||
$G_TMP_MENU->AddIdRawOption("CASES_LIST_SETUP", "../enterprise/advancedTools/casesListSetup", "Cases Lists", "", "", "settings");
|
||||
$G_TMP_MENU->AddIdRawOption("CASES_LIST_SETUP", "../cases/casesListSetup", G::LoadTranslation('ID_CASES_LIST'), "", "", "settings");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -591,9 +591,7 @@ Ext.onReady ( function() {
|
||||
if( c.dataIndex == 'APP_DEL_PREVIOUS_USER') c.renderer = previous_full_name;
|
||||
if( c.dataIndex == 'APP_CURRENT_USER') c.renderer = full_name;
|
||||
}
|
||||
if (enableEnterprise) {
|
||||
c.header = __('enterprise', _(c.header));
|
||||
}
|
||||
c.header = _(c.header);
|
||||
}
|
||||
|
||||
//adding the hidden field DEL_INIT_DATE
|
||||
|
||||
2
workflow/engine/templates/cases/casesListSetup.html
Normal file
2
workflow/engine/templates/cases/casesListSetup.html
Normal file
@@ -0,0 +1,2 @@
|
||||
<div id="panel"></div>
|
||||
<div id="alt-panel"></div>
|
||||
674
workflow/engine/templates/cases/casesListSetup.js
Normal file
674
workflow/engine/templates/cases/casesListSetup.js
Normal file
@@ -0,0 +1,674 @@
|
||||
Ext.onReady(function () {
|
||||
var currentIndexRowSelected;
|
||||
|
||||
casesListProcessAjax = function (option)
|
||||
{
|
||||
var p;
|
||||
var i = 0;
|
||||
|
||||
switch (option) {
|
||||
case "FIELD_SET":
|
||||
p = {
|
||||
"xaction": option,
|
||||
"action": currentAction
|
||||
};
|
||||
break;
|
||||
case "FIELD_RESET":
|
||||
case "FIELD_RESET_ID":
|
||||
p = {
|
||||
"xaction": option,
|
||||
"action": currentAction
|
||||
};
|
||||
break;
|
||||
case "FIELD_COMPLETE":
|
||||
case "FIELD_COMPLETE_ID":
|
||||
case "FIELD_LABEL_RESET":
|
||||
case "FIELD_LABEL_RESET_ID":
|
||||
case "FIELD_SAVE":
|
||||
|
||||
var rs = firstGrid.store.data.items;
|
||||
var fv = [];
|
||||
|
||||
for (i = 0; i <= rs.length - 1; i++) {
|
||||
fv[i] = rs[i].data["name"];
|
||||
}
|
||||
|
||||
var rs = secondGrid.store.data.items;
|
||||
var sv = [];
|
||||
|
||||
for (i = 0; i <= rs.length - 1; i++) {
|
||||
//sv[i]= rs[i].data["name"];
|
||||
sv[i] = rs[i].data;
|
||||
}
|
||||
|
||||
p = {
|
||||
"xaction": option,
|
||||
"action": currentAction,
|
||||
"first": Ext.util.JSON.encode(fv),
|
||||
"second": Ext.util.JSON.encode(sv),
|
||||
"pmtable": pmTablesDropdown.getValue()
|
||||
};
|
||||
break;
|
||||
}
|
||||
|
||||
Ext.Ajax.request({
|
||||
url: "proxyPMTablesFieldList",
|
||||
method: "POST",
|
||||
params: p,
|
||||
|
||||
success: function (response, opts)
|
||||
{
|
||||
var dataResponse = eval("(" + response.responseText + ")"); //json
|
||||
|
||||
switch (option) {
|
||||
case "FIELD_SET":
|
||||
configDefaultResponseText = response.responseText;
|
||||
fieldSet(dataResponse);
|
||||
break;
|
||||
case "FIELD_RESET":
|
||||
case "FIELD_RESET_ID":
|
||||
fieldSet(dataResponse);
|
||||
break;
|
||||
case "FIELD_COMPLETE":
|
||||
case "FIELD_COMPLETE_ID":
|
||||
fieldSet(dataResponse);
|
||||
break;
|
||||
case "FIELD_LABEL_RESET":
|
||||
case "FIELD_LABEL_RESET_ID":
|
||||
fieldSet(dataResponse);
|
||||
break;
|
||||
case "FIELD_SAVE":
|
||||
configDefaultResponseText = response.responseText;
|
||||
Ext.Msg.alert(_("ID_INFO"), _("ID_SAVED"));
|
||||
location.reload(true);
|
||||
break;
|
||||
}
|
||||
},
|
||||
failure: function (response, opts)
|
||||
{
|
||||
//
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
fieldSet = function (dataResponse)
|
||||
{
|
||||
remotePmFieldsStore.loadData(dataResponse.first);
|
||||
secondGridStore.loadData(dataResponse.second);
|
||||
|
||||
//Remove APP_UID and DEL_INDEX from second grid, this is only to avoid display in this grid
|
||||
var fieldName = "";
|
||||
var i = 0;
|
||||
|
||||
while (i <= secondGrid.store.data.items.length - 1) {
|
||||
fieldName = secondGrid.store.data.items[i].data["name"];
|
||||
|
||||
if (fieldName == "APP_UID" ||
|
||||
fieldName == "DEL_INDEX" ||
|
||||
fieldName == "USR_UID" ||
|
||||
fieldName == "PREVIOUS_USR_UID"
|
||||
) {
|
||||
secondGrid.store.removeAt(i);
|
||||
} else {
|
||||
i = i + 1;
|
||||
}
|
||||
}
|
||||
|
||||
//Set also the selected table value in the comboBox element.
|
||||
if (PmTableStore.getTotalCount() > 0) {
|
||||
pmTablesDropdown.setValue(dataResponse.PMTable);
|
||||
} else {
|
||||
pmTablesDropdown.setValue("");
|
||||
}
|
||||
};
|
||||
|
||||
sendGridFieldsRequest = function (action)
|
||||
{
|
||||
currentAction = action;
|
||||
|
||||
casesListProcessAjax("FIELD_SET");
|
||||
};
|
||||
|
||||
//Variables
|
||||
var currentAction = "";
|
||||
var configDefaultResponseText = "";
|
||||
var tabIndex = 0;
|
||||
|
||||
// Generic fields array to use in both store defs.
|
||||
var pmFields = [
|
||||
{name: 'name', mapping : 'name'},
|
||||
{name: 'gridIndex', mapping : 'gridIndex'},
|
||||
{name: 'fieldType', mapping : 'fieldType'},
|
||||
{name: 'label', mapping : 'label'},
|
||||
//{name: 'width', mapping : 'width'},
|
||||
{name: 'align', mapping : 'align'}
|
||||
];
|
||||
|
||||
//Dropdown to select the PMTable
|
||||
var PmTableStore = new Ext.data.JsonStore({
|
||||
root : 'data',
|
||||
url : 'proxyPMTablesList',
|
||||
totalProperty : 'totalCount',
|
||||
idProperty : 'gridIndex',
|
||||
remoteSort : false, //true,
|
||||
autoLoad : false,
|
||||
fields : [
|
||||
'ADD_TAB_UID', 'ADD_TAB_NAME'
|
||||
],
|
||||
listeners : {load: function() {
|
||||
tabs.setActiveTab(tabIndex);
|
||||
}}
|
||||
});
|
||||
|
||||
// create the Data Store to list PMTables in the dropdown
|
||||
var pmTablesDropdown = new Ext.form.ComboBox ({
|
||||
width : '180',
|
||||
xtype : 'combo',
|
||||
emptyText: _("ID_EMPTY_PMTABLE"),
|
||||
displayField : 'ADD_TAB_NAME',
|
||||
valueField : 'ADD_TAB_UID',
|
||||
triggerAction: 'all',
|
||||
store : PmTableStore,
|
||||
listeners: {
|
||||
'select': function() {
|
||||
var tableUid = this.value;
|
||||
Ext.Ajax.request({
|
||||
url: 'proxyPMTablesFieldList',
|
||||
success: function(response) {
|
||||
var dataResponse = Ext.util.JSON.decode(response.responseText);
|
||||
var rec = Ext.data.Record.create(pmFields);
|
||||
//alert(firstGrid.store);
|
||||
var index;
|
||||
var record;
|
||||
var count = firstGrid.store.getTotalCount();
|
||||
|
||||
// removing all the PM Table fields from the first grid
|
||||
do {
|
||||
index = firstGrid.store.find('fieldType','PM Table');
|
||||
record = firstGrid.store.getAt(index);
|
||||
if (index>=0) {
|
||||
firstGrid.store.remove(record);
|
||||
}
|
||||
} while (index>=0);
|
||||
|
||||
// removing all the PM Table fields from the second grid
|
||||
do {
|
||||
index = secondGrid.store.find('fieldType','PM Table');
|
||||
record = secondGrid.store.getAt(index);
|
||||
if (index>=0) {
|
||||
secondGrid.store.remove(record);
|
||||
}
|
||||
} while (index>=0);
|
||||
|
||||
for (var i = 0; i <= dataResponse.data.length-1; i++) {
|
||||
var d = new rec( dataResponse.data[i] );
|
||||
firstGrid.store.add(d);
|
||||
}
|
||||
firstGrid.store.commitChanges();
|
||||
},
|
||||
failure: function(){},
|
||||
params: {xaction: 'getFieldsFromPMTable', table: tableUid }
|
||||
});
|
||||
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
// COMPONENT DEPRECATED remove it in the next revision of the enterprise plugin
|
||||
// create the Dropdown for rows per page
|
||||
var pmRowsPerPage = new Ext.form.ComboBox ({
|
||||
width : 60,
|
||||
boxMaxWidth : 70,
|
||||
editable : false,
|
||||
triggerAction : 'all',
|
||||
mode : 'local',
|
||||
store : new Ext.data.ArrayStore({
|
||||
fields: ['id'],
|
||||
data : [[5], [6], [7], [8], [9], [10], [12], [15], [18], [20], [25], [30], [50], [100] ]
|
||||
}),
|
||||
valueField : 'id',
|
||||
displayField : 'id',
|
||||
triggerAction : 'all'
|
||||
});
|
||||
|
||||
// COMPONENT DEPRECATED remove it in the next revision of the enterprise plugin
|
||||
// create the Dropdown for date formats
|
||||
var pmDateFormat = new Ext.form.ComboBox ({
|
||||
width : 80,
|
||||
boxMaxWidth : 90,
|
||||
editable : false,
|
||||
triggerAction : 'all',
|
||||
mode : 'local',
|
||||
store : new Ext.data.ArrayStore({
|
||||
fields: ['id'],
|
||||
data : [['M d, Y'],['M d Y'],['M d Y H:i:s'],['d M Y'],['d M Y H:i:s'],['Y-m-d'],['Y-m-d H:i:s'],['Y/m/d '],['Y/m/d H:i:s'],['D d M Y'] ]
|
||||
}),
|
||||
valueField : 'id',
|
||||
displayField : 'id',
|
||||
triggerAction : 'all'
|
||||
});
|
||||
|
||||
PmTableStore.setDefaultSort('ADD_TAB_NAME', 'asc');
|
||||
PmTableStore.load();
|
||||
|
||||
|
||||
var remoteFieldsProxy = new Ext.data.HttpProxy({
|
||||
url : 'proxyPMTablesFieldList',
|
||||
autoSave: true,
|
||||
totalProperty: 'totalCount',
|
||||
successProperty: 'success',
|
||||
idProperty: 'gridIndex',
|
||||
root: 'data',
|
||||
messageProperty: 'message'
|
||||
});
|
||||
|
||||
var readerPmFields = new Ext.data.JsonReader({
|
||||
totalProperty : 'totalCount',
|
||||
idProperty : 'index',
|
||||
root : 'data'
|
||||
}, pmFields
|
||||
);
|
||||
|
||||
//currently we are not using this , but it is here just for complete definition
|
||||
var writerPmFields = new Ext.data.JsonWriter({
|
||||
writeAllFields: false
|
||||
});
|
||||
|
||||
var remotePmFieldsStore = new Ext.data.Store({
|
||||
remoteSort : true,
|
||||
proxy : remoteFieldsProxy,
|
||||
reader : readerPmFields,
|
||||
writer : writerPmFields, // <-- plug a DataWriter into the store just as you would a Reader
|
||||
autoSave : false // <-- false would delay executing create, update, destroy requests until specifically told to do so with some [save] buton.
|
||||
});
|
||||
|
||||
// fields array used in second grid
|
||||
var fieldsSecond = [
|
||||
{name: 'name', mapping : 'name'},
|
||||
{name: 'gridIndex', mapping : 'gridIndex'},
|
||||
{name: 'fieldType', mapping : 'fieldType'},
|
||||
{name: 'label', mapping : 'label'},
|
||||
//{name: 'width', mapping : 'width'},
|
||||
{name: 'align_label', mapping : 'align_label'},
|
||||
{name: 'align', mapping : 'align'}
|
||||
];
|
||||
|
||||
var labelTextField = new Ext.form.TextField ({
|
||||
allowBlank: true
|
||||
});
|
||||
|
||||
var alignComboBox = new Ext.form.ComboBox ({
|
||||
editable : false,
|
||||
triggerAction: 'all',
|
||||
lazyRender:true,
|
||||
mode: 'local',
|
||||
store: new Ext.data.ArrayStore({
|
||||
//id: 0,
|
||||
fields: [
|
||||
'id',
|
||||
'label'
|
||||
],
|
||||
data: [['left', _('ID_LEFT')], ['center', _('ID_CENTER')], ['right', _('ID_RIGHT')]]
|
||||
}),
|
||||
valueField: 'id',
|
||||
displayField: 'label',
|
||||
});
|
||||
|
||||
var alignComboBoxLabel = new Ext.form.ComboBox ({
|
||||
editable : false,
|
||||
triggerAction: 'all',
|
||||
lazyRender:true,
|
||||
mode: 'local',
|
||||
store: new Ext.data.ArrayStore({
|
||||
//id: 0,
|
||||
fields: [
|
||||
'id',
|
||||
'label'
|
||||
],
|
||||
data: [['left', _('ID_LEFT')], ['center', _('ID_CENTER')], ['right', _('ID_RIGHT')]]
|
||||
}),
|
||||
valueField: 'id',
|
||||
displayField: 'label',
|
||||
listeners:{
|
||||
|
||||
select: function(obj){
|
||||
|
||||
var row = Ext.getCmp('secondGrid').getSelectionModel().getSelected();
|
||||
var selIndex = Ext.getCmp('secondGrid').getStore().indexOfId(row.id);
|
||||
|
||||
row.data['align'] = obj.getValue();
|
||||
obj.value = obj.lastSelectionText;
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
var widthTextField = new Ext.form.NumberField({
|
||||
allowBlank: false,
|
||||
allowNegative: false,
|
||||
maxValue: 800,
|
||||
minValue: 0
|
||||
});
|
||||
|
||||
//Column Model shortcut array
|
||||
var cols = [
|
||||
{header: _("ID_HEADER_NUMBER"), sortable: false, dataIndex: "gridIndex", hidden: true, hideable: false},
|
||||
{header: _("ID_HEADER_FIELD_NAME"), width: '75%', sortable: false, dataIndex: "name"},
|
||||
{header: _("ID_HEADER_FIELD_TYPE"), width: '25%', sortable: false, dataIndex: "fieldType"}
|
||||
];
|
||||
|
||||
//Column Model shortcut array
|
||||
var colsSecond = new Ext.grid.ColumnModel({
|
||||
// specify any defaults for each column
|
||||
defaults: {
|
||||
sortable: false // columns are not sortable by default
|
||||
},
|
||||
columns: [
|
||||
{header: _("ID_HEADER_NUMBER"), width: 25, dataIndex: "gridIndex", hidden: true, hideable: false},
|
||||
{header: _("ID_HEADER_FIELD_NAME"), width: 160, dataIndex: "name"},
|
||||
{header: _("ID_HEADER_FIELD_TYPE"), width: 70, dataIndex: "fieldType"},
|
||||
{
|
||||
header: _("ID_HEADER_LABEL"),
|
||||
width: 160,
|
||||
dataIndex: "label",
|
||||
editor: labelTextField,
|
||||
renderer: function (value, metaData, record, rowIndex, colIndex, store)
|
||||
{
|
||||
var arrayMatch = [];
|
||||
var newValue = value;
|
||||
|
||||
if ((arrayMatch = /^\*\*(.+)\*\*$/.exec(value))) {
|
||||
newValue = _(arrayMatch[1]);
|
||||
}
|
||||
|
||||
return newValue;
|
||||
}
|
||||
},
|
||||
{header: _("ID_HEADER_ALIGN"), width: 60, dataIndex: "align_label", editor: alignComboBoxLabel}
|
||||
]
|
||||
});
|
||||
|
||||
// declare the source Grid
|
||||
var firstGrid = new Ext.grid.GridPanel({
|
||||
enableDragDrop: true,
|
||||
width: '35%',
|
||||
ddGroup: "secondGridDDGroup",
|
||||
ddText: "{0} " + _("ID_SELECTED_FIELD") + "{1}",
|
||||
store: remotePmFieldsStore,
|
||||
columns: cols,
|
||||
stripeRows: true,
|
||||
title: _("ID_AVAILABLE_FIELDS")
|
||||
});
|
||||
|
||||
var secondGridStore = new Ext.data.JsonStore({
|
||||
root : 'data',
|
||||
totalProperty : 'totalCount',
|
||||
fields : fieldsSecond,
|
||||
remoteSort : false,
|
||||
successProperty : 'success'
|
||||
});
|
||||
|
||||
// create the destination Grid
|
||||
var secondGrid = new Ext.grid.EditorGridPanel({
|
||||
id: 'secondGrid',
|
||||
enableDragDrop: true,
|
||||
width: '65%',
|
||||
ddGroup: "firstGridDDGroup",
|
||||
selModel: new Ext.grid.RowSelectionModel({singleSelect: true}),
|
||||
store: secondGridStore,
|
||||
ddText: "{0} " + _("ID_SELECTED_FIELD") + "{1}",
|
||||
clicksToEdit: 1,
|
||||
cm: colsSecond,
|
||||
sm: new Ext.grid.RowSelectionModel({
|
||||
listeners:{
|
||||
selectionchange: function(sm,a,b,c){
|
||||
if (sm.lastActive !== false) {
|
||||
currentIndexRowSelected = sm.lastActive;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}),
|
||||
stripeRows: true,
|
||||
title: _("ID_CASES_LIST_FIELDS")
|
||||
});
|
||||
|
||||
var inboxPanel = new Ext.Panel({
|
||||
title: _("ID_TITLE_INBOX"),
|
||||
listeners: {'activate': function() {
|
||||
tabIndex = 0;
|
||||
sendGridFieldsRequest("todo");
|
||||
}}
|
||||
});
|
||||
|
||||
var draftPanel = new Ext.Panel({
|
||||
title: _("ID_TITLE_DRAFT"),
|
||||
listeners: {'activate': function() {
|
||||
tabIndex = 1;
|
||||
sendGridFieldsRequest("draft");
|
||||
}}
|
||||
});
|
||||
|
||||
var participatedPanel = new Ext.Panel({
|
||||
title: _("ID_TITLE_PARTICIPATED"),
|
||||
listeners: {'activate': function() {
|
||||
tabIndex = 2;
|
||||
sendGridFieldsRequest("sent");
|
||||
}}
|
||||
});
|
||||
|
||||
var unassignedPanel = new Ext.Panel({
|
||||
title: _("ID_TITLE_UNASSIGNED"),
|
||||
listeners: {'activate': function() {
|
||||
tabIndex = 3;
|
||||
sendGridFieldsRequest("unassigned");
|
||||
}}
|
||||
});
|
||||
|
||||
var pausedPanel = new Ext.Panel({
|
||||
title: _("ID_TITLE_PAUSED"),
|
||||
listeners: {'activate': function() {
|
||||
tabIndex = 4;
|
||||
sendGridFieldsRequest("paused");
|
||||
}}
|
||||
});
|
||||
|
||||
var completedPanel = new Ext.Panel({
|
||||
title: _("ID_TITLE_COMPLETED"),
|
||||
listeners: {'activate': function() {
|
||||
tabIndex = 5;
|
||||
sendGridFieldsRequest("completed");
|
||||
}}
|
||||
});
|
||||
|
||||
var cancelledPanel = new Ext.Panel({
|
||||
title: _("ID_TITLE_CANCELLED"),
|
||||
listeners: {'activate': function() {
|
||||
tabIndex = 6;
|
||||
sendGridFieldsRequest("cancelled");
|
||||
}}
|
||||
});
|
||||
|
||||
var mainPanel = new Ext.Panel({
|
||||
title : '',
|
||||
renderTo : 'alt-panel',
|
||||
width : '100%',
|
||||
height : screen.height-245,
|
||||
layout : 'hbox',
|
||||
layoutConfig : {align : 'stretch'},
|
||||
tbar : new Ext.Toolbar({
|
||||
items: [
|
||||
_("ID_PM_TABLE"),
|
||||
pmTablesDropdown,
|
||||
"->",
|
||||
new Ext.Action({
|
||||
text: _("ID_OPTIONS"),
|
||||
iconCls: "button_menu_ext ss_sprite ss_table_gear",
|
||||
menu: new Ext.menu.Menu({
|
||||
width: 250,
|
||||
defaults: {
|
||||
iconCls: "silk-add",
|
||||
icon: "/images/ext/default/menu/group-checked.gif"
|
||||
},
|
||||
items: [
|
||||
{
|
||||
text: "<div style=\"white-space: pre-wrap;\">" + _("ID_CASESLIST_FIELD_RESET") + "</div>",
|
||||
handler: function ()
|
||||
{
|
||||
casesListProcessAjax("FIELD_RESET");
|
||||
}
|
||||
},
|
||||
{
|
||||
text: "<div style=\"white-space: pre-wrap;\">" + _("ID_CASESLIST_FIELD_RESET_ID") + "</div>",
|
||||
handler: function ()
|
||||
{
|
||||
casesListProcessAjax("FIELD_RESET_ID");
|
||||
}
|
||||
},
|
||||
{
|
||||
text: "<div style=\"white-space: pre-wrap;\">" + _("ID_CASESLIST_FIELD_COMPLETE") + "</div>",
|
||||
handler: function ()
|
||||
{
|
||||
casesListProcessAjax("FIELD_COMPLETE");
|
||||
}
|
||||
},
|
||||
{
|
||||
text: "<div style=\"white-space: pre-wrap;\">" + _("ID_CASESLIST_FIELD_COMPLETE_ID") + "</div>",
|
||||
handler: function ()
|
||||
{
|
||||
casesListProcessAjax("FIELD_COMPLETE_ID");
|
||||
}
|
||||
},
|
||||
{
|
||||
text: "<div style=\"white-space: pre-wrap;\">" + _("ID_CASESLIST_FIELD_LABEL_RESET") + "</div>",
|
||||
handler: function ()
|
||||
{
|
||||
casesListProcessAjax("FIELD_LABEL_RESET");
|
||||
}
|
||||
},
|
||||
{
|
||||
text: "<div style=\"white-space: pre-wrap;\">" + _("ID_CASESLIST_FIELD_LABEL_RESET_ID") + "</div>",
|
||||
handler: function ()
|
||||
{
|
||||
casesListProcessAjax("FIELD_LABEL_RESET_ID");
|
||||
}
|
||||
}
|
||||
]
|
||||
})
|
||||
})
|
||||
]
|
||||
}),
|
||||
items: [
|
||||
firstGrid,
|
||||
secondGrid
|
||||
],
|
||||
bbar: [
|
||||
"->",
|
||||
{
|
||||
text: _("ID_RESET"),
|
||||
handler: function ()
|
||||
{
|
||||
var dataResponse = eval("(" + configDefaultResponseText + ")"); //json
|
||||
|
||||
fieldSet(dataResponse);
|
||||
}
|
||||
},
|
||||
" ",
|
||||
{
|
||||
text: _("ID_APPLY_CHANGES"),
|
||||
handler: function ()
|
||||
{
|
||||
casesListProcessAjax("FIELD_SAVE");
|
||||
}
|
||||
}
|
||||
]
|
||||
});
|
||||
|
||||
var tabs = new Ext.TabPanel({
|
||||
renderTo : 'panel',
|
||||
//activeTab : 0,
|
||||
width : '100%',
|
||||
items : [
|
||||
inboxPanel,
|
||||
draftPanel,
|
||||
participatedPanel,
|
||||
unassignedPanel,
|
||||
pausedPanel
|
||||
]
|
||||
});
|
||||
|
||||
// used to add records to the destination stores
|
||||
|
||||
// Setup Drop Targets
|
||||
// This will make sure we only drop to the view scroller element
|
||||
var firstGridDropTargetEl = firstGrid.getView().scroller.dom;
|
||||
var firstGridDropTarget = new Ext.dd.DropTarget(firstGridDropTargetEl, {
|
||||
ddGroup : 'firstGridDDGroup',
|
||||
notifyDrop : function(ddSource, e, data){
|
||||
var records = ddSource.dragData.selections;
|
||||
Ext.each(records, ddSource.grid.store.remove, ddSource.grid.store);
|
||||
firstGrid.store.add(records);
|
||||
firstGrid.store.commitChanges();
|
||||
return true
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
|
||||
|
||||
// This will make sure we only drop to the view scroller element
|
||||
var secondGridDropTargetEl = secondGrid.getView().scroller.dom;
|
||||
var secondGridDropTarget = new Ext.dd.DropTarget(secondGridDropTargetEl, {
|
||||
|
||||
notifyDrop : function(ddSource, e, data){
|
||||
|
||||
if ( ddSource.ddGroup == 'firstGridDDGroup') {
|
||||
var selectedRecord = secondGrid.getSelectionModel().getSelected();
|
||||
// to get value of a field in the record
|
||||
var valSource = selectedRecord.get('gridIndex');
|
||||
|
||||
var rowTargetId = secondGrid.getView().findRowIndex(e.getTarget());
|
||||
var recTarget = secondGrid.getStore().getAt(rowTargetId);
|
||||
var valTarget = recTarget.get('gridIndex');
|
||||
|
||||
var newIndex = 0;
|
||||
for (i=0; i< secondGrid.store.getCount(); i++) {
|
||||
var record = secondGrid.getStore().getAt(i);
|
||||
if (record.get('gridIndex') == valSource) {
|
||||
record.set('gridIndex',valTarget);
|
||||
} else {
|
||||
incIndexB = 1;
|
||||
isBrecord = 0;
|
||||
if ( record.get('gridIndex') == valTarget ) {
|
||||
isBrecord = true;
|
||||
}
|
||||
if ( isBrecord && newIndex == record.get('gridIndex') ) {
|
||||
newIndex++;incIndexB = false;
|
||||
}
|
||||
record.set('gridIndex', newIndex);
|
||||
newIndex++;
|
||||
if ( isBrecord && incIndexB ) {
|
||||
newIndex++;
|
||||
}
|
||||
}
|
||||
}
|
||||
secondGrid.store.sort('gridIndex', 'ASC');
|
||||
return true;
|
||||
};
|
||||
|
||||
var records = ddSource.dragData.selections;
|
||||
Ext.each(records, ddSource.grid.store.remove, ddSource.grid.store);
|
||||
secondGrid.store.add(records);
|
||||
|
||||
//reorder fields, putting a secuencial index for all records
|
||||
for (i=0; i< secondGrid.store.getCount(); i++) {
|
||||
var record = secondGrid.getStore().getAt(i);
|
||||
record.set('gridIndex', i );
|
||||
}
|
||||
secondGrid.store.commitChanges();
|
||||
return true
|
||||
}
|
||||
});
|
||||
secondGridDropTarget.addToGroup('secondGridDDGroup');
|
||||
secondGridDropTarget.addToGroup('firstGridDDGroup');
|
||||
|
||||
});
|
||||
Reference in New Issue
Block a user