コード例 #1
0
ファイル: controller.php プロジェクト: ceko/concrete5-1
 public function getImportData($blockNode, $page)
 {
     $args = array();
     $formLayoutSetControlID = ContentImporter::getPageTypeComposerFormLayoutSetControlFromTemporaryID((string) $blockNode->control['output-control-id']);
     $formLayoutSetControl = PageTypeComposerFormLayoutSetControl::getByID($formLayoutSetControlID);
     $pt = PageTemplate::getByID($page->getPageTemplateID());
     $outputControl = PageTypeComposerOutputControl::getByPageTypeComposerFormLayoutSetControl($pt, $formLayoutSetControl);
     $args['ptComposerOutputControlID'] = $outputControl->getPageTypeComposerOutputControlID();
     return $args;
 }
コード例 #2
0
 public function getPageTypeComposerOutputControlObject(PageTemplate $pt)
 {
     $db = Loader::db();
     $ptComposerOutputControlID = $db->GetOne('select ptComposerOutputControlID from PageTypeComposerOutputControls where ptComposerFormLayoutSetControlID = ? and pTemplateID = ?', array($this->ptComposerFormLayoutSetControlID, $pt->getPageTemplateID()));
     if ($ptComposerOutputControlID) {
         return PageTypeComposerOutputControl::getByID($ptComposerOutputControlID);
     }
 }
コード例 #3
0
<?php

defined('C5_EXECUTE') or die("Access Denied.");
use Concrete\Core\Page\Type\Composer\OutputControl as PageTypeComposerOutputControl;
use Concrete\Core\Page\Type\Composer\FormLayoutSetControl as PageTypeComposerFormLayoutSetControl;
$c = Page::getCurrentPage();
// retrieve all block controls attached to this page template.
$pt = PageTemplate::getByID($c->getPageTemplateID());
$ptt = PageType::getByDefaultsPage($c);
$controls = PageTypeComposerOutputControl::getList($ptt, $pt);
$values = array();
foreach ($controls as $control) {
    $fls = PageTypeComposerFormLayoutSetControl::getByID($control->getPageTypeComposerFormLayoutSetControlID());
    $cc = $fls->getPageTypeComposerControlObject();
    $values[$control->getPageTypeComposerOutputControlID()] = $cc->getPageTypeComposerControlName();
}
$form = Loader::helper('form');
?>
<div class="form-group">
	<label for="ptComposerOutputControlID" class="control-label"><?php 
echo t('Control');
?>
</label>
	<?php 
echo $form->select('ptComposerOutputControlID', $values, $ptComposerOutputControlID);
?>
</div>
コード例 #4
0
ファイル: view.php プロジェクト: yakamoz-fang/concrete
<?php

defined('C5_EXECUTE') or die("Access Denied.");
use Concrete\Core\Page\Type\Composer\OutputControl as PageTypeComposerOutputControl;
use Concrete\Core\Page\Type\Composer\FormLayoutSetControl as PageTypeComposerFormLayoutSetControl;
$control = PageTypeComposerOutputControl::getByID($ptComposerOutputControlID);
if (is_object($control)) {
    $fls = PageTypeComposerFormLayoutSetControl::getByID($control->getPageTypeComposerFormLayoutSetControlID());
    $cc = $fls->getPageTypeComposerControlObject();
    if (is_object($cc)) {
        ?>
	<div class="ccm-ui">
		<div class="alert alert-info">
			<?php 
        if ($fls->getPageTypeComposerFormLayoutSetControlCustomLabel()) {
            $displayname = $fls->getPageTypeComposerFormLayoutSetControlCustomLabel();
        } else {
            $displayname = $cc->getPageTypeComposerControlDisplayName();
        }
        echo t('The %s page type composer form element will output its contents here (Block ID %s)', $displayname, $b->getBlockID());
        ?>
		</div>
	</div>
	<?php 
    }
}
コード例 #5
0
 public function getPageTypeComposerOutputControlObject(Template $pt)
 {
     $app = Application::getFacadeApplication();
     $db = $app->make('database')->connection();
     $ptComposerOutputControlID = $db->fetchColumn('select ptComposerOutputControlID from PageTypeComposerOutputControls where ptComposerFormLayoutSetControlID = ? and pTemplateID = ?', [$this->ptComposerFormLayoutSetControlID, $pt->getPageTemplateID()]);
     if ($ptComposerOutputControlID) {
         return PageTypeComposerOutputControl::getByID($ptComposerOutputControlID);
     }
 }