Permalink
Browse files

files in tpl und so geschichten

  • Loading branch information...
pscheit committed Apr 18, 2012
1 parent 1cbea43 commit 04209e3c70b8535b4c7098e84ec1c58850273536
View
@@ -19,6 +19,7 @@
->setProjectPath('psc-cms','tests', './tests/')
->setProjectPath('psc-cms','src', './lib/')
->setProjectPath('psc-cms','files', './files/')
+ ->setProjectPath('psc-cms',PSC::PATH_TPL, './files/tpl')
->setProjectPath('psc-cms',PSC::PATH_HTDOCS, './files/htdocs')
->setProjectPath('psc-cms',PSC::PATH_TESTDATA, './files/testdata/')
;
@@ -0,0 +1,28 @@
+<?php
+
+use \Psc\TPL\TPL,
+ \Psc\HTML\HTML,
+ \Psc\DateTime\DateTime
+;
+
+$data = array();
+$data[] = array(
+ 'version'=>'0.1-Beta',
+ 'time'=>'13:57 21.10.2011',
+ 'changelog'=>array(
+ 'launch'
+));
+?>
+<h2>Changelog</h2>
+<div class="content-text">
+<p>Bei der Entwicklung eines CMS ändert sich mehrmals sehr viel. Hier ist eine kleine Historie, um sehen zu können, was sich wann geändert hat</p>
+<br />
+<?php foreach ($data as $v):?>
+<h3><?= HTML::esc($v['version']) ?> vom <?= DateTime::factory($v['time'])->i18n_format('d. F Y H:i') ?></h3>
+<ul class="changelog">
+ <?php foreach($v['changelog'] as $entry): ?>
+ <?= HTML::Tag('li',HTML::esc($entry).'.') ?>
+ <?php endforeach; ?>
+</ul>
+<?php endforeach; ?>
+</div>
View
@@ -0,0 +1,64 @@
+<?php
+
+use \Psc\TPl\TPL,
+ \Psc\Doctrine\Helper as DoctrineHelper,
+ \Psc\JS\jQuery,
+ \Psc\JS\Code as JSCode,
+ \Psc\JS\Helper as JSHelper,
+ \Psc\CMS\Auth
+;
+$em = DoctrineHelper::em();
+
+if (!isset($tabs)) { // tabs werden von cms injected
+ $tabs = new Psc\UI\Tabs2(array());
+}
+$tabs->init();
+$tabs->addItem(new \Psc\CMS\AbstractTabsContentItem2('cms','tpl','test','layout.manager', 'LayoutManagerTest'));
+$tabs->add('User Verwalten',NULL,'/entities/users/grid', 'entities-user-grid');
+
+$items = array();
+
+
+//$items[] = $em->getReference('Entities\Speaker',8);
+//$item = \Entities\Game::factory()->setProduct($product);
+//$items[] = $em->getReference('Entities\Game',15)->setProduct($product);
+
+//$item = new \tiptoi\NumbersTabsItem($product);
+//$item = \Entities\Sound::load(1353)->setProduct($product);
+
+//$item = new \tiptoi\MatrixExportTabsItem($product);
+//$item = \Entities\Sound::load(1290)->setProduct($product);
+
+//$item = $em->getReference('Entities\Speaker',1)->setProduct($product);
+//$item = \Entities\Sound::load(193)->setProduct($product);
+//$item = \Entities\Sound::load(1469)->setProduct($product);
+//$item = \Entities\Sound::load(394)->setProduct($product);
+//$item = new \tiptoi\SearchSpeakerTabsItem($product);
+//$item = \Entities\Speaker::factory()->setProduct($product);
+//$item = \Entities\Speaker::factory()->setProduct($product);
+
+//$item = new \tiptoi\SearchOIDTabsItem($product);
+//$items[] = \Entities\OID::load(13134)->setProduct($product);
+//$items[] = \Entities\OID::factory()->setProduct($product);
+//$items[] = new \Psc\UI\ControllerCallTabsItem('sound','leichen','Sound-Leichen-Keller',array('productId'=>$product->getIdentifier()));
+
+//$items[] = \Entities\Sound::factory()->setProduct($product);
+//$items[] = \Entities\Product::load(5);
+
+//for ($i = 12; $i <= 22; $i++) {
+// $items[] = \Psc\CMS\Controller\TabsContentItemController::call(
+// $em->getReference('Entities\Game',$i)->setProduct($product), 'table.edit'
+// );
+//}
+
+
+if (count($items) > 0 && (Auth::instance()->getUser()->getEmail() == 'p.scheit@ps-webforge.com')) {
+ foreach ($items as $item) {
+ $tabs->addItem($item);
+ $id = implode('-',$item->getTabsId());
+ }
+}
+
+$tabs->select(2);
+
+print $tabs->html();
@@ -0,0 +1,71 @@
+<?php
+
+namespace Psc\TPL;
+
+use Psc\Form\HTML as fHTML,
+ Psc\HTML\HTML,
+ Psc\HTML\Tag AS HTMLTag
+;
+
+$html->getCSSManager()
+ ->register('loginform.css', 'loginform', array('default'))->enqueue('loginform')
+ ->enqueue('jquery-ui')
+ ;
+
+$html->setMeta('robots','noindex,nofollow');
+
+$i18n = array();
+$i18n['en']['email'] = 'Email';
+$i18n['en']['password'] = 'Password';
+$i18n['en']['remember_me'] = 'Remember Me';
+$i18n['en']['login'] = 'Login';
+$i18n['en']['wrong_credentials'] = 'You supplied the wrong credentials.';
+$i18n['de']['error'] = 'Error';
+
+$i18n['de']['email'] = 'E-Mail-Adresse';
+$i18n['de']['password'] = 'Passwort';
+$i18n['de']['remember_me'] = 'Erinnere dich an mich';
+$i18n['de']['login'] = 'Login';
+$i18n['de']['wrong_credentials'] = 'Die eingegebene E-Mail-Adresse oder das Passwort ist falsch.';
+$i18n['de']['error'] = 'Fehler';
+
+
+$tpl->setI18n($i18n);
+?>
+<div class="dialog-wrapper">
+<div class="ui-dialog ui-widget ui-widget-content ui-corner-all ui-draggable ui-resizable" >
+ <div class="ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix">
+ <span class="ui-dialog-title" id="ui-dialog-title-dialog-form">Login Required</span>
+ <!--<a href="#" class="ui-dialog-titlebar-close ui-corner-all"><span class="ui-icon ui-icon-closethick">close</span></a>-->
+ </div>
+ <div id="dialog-form" class="ui-dialog-content ui-widget-content">
+ <div class="ui-widget error <?= $errors->hasErrors() ? 'error-active' : 'error-inactive' ?>">
+ <div class="ui-state-error ui-corner-all">
+ <p><span class="ui-icon ui-icon-alert"></span><strong><?= $tpl->_e('error') ?></strong>: <?= $tpl->_e('wrong_credentials') ?></strong></p>
+ </div>
+ </div>
+ <form method="post" action="<?= $formAction ?>">
+ <fieldset>
+ <label for="email"><?php $tpl->_e('email') ?></label>
+ <input tabindex="1" type="text" name="ident" id="email" value="<?= $ident ?>" class="text ui-widget-content ui-corner-all" />
+ <label for="password"><?php $tpl->_e('password'); ?></label>
+ <input tabindex="2" type="password" name="password" id="password" value="" class="text ui-widget-content ui-corner-all" />
+ </fieldset>
+ <? //fHTML::hidden('redirect',$redirect)
+ ?>
+
+
+ <div class="ui-dialog-buttonpane ui-widget-content ui-helper-clearfix">
+ <div class="permanent">
+ <label><input type="checkbox" <?php print $permanent ? 'checked="checked" ' : NULL?>tabindex="3" value="true" id="rememberme" name="permanent" /><?php $tpl->_e('remember_me'); ?></label>
+ </div>
+ <div class="ui-dialog-buttonset">
+ <button type="submit" class="ui-button ui-widget ui-state-default ui-corner-all ui-button-text-only"><span class="ui-button-text"><?php $tpl->_e('login'); ?></span></button>
+
+
+ </div>
+ </div>
+ </form>
+ </div>
+</div>
+</div>
View
@@ -0,0 +1,23 @@
+<?php
+ use \Psc\TPL\TPL,
+ \Psc\HTML\HTML,
+ \Psc\CMS\Controller\AuthController;
+
+?>
+ <div id="header" class="ui-widget-header">
+ <div class="spinner-container"></div>
+ <h1><?= $page->getTitle()->getContent() ?></h1>
+ <div class="profile-info">Profile: <?= HTML::esc($user->getIdentifier()) ?>| <a href="<?= $authController->getTodoURL(AuthController::TODO_LOGOUT) ?>">log Out</a></div>
+ <div class="clear"></div>
+ </div>
+
+
+ <div id="body">
+ <div id="content"><?= TPL::get('CMS'.DIRECTORY_SEPARATOR.'content',compact('tabs')) ?></div>
+ <div id="left"></div>
+ <div id="right"><?= TPL::get('CMS'.DIRECTORY_SEPARATOR.'right',compact('dropContents')) ?></div>
+ </div>
+
+ <div id="footer" class="ui-widget-header">
+ <a href="mailto: p.scheit@ps-webforge.com">p.scheit@ps-webforge.com</a>
+ </div>
View
@@ -0,0 +1,26 @@
+<?php
+
+use Psc\UI\Accordion AS UIAccordion;
+use Psc\UI\HTML as HTML;
+use Psc\UI\Form;
+
+/* contents */
+$accordionContents = new UIAccordion(array('autoHeight'=>false,'active'=>false,'collapsible'=>true));
+foreach ($dropContents as $label => $content) {
+ $accordionContents->addRow('<a href="#">'.HTML::esc($label).'</a>', $content);
+}
+
+print Form::group('Inhalte',$accordionContents)->setAttribute('id','drop-contents');
+
+
+if (!isset($tips)) $tips = array();
+
+$tips['Inhalte der Tabs-Leiste hinzufügen'] = 'Man kann sich die Tabs-Leiste wie eine Übersicht über geöffnete Dateien vorstellen. <br />Um eine neue Datei zu öffnen, kann man im Akkordion für die Inhalte (rechte Seite) einfach einen Inhaltstyp anklicken. Dieser wird dann in der Tabs-Leiste geöffnet.<br />Bereits geöffnete Tabs können jederzeit wieder geschlossen werden. Nicht gespeicherte Tabs werden mit einem <b>*</b> markiert';
+
+/* Tips */
+$accordionTips = new UIAccordion(array('autoHeight'=>false,'active'=>false,'collapsible'=>true));
+foreach ($tips as $label => $text) {
+ $accordionTips->addRow('<a href="#">'.HTML::esc($label).'</a>', $text);
+}
+
+print Form::group('Tipps',$accordionTips);
@@ -0,0 +1,56 @@
+<?php
+
+namespace tiptoi;
+
+use Psc\TPL\TPL as TPL,
+ \Psc\UI\Form as f,
+ \Psc\UI\fHTML,
+ \Psc\HTML\HTML as HTML,
+ \Entities\Speaker,
+ \Entities\Tag,
+ \Psc\JS\Lambda,
+ \Psc\JS\Helper as JSHelper
+ ;
+?>
+
+<?= Form::open($item['type'].'-search')->addClass('unbind-unsaved'); ?>
+
+<?php
+$autoComplete->setFunction('select',new Lambda("function (e, ui) {
+ e.preventDefault();
+
+ var item = {
+ 'type': '".$item['type']."',
+ 'identifier': ui.item.value,
+ 'data': ".JSHelper::convertHashmap($item['data'])."
+ }
+
+ $.pscUI('tabs','openContent', $('#tabs'), item);
+ }"));
+
+
+
+$content = '';
+$content .= f::inputSet(
+ f::input(
+ f::autoComplete(NULL,$item['identifier'],$autoComplete),
+ isset($hint) ? $hint : $item['label'].'-Suche nach Namen und Id'
+ )
+)->setStyle('width','90%')->html(); // gilt für alle
+
+// ist auch in ajax.dialog.add.speakers
+$content .= Form::hint('Zum Suchen '.$item['genitiv'].', den Namen eingeben und einen Eintrag aus der Liste auswählen.'."\n"
+ .'Durch die Auswahl eines Eintrages im Menü wird ein neuer Tab mit dem gefundenen Sprecher geöffnet.'."\n"
+ .'Nach dem Auswählen kann das Menü wieder mit den Pfeiltasten geöffnet werden'
+ );
+
+print HTML::tag('div',
+ Form::group(isset($headline) ? $headline : $item['label'].'-Suche',
+ $content,
+ Form::GROUP_COLLAPSIBLE
+ )
+ )->setStyle('width','80%')
+ ;
+?>
+
+<?= Form::close(); ?>
View
@@ -0,0 +1 @@
+Hi there
@@ -0,0 +1,38 @@
+<?php
+
+namespace Psc\UI;
+
+use Psc\UI\Form;
+//$debugger = new \Psc\HTML\Debugger();
+
+$pane = new SplitPane(70);
+
+$pane->setLeftContent(
+ $layout = Form::group('Layout', NULL)
+);
+$layout->getContent()->div->setStyle('min-height','600px');
+
+$pane->setRightContent(
+ Accordion::create(array('autoHeight'=>true))
+ ->addSection('Text', array(
+ new Button('Paragraph'),
+ new Button('Headline'),
+ new Button('Sub-Headline'),
+ new Button('List'),
+ ))
+ ->addSection('Elements', array(
+ new Button('Image')
+ ))
+ ->html()
+ ->addClass('\Psc\right-accordion')
+);
+
+//$main = Form::group('LayoutManager', $pane->html());
+$main = HTML::tag('div', $pane->html());
+
+$main->setAttribute('id','layout-manager')->addClass('\Psc\layout-manager');
+
+print $main;
+
+//print \Psc\JS\Helper::embed("console.log($.pscUI); $.pscUI('layout','loaded', $('#layout-manager'))");
+?>
@@ -0,0 +1,5 @@
+<?php
+throw new \Psc\Exception('Innerhalb des Templates ist ein Fehler aufgetreten');
+?>
+<div class="damaged">
+</div>
View
@@ -0,0 +1,20 @@
+<?php
+
+use \Psc\HTML\HTML,
+ \Psc\Doctrine\Helper as DoctrineHelper
+;
+?>
+<h2>Willkommen im Psc - CMS</h2>
+<div class="content-text">
+<p>Inhalte, die bearbeitet werden sollen, können dieser Tabs-Liste auf der rechten Seiten im Akkordion: "Inhalte" hinzugefügt werden.<br />
+Hilfe und Tipps gibt es auf der rechten Seite im Akkordion: "Tipps"</p>
+<br />
+<p><?= $cms->createTemplateTCI(array('CMS','changelog'), 'Changelog')->getLink() ?></p>
+<p>Bei Fragen, Schwierigkeiten oder Fehlern, bitte die Fehlermeldung kopieren (oder einen Screenshot machen) und den Entwickler kontaktieren:</p>
+
+<p>
+Philipp Scheit<br />
+p.scheit@ps-webforge.com<br />
+Telefon: +49 69 15627503<br />
+</p>
+</div>
@@ -0,0 +1 @@
+Hi there
@@ -0,0 +1,5 @@
+<?php
+throw new \Psc\Exception('Innerhalb des Templates ist ein Fehler aufgetreten');
+?>
+<div class="damaged">
+</div>

0 comments on commit 04209e3

Please sign in to comment.