Beispiel #1
0
 /**
  * HTML view display method
  *
  * @param   string  $tpl  The name of the template file to parse
  * @return  void
  * @since   1.5.5
  */
 public function display($tpl = null)
 {
     $item = $this->get('Data');
     $isNew = $item->id < 1;
     $rating = 0.0;
     // Get the form and fill the fields
     $form = $this->get('Form');
     if ($isNew) {
         // Set some field attributes for javascript validation
         $form->setFieldAttribute('detail_catid', 'required', true);
         $form->setFieldAttribute('detail_catid', 'validate', 'joompositivenumeric');
         $form->setFieldAttribute('thumb_catid', 'required', true);
         $form->setFieldAttribute('thumb_catid', 'validate', 'joompositivenumeric');
         $form->setFieldAttribute('imgfilename', 'required', true);
         $form->setFieldAttribute('imgthumbname', 'required', true);
         // Detail images
         $detail_catpath = JoomHelper::getCatPath($item->detail_catid);
         $detail_path = $this->_ambit->get('img_path') . $detail_catpath;
         $form->setFieldAttribute('imgfilename', 'directory', $detail_path);
         $imgfilename_field = $this->_findFieldByFieldName($form, 'imgfilename');
         $imagelib_field = $this->_findFieldByFieldName($form, 'imagelib2');
         // Thumbnail images
         $thumb_catpath = JoomHelper::getCatPath($item->thumb_catid);
         $thumb_path = $this->_ambit->get('thumb_path') . $thumb_catpath;
         $form->setFieldAttribute('imgthumbname', 'directory', $thumb_path);
         $imgthumbname_field = $this->_findFieldByFieldName($form, 'imgthumbname');
         $imagelib_field = $this->_findFieldByFieldName($form, 'imagelib');
     } else {
         if ($item->imgvotes > 0) {
             $rating = JoomHelper::getRating($item->id);
         }
     }
     // Bind the data to the form
     $form->bind($item);
     // Set some form fields manually
     if ($isNew) {
         // Does the original image file exist
         if ($form->getValue('imgfilename', null) == '') {
             $form->setValue('original_exists', null, JText::_('COM_JOOMGALLERY_IMGMAN_NO_IMAGE_SELECTED'));
         } else {
             if (JFile::exists($this->_ambit->getImg('orig_path', $item->imgfilename, null, $item->detail_catid))) {
                 $orig_msg = JText::_('COM_JOOMGALLERY_IMGMAN_ORIGINAL_EXIST');
                 $color = 'green';
             } else {
                 $orig_msg = JText::_('COM_JOOMGALLERY_IMGMAN_ORIGINAL_NOT_EXIST');
                 $color = 'red';
             }
             $form->setValue('original_exists', null, $orig_msg);
             $original_exists_field = $this->_findFieldByFieldName($form, 'original_exists');
             $js = "\n        window.addEvent('domready', function() {\n          \$('" . $original_exists_field->id . "').setStyle('color', '" . $color . "');\n        });";
             $this->_doc->addScriptDeclaration($js);
         }
     } else {
         // Plublished and hidden state
         if ($item->published) {
             $form->setValue('publishhiddenstate', null, $item->hidden ? JText::_('COM_JOOMGALLERY_COMMON_PUBLISHED_BUT_HIDDEN') : JText::_('COM_JOOMGALLERY_COMMON_STATE_PUBLISHED'));
         } else {
             $form->setValue('publishhiddenstate', null, JText::_('COM_JOOMGALLERY_COMMON_STATE_UNPUBLISHED'));
         }
         // Rating
         $form->setValue('rating', null, JText::sprintf('COM_JOOMGALLERY_IMGMAN_IMAGE_VOTES', $rating, $item->imgvotes));
         // Date
         $form->setValue('date', null, JHTML::_('date', $item->imgdate, JText::_('DATE_FORMAT_LC2')));
     }
     // Set image source for detail image preview
     if ($item->imgfilename) {
         if ($isNew) {
             // We have to look for the image ID fist because the image may have to be output through the script
             $id = $this->getModel()->getIdByFilename($item->imgfilename, $item->detail_catid);
             $imgsource = $this->_ambit->getImg('img_url', $id);
         } else {
             $imgsource = $this->_ambit->getImg('img_url', $item);
         }
     } else {
         $imgsource = '../media/system/images/blank.png';
     }
     $form->setValue('imagelib2', null, $imgsource);
     // Set image source for thumbnail preview
     if ($item->imgthumbname) {
         if ($isNew) {
             // We have to look for the image ID fist because the image may have to be output through the script
             $id = $this->getModel()->getIdByFilename($item->imgthumbname, $item->thumb_catid, true);
             $thumbsource = $this->_ambit->getImg('thumb_url', $id);
         } else {
             $thumbsource = $this->_ambit->getImg('thumb_url', $item);
         }
     } else {
         $thumbsource = '../media/system/images/blank.png';
     }
     $form->setValue('imagelib', null, $thumbsource);
     $this->assignRef('item', $item);
     $this->assignRef('isNew', $isNew);
     $this->assignRef('form', $form);
     $this->addToolbar();
     parent::display($tpl);
 }