Ejemplo n.º 1
0
 public function addWorkflowProgress(Workflow $wf)
 {
     $pwp = PageWorkflowProgress::add($wf, $this);
     $r = $pwp->start();
     $pwp->setWorkflowProgressResponseObject($r);
     return $pwp;
 }
 public function run()
 {
     // retrieve all pending page workflow progresses
     $list = PageProgress::getPendingWorkflowProgressList();
     $r = $list->get();
     foreach ($r as $w) {
         $wp = $w->getWorkflowProgressObject();
         $wo = $wp->getWorkflowObject();
         if ($wo instanceof EmptyWorkflow) {
             $wp->delete();
         }
     }
 }
Ejemplo n.º 3
0
 public function get($itemsToGet = 0, $offset = 0)
 {
     $_pages = DatabaseItemList::get($itemsToGet, $offset);
     $pages = array();
     foreach ($_pages as $row) {
         $c = ConcretePage::getByID($row['cID']);
         $cp = new Permissions($c);
         if ($cp->canViewPageVersions()) {
             $c->loadVersionObject('RECENT');
         } else {
             $c->loadVersionObject('ACTIVE');
         }
         $wp = PageWorkflowProgress::getByID($row['wpID']);
         $pages[] = new Page($c, $wp);
     }
     return $pages;
 }
Ejemplo n.º 4
0
        ?>
                </p>
                <p>
                    <button class="btn btn-primary" type="submit"><?php 
        echo $isGlobalArea ? t('Create localized global area version') : t('Create localized stack version');
        ?>
</button><br />
                </p>
            </div>
        </form>
        <?php 
    } else {
        $cpc = new Permissions($stackToEdit);
        $showApprovalButton = false;
        $hasPendingPageApproval = false;
        $workflowList = PageWorkflowProgress::getList($stackToEdit);
        foreach ($workflowList as $wl) {
            $wr = $wl->getWorkflowRequestObject();
            $wrk = $wr->getWorkflowRequestPermissionKeyObject();
            if ($wrk->getPermissionKeyHandle() == 'approve_page_versions') {
                $hasPendingPageApproval = true;
                break;
            }
        }
        if (!$hasPendingPageApproval) {
            $vo = $stackToEdit->getVersionObject();
            $composer = Core::make('helper/concrete/composer');
            if ($cpc->canApprovePageVersions()) {
                $publishTitle = $composer->getPublishButtonTitle($stackToEdit);
                $showApprovalButton = true;
            }
<?php

defined('C5_EXECUTE') or die("Access Denied.");
$html = Core::make('helper/html');
$dh = Core::make('helper/concrete/dashboard');
$ihm = Core::make('helper/concrete/ui/menu');
$valt = Core::make('helper/validation/token');
$token = '&' . $valt->getParameter();
$logouttoken = $valt->generate('logout');
$cID = $c->getCollectionID();
$permissions = new Permissions($c);
$workflowList = \Concrete\Core\Workflow\Progress\PageProgress::getList($c);
$canViewToolbar = $cp->canViewToolbar();
$show_titles = !!Config::get('concrete.accessibility.toolbar_titles');
$large_font = !!Config::get('concrete.accessibility.toolbar_large_font');
if (isset($cp) && $canViewToolbar && !$dh->inDashboard()) {
    $canApprovePageVersions = $cp->canApprovePageVersions();
    $u = new User();
    $username = $u->getUserName();
    $vo = $c->getVersionObject();
    $pageInUseBySomeoneElse = false;
    if ($c->isCheckedOut()) {
        if (!$c->isCheckedOutByMe()) {
            $pageInUseBySomeoneElse = true;
        }
    }
    if (!$c->isEditMode()) {
        print Core::make('helper/concrete/ui/help')->displayHelpDialogLauncher();
    }
    $cih = Core::make("helper/concrete/ui");
    if ($cih->showHelpOverlay()) {
Ejemplo n.º 6
0
<?php

defined('C5_EXECUTE') or die("Access Denied.");
$c = Page::getByID($_REQUEST['cID']);
$cp = new Permissions($c);
use Concrete\Core\Workflow\Progress\Response as WorkflowProgressResponse;
use Concrete\Core\Workflow\Progress\Progress as WorkflowProgress;
use Concrete\Core\Workflow\Progress\PageProgress as PageWorkflowProgress;
$obj = new stdClass();
if ($_REQUEST['task'] == 'save_workflow_progress' && Loader::helper("validation/token")->validate('save_workflow_progress')) {
    $wp = PageWorkflowProgress::getByID($_REQUEST['wpID']);
    if (is_object($wp)) {
        $wf = $wp->getWorkflowObject();
        $form = Loader::helper('form');
        $obj->wpID = $wp->getWorkflowProgressID();
        if ($wf->canApproveWorkflowProgressObject($wp)) {
            $task = WorkflowProgress::getRequestedTask();
            if ($task) {
                $r = $wp->runTask($task, $_POST);
                if ($r instanceof WorkflowProgressResponse && $r->getWorkflowProgressResponseURL() != '') {
                    $obj->redirect = (string) $r->getWorkflowProgressResponseURL();
                } else {
                    $obj->redirect = (string) URL::to($c);
                }
            }
        }
    }
}
print Loader::helper('json')->encode($obj);