Beispiel #1
0
 public static function onWindowLoad($jsCode)
 {
     if ($jsCode instanceof \Psc\JS\Lambda) {
         $c = $jsCode->JS();
     } elseif ($jsCode instanceof \Psc\JS\Expression) {
         $c = 'function() { ' . $jsCode->JS() . ' }';
     } else {
         $c = 'function() { ' . (string) $jsCode . ' }';
     }
     return Helper::embed('jQuery(window).load(' . $c . ')');
 }
Beispiel #2
0
 /**
  * Erstellt das Objekt direkt nachdem das HTML geladen wird per inline-Javascript
  *
  * vorher werden mögliche Dependencies geladen und es wird auf Main gewartet.
  * in den Constructor-Parametern ist "main" definiert und zeigt auf Psc.UI.Main
  *
  * man muss selbst sicherstellen dass init() aufgerufen wurde (bzw this->html gesetzt ist)
  */
 protected function autoLoad()
 {
     if (!$this->disableAutoLoad) {
         $constructCode = $this->createConstructCode($this->jooseClass, $this->constructParams, FALSE);
         if (mb_strpos($this->html->getTemplate(), '%autoLoadJoose%') === FALSE) {
             $this->html->templateAppend("\n" . '%autoLoadJoose%');
         }
         $this->html->getTemplateContent()->autoLoadJoose = jsHelper::embed(jsHelper::requireLoad(array_merge(array('jquery'), array_map(function ($class) {
             return str_replace('.', '/', $class);
         }, $this->dependencies)), array('jQuery'), $constructCode));
     }
     return $this;
 }
Beispiel #3
0
 public function html()
 {
     return Helper::embed($this->JS());
 }
Beispiel #4
0
 /**
  * Wählt den Index aus, der direkt nach dem Laden der Seite geladen werden soll
  *
  * dies initialisiert das widget auch auf Javascript-Basis
  */
 public function select($index)
 {
     $this->init();
     $this->select = $index;
     $this->html->getTemplateContent()->select = jsHelper::embed(jsHelper::bootLoad(array('app/main'), array('main'), sprintf("var tabs = main.getTabs(), tab = tabs.tab({index: %d});\n    tabs.select(tab);", $this->select)));
     return $this;
 }