Вход Регистрация
Файл: concrete5.7.5.6/concrete/tools/pages/delete.php
Строк: 87
<?php defined('C5_EXECUTE') or die("Access Denied.");

$u = new User();

$form Loader::helper('form');
$dh Core::make('helper/date'); /* @var $dh ConcreteCoreLocalizationServiceDate */

$sh Loader::helper('concrete/dashboard/sitemap');
if (!
$sh->canRead()) {
    die(
t('Access Denied'));
}
$u = new User();

if (
$_POST['task'] == 'delete_pages') {

    
$q Queue::get('delete_page_request');

    if (
$_POST['process']) {
        
$obj = new stdClass;
        
$js Loader::helper('json');
        
$messages $q->receive(Config::get('concrete.limits.delete_pages'));
        foreach(
$messages as $key => $p) {
            
// delete the page here
            
$page unserialize($p->body);
            
$c Page::getByID($page['cID']);
            if (
$c->getCollectionID() > 1) {
                
$pkr = new ConcreteCoreWorkflowRequestDeletePageRequest();
                
$pkr->setRequestedPage($c);
                
$pkr->setRequesterUserID($u->getUserID());
                
$u->unloadCollectionEdit($c);
                
$pkr->trigger();
            }
            
$q->deleteMessage($p);
        }
        
$obj->totalItems $q->count();
        if (
$q->count() == 0) {
            
$q->deleteQueue('delete_page_request');
        }
        print 
$js->encode($obj);
        exit;
    } else if (
$q->count() == 0) {
        if (
is_array($_POST['cID'])) {
            foreach(
$_POST['cID'] as $cID) {
                
$c Page::getByID($cID);
                
$cp = new Permissions($c);
                
$children $c->getNumChildren();
                if ((
$u->isSuperUser() || $children == 0) && $cp->canDeletePage()) {
                    
$c->queueForDeletionRequest();
                }
            }
        }
    }

    
$totalItems $q->count();
    
Loader::element('progress_bar', array('totalItems' => $totalItems'totalItemsSummary' => t2("%d page""%d pages"$totalItems)));
    exit;
}

$form Loader::helper('form');

$pages = array();
if (
is_array($_REQUEST['item'])) {
    foreach(
$_REQUEST['item'] as $cID) {
        
$pages[] = Page::getByID($cID);
    }
} else {
    
$pages[] = Page::getByID($_REQUEST['cID']);
}

$pcnt 0;
foreach(
$pages as $c) {
    
$cp = new Permissions($c);
    if (
$cp->canDeletePage()) {
        
$pcnt++;
    }
}

?>
<div class="ccm-ui">

<?php if ($pcnt == 0) { ?>
    <?php echo t("You do not have permission to delete any of the selected pages."); ?>
<?php 
} else { ?>

    <?php echo t('Are you sure you want to delete the following pages?')?><br/><br/>

    <form data-action="delete-bulk-pages" method="post" action="<?php echo REL_DIR_FILES_TOOLS_REQUIRED?>/pages/delete">
    <?php echo $form->hidden('task''delete_pages')?>
    <table border="0" cellspacing="0" cellpadding="0" width="100%" class="table table-striped">
    <tr>
        <th><?php echo t('Name')?></th>
        <th><?php echo t('Page Type')?></th>
        <th><?php echo t('Date Added')?></th>
        <th><?php echo t('Author')?></th>
    </tr>

    <?php foreach($pages as $c) {
        
$cp = new Permissions($c);
        
$c->loadVersionObject();
        if (
$cp->canDeletePage() && $c->getCollectionID() > 1) { ?>

        <?php echo $form->hidden('cID[]'$c->getCollectionID())?>

        <tr>
            <td class="ccm-page-list-name"><?php echo $c->getCollectionName()?></td>
            <td><?php echo $c->getPageTypeName()?></td>
            <td><?php echo $dh->formatDateTime($c->getCollectionDatePublic())?></td>
            <td><?php
                $ui 
UserInfo::getByID($c->getCollectionUserID());
                if (
is_object($ui)) {
                    print 
$ui->getUserName();
                }
            }
?></td>

        </tr>

        <?php }  ?>
    </table>
    </form>


    <script type="text/javascript">
        ccm_sitemapDeletePages = function() {
            var params = $('form[data-action=delete-bulk-pages]').formToArray(true);
            ccm_triggerProgressiveOperation(
                CCM_TOOLS_PATH + '/pages/delete',
                params,
                ccmi18n_sitemap.deletePages,
                function() {
                    jQuery.fn.dialog.closeAll();
                    ConcreteEvent.publish('SitemapDeleteRequestComplete');
                    ConcreteAlert.notify({message: <?php echo json_encode(t('Pages deleted successfully.'))?>});
                }
            );
        }
    </script>

    <div class="dialog-buttons">
    <?php $ih Loader::helper('concrete/ui')?>
    <?php echo $ih->button_js(t('Cancel'), 'jQuery.fn.dialog.closeTop()''left''btn')?>
    <?php echo $ih->button_js(t('Delete'), 'ccm_sitemapDeletePages()''right''btn btn-danger')?>
    </div>

    <?php

}
?>
</div>
Онлайн: 1
Реклама