217 lines
9.5 KiB
PHP
217 lines
9.5 KiB
PHP
|
<?php
|
||
|
/**
|
||
|
* @version $Id: item.php 1618 2012-09-21 11:23:08Z lefteris.kavadas $
|
||
|
* @package K2
|
||
|
* @author JoomlaWorks http://www.joomlaworks.net
|
||
|
* @copyright Copyright (c) 2006 - 2012 JoomlaWorks Ltd. All rights reserved.
|
||
|
* @license GNU/GPL license: http://www.gnu.org/copyleft/gpl.html
|
||
|
*/
|
||
|
|
||
|
// no direct access
|
||
|
defined('_JEXEC') or die ;
|
||
|
|
||
|
if(version_compare(JVERSION,'3.0.0','ge')):
|
||
|
require_once (JPATH_ADMINISTRATOR.'/components/com_k2/elements/base.php');
|
||
|
class K2ElementItem extends K2Element
|
||
|
{
|
||
|
|
||
|
function fetchElement($name, $value, &$node, $control_name)
|
||
|
{ //var_dump($name);
|
||
|
JHtml::_('jquery.framework');
|
||
|
|
||
|
$mainframe = JFactory::getApplication();
|
||
|
$db = JFactory::getDBO();
|
||
|
$doc = JFactory::getDocument();
|
||
|
|
||
|
$fieldName = (K2_JVERSION != '15') ? $name : $control_name.'['.$name.']';
|
||
|
//var_dump($fieldName);
|
||
|
JTable::addIncludePath(JPATH_ADMINISTRATOR.DIRECTORY_SEPARATOR.'components'.DIRECTORY_SEPARATOR.'com_k2'.DIRECTORY_SEPARATOR.'tables');
|
||
|
$item = JTable::getInstance('K2Item', 'Table');
|
||
|
|
||
|
if ($value)
|
||
|
{
|
||
|
$item->load($value);
|
||
|
}
|
||
|
else
|
||
|
{
|
||
|
$item->title = JText::_('K2_SELECT_AN_ITEM');
|
||
|
}
|
||
|
/*$js = "
|
||
|
function jSelectItem(id, title, object) {
|
||
|
document.getElementById( '".$name."' + '_id').value = id;
|
||
|
console.log(".$name.");
|
||
|
document.getElementById('".$name."' + '_name').value = title;
|
||
|
if(typeof(window.parent.SqueezeBox.close=='function')){
|
||
|
window.parent.SqueezeBox.close();
|
||
|
}
|
||
|
else {
|
||
|
document.getElementById('sbox-window').close();
|
||
|
}
|
||
|
}
|
||
|
";
|
||
|
$doc->addScriptDeclaration($js);*/
|
||
|
if(!defined('CBYNEWSSLIDERJS')){
|
||
|
$js = " jQuery(document).ready(function(){
|
||
|
jQuery('.cbitemSelect').click(function(el){
|
||
|
//console.log(this);
|
||
|
//console.log(jQuery(this).attr('val'));
|
||
|
window.cbSelectItem = jQuery(this).attr('val');
|
||
|
});
|
||
|
});
|
||
|
|
||
|
function jSelectItem(id, title, object) {
|
||
|
//var name = 'jform[params]['+object.split('jformparams')[1]+']';
|
||
|
//console.log(name);
|
||
|
//console.log(window.cbSelectItem);
|
||
|
name = window.cbSelectItem;
|
||
|
document.getElementById( name + '_id').value = id;
|
||
|
//console.log(object.split('jformparams')[1]);
|
||
|
document.getElementById(name + '_name').value = title;
|
||
|
if(typeof(window.parent.SqueezeBox.close=='function')){
|
||
|
window.parent.SqueezeBox.close();
|
||
|
}
|
||
|
else {
|
||
|
document.getElementById('sbox-window').close();
|
||
|
}
|
||
|
}";
|
||
|
|
||
|
$doc->addScriptDeclaration($js);
|
||
|
define('CBYNEWSSLIDERJS',1);
|
||
|
}
|
||
|
$link = 'index.php?option=com_k2&view=items&task=element&tmpl=component&object='.$name;
|
||
|
JHTML::_('behavior.modal', 'a.modal');
|
||
|
|
||
|
if (K2_JVERSION == '30')
|
||
|
{
|
||
|
//var_dump('asdas');
|
||
|
$html = '<span class="input-append">
|
||
|
<input type="text" id="'.$name.'_name" value="'.htmlspecialchars($item->title, ENT_QUOTES, 'UTF-8').'" disabled="disabled" />
|
||
|
<a class="modal btn cbitemSelect" val="'.$name.'" title="'.JText::_('K2_SELECT_AN_ITEM').'" href="'.$link.'" rel="{handler: \'iframe\', size: {x: 700, y: 450}}"><i class="icon-file"></i>'.JText::_('K2_SELECT').'</a>
|
||
|
<input type="hidden" class="required modal-value" id="'.$name.'_id" name="'.$fieldName.'" value="'.( int )$value.'" />
|
||
|
</span>';
|
||
|
}
|
||
|
else
|
||
|
{
|
||
|
$html = '
|
||
|
<div style="float:left;">
|
||
|
<input style="background:#fff;margin:3px 0;" type="text" id="'.$name.'_name" value="'.htmlspecialchars($item->title, ENT_QUOTES, 'UTF-8').'" disabled="disabled" />
|
||
|
</div>
|
||
|
<div class="button2-left">
|
||
|
<div class="blank">
|
||
|
<a class="modal btn cbitemSelect" val="'.$name.'" title="'.JText::_('K2_SELECT_AN_ITEM').'" href="'.$link.'" rel="{handler: \'iframe\', size: {x: 700, y: 450}}">'.JText::_('K2_SELECT').'</a>
|
||
|
</div>
|
||
|
</div>
|
||
|
<input type="hidden" id="'.$name.'_id" name="'.$fieldName.'" value="'.( int )$value.'" />';
|
||
|
}
|
||
|
|
||
|
return $html;
|
||
|
}
|
||
|
|
||
|
}
|
||
|
|
||
|
class JFormFieldItem extends K2ElementItem
|
||
|
{
|
||
|
var $type = 'item';
|
||
|
}
|
||
|
|
||
|
class JElementItem extends K2ElementItem
|
||
|
{
|
||
|
var $_name = 'item';
|
||
|
}
|
||
|
|
||
|
else:
|
||
|
|
||
|
$doc = JFactory::getDocument();
|
||
|
$doc->addScript(JURI::root().'modules/mod_yahoostylenewsslider/yahoostylenewsslider/js/jquery.js?v=2');
|
||
|
$doc->addScriptDeclaration('jQuery.noConflict();');
|
||
|
|
||
|
if(K2_JVERSION=='16'){
|
||
|
jimport('joomla.form.formfield');
|
||
|
class JFormFieldItem extends JFormField {
|
||
|
|
||
|
var $type = 'item';
|
||
|
|
||
|
function getInput(){
|
||
|
return JElementItem::fetchElement($this->name, $this->value, $this->element, $this->options['control']);
|
||
|
}
|
||
|
|
||
|
|
||
|
}
|
||
|
}
|
||
|
|
||
|
jimport('joomla.html.parameter.element');
|
||
|
|
||
|
class JElementItem extends JElement {
|
||
|
|
||
|
var $_name = 'Item';
|
||
|
|
||
|
function fetchElement($name, $value, & $node, $control_name) {
|
||
|
|
||
|
$mainframe = JFactory::getApplication();
|
||
|
|
||
|
$db = JFactory::getDBO();
|
||
|
$doc = JFactory::getDocument();
|
||
|
$fieldName = (K2_JVERSION=='16')?$name:$control_name.'['.$name.']';
|
||
|
JTable::addIncludePath(JPATH_ADMINISTRATOR.DS.'components'.DS.'com_k2'.DS.'tables');
|
||
|
$item = JTable::getInstance('K2Item', 'Table');
|
||
|
|
||
|
if ($value) {
|
||
|
$item->load($value);
|
||
|
}
|
||
|
else {
|
||
|
$item->title = JText::_('K2_SELECT_AN_ITEM');
|
||
|
}
|
||
|
|
||
|
if(!defined('CBYNEWSSLIDERJS')){
|
||
|
$js = " jQuery(document).ready(function(){
|
||
|
jQuery('.cbitemSelect').click(function(el){
|
||
|
//console.log(this);
|
||
|
//console.log(jQuery(this).attr('val'));
|
||
|
window.cbSelectItem = jQuery(this).attr('val');
|
||
|
});
|
||
|
});
|
||
|
|
||
|
function jSelectItem(id, title, object) {
|
||
|
//var name = 'jform[params]['+object.split('jformparams')[1]+']';
|
||
|
//console.log(name);
|
||
|
//console.log(window.cbSelectItem);
|
||
|
name = window.cbSelectItem;
|
||
|
document.getElementById( name + '_id').value = id;
|
||
|
//console.log(object.split('jformparams')[1]);
|
||
|
document.getElementById(name + '_name').value = title;
|
||
|
if(typeof(window.parent.SqueezeBox.close=='function')){
|
||
|
window.parent.SqueezeBox.close();
|
||
|
}
|
||
|
else {
|
||
|
document.getElementById('sbox-window').close();
|
||
|
}
|
||
|
}";
|
||
|
|
||
|
$doc->addScriptDeclaration($js);
|
||
|
define('CBYNEWSSLIDERJS',1);
|
||
|
}
|
||
|
|
||
|
$link = 'index.php?option=com_k2&view=items&task=element&tmpl=component&object='.$name;
|
||
|
|
||
|
JHTML::_('behavior.modal', 'a.modal');
|
||
|
|
||
|
$html = '
|
||
|
<div style="float:left;">
|
||
|
<input style="background:#fff;margin:3px 0;" type="text" id="'.$name.'_name" value="'.htmlspecialchars($item->title, ENT_QUOTES, 'UTF-8').'" disabled="disabled" />
|
||
|
</div>
|
||
|
<div class="button2-left">
|
||
|
<div class="blank">
|
||
|
<a class="modal cbitemSelect" val="'.$name.'" title="'.JText::_('K2_SELECT_AN_ITEM').'" href="'.$link.'" rel="{handler: \'iframe\', size: {x: 700, y: 450}}">'.JText::_('K2_SELECT').'</a>
|
||
|
</div>
|
||
|
</div>
|
||
|
<input type="hidden" id="'.$name.'_id" name="'.$fieldName.'" value="'.( int )$value.'" />
|
||
|
';
|
||
|
|
||
|
return $html;
|
||
|
}
|
||
|
|
||
|
}
|
||
|
|
||
|
|
||
|
endif;
|