diff --git a/views/bootstrap/class.Bootstrap.php b/views/bootstrap/class.Bootstrap.php index d25cc1d51..c4018691c 100644 --- a/views/bootstrap/class.Bootstrap.php +++ b/views/bootstrap/class.Bootstrap.php @@ -87,6 +87,7 @@ class SeedDMS_Bootstrap_Style extends SeedDMS_View_Common { echo ''."\n"; echo ''."\n"; echo ''."\n"; + echo ''."\n"; echo ''."\n"; echo ''."\n"; // echo ''."\n"; diff --git a/views/bootstrap/class.WorkflowGraph.php b/views/bootstrap/class.WorkflowGraph.php index 77b7b3acc..1b5ca2531 100644 --- a/views/bootstrap/class.WorkflowGraph.php +++ b/views/bootstrap/class.WorkflowGraph.php @@ -57,7 +57,7 @@ var cy = cytoscape({ 'height': 40, 'width': 40, 'text-valign': 'top', - 'text-halign': 'right', + 'text-halign': 'center', // 'color': '#fff', 'background-color': '#11479e', // 'text-outline-color': '#11479e', @@ -70,7 +70,7 @@ var cy = cytoscape({ { selector: 'node.action', style: { - 'shape': 'rectangle', + 'shape': 'roundrectangle', 'height': 30, 'width': 30, 'background-color': '#91479e', @@ -90,6 +90,8 @@ var cy = cytoscape({ selector: 'node.released', style: { 'background-color': '#00b000', + 'text-valign': 'bottom', + 'text-margin-y': '3px', // 'text-outline-color': '#00b000' } }, @@ -98,6 +100,8 @@ var cy = cytoscape({ selector: 'node.rejected', style: { 'background-color': '#b00000', + 'text-valign': 'bottom', + 'text-margin-y': '3px', // 'text-outline-color': '#b00000' } }, @@ -147,6 +151,20 @@ function save_handler(evt) { cy.on('free', 'node', function(evt) { $('#png').attr('src', cy.png({'full': true})); }); + +cy.on('tap', 'node', function(evt) { + var node = evt.cyTarget; + var scratch = node.scratch('app'); + noty({ + text: (scratch.users ? '

: ' + scratch.users + '

' : '') + (scratch.groups ? ': ' + scratch.groups + '

' : ''), + type: 'information', + dismissQueue: true, + layout: 'topCenter', + theme: 'defaultTheme', + timeout: 4000, + killer: true, + }); +}); printGraph($positions); ?> @@ -209,10 +227,13 @@ $(document).ready(function() { echo "cy.add({ data: { id: '".$nodeid."', - name: \"".str_replace('"', "\\\"", $action->getName()).($unames ? "\\n(".str_replace('"', "\\\"", implode(", ", $unames)).")" : '').($gnames ? "\\n(".str_replace('"', "\\\"", implode(", ", $gnames)).")" : '')."\" + name: \"".str_replace('"', "\\\"", $action->getName())/*.($unames ? "\\n(".str_replace('"', "\\\"", implode(", ", $unames)).")" : '').($gnames ? "\\n(".str_replace('"', "\\\"", implode(", ", $gnames)).")" : '')*/."\" },".(isset($positions[$nodeid]) ? " position: {x: ".$positions[$nodeid]->x.", y: ".$positions[$nodeid]->y."}," : "")." - classes: 'action' + classes: 'action', + scratch: { + app: {groups: '".implode(", ", $gnames)."', users: '".implode(", ", $unames)."'} + } });\n"; } @@ -225,7 +246,7 @@ $(document).ready(function() { echo "cy.add({ data: { id: '".$nodeid."', - name: \"".str_replace('"', "\\\"", $state->getName()."\\n".$initstate)."\" + name: \"".str_replace('"', "\\\"", $state->getName()/*."\\n".$initstate*/)."\" },".(isset($positions[$nodeid]) ? " position: {x: ".$positions[$nodeid]->x.", y: ".$positions[$nodeid]->y."}," : "")." classes: 'state ".($state == $this->workflow->getInitState() ? 'init' : '')."' @@ -297,17 +318,25 @@ $(document).ready(function() { body {padding: 0px;} div.buttons {float: right; padding-left: 4px; height: 100px; width: 120px; margin-right: 5px;} div.buttons button {margin: 3px; float: right;} -#preview {background: #f5f5f5; border-top: 1px solid #e3e3e3;} -#preview img {border: 1px solid #bbb; background: #fff; min-height: 100px; min-width: 100px; height: 100px; _width: 100px; padding: 3px; margin: 3px;} +#legend {display: inline-block; margin-left: 10px;} +#preview {height: 115px; background: #f5f5f5; border-top: 1px solid #e3e3e3;} +#preview img {float: left;border: 1px solid #bbb; background: #fff; min-height: 100px; min-width: 100px; height: 100px; _width: 100px; padding: 3px; margin: 3px;} ', 'css'); $this->htmlStartPage(getMLText("admin_tools")); // $this->contentContainerStart(); ?> -
+
+
+
+
+
+
+ +