From 3efa77e78f42eb86eb92e738589671cd8ac1f14d Mon Sep 17 00:00:00 2001 From: Uwe Steinmann Date: Tue, 12 May 2015 19:14:25 +0200 Subject: [PATCH] add generic function for printing a workflow protocol --- views/bootstrap/class.ViewDocument.php | 256 ++++++++++++++----------- 1 file changed, 143 insertions(+), 113 deletions(-) diff --git a/views/bootstrap/class.ViewDocument.php b/views/bootstrap/class.ViewDocument.php index f209a02e9..30f8aaa42 100644 --- a/views/bootstrap/class.ViewDocument.php +++ b/views/bootstrap/class.ViewDocument.php @@ -110,6 +110,93 @@ class SeedDMS_View_ViewDocument extends SeedDMS_Bootstrap_Style { } /* }}} */ + /** + * Output a protocol + * + * @param object $attribute attribute + */ + protected function printProtocol($latestContent, $type="") { /* {{{ */ + $dms = $this->params['dms']; +?> + + + +getReviewStatus(10); + break; + case "approval": + $statusList = $latestContent->getApprovalStatus(10); + break; + case "revision": + $statusList = $latestContent->getRevisionStatus(10); + break; + case "receipt": + $statusList = $latestContent->getReceiptStatus(10); + break; + default: + $statusList = array(); + } + foreach($statusList as $rec) { + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + } +?> +
/
"; + switch ($rec["type"]) { + case 0: // individual. + $required = $dms->getUser($rec["required"]); + if (!is_object($required)) { + $reqName = getMLText("unknown_user")." '".$rec["required"]."'"; + } else { + $reqName = htmlspecialchars($required->getFullName()." (".$required->getLogin().")"); + } + break; + case 1: // Approver is a group. + $required = $dms->getGroup($rec["required"]); + if (!is_object($required)) { + $reqName = getMLText("unknown_group")." '".$rec["required"]."'"; + } + else { + $reqName = "".htmlspecialchars($required->getName()).""; + } + break; + } + echo $reqName; + echo ""; + echo "".$rec['date']." - "; + $updateuser = $dms->getUser($rec["userID"]); + if(!is_object($required)) + echo getMLText("unknown_user"); + else + echo htmlspecialchars($updateuser->getFullName()." (".$updateuser->getLogin().")"); + echo ""; + if($rec['comment']) + echo "
".htmlspecialchars($rec['comment']); + echo "
"; + switch($type) { + case "review": + echo getReviewStatusText($rec["status"]); + break; + case "approval": + echo getApprovalStatusText($rec["status"]); + break; + case "revision": + echo getRevisionStatusText($rec["status"]); + break; + case "receipt": + echo getReceiptStatusText($rec["status"]); + break; + default: + } + echo "
+params['dms']; @@ -335,7 +422,7 @@ class SeedDMS_View_ViewDocument extends SeedDMS_Bootstrap_Style { } if(is_array($revisionStatus) && count($revisionStatus)>0) { ?> -
  • +
  • @@ -669,120 +756,27 @@ class SeedDMS_View_ViewDocument extends SeedDMS_Bootstrap_Style { } print "\n"; + $this->contentContainerEnd(); + if($user->isAdmin()) { - $this->contentContainerEnd(); ?>
    - - - -getReviewStatus(10); - foreach($reviewStatusList as $rec) { - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - } -?> -
    /
    "; - switch ($rec["type"]) { - case 0: // Approver is an individual. - $required = $dms->getUser($rec["required"]); - if (!is_object($required)) { - $reqName = getMLText("unknown_user")." '".$rec["required"]."'"; - } - else { - $reqName = htmlspecialchars($required->getFullName()." (".$required->getLogin().")"); - } - break; - case 1: // Approver is a group. - $required = $dms->getGroup($rec["required"]); - if (!is_object($required)) { - $reqName = getMLText("unknown_group")." '".$rec["required"]."'"; - } - else { - $reqName = "".htmlspecialchars($required->getName()).""; - } - break; - } - echo $reqName; - echo ""; - echo "".$rec['date']." - "; - $updateuser = $dms->getUser($rec["userID"]); - if(!is_object($required)) - echo getMLText("unknown_user"); - else - echo htmlspecialchars($updateuser->getFullName()." (".$updateuser->getLogin().")"); - echo ""; - if($rec['comment']) - echo "
    ".htmlspecialchars($rec['comment']); - echo "
    "; - echo getApprovalStatusText($rec["status"]); - echo "
    -
    - -
    - - - -getApprovalStatus(10); - foreach($approvalStatusList as $rec) { - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - } -?> -
    /
    "; - switch ($rec["type"]) { - case 0: // Approver is an individual. - $required = $dms->getUser($rec["required"]); - if (!is_object($required)) { - $reqName = getMLText("unknown_user")." '".$rec["required"]."'"; - } - else { - $reqName = htmlspecialchars($required->getFullName()." (".$required->getLogin().")"); - } - break; - case 1: // Approver is a group. - $required = $dms->getGroup($rec["required"]); - if (!is_object($required)) { - $reqName = getMLText("unknown_group")." '".$rec["required"]."'"; - } - else { - $reqName = "".htmlspecialchars($required->getName()).""; - } - break; - } - echo $reqName; - echo ""; - echo "".$rec['date']." - "; - $updateuser = $dms->getUser($rec["userID"]); - if(!is_object($required)) - echo getMLText("unknown_user"); - else - echo htmlspecialchars($updateuser->getFullName()." (".$updateuser->getLogin().")"); - echo ""; - if($rec['comment']) - echo "
    ".htmlspecialchars($rec['comment']); - echo "
    "; - echo getApprovalStatusText($rec["status"]); - echo "
    + printProtocol($latestContent, 'review'); ?>
    +
    + printProtocol($latestContent, 'approval'); ?> +
    + contentContainerEnd(); + if($user->isAdmin()) { +?> +
    +
    +printProtocol($latestContent, 'receipt'); +?> +
    +
    + 0) { ?> -
    +
    getRevisionDate()) { +?> +
    + substr($latestContent->getRevisionDate(), 0, 10))); +?> +
    + +
    +contentContainerStart(); print "\n"; @@ -1093,18 +1113,18 @@ class SeedDMS_View_ViewDocument extends SeedDMS_Bootstrap_Style { print "\n"; print "\n"; print ""; print "\n"; - print "\n"; + print "\n"; print "
    ".$reqName."
    • ".$r["date"]."
    • "; - /* $updateUser is the user who has done the receipt */ + /* $updateUser is the user who has done the revision */ $updateUser = $dms->getUser($r["userID"]); print "
    • ".(is_object($updateUser) ? htmlspecialchars($updateUser->getFullName()." (".$updateUser->getLogin().")") : "unknown user id '".$r["userID"]."'")."
    ".htmlspecialchars($r["comment"])."".getReceiptStatusText($r["status"])."".getRevisionStatusText($r["status"])."
    contentContainerEnd(); + $this->contentContainerEnd(); + if($user->isAdmin()) { ?> -
    +
    +
    +printProtocol($latestContent, 'revision'); +?> +
    +
    + +
    1) {