%PDF- %PDF-
| Direktori : /home/lightco1/www/feiss.com.au/plugins/jsnpoweradmin/content/assets/js/ |
| Current File : /home/lightco1/www/feiss.com.au/plugins/jsnpoweradmin/content/assets/js/article.js |
/**
* @subpackage com_poweradmin (JSN POERADMIN JoomlaShine - http://www.joomlashine.com)
* @copyright Copyright (C) 2001 BraveBits,Ltd. All rights reserved.
**/
(function($){
$.com_content_article = function(Itemid){
/**
* Variable to store context menu
*/
this.contextMenu;
this.contextElements;
this.currentElement;
/**
* Init all variables
*/
this.initVariables = function(){
this.setData( 'option', 'com_content' );
this.setData( 'view', 'article' );
this.setData( 'layout', '' );
this.setData( 'id', $('#articleId').val() );
this.setData( 'Itemid', Itemid );
this.setData( 'requestType', 'only' );
//Scan elements approved context menu
this.contextElements = new Array( $( '.'+this.classApprovedContextMenu ).length );
var $this = this;
$( '.'+this.classApprovedContextMenu ).each(function(){
if ( $(this).hasClass('article_text') || $(this).hasClass('article-header-title') || $(this).hasClass('introtext')){
$(this).data('edit', true);
}else{
$(this).data('edit', false);
}
if ( $(this).hasClass('display-default') ){
$(this).data('show', true);
}else{
$(this).data('show', false);
}
if ( $(this).attr('id') == 'show_parent_category' || $(this).attr('id') == 'show_category' ){
$(this).data('category', true);
}else{
$(this).data('category', false);
}
if ( $(this).attr('id') == 'show_author' ){
$(this).data('author', true);
}else{
$(this).data('author', false);
}
$this.contextElements[$(this).attr('id')] = $(this);
});
//Clear all href attribute of article
$('a', $('.jsn-article-layout')).each(function(){
$(this).removeAttr('href');
});
};
/**
* Ajax request task function
*/
this.beforeAjaxRequest = function(task){
this.currentElement.showImgStatus({status : 'request'});
this.setData( 'requestTask', task );
this.ajaxRequest();
};
this.editElement = function()
{
var $this = this;
var editFuncs = $.extend({
article : function(){
var wWidth = $(window).width()*0.85;
var wHeight = $(window).height()*0.8;
var pop = $.JSNUIWindow
(
baseUrl+'administrator/index.php?option=com_content&task=article.edit&tmpl=component&id='+$this.getData('id'),
{
modal : true,
width : wWidth,
height : wHeight,
scrollContent: true,
title : JSNLang.translate( 'JSN_RAWMODE_COMPONENT_EDIT_ARTICLE_PAGE_TITLE' ),
open : function(){
var _this = $(this);
var iframe = $(this).find('iframe');
iframe.load(function(){
setTimeout(function(){
if ( iframe[0].contentWindow != undefined ){
var head = iframe.contents().find('head');
//head.append('<link rel="stylesheet" href="' + baseUrl + 'plugins/system/jsnframework/assets/joomlashine/css/jsn-gui.css" type="text/css" />');
//iframe[0].contentWindow.contentResize.setSize('articletext', wWidth, wHeight, 140);
}
}, 400);
});
//bind trigger press enter submit form from child page
$(window).unbind("pressEnterSubmitForm").bind("pressEnterSubmitForm", function(){
iframe.load(function(){
$this.beforeAjaxRequest('brankNewData');
});
});
},
buttons: {
'Save': function(){
var _this = $(this);
var iframe = $(this).find('iframe');
if (!$.fn.validateEmptyFields(iframe)) {
return false;
}
if ( pop.submitForm('article.apply', 'Save', function (){
_this.removeClass('jsn-loading');
$this.beforeAjaxRequest('brankNewData');
}) ){
_this.addClass('jsn-loading');
}
},
'Close': function(){
$(this).dialog("close");
}
}
}
);
},
category : function(){
var wWidth = $(window).width()*0.85;
var wHeight = $(window).height()*0.8;
var pop = $.JSNUIWindow
(
baseUrl+'administrator/index.php?option=com_categories&task=category.edit&extension=com_content&id='+$this.currentElement.attr('catid')+'&tmpl=component',
{
modal : true,
width : wWidth,
height : wHeight,
scrollContent: true,
title : JSNLang.translate( 'JSN_RAWMODE_COMPONENT_EDIT_CATEGORY_PAGE_TITLE' ),
open : function(){
var _this = $(this);
var iframe = $(this).find('iframe');
var _this = $(this);
var iframe = $(this).find('iframe');
iframe.load(function(){
setTimeout(function(){
if ( iframe[0].contentWindow != undefined ){
var head = iframe.contents().find('head');
//head.append('<link rel="stylesheet" href="' + baseUrl + 'plugins/system/jsnframework/assets/joomlashine/css/jsn-gui.css" type="text/css" />');
//iframe[0].contentWindow.contentResize.setSize('description', wWidth, wHeight, 140);
}
}, 400);
});
//bind trigger press enter submit form from child page
$(window).unbind("pressEnterSubmitForm").bind("pressEnterSubmitForm", function(){
iframe.load(function(){
$this.beforeAjaxRequest('brankNewData');
});
});
},
buttons: {
'Save': function(){
var _this = $(this);
var iframe = $(this).find('iframe');
if (!$.fn.validateEmptyFields(iframe)) {
return false;
}
if (pop.submitForm('category.apply', 'Save', function (){
_this.removeClass('jsn-loading');
$this.beforeAjaxRequest('brankNewData');
} )){
_this.addClass('jsn-loading');
}
},
'Close': function(){
$(this).dialog("close");
}
}
}
);
},
author : function(){
var wWidth = $(window).width()*0.85;
var wHeight = $(window).height()*0.8;
var pop = $.JSNUIWindow
(
baseUrl+'administrator/index.php?option=com_contact&task=contact.edit&id=='+$this.currentElement.attr('contactid')+'&tmpl=component',
{
modal : true,
width : wWidth,
height : wHeight,
scrollContent: true,
title : JSNLang.translate( 'JSN_RAWMODE_COMPONENT_EDIT_AUTHOR_PAGE_TITLE' ),
open : function(){
var _this = $(this);
var iframe = $(this).find('iframe');
//bind trigger press enter submit form from child page
$(window).unbind("pressEnterSubmitForm").bind("pressEnterSubmitForm", function(){
iframe.load(function(){
var head = iframe.contents().find('head');
//head.append('<link rel="stylesheet" href="' + baseUrl + 'plugins/system/jsnframework/assets/joomlashine/css/jsn-gui.css" type="text/css" />');
$this.beforeAjaxRequest('brankNewData');
});
});
},
buttons: {
'Save': function(){
var _this = $(this);
var iframe = $(this).find('iframe');
if (!$.fn.validateEmptyFields(iframe)) {
return false;
}
if (pop.submitForm('contact.apply', 'Save', function (){
_this.removeClass('jsn-loading');
$this.beforeAjaxRequest('brankNewData');
})){
_this.addClass('jsn-loading');
}
},
'Close': function(){
$(this).dialog("close");
}
}
}
);
}
});
var elementType = $this.currentElement.attr('id');
if ( elementType == 'show_parent_category' || elementType == 'show_category' ){
editFuncs.category();
}else if( elementType == 'show_author' ){
editFuncs.author();
}else{
editFuncs.article();
}
};
/**
*
* Add function build context menu
*
* @return: Build submenu with jsnSubmenu
*/
this.addContextMenu = function(){
this.contextMenu = this.getContextMenu();
var $this = this;
if ( this.contextMenu != null ){
if ( $this.contextMenu.isNew() ){
/**
*
* Add menu for edit the article
*/
$this.contextMenu.addItem( JSNLang.translate('JSN_RAWMODE_COMPONENT_EDIT_ARTICLE') ).addEventHandler("click", function(){
$this.contextMenu.hide({});
$this.editElement();
});
/**
*
* Add menu for edit the category
*/
$this.contextMenu.addItem( JSNLang.translate('JSN_RAWMODE_COMPONENT_EDIT_CATEGORY') ).addEventHandler("click", function(){
$this.contextMenu.hide({});
$this.editElement();
});
/**
*
* Add menu for edit the author
*/
// $this.contextMenu.addItem( JSNLang.translate('JSN_RAWMODE_COMPONENT_EDIT_AUTHOR') ).addEventHandler("click", function(){
// $this.contextMenu.hide({});
// $this.editElement();
// });
/**
* Add parent item
*/
var parentHideItem = $this.contextMenu.addParentItem( JSNLang.translate('JSN_RAWMODE_COMPONENT_HIDE_ARTICLE') );
/**
* Add item and assign to process hide globally for all articles
*/
parentHideItem.addItem( JSNLang.translate('JSN_RAWMODE_COMPONENT_SHOWHIDE_ARTICLE_GLOBAL_FOR_ALL_PAGES') ).addEventHandler("click", function(){
$this.contextMenu.hide({});
$this.setData( 'requestType', 'globally' );
$this.setParams( $this.currentElement.attr('id'), 0);
$this.beforeAjaxRequest();
});
/**
* Add item and assign to process hide this article
*/
parentHideItem.addItem( JSNLang.translate('JSN_RAWMODE_COMPONENT_SHOWHIDE_ARTICLE_ONLY_THIS_PAGE') ).addEventHandler("click", function(){
$this.contextMenu.hide({});
$this.setData( 'requestType', 'only' );
$this.setParams( $this.currentElement.attr('id'), 0);
$this.beforeAjaxRequest();
});
/**
* Add parent item
*/
var parentShowItem = $this.contextMenu.addParentItem( JSNLang.translate('JSN_RAWMODE_COMPONENT_SHOW_ARTICLE') );
/**
* Add item and assign to process show globally for all articles
*/
parentShowItem.addItem( JSNLang.translate('JSN_RAWMODE_COMPONENT_SHOWHIDE_ARTICLE_GLOBAL_FOR_ALL_PAGES') ).addEventHandler("click", function(){
$this.contextMenu.hide({});
$this.setData( 'requestType', 'globally' );
$this.setParams( $this.currentElement.attr('id'), 1 );
$this.beforeAjaxRequest();
});
/**
* Add item and assign to process show this article
*/
parentShowItem.addItem( JSNLang.translate('JSN_RAWMODE_COMPONENT_SHOWHIDE_ARTICLE_ONLY_THIS_PAGE') ).addEventHandler("click", function(){
$this.contextMenu.hide({});
$this.setData( 'requestType', 'only' );
$this.setParams( $this.currentElement.attr('id'), 1 );
$this.beforeAjaxRequest();
});
/**
* Show link
*/
var parentShowLink = $this.contextMenu.addParentItem( JSNLang.translate('JSN_RAWMODE_COMPONENT_ENABLE_LINK') );
parentShowLink.addItem( JSNLang.translate('JSN_RAWMODE_COMPONENT_ACTIONLINK_ARTICLE_GLOBAL_FOR_ALL_PAGES') ).addEventHandler("click", function(){
$this.contextMenu.hide({});
$this.setData( 'requestType', 'globally' );
var paramKey = $this.currentElement.attr('id').replace('show', 'link');
if (paramKey == 'link_title'){
paramKey = 'link_titles';
}
$this.setParams( paramKey, 1);
$this.beforeAjaxRequest();
});
parentShowLink.addItem( JSNLang.translate('JSN_RAWMODE_COMPONENT_ACTIONLINK_ARTICLE_ONLY_THIS_PAGE') ).addEventHandler("click", function(){
$this.contextMenu.hide({});
$this.setData( 'requestType', 'only' );
var paramKey = $this.currentElement.attr('id').replace('show', 'link');
if (paramKey == 'link_title'){
paramKey = 'link_titles';
}
$this.setParams( paramKey, '1');
$this.beforeAjaxRequest();
});
/**
* Hide link
*/
var parentHideLink = $this.contextMenu.addParentItem( JSNLang.translate('JSN_RAWMODE_COMPONENT_DISABLE_LINK') );
parentHideLink.addItem( JSNLang.translate('JSN_RAWMODE_COMPONENT_ACTIONLINK_ARTICLE_GLOBAL_FOR_ALL_PAGES') ).addEventHandler("click", function(){
$this.contextMenu.hide({});
$this.setData( 'requestType', 'globally' );
var paramKey = $this.currentElement.attr('id').replace('show', 'link');
if (paramKey == 'link_title'){
paramKey = 'link_titles';
}
$this.setParams( paramKey, 0);
$this.beforeAjaxRequest();
});
parentHideLink.addItem( JSNLang.translate('JSN_RAWMODE_COMPONENT_ACTIONLINK_ARTICLE_ONLY_THIS_PAGE') ).addEventHandler("click", function(){
$this.contextMenu.hide({});
$this.setData( 'requestType', 'only' );
var paramKey = $this.currentElement.attr('id').replace('show', 'link');
if (paramKey == 'link_title'){
paramKey = 'link_titles';
}
$this.setParams( paramKey, 0);
$this.beforeAjaxRequest();
});
/**
* Show icon as icon
*/
var parentShowicon = $this.contextMenu.addParentItem( JSNLang.translate('JSN_RAWMODE_COMPONENT_ICON_SHOW_ICON') );
parentShowicon.addItem( JSNLang.translate('JSN_RAWMODE_COMPONENT_ACTIONLINK_ARTICLE_GLOBAL_FOR_ALL_PAGES') ).addEventHandler("click", function(){
$this.contextMenu.hide({});
$this.setData( 'requestType', 'globally' );
$this.setParams( 'show_icons', 1);
$this.beforeAjaxRequest();
});
parentShowicon.addItem( JSNLang.translate('JSN_RAWMODE_COMPONENT_ACTIONLINK_ARTICLE_ONLY_THIS_PAGE') ).addEventHandler("click", function(){
$this.contextMenu.hide({});
$this.setData( 'requestType', 'only' );
$this.setParams( 'show_icons', 1);
$this.beforeAjaxRequest();
});
/**
* Show icon as text
*/
var parentShowtext = $this.contextMenu.addParentItem( JSNLang.translate('JSN_RAWMODE_COMPONENT_ICON_SHOW_TEXT') );
parentShowtext.addItem( JSNLang.translate('JSN_RAWMODE_COMPONENT_ACTIONLINK_ARTICLE_GLOBAL_FOR_ALL_PAGES') ).addEventHandler("click", function(){
$this.contextMenu.hide({});
$this.setData( 'requestType', 'globally' );
$this.setParams( 'show_icons', 0);
$this.beforeAjaxRequest();
});
parentShowtext.addItem( JSNLang.translate('JSN_RAWMODE_COMPONENT_ACTIONLINK_ARTICLE_ONLY_THIS_PAGE') ).addEventHandler("click", function(){
$this.contextMenu.hide({});
$this.setData( 'requestType', 'only' );
$this.setParams( 'show_icons', 0);
$this.beforeAjaxRequest();
});
}
$this.container.unbind("mousedown").mousedown(function(e){
if ($(e.target).hasClass($this.classApprovedContextMenu.replace('.', ''))){
$this.currentElement = $(e.target);
}else{
$this.currentElement = $(e.target).parents('.'+$this.classApprovedContextMenu);
}
var tagId = ( $this.currentElement.attr('id') != undefined ? $this.currentElement.attr('id') : '' );
if ( e.which == 1 && $this.contextElements[tagId] != undefined ){
var current = $this.contextElements[tagId];
$this.contextMenu.hideAllItems();
if ( current.attr('icon') != undefined){
if (current.attr('icon') == 1){
$this.contextMenu.showItem( JSNLang.translate('JSN_RAWMODE_COMPONENT_ICON_SHOW_TEXT'));
}else{
$this.contextMenu.showItem( JSNLang.translate('JSN_RAWMODE_COMPONENT_ICON_SHOW_ICON'));
}
}
if ( current.attr('link') != undefined ){
if ( current.attr('link') == 1 ){
$this.contextMenu.showItem( JSNLang.translate('JSN_RAWMODE_COMPONENT_DISABLE_LINK'));
}else{
$this.contextMenu.showItem( JSNLang.translate('JSN_RAWMODE_COMPONENT_ENABLE_LINK'));
}
}
if ( current.data('category') ){
$this.contextMenu.showItem( JSNLang.translate('JSN_RAWMODE_COMPONENT_EDIT_CATEGORY'));
}else if ( current.data('author') ){
//$this.contextMenu.showItem( JSNLang.translate('JSN_RAWMODE_COMPONENT_EDIT_AUTHOR'));
}
if ( current.data('edit') ){
$this.contextMenu.showItem( JSNLang.translate('JSN_RAWMODE_COMPONENT_EDIT_ARTICLE'));
if (current.hasClass('article-header-title') || current.hasClass('introtext')){
if ( current.data('show') ){
$this.contextMenu.showItem( JSNLang.translate('JSN_RAWMODE_COMPONENT_HIDE_ARTICLE'));
}else{
$this.contextMenu.showItem( JSNLang.translate('JSN_RAWMODE_COMPONENT_SHOW_ARTICLE'));
}
}
}else{
if ( current.data('show') ){
$this.contextMenu.showItem( JSNLang.translate('JSN_RAWMODE_COMPONENT_HIDE_ARTICLE'));
}else{
$this.contextMenu.showItem( JSNLang.translate('JSN_RAWMODE_COMPONENT_SHOW_ARTICLE'));
}
}
$this.contextMenu.show({
x : e.pageX,
y : e.pageY
});
$this.contextMenu.trigger('component.context.show');
}else{
$this.currentElement = $({});
}
});
}
};
};
})(JoomlaShine.jQuery);