Exemplo n.º 1
0
 protected function updateNewsDetailTemplate()
 {
     $vars = array('je_novinka', 'neni_novinka', 'nadpis', 'obsah', 'datum', 'autor', 'autor_jako_link');
     foreach ($vars as $varname) {
         ${$varname} = $this->_index->{$varname};
     }
     foreach ($je_novinka as $elem) {
         $elem->active = !empty($this->_items);
     }
     foreach ($neni_novinka as $elem) {
         $elem->active = empty($this->_items);
     }
     if (!empty($this->_items)) {
         $item =& $this->_items[0];
         foreach ($nadpis as $elem) {
             $elem->text = $item->Name;
         }
         if (!empty($obsah)) {
             $content = $item->Content !== '' ? $item->Content : $item->Sample;
             $content_elem = new HTML_Text(Images_JS_Support::updateHTMLRaw($this->images, $content));
             $content_elem->raw = true;
             foreach ($obsah as $elem) {
                 $elem->add($content_elem);
             }
         }
         foreach ($datum as $elem) {
             try {
                 $elem->vo->timestamp = $item->When;
             } catch (HTML_No_Such_Element_Attribute_Exception $e) {
                 $datum_spec = null;
                 try {
                     $datum_spec = $elem->specification;
                 } catch (HTML_No_Such_Element_Attribute_Exception $e) {
                 }
                 $datetime = new Date_Time($item->When);
                 $elem->add(new HTML_Text($datetime->format($datum_spec === null ? 'j.n. Y' : $datum_spec)));
             }
         }
         foreach ($autor as $elem) {
             $elem->text = $item->Author;
         }
         if (!empty($autor_jako_link)) {
             $autor_jako_link->clear();
             $a = new HTML_A();
             $a->href = 'http://' . $item->Author;
             $a->add(new HTML_Text($item->Author));
             foreach ($autor_jako_link as $elem) {
                 $elem->add($a);
             }
         }
     }
 }
 protected function updateTemplate_Picture(Var_Pool $picture, $directory = '')
 {
     $vars = array('ma_vlastni_obrazek', 'nema_vlastni_obrazek', 'vlastni_obrazek', 'vlastni_obrazek_jako_link', 'puvodni_vlastni_obrazek', 'puvodni_vlastni_obrazek_jako_link', 'nahradni_obrazek_vzor', 'nahradni_obrazek', 'tag_obrazku');
     foreach ($vars as $varname) {
         ${$varname} = $this->_index->{$varname};
     }
     $vlastni_obrazek_val = $picture->GPFileName !== '' ? "{$directory}/{$picture->GPFileName}" : $picture->FileName;
     $puvodni_vlastni_obrazek_val = $picture->FileName;
     $nadpis_val = $picture->GPTitle !== '' ? $picture->GPTitle : $picture->Title;
     $puvodni_nadpis_val = $picture->Title;
     foreach ($ma_vlastni_obrazek as $elem) {
         $elem->active = $vlastni_obrazek_val !== '';
     }
     foreach ($nema_vlastni_obrazek as $elem) {
         $elem->active = $vlastni_obrazek_val === '';
     }
     $pnav = new Project_Navigator();
     $galleries_directory = $pnav->images_dir . $pnav->get('galleries_dir', true);
     if ($vlastni_obrazek_val === '') {
         $img = clone $nahradni_obrazek_vzor[0];
         $thumb = $this->getThumbnailFileName($img->src, $this->thumbs);
         $img->src = $galleries_directory . $thumb;
         $img->alt = basename($thumb);
         foreach ($nahradni_obrazek as $elem) {
             $elem->add($img);
         }
     } elseif (!empty($vlastni_obrazek_jako_link) || !empty($vlastni_obrazek)) {
         if (!empty($obrazek_img_vzor)) {
             $img = clone $obrazek_img_vzor[0];
         } else {
             $img = new HTML_Img();
         }
         $thumb = $this->getThumbnailFileName($vlastni_obrazek_val, $this->thumbs);
         $img->src = $galleries_directory . $thumb;
         $img->alt = basename($thumb);
         if (!empty($obrazek_a_vzor)) {
             $a = clone $obrazek_a_vzor[0];
             $a->clear();
         } else {
             $a = new HTML_A();
         }
         $a->href = $galleries_directory . $vlastni_obrazek_val;
         $a->title = $nadpis_val;
         Images_JS_Support::updateElement($this->images, $a);
         $a->add($img);
         foreach ($vlastni_obrazek_jako_link as $elem) {
             $elem->clear();
             $elem->add($a);
         }
         foreach ($vlastni_obrazek as $elem) {
             $elem->clear();
             $elem->add($img);
         }
     }
     if ($puvodni_vlastni_obrazek_val !== '' && (!empty($puvodni_vlastni_obrazek_jako_link) || !empty($puvodni_vlastni_obrazek))) {
         $img = new HTML_Img();
         $thumb = $this->getThumbnailFileName($puvodni_vlastni_obrazek_val, $this->thumbs);
         $img->src = $galleries_directory . $thumb;
         $img->alt = basename($thumb);
         $a = new HTML_A();
         $a->href = $galleries_directory . $puvodni_vlastni_obrazek_val;
         $a->title = $puvodni_nadpis_val;
         Images_JS_Support::updateElement($this->images, $a);
         $a->add($img);
     }
     foreach ($puvodni_vlastni_obrazek_jako_link as $elem) {
         $elem->add($a);
     }
     foreach ($puvodni_vlastni_obrazek_jako_link as $elem) {
         $elem->add($img);
     }
     $this->updateTemplate_PictureTitles($picture);
     $this->updateTemplate_PictureDescriptions($picture);
     $this->updateTemplate_PictureAuthors($picture);
     $this->updateTemplate_PictureDate($picture);
 }
 protected function updateHead()
 {
     Images_JS_Support::updateHead($this->images, $this->_view_manager->head);
 }
 protected function updateTemplate_IllustrativePhotos(HTML_Indexer $index = null, Kiwi_Product $product_data = null)
 {
     if ($index === null) {
         $index = $this->_index;
     }
     if ($product_data === null) {
         $product_data = $this->_product_data;
     }
     $vars = array('obrazek_ilustrativni', 'ma_ilustrativni_fotografie', 'nema_ilustrativni_fotografie', 'ilustrativni_fotografie');
     foreach ($vars as $varname) {
         ${$varname} = $index->{$varname};
     }
     $illustrative_photos = $product_data->illustrative_photos;
     foreach ($ma_ilustrativni_fotografie as $elem) {
         $elem->active = !empty($illustrative_photos);
     }
     foreach ($nema_ilustrativni_fotografie as $elem) {
         $elem->active = empty($illustrative_photos);
     }
     if (!empty($ilustrativni_fotografie)) {
         if (empty($obrazek_ilustrativni)) {
             throw new Template_Element_Missing_Exception('obrazek_ilustrativni');
         }
         if (count($obrazek_ilustrativni) !== 1) {
             throw new Template_Invalid_Structure_Exception('The "obrazek_ilustrativni" element duplicity');
         }
         $obrazek_ilustrativni = $obrazek_ilustrativni[0];
         if (!empty($illustrative_photos)) {
             $nav = new Project_Navigator();
             $big_photos_dir = $nav->get($this->name . '_photos_big');
             $illustrative_photos_dir = $nav->get($this->name . '_photos_illustrative');
             foreach ($illustrative_photos as $iphoto) {
                 $photo_big = $big_photos_dir . $iphoto['FileName'];
                 $photo_small = $illustrative_photos_dir . $iphoto['FileName'];
                 $img = clone $obrazek_ilustrativni;
                 $img->src = $photo_small;
                 $a = new HTML_A();
                 $a->href = $photo_big;
                 $a->title = '';
                 Images_JS_Support::updateElement($this->images, $a);
                 $a->add($img);
                 foreach ($ilustrativni_fotografie as $elem) {
                     $elem->add($a);
                 }
             }
         }
     }
 }