primo commit
This commit is contained in:
1
components/com_phocagallery/views/info/index.html
Normal file
1
components/com_phocagallery/views/info/index.html
Normal file
@ -0,0 +1 @@
|
||||
<html><body bgcolor="#FFFFFF"></body></html>
|
||||
4
components/com_phocagallery/views/info/metadata.xml
Normal file
4
components/com_phocagallery/views/info/metadata.xml
Normal file
@ -0,0 +1,4 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<metadata>
|
||||
<view hidden="true" />
|
||||
</metadata>
|
||||
42
components/com_phocagallery/views/info/tmpl/default.php
Normal file
42
components/com_phocagallery/views/info/tmpl/default.php
Normal file
@ -0,0 +1,42 @@
|
||||
<?php
|
||||
/*
|
||||
* @package Joomla
|
||||
* @copyright Copyright (C) 2005 Open Source Matters. All rights reserved.
|
||||
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
|
||||
*
|
||||
* @component Phoca Gallery
|
||||
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
|
||||
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
|
||||
*/
|
||||
|
||||
use Joomla\CMS\Language\Text;
|
||||
use Joomla\CMS\Layout\FileLayout;
|
||||
use Joomla\CMS\Router\Route;
|
||||
|
||||
defined('_JEXEC') or die('Restricted access');
|
||||
|
||||
$layoutSVG = new FileLayout('svg_definitions', null, array('component' => 'com_phocagallery'));
|
||||
|
||||
// SVG Definitions
|
||||
$d = array();
|
||||
echo $layoutSVG->render($d);
|
||||
|
||||
|
||||
if ($this->t['detailwindow'] == 7) {
|
||||
echo '<div class="pg-detail-top-box-back-title">';
|
||||
echo '<a href="'.Route::_('index.php?option=com_phocagallery&view=category&id='. $this->info->catslug.'&Itemid='. $this->itemId).'"';
|
||||
echo ' title="'.Text::_( 'COM_PHOCAGALLERY_BACK_TO_CATEGORY' ).'">';
|
||||
echo '<svg class="ph-si ph-si-detail-top-back"><use xlink:href="#ph-si-back"></use></svg>';
|
||||
echo '</a></div>';
|
||||
}
|
||||
|
||||
|
||||
echo '<div id="phoca-exif" class="pg-info-view'.$this->params->get( 'pageclass_sfx' ).'">'
|
||||
.'<h1 class="phocaexif">'.Text::_('COM_PHOCAGALLERY_EXIF_INFO').':</h1>'
|
||||
.'<table>'
|
||||
.$this->t['infooutput']
|
||||
.'</table>'
|
||||
.'</div>';
|
||||
if ($this->t['detailwindow'] == 7) {
|
||||
echo PhocaGalleryUtils::getExtInfo();
|
||||
}
|
||||
1
components/com_phocagallery/views/info/tmpl/index.html
Normal file
1
components/com_phocagallery/views/info/tmpl/index.html
Normal file
@ -0,0 +1 @@
|
||||
<html><body bgcolor="#FFFFFF"></body></html>
|
||||
771
components/com_phocagallery/views/info/view.html.php
Normal file
771
components/com_phocagallery/views/info/view.html.php
Normal file
@ -0,0 +1,771 @@
|
||||
<?php
|
||||
/*
|
||||
* @package Joomla.Framework
|
||||
* @copyright Copyright (C) 2005 - 2010 Open Source Matters, Inc. All rights reserved.
|
||||
* @license GNU General Public License version 2 or later; see LICENSE.txt
|
||||
*
|
||||
* @component Phoca Component
|
||||
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
|
||||
* @license http://www.gnu.org/copyleft/gpl.html GNU General Public License version 2 or later;
|
||||
*/
|
||||
|
||||
use Joomla\CMS\Factory;
|
||||
|
||||
defined('_JEXEC') or die();
|
||||
use Joomla\CMS\MVC\View\HtmlView;
|
||||
use Joomla\CMS\Router\Route;
|
||||
use Joomla\CMS\Language\Text;
|
||||
use Joomla\CMS\Date\Date;
|
||||
jimport( 'joomla.application.component.view');
|
||||
class PhocaGalleryViewInfo extends HtmlView
|
||||
{
|
||||
public $t;
|
||||
protected $params;
|
||||
|
||||
|
||||
function display($tpl = null) {
|
||||
|
||||
$app = Factory::getApplication();
|
||||
|
||||
// PLUGIN WINDOW - we get information from plugin
|
||||
$get = array();
|
||||
$get['info'] = $app->input->get( 'info', '', 'string' );
|
||||
$this->itemId = $app->input->get('Itemid', 0, 'int');
|
||||
$this->t['infooutput'] = '';
|
||||
|
||||
$document = $app->getDocument();
|
||||
$this->params = $app->getParams();
|
||||
|
||||
$this->t['enablecustomcss'] = $this->params->get( 'enable_custom_css', 0);
|
||||
$this->t['customcss'] = $this->params->get( 'custom_css', '');
|
||||
|
||||
|
||||
// CSS
|
||||
PhocaGalleryRenderFront::renderAllCSS();
|
||||
|
||||
// PARAMS - Open window parameters - modal popup box or standard popup window
|
||||
$this->t['detailwindow'] =$this->params->get( 'detail_window', 0 );
|
||||
|
||||
// Plugin information
|
||||
if (isset($get['info']) && $get['info'] != '') {
|
||||
$this->t['detailwindow'] = $get['info'];
|
||||
}
|
||||
|
||||
// Close and Reload links (for different window types)
|
||||
$close = PhocaGalleryRenderFront::renderCloseReloadDetail($this->t['detailwindow']);
|
||||
$detail_window_close = $close['detailwindowclose'];
|
||||
$detail_window_reload = $close['detailwindowreload'];
|
||||
|
||||
|
||||
// PARAMS - Display Description in Detail window - set the font color
|
||||
$this->t['detailwindowbackgroundcolor']=$this->params->get( 'detail_window_background_color', '#ffffff' );
|
||||
$description_lightbox_font_color = $this->params->get( 'description_lightbox_font_color', '#ffffff' );
|
||||
$description_lightbox_bg_color = $this->params->get( 'description_lightbox_bg_color', '#000000' );
|
||||
$description_lightbox_font_size = $this->params->get( 'description_lightbox_font_size', 12 );
|
||||
$this->t['gallerymetakey'] = $this->params->get( 'gallery_metakey', '' );
|
||||
$this->t['gallerymetadesc'] = $this->params->get( 'gallery_metadesc', '' );
|
||||
|
||||
// NO SCROLLBAR IN DETAIL WINDOW
|
||||
/* $document->addCustomTag( "<style type=\"text/css\"> \n"
|
||||
." html,body, .contentpane{overflow:hidden;background:".$this->t['detailwindowbackgroundcolor'].";} \n"
|
||||
." center, table {background:".$this->t['detailwindowbackgroundcolor'].";} \n"
|
||||
." #sbox-window {background-color:#fff;padding:5px} \n"
|
||||
." </style> \n");
|
||||
*/
|
||||
|
||||
// PARAMS - Get image height and width
|
||||
$this->t['boxlargewidth'] =$this->params->get( 'front_modal_box_width', 680 );
|
||||
$this->t['boxlargeheight'] =$this->params->get( 'front_modal_box_height', 560 );
|
||||
$front_popup_window_width = $this->t['boxlargewidth'];//since version 2.2
|
||||
$front_popup_window_height = $this->t['boxlargeheight'];//since version 2.2
|
||||
|
||||
if ($this->t['detailwindow'] == 1) {
|
||||
$this->t['windowwidth'] = $front_popup_window_width;
|
||||
$this->t['windowheight'] = $front_popup_window_height;
|
||||
} else {//modal popup window
|
||||
$this->t['windowwidth'] = $this->t['boxlargewidth'];
|
||||
$this->t['windowheight'] = $this->t['boxlargeheight'];
|
||||
}
|
||||
|
||||
$this->t['largemapwidth'] = (int)$this->t['windowwidth'] - 20;
|
||||
$this->t['largemapheight'] = (int)$this->t['windowheight'] - 20;
|
||||
$this->t['googlemapsapikey'] =$this->params->get( 'google_maps_api_key', '' );
|
||||
|
||||
$this->t['exifinformation'] =$this->params->get( 'exif_information', 'FILE.FileName,FILE.FileDateTime,FILE.FileSize,FILE.MimeType,COMPUTED.Height,COMPUTED.Width,COMPUTED.IsColor,COMPUTED.ApertureFNumber,IFD0.Make,IFD0.Model,IFD0.Orientation,IFD0.XResolution,IFD0.YResolution,IFD0.ResolutionUnit,IFD0.Software,IFD0.DateTime,IFD0.Exif_IFD_Pointer,IFD0.GPS_IFD_Pointer,EXIF.ExposureTime,EXIF.FNumber,EXIF.ExposureProgram,EXIF.ISOSpeedRatings,EXIF.ExifVersion,EXIF.DateTimeOriginal,EXIF.DateTimeDigitized,EXIF.ShutterSpeedValue,EXIF.ApertureValue,EXIF.ExposureBiasValue,EXIF.MaxApertureValue,EXIF.MeteringMode,EXIF.LightSource,EXIF.Flash,EXIF.FocalLength,EXIF.SubSecTimeOriginal,EXIF.SubSecTimeDigitized,EXIF.ColorSpace,EXIF.ExifImageWidth,EXIF.ExifImageLength,EXIF.SensingMethod,EXIF.CustomRendered,EXIF.ExposureMode,EXIF.WhiteBalance,EXIF.DigitalZoomRatio,EXIF.FocalLengthIn35mmFilm,EXIF.SceneCaptureType,EXIF.GainControl,EXIF.Contrast,EXIF.Saturation,EXIF.Sharpness,EXIF.SubjectDistanceRange,GPS.GPSLatitudeRef,GPS.GPSLatitude,GPS.GPSLongitudeRef,GPS.GPSLongitude,GPS.GPSAltitudeRef,GPS.GPSAltitude,GPS.GPSTimeStamp,GPS.GPSStatus,GPS.GPSMapDatum,GPS.GPSDateStamp' );
|
||||
|
||||
// MODEL
|
||||
$model = $this->getModel();
|
||||
$this->info = $model->getData();
|
||||
|
||||
|
||||
// Back button
|
||||
/*$this->t['backbutton'] = '';
|
||||
if ($this->t['detailwindow'] == 7) {
|
||||
phocagalleryimport('phocagallery.image.image');
|
||||
$this->t['backbutton'] = '<div><a href="'.Route::_('index.php?option=com_phocagallery&view=category&id='. $this->info->catslug.'&Itemid='. $app->input->get('Itemid', 0, 'int')).'"'
|
||||
.' title="'.Text::_( 'COM_PHOCAGALLERY_BACK_TO_CATEGORY' ).'">'
|
||||
. PhocaGalleryRenderFront::renderIcon('icon-up-images', 'media/com_phocagallery/images/icon-up-images.png', Text::_('COM_PHOCAGALLERY_BACK_TO_CATEGORY'), 'ph-icon-up-images ph-icon-button').'</a></div>';
|
||||
}*/
|
||||
|
||||
// EXIF DATA
|
||||
$outputExif = '';
|
||||
$originalFile = '';
|
||||
$extImage = PhocaGalleryImage::isExtImage($this->info->extid);
|
||||
if ($extImage && isset($this->info->exto) && $this->info->exto != '') {
|
||||
$originalFile = $this->info->exto;
|
||||
} else {
|
||||
if (isset($this->info->filename)) {
|
||||
$originalFile = PhocaGalleryFile::getFileOriginal($this->info->filename);
|
||||
}
|
||||
}
|
||||
|
||||
if ($originalFile != '' && function_exists('exif_read_data')) {
|
||||
|
||||
$exif = @exif_read_data( $originalFile, 'IFD0');
|
||||
|
||||
|
||||
|
||||
if ($exif === false) {
|
||||
$outputExif .= Text::_('COM_PHOCAGALLERY_NO_HEADER_DATA_FOUND');
|
||||
}
|
||||
|
||||
$setExif = $this->t['exifinformation'];
|
||||
$setExifArray = explode(",", $setExif, 200);
|
||||
$exif = @exif_read_data($originalFile, 0, true);
|
||||
|
||||
/* $this->t['infooutput'] = '';
|
||||
foreach ($exif as $key => $section) {
|
||||
foreach ($section as $name => $val) {
|
||||
$this->t['infooutput'] .= strtoupper($key.'.'.$name).'='.$name.'<br />';
|
||||
$this->t['infooutput'] .= $key.'.'.$name.';';
|
||||
}
|
||||
}*/
|
||||
|
||||
|
||||
$this->t['infooutput'] = '';
|
||||
$i = 0;
|
||||
foreach ($setExifArray as $ks => $vs) {
|
||||
|
||||
if ($i%2==0) {
|
||||
$class = 'class="first"';
|
||||
} else {
|
||||
$class = 'class="second"';
|
||||
}
|
||||
|
||||
if ($vs != '') {
|
||||
$vsValues = explode(".", $vs, 2);
|
||||
if (isset($vsValues[0])) {
|
||||
$section = $vsValues[0];
|
||||
} else {
|
||||
$section = '';
|
||||
}
|
||||
if (isset($vsValues[1])) {
|
||||
$name = $vsValues[1];
|
||||
} else {
|
||||
$name = '';
|
||||
}
|
||||
|
||||
|
||||
if ($section != '' && $name != '') {
|
||||
|
||||
if (isset($exif[$section][$name])) {
|
||||
|
||||
switch ($name) {
|
||||
case 'FileDateTime':
|
||||
jimport( 'joomla.utilities.date');
|
||||
$date = new Date($exif[$section][$name]);
|
||||
$exifValue = $date->format('d/m/Y, H:m');
|
||||
break;
|
||||
|
||||
case 'FileSize':
|
||||
$exifValue = PhocaGalleryFile::getFileSizeReadable($exif[$section][$name]);
|
||||
break;
|
||||
|
||||
case 'Height':
|
||||
case 'Width':
|
||||
case 'ExifImageWidth':
|
||||
case 'ExifImageLength':
|
||||
$exifValue = $exif[$section][$name] . ' px';
|
||||
break;
|
||||
|
||||
case 'IsColor':
|
||||
switch((int)$exif[$section][$name]) {
|
||||
case 0:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_NO');
|
||||
break;
|
||||
default:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_YES');
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
|
||||
|
||||
case 'ResolutionUnit':
|
||||
switch((int)$exif[$section][$name]) {
|
||||
case 2:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_INCH');
|
||||
break;
|
||||
case 3:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_CM');
|
||||
break;
|
||||
case 4:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_MM');
|
||||
break;
|
||||
case 5:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_MICRO');
|
||||
break;
|
||||
case 0:
|
||||
case 1:
|
||||
default:
|
||||
$exifValue = '?';
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
case 'ExposureProgram':
|
||||
switch((int)$exif[$section][$name]) {
|
||||
case 1:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_MANUAL');
|
||||
break;
|
||||
case 2:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_NORMAL_PROGRAM');
|
||||
break;
|
||||
case 3:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_APERTURE_PRIORITY');
|
||||
break;
|
||||
case 4:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_SHUTTER_PRIORITY');
|
||||
break;
|
||||
case 5:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_CREATIVE_PROGRAM');
|
||||
break;
|
||||
case 6:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_ACTION_PROGRAM');
|
||||
break;
|
||||
case 7:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_PORTRAIT_MODE');
|
||||
break;
|
||||
case 8:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_LANDSCAPE_MODE');
|
||||
break;
|
||||
case 0:
|
||||
default:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_NOT_DEFINED');
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
case 'MeteringMode':
|
||||
switch((int)$exif[$section][$name]) {
|
||||
case 0:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_UNKNOWN');
|
||||
break;
|
||||
case 1:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_AVERAGE');
|
||||
break;
|
||||
case 2:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_CENTERWEIGHTEDAVERAGE');
|
||||
break;
|
||||
case 3:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_SPOT');
|
||||
break;
|
||||
case 4:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_MULTISPOT');
|
||||
break;
|
||||
case 5:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_PATTERN');
|
||||
break;
|
||||
case 6:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_PARTIAL');
|
||||
break;
|
||||
|
||||
case 255:
|
||||
default:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_OTHER');
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
|
||||
case 'LightSource':
|
||||
switch((int)$exif[$section][$name]) {
|
||||
case 0:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_UNKNOWN');
|
||||
break;
|
||||
case 1:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_DAYLIGHT');
|
||||
break;
|
||||
case 2:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_FLUORESCENT');
|
||||
break;
|
||||
case 3:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_TUNGSTEN');
|
||||
break;
|
||||
case 4:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_FLASH');
|
||||
break;
|
||||
case 9:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_FINEWEATHER');
|
||||
break;
|
||||
case 10:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_CLOUDYWEATHER');
|
||||
break;
|
||||
|
||||
case 11:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_SHADE');
|
||||
break;
|
||||
case 12:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_DAYLIGHTFLUORESCENT');
|
||||
break;
|
||||
case 13:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_DAYWHITEFLUORESCENT');
|
||||
break;
|
||||
case 14:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_COOLWHITEFLUORESCENT');
|
||||
break;
|
||||
case 15:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_WHITEFLUORESCENT');
|
||||
break;
|
||||
case 17:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_STANDARDLIGHTA');
|
||||
break;
|
||||
case 18:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_STANDARDLIGHTB');
|
||||
break;
|
||||
case 19:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_STANDARDLIGHTC');
|
||||
break;
|
||||
case 20:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_D55');
|
||||
break;
|
||||
case 21:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_D65');
|
||||
break;
|
||||
case 22:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_D75');
|
||||
break;
|
||||
case 23:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_D50');
|
||||
break;
|
||||
case 24:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_ISOSTUDIOTUNGSTEN');
|
||||
break;
|
||||
|
||||
case 255:
|
||||
default:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_OTHERLIGHTSOURCE');
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
case 'SensingMethod':
|
||||
switch((int)$exif[$section][$name]) {
|
||||
|
||||
case 2:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_ONE-CHIP_COLOR_AREA_SENSOR');
|
||||
break;
|
||||
case 3:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_TWO-CHIP_COLOR_AREA_SENSOR');
|
||||
break;
|
||||
case 4:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_THREE-CHIP_COLOR_AREA_SENSOR');
|
||||
break;
|
||||
case 5:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_COLOR_SEQUENTIAL_AREA_SENSOR');
|
||||
break;
|
||||
case 7:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_TRILINEAR_SENSOR');
|
||||
break;
|
||||
case 8:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_COLOR_SEQUENTIAL_LINEAR_SENSOR');
|
||||
break;
|
||||
|
||||
case 1:
|
||||
default:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_NOT_DEFINED');
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
case 'CustomRendered':
|
||||
switch((int)$exif[$section][$name]) {
|
||||
|
||||
case 1:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_CUSTOM_PROCESS');
|
||||
break;
|
||||
|
||||
case 0:
|
||||
default:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_NORMAL_PROCESS');
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
case 'ExposureMode':
|
||||
switch((int)$exif[$section][$name]) {
|
||||
|
||||
case 1:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_MANUAL_EXPOSURE');
|
||||
break;
|
||||
|
||||
case 2:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_AUTO_BRACKET');
|
||||
break;
|
||||
|
||||
case 0:
|
||||
default:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_AUTO_EXPOSURE');
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
case 'WhiteBalance':
|
||||
switch((int)$exif[$section][$name]) {
|
||||
|
||||
case 1:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_MANUAL_WHITE_BALANCE');
|
||||
break;
|
||||
|
||||
case 0:
|
||||
default:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_AUTO_WHITE_BALANCE');
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
|
||||
case 'SceneCaptureType':
|
||||
switch((int)$exif[$section][$name]) {
|
||||
|
||||
case 1:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_LANDSCAPE');
|
||||
break;
|
||||
case 2:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_PORTRAIT');
|
||||
break;
|
||||
case 3:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_NIGHT_SCENE');
|
||||
break;
|
||||
|
||||
case 0:
|
||||
default:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_STANDARD');
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
case 'GainControl':
|
||||
switch((int)$exif[$section][$name]) {
|
||||
|
||||
case 1:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_LOW_GAIN_UP');
|
||||
break;
|
||||
case 2:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_HIGH_GAIN_UP');
|
||||
break;
|
||||
case 3:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_LOW_GAIN_UP');
|
||||
break;
|
||||
|
||||
case 4:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_HIGH_GAIN_UP');
|
||||
break;
|
||||
|
||||
case 0:
|
||||
default:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_NONE');
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
case 'ColorSpace':
|
||||
switch((int)$exif[$section][$name]) {
|
||||
|
||||
case 1:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_SRGB');
|
||||
break;
|
||||
case 'FFFF.H':
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_UNCALIBRATED');
|
||||
break;
|
||||
|
||||
case 0:
|
||||
default:
|
||||
$exifValue = '-';
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
|
||||
case 'Contrast':
|
||||
case 'Sharpness':
|
||||
switch((int)$exif[$section][$name]) {
|
||||
|
||||
case 1:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_SOFT');
|
||||
break;
|
||||
case 2:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_HARD');
|
||||
break;
|
||||
|
||||
case 0:
|
||||
default:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_NORMAL');
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
case 'Saturation':
|
||||
switch((int)$exif[$section][$name]) {
|
||||
|
||||
case 1:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_LOW_SATURATION');
|
||||
break;
|
||||
case 2:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_HIGH_SATURATION');
|
||||
break;
|
||||
|
||||
case 0:
|
||||
default:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_NORMAL');
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
case 'SubjectDistanceRange':
|
||||
switch((int)$exif[$section][$name]) {
|
||||
|
||||
case 1:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_MACRO');
|
||||
break;
|
||||
case 2:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_CLOSE_VIEW');
|
||||
break;
|
||||
|
||||
case 3:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_DISTANT_VIEW');
|
||||
break;
|
||||
|
||||
case 0:
|
||||
default:
|
||||
$exifValue = Text::_('COM_PHOCAGALLERY_UNKNOWN');
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
case 'GPSLatitude':
|
||||
case 'GPSLongitude':
|
||||
$exifValue = '';
|
||||
|
||||
|
||||
//$gps = self::getGps($exif[$section][$name]);
|
||||
|
||||
if (isset($exif[$section][$name][0])) {
|
||||
list($l,$r) = explode("/",$exif[$section][$name][0]);
|
||||
|
||||
$d = ($l/$r);
|
||||
$exifValue .= $d . '° ';
|
||||
}
|
||||
|
||||
if (isset($exif[$section][$name][1])) {
|
||||
list($l,$r) = explode("/",$exif[$section][$name][1]);
|
||||
$m = ($l/$r);
|
||||
|
||||
if ($l%$r>0) {
|
||||
$sNoInt = ($l/$r);
|
||||
$sInt = ($l/$r);
|
||||
$s = ($sNoInt - (int)$sInt)*60;
|
||||
$exifValue .= (int)$m . '\' ' . $s . '" ';
|
||||
} else {
|
||||
$exifValue .= $m . '\' ';
|
||||
if (isset($exif[$section][$name][2])) {
|
||||
list($l,$r) = explode("/",$exif[$section][$name][2]);
|
||||
$s = ($l/$r);
|
||||
$exifValue .= $s . '" ';
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case 'GPSTimeStamp':
|
||||
$exifValue = '';
|
||||
if (isset($exif[$section][$name][0])) {
|
||||
list($l,$r) = explode("/",$exif[$section][$name][0]);
|
||||
$h = ($l/$r);
|
||||
$exifValue .= $h . ' h ';
|
||||
}
|
||||
|
||||
if (isset($exif[$section][$name][1])) {
|
||||
list($l,$r) = explode("/",$exif[$section][$name][1]);
|
||||
$m = ($l/$r);
|
||||
$exifValue .= $m . ' m ';
|
||||
}
|
||||
if (isset($exif[$section][$name][2])) {
|
||||
list($l,$r) = explode("/",$exif[$section][$name][2]);
|
||||
$s = ($l/$r);
|
||||
$exifValue .= $s . ' s ';
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
|
||||
case 'ExifVersion':
|
||||
if (is_numeric($exif[$section][$name])) {
|
||||
$exifValue = (int)$exif[$section][$name]/100;
|
||||
} else {
|
||||
$exifValue = $exif[$section][$name];
|
||||
}
|
||||
break;
|
||||
|
||||
case 'FocalLength':
|
||||
if (isset($exif[$section][$name]) && $exif[$section][$name] != '') {
|
||||
$focalLength = explode ('/', $exif[$section][$name]);
|
||||
if (isset($focalLength[0]) && (int)$focalLength[0] > 0
|
||||
&& isset($focalLength[1]) && (int)$focalLength[1] > 0 ) {
|
||||
$exifValue = (int)$focalLength[0] / (int)$focalLength[1];
|
||||
$exifValue = $exifValue . ' mm';
|
||||
}
|
||||
|
||||
}
|
||||
break;
|
||||
|
||||
case 'ExposureTime':
|
||||
if (isset($exif[$section][$name]) && $exif[$section][$name] != '') {
|
||||
$exposureTime = explode ('/', $exif[$section][$name]);
|
||||
if (isset($exposureTime[0]) && (int)$exposureTime[0] > 0
|
||||
&& isset($exposureTime[1]) && (int)$exposureTime[1] > 1 ) {
|
||||
|
||||
if ((int)$exposureTime[1] > (int)$exposureTime[0]) {
|
||||
$exifValue = (int)$exposureTime[1] / (int)$exposureTime[0];
|
||||
$exifValue = '1/'. $exifValue . ' sec';
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
break;
|
||||
|
||||
/*case 'ShutterSpeedValue':
|
||||
if (isset($exif[$section][$name]) && $exif[$section][$name] != '') {
|
||||
$shutterSpeedValue = explode ('/', $exif[$section][$name]);
|
||||
if (isset($shutterSpeedValue[0]) && (int)$shutterSpeedValue[0] > 0
|
||||
&& isset($shutterSpeedValue[1]) && (int)$shutterSpeedValue[1] > 1 ) {
|
||||
|
||||
if ((int)$shutterSpeedValue[1] > (int)$shutterSpeedValue[0]) {
|
||||
$exifValue = (int)$shutterSpeedValue[1] / (int)$shutterSpeedValue[0];
|
||||
$exifValue = '1/'. $exifValue . ' sec';
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
break;*/
|
||||
|
||||
|
||||
default:
|
||||
$exifValue = $exif[$section][$name];
|
||||
break;
|
||||
}
|
||||
|
||||
$vs = str_replace('.', '_', $vs);
|
||||
|
||||
$this->t['infooutput'] .= '<tr '.$class.'>'
|
||||
//.'<td>'. JText::_($vs) . '('.$section.' '.$name.')</td>'
|
||||
.'<td>'. Text::_('COM_PHOCAGALLERY_'.strtoupper($vs)) . '</td>'
|
||||
.'<td>'.$exifValue. '</td>'
|
||||
.'</tr>';
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
$i++;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
$this->_prepareDocument($this->info);
|
||||
parent::display($tpl);
|
||||
}
|
||||
|
||||
protected function _prepareDocument($item) {
|
||||
|
||||
$app = Factory::getApplication();
|
||||
$menus = $app->getMenu();
|
||||
$pathway = $app->getPathway();
|
||||
$this->params = $app->getParams();
|
||||
$title = null;
|
||||
|
||||
$this->t['gallerymetakey'] =$this->params->get( 'gallery_metakey', '' );
|
||||
$this->t['gallerymetadesc'] =$this->params->get( 'gallery_metadesc', '' );
|
||||
|
||||
|
||||
$menu = $menus->getActive();
|
||||
if ($menu) {
|
||||
$this->params->def('page_heading', $this->params->get('page_title', $menu->title));
|
||||
} else {
|
||||
$this->params->def('page_heading', Text::_('JGLOBAL_ARTICLES'));
|
||||
}
|
||||
|
||||
$title = $this->params->get('page_title', '');
|
||||
if (empty($title)) {
|
||||
$title = htmlspecialchars_decode($app->get('sitename'));
|
||||
} else if ($app->get('sitename_pagetitles', 0) == 1) {
|
||||
$title = Text::sprintf('JPAGETITLE', htmlspecialchars_decode($app->get('sitename')), $title);
|
||||
|
||||
if (isset($item->title) && $item->title != '') {
|
||||
$title = $title .' - ' . $item->title;
|
||||
}
|
||||
|
||||
} else if ($app->get('sitename_pagetitles', 0) == 2) {
|
||||
|
||||
if (isset($item->title) && $item->title != '') {
|
||||
$title = $title .' - ' . $item->title;
|
||||
}
|
||||
|
||||
$title = Text::sprintf('JPAGETITLE', $title, htmlspecialchars_decode($app->get('sitename')));
|
||||
}
|
||||
$this->document->setTitle($title);
|
||||
|
||||
if ($item->metadesc != '') {
|
||||
$this->document->setDescription($item->metadesc);
|
||||
} else if ($this->t['gallerymetadesc'] != '') {
|
||||
$this->document->setDescription($this->t['gallerymetadesc']);
|
||||
} else if ($this->params->get('menu-meta_description', '')) {
|
||||
$this->document->setDescription($this->params->get('menu-meta_description', ''));
|
||||
}
|
||||
|
||||
if ($item->metakey != '') {
|
||||
$this->document->setMetadata('keywords', $item->metakey);
|
||||
} else if ($this->t['gallerymetakey'] != '') {
|
||||
$this->document->setMetadata('keywords', $this->t['gallerymetakey']);
|
||||
} else if ($this->params->get('menu-meta_keywords', '')) {
|
||||
$this->document->setMetadata('keywords', $this->params->get('menu-meta_keywords', ''));
|
||||
}
|
||||
|
||||
if ($app->get('MetaTitle') == '1' && $this->params->get('menupage_title', '')) {
|
||||
$this->document->setMetaData('title', $this->params->get('page_title', ''));
|
||||
}
|
||||
|
||||
/*if ($app->get('MetaAuthor') == '1') {
|
||||
$this->document->setMetaData('author', $this->item->author);
|
||||
}
|
||||
|
||||
/*$mdata = $this->item->metadata->toArray();
|
||||
foreach ($mdata as $k => $v) {
|
||||
if ($v) {
|
||||
$this->document->setMetadata($k, $v);
|
||||
}
|
||||
}*/
|
||||
|
||||
// Breadcrumbs TO DO (Add the whole tree)
|
||||
/*if (isset($this->category[0]->parentid)) {
|
||||
if ($this->category[0]->parentid == 1) {
|
||||
} else if ($this->category[0]->parentid > 0) {
|
||||
$pathway->addItem($this->category[0]->parenttitle, Route::_(PhocaDocumentationHelperRoute::getCategoryRoute($this->category[0]->parentid, $this->category[0]->parentalias)));
|
||||
}
|
||||
}
|
||||
|
||||
if (!empty($this->category[0]->title)) {
|
||||
$pathway->addItem($this->category[0]->title);
|
||||
}*/
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user