diff --git a/workflow/engine/classes/class.pmDashlet.php b/workflow/engine/classes/class.pmDashlet.php
index db0b725fe..7f3ff876a 100644
--- a/workflow/engine/classes/class.pmDashlet.php
+++ b/workflow/engine/classes/class.pmDashlet.php
@@ -107,20 +107,39 @@ class PMDashlet extends DashletInstance implements DashletInterface {
public function getDashletsInstancesForUser($userUid) {
try {
+ $dashletsInstances = array();
// Include required classes
- //
+ require_once 'classes/model/Department.php';
// Check for "public" dashlets
// ToDo: Next release
// Check for the direct assignments
// ToDo: Next release
// Check for department assigments
- //
+ $departmentInstance = new Department();
+ $departments = $departmentInstance->getDepartmentsForUser($userUid);
+ foreach ($departments as $depUid => $department) {
+ $criteria = new Criteria('workflow');
+ $criteria->addSelectColumn(DashletInstancePeer::DAS_INS_UID);
+ $criteria->addSelectColumn(DashletPeer::DAS_TITLE);
+ $criteria->add(DashletInstancePeer::DAS_INS_OWNER_TYPE, 'DEPARTMENT');
+ $criteria->add(DashletInstancePeer::DAS_INS_OWNER_UID, $depUid);
+ $dataset = DashletInstancePeer::doSelectRS($criteria);
+ $dataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
+ $dataset->next();
+ while ($row = $dataset->getRow()) {
+ if (!isset($dashletsInstances[$row['DAS_INS_UID']])) {
+ $dashletsInstances[$row['DAS_INS_UID']] = $row;
+ }
+ $dataset->next();
+ }
+ }
// Check for group assignments
// ToDo: Next release
// Check for role assigments
// ToDo: Next release
// Check for permission assigments
// ToDo: Next release
+ return array_values($dashletsInstances);
}
catch (Exception $error) {
throw $error;
diff --git a/workflow/engine/classes/model/Department.php b/workflow/engine/classes/model/Department.php
index 1501fc72a..331c79e88 100755
--- a/workflow/engine/classes/model/Department.php
+++ b/workflow/engine/classes/model/Department.php
@@ -591,4 +591,31 @@ function getDepartments( $DepParent ) {
return $aRows;
}
+ function getDepartmentsForUser($userUid) {
+ $criteria = new Criteria('workflow');
+ $criteria->addSelectColumn(UsersPeer::DEP_UID);
+ $criteria->addAsColumn('DEP_TITLE', 'C.CON_VALUE');
+ $criteria->addAlias('C', 'CONTENT');
+ $criteria->addJoin(UsersPeer::DEP_UID, DepartmentPeer::DEP_UID, Criteria::LEFT_JOIN);
+ $delimiter = DBAdapter::getStringDelimiter();
+ $conditions = array();
+ $conditions [] = array(DepartmentPeer::DEP_UID, 'C.CON_ID');
+ $conditions [] = array('C.CON_CATEGORY', $delimiter . 'DEPO_TITLE' . $delimiter);
+ $conditions [] = array('C.CON_LANG', $delimiter . SYS_LANG . $delimiter);
+ $criteria->addJoinMC($conditions, Criteria::LEFT_JOIN);
+ $criteria->add(UsersPeer::USR_UID, $userUid);
+ $criteria->add(UsersPeer::DEP_UID, '', Criteria::NOT_EQUAL);
+ $dataset = DepartmentPeer::doSelectRS($criteria);
+ $dataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
+ $dataset->next();
+ $departments = array();
+ while ($row = $dataset->getRow()) {
+ if (!isset($departments[$row['DEP_UID']])) {
+ $departments[$row['DEP_UID']] = $row;
+ }
+ $dataset->next();
+ }
+ return $departments;
+ }
+
} // Department
diff --git a/workflow/engine/js/dynaformEditor/core/dynaformEditor.js b/workflow/engine/js/dynaformEditor/core/dynaformEditor.js
index c2296dafa..48165870b 100755
--- a/workflow/engine/js/dynaformEditor/core/dynaformEditor.js
+++ b/workflow/engine/js/dynaformEditor/core/dynaformEditor.js
@@ -259,7 +259,7 @@ var dynaformEditor={
clientWinSize = getClientWindowSize();
startJSCodePress();
jsEditor = CodeMirror.fromTextArea('form[JS]', {
- height: (clientWinSize.height - 120) + "px",
+ height: (clientWinSize.height - 140) + "px",
width: (_BROWSER.name == 'msie' ? '100%' : '98%'),
parserfile: ["tokenizejavascript.js", "parsejavascript.js"],
stylesheet: ["css/jscolors.css"],
diff --git a/workflow/engine/xmlform/dynaforms/dynaforms_JSEditor.xml b/workflow/engine/xmlform/dynaforms/dynaforms_JSEditor.xml
index e96104223..58f7bbe50 100755
--- a/workflow/engine/xmlform/dynaforms/dynaforms_JSEditor.xml
+++ b/workflow/engine/xmlform/dynaforms/dynaforms_JSEditor.xml
@@ -20,7 +20,7 @@ SELECT XMLNODE_NAME AS UID, XMLNODE_NAME AS NAME FROM dynaForm WHERE TYPE = "jav
Code
-
+
+]]>
\ No newline at end of file