/wp-content/themes/k2/include/javascript/gdl-panel.js
JavaScript | 557 lines | 472 code | 50 blank | 35 comment | 72 complexity | 1942d2faf21166122c4a8e0235967b30 MD5 | raw file
Possible License(s): GPL-2.0, AGPL-1.0, BSD-3-Clause, GPL-3.0, LGPL-2.1
- /**
- * Summit Design Studio Panel File
- * ---------------------------------------------------------------------
- * @version 1.0
- * @author Summit Design Studio
- * @link http://summitdesignstudio.com
- * @copyright Copyright (c) Summit Design Studio
- * ---------------------------------------------------------------------
- * This file contains the jQuery script that animate the goodlayers
- * panel elements.
- * ---------------------------------------------------------------------
- */
- jQuery(document).ready(function(){
-
- // Accordion Css
- jQuery('#panel-nav li a#parent').click(function(){
- if (jQuery(this).attr('class') != 'active'){
- jQuery('#panel-nav li ul').slideUp();
- jQuery(this).next().slideToggle();
- jQuery('#panel-nav li a').removeClass('active');
- jQuery(this).addClass('active');
- }else{
- jQuery('#panel-nav li ul').slideUp();
- jQuery(this).removeClass('active');
- }
- return false;
- });
- jQuery('#panel-nav li a#children').click(function(){
- if (jQuery(this).attr('class') != 'c-active'){
- jQuery('#panel-nav li a#children').removeClass('c-active');
- jQuery(this).addClass('c-active');
- }
- var selectedDiv = jQuery('div#panel-elements').children('#'+jQuery(this).attr('rel'));
- selectedDiv.fadeIn();
- selectedDiv.siblings().not('.panel-element-head, .panel-element-tail').hide();
- return false;
- });
- jQuery('#panel-nav ul li:first a').triggerHandler('click');
- jQuery('#panel-nav ul li:first ul li:first a').triggerHandler('click');
- // Upload Button
- jQuery("input#upload_image_text").change(function(){
- jQuery(this).siblings("input[type='hidden']").val(jQuery(this).val());
- });
- jQuery('input:button.upload_image_button').click(function() {
- example_image = jQuery(this).siblings("#input-example-image");
- upload_text = jQuery(this).siblings("#upload_image_text");
- attachment_id = jQuery(this).siblings("#upload_image_attachment_id");
- tb_show('Upload Media', 'media-upload.php?post_id=&type=image&TB_iframe=true');
- window.send_to_editor = function(html){
- image_url = jQuery(html).attr('href');
- thumb_url = jQuery('img',html).attr('src');
- attid = jQuery(html).attr('attid');
-
- attachment_id.val(attid);
- example_image.html('<img src=' + thumb_url + ' />');
- upload_text.val(image_url);
- tb_remove();
- }
- return false;
- });
-
- // Mini Color
- jQuery(".color-picker").miniColors({
- change: function(hex, rgb) {
- jQuery("#console").prepend('HEX: ' + hex + ' (RGB: ' + rgb.r + ', ' + rgb.g + ', ' + rgb.b + ')<br />');
- }
-
- });
-
- // Create Sidebar
- jQuery("div#add-more-sidebar").click(function(){
- var clone_item = jQuery(this).parents('.panel-input').siblings('#selected-sidebar').find('.default-sidebar-item').clone(true);
- var clone_val = jQuery(this).siblings('input#add-more-sidebar').val();
- if(clone_val == '' || clone_val == 'type title here') return;
- clone_item.removeClass('default-sidebar-item').addClass('sidebar-item');
- clone_item.find('input').attr('name',function(){
- return jQuery(this).attr('id') + '[]';
- });
- clone_item.find('input').attr('value', clone_val);
- clone_item.find('.slider-item-text').html(clone_val);
- jQuery("#selected-sidebar").append(clone_item);
- jQuery(".sidebar-item").slideDown();
- });
- jQuery(".sidebar-item").css('display','block');
- jQuery(".panel-delete-sidebar").click(function(){
-
- var deleted_sidebar = jQuery(this);
- jQuery.confirm({
- 'message' : 'Are you sure to do this?',
- 'buttons' : {
- 'Delete' : {
- 'class' : 'confirm-yes',
- 'action': function(){
- deleted_sidebar.parents("#sidebar-item").slideUp("200",function(){
- jQuery(this).remove();
- });
- }
- },
- 'Cancel' : {
- 'class' : 'confirm-no',
- 'action': function(){ return false; }
- }
- }
- });
- });
- jQuery('input#add-more-sidebar').setBlankText();
-
- // Upload Font
- jQuery('div#add-more-font').click(function(){
- var clone_item = jQuery(this).siblings('#added-font').find('.default-font-item').clone(true);
- clone_item.removeClass('default-font-item').addClass('font-item');
- clone_item.find('input').attr('name',function(){
- return jQuery(this).attr('id') + '[]';
- });
- jQuery("#added-font").append(clone_item);
- jQuery('.font-item').slideDown();
- });
- jQuery(".font-item").css('display','block');
- jQuery(".panel-delete-font").click(function(){
- var deleted_font = jQuery(this);
-
- jQuery.confirm({
- 'message' : 'Are you sure to do this?',
- 'buttons' : {
- 'Delete' : {
- 'class' : 'confirm-yes',
- 'action': function(){
- deleted_font.parents("#font-item").slideUp('200',function(){
- jQuery(this).remove();
- });
- }
- },
- 'Cancel' : {
- 'class' : 'confirm-no',
- 'action': function(){ return false; }
- }
- }
- });
- });
- jQuery("input.upload-font-button").click(function(){
- attachment_id = jQuery(this).siblings(".font-attachment-id");
- upload_font = jQuery(this).siblings(".upload-font-text");
- font_name_box = jQuery(this).parents('#font-item').find("#gdl_upload_font");
- tb_show('Upload Media', 'media-upload.php?post_id=&TB_iframe=true');
- window.send_to_editor = function(html){
- attid = jQuery(html).attr('attid');
- font_url = jQuery(html).attr('href');
- attachment_id.val(attid);
- upload_font.val(font_url);
- jQuery.get(font_url, function(data){
- var font_family_pos = data.indexOf('"font-family":"') + 15;
- var font_family_pos_end = data.indexOf('"', font_family_pos + 1);
- var font_name = data.substring(font_family_pos, font_family_pos_end);
- font_name_box.val(font_name);
-
- var custom_font = jQuery(".gdl-panel-select-font-family").children('option:nth-child(2)');
- jQuery("<option rel='" + font_url + "' >" + "- " + font_name + "</option>").insertAfter(custom_font);
-
- tb_remove();
- });
- }
- return false;
- });
-
- //Submit Button
- jQuery("#goodlayer-panel-form").submit(function(){
- var loading = jQuery(this).find('.loading-save-changes');
- loading.addClass('now-loading');
- jQuery.post(ajaxurl,jQuery(this).serialize(),function(data){
- if( data == -1 ){
- jQuery('#panel-element-save-complete').children(".panel-element-save-text").html("Save Options Failed");
- }else{
- jQuery('#panel-element-save-complete').children(".panel-element-save-text").html("Save Options Complete");
- }
-
- var y = jQuery(window).scrollTop() + 140;
- jQuery('#panel-element-save-complete').css('top', y);
- jQuery('#panel-element-save-complete').show().delay('2000').fadeOut();
- loading.removeClass('now-loading');
- });
- return false;
- });
-
- // Import Dummies Data
- jQuery('#import-dummies-data').click(function(){
- var now_loading = jQuery(this).siblings('#import-now-loading');
- now_loading.fadeIn();
- jQuery.post(ajaxurl,{ action:'load_dummy_data' },function(data){
- if( data == 1 ){
- var y = jQuery(window).scrollTop() + 140;
- jQuery('#panel-element-save-complete').children(".panel-element-save-text").html("Import Option Complete");
- jQuery('#panel-element-save-complete').css('top', y);
- jQuery('#panel-element-save-complete').show().delay('2000').fadeOut();
- now_loading.fadeOut();
-
- }else{
-
- now_loading.hide();
- alert(data);
-
- }
-
- });
-
- });
-
- // Sliderbar
- jQuery('div[rel="sliderbar"]').each(function(){
- var bar_id = jQuery(this).attr('id');
- var init_val = jQuery(this).siblings('input[name="' + bar_id + '"]').attr('value');
- jQuery(this).slider({ min:10, max:50, value: init_val,
- slide: function(event, ui){
- jQuery(this).siblings('input[name="' + bar_id + '"]').attr('value',ui.value);
- jQuery(this).siblings('#slidertext').html(ui.value + ' px');
- }
- });
- });
-
- // Load Example Font
- jQuery(".gdl-panel-select-font-family").change(function(){
- var selected_combobox = jQuery(this);
- var selected_rel = selected_combobox.find("option:selected").attr('rel');
-
- if( typeof selected_rel === 'undefined' ){
- var sample_text = selected_combobox.parent().siblings("#panel-font-sample");
- jQuery.post(ajaxurl,{ action:'get_gdl_font_url', font: jQuery(this).val().substring(2) },function(data){
- if( data ){
- if( data.type == "Google Font" ){
- jQuery('head').append('<link rel="stylesheet" type="text/css" href="' + data.url + '" >');
- sample_text.html(URL.sample_text);
- //jQuery.fontAvailable(selected_combobox.val());
- sample_text.css('font-family',selected_combobox.val().substring(2));
- }else if( data.type == "Cufon" ){
- var script = document.createElement("script");
- script.type = "text/javascript";
- script.src = data.url;
- jQuery('head').append(script);
- // Cufon.hasFont(selected_combobox.val());
- Cufon.replace(sample_text, {fontFamily: selected_combobox.val().substring(2)});
- }
- }
- }, 'json');
- }else{
- var script = document.createElement("script");
- var sample_text = selected_combobox.parent().siblings("#panel-font-sample");
-
- script.type = "text/javascript";
- script.src = selected_rel;
- jQuery('head').append(script);
- // Cufon.hasFont(selected_combobox.val());
- Cufon.replace(sample_text, {fontFamily: selected_combobox.val().substring(2)});
- }
- });
- jQuery(".gdl-panel-select-font-family").each(function(){
- jQuery(this).triggerHandler("change");
- })
-
- // Change the style of <select>
- if (!jQuery.browser.opera) {
- jQuery('.combobox select').each(function(){
- var title = jQuery(this).attr('title');
- if( jQuery('option:selected', this).val() != '' ) title = jQuery('option:selected',this).text();
- jQuery(this)
- .css({'z-index':10,'opacity':0,'-khtml-appearance':'none'})
- .after('<span rel="combobox">' + title + '</span>')
- .change(function(){
- val = jQuery('option:selected',this).text();
- jQuery(this).next().text(val);
- })
- });
- };
-
- // Style of on off button
- jQuery("div.checkbox-switch").click(function(){
- if(jQuery(this).hasClass('checkbox-switch-on')){
- jQuery(this).removeClass('checkbox-switch-on').addClass('checkbox-switch-off');
- }else{
- jQuery(this).removeClass('checkbox-switch-off').addClass('checkbox-switch-on');
- }
- });
-
- //radioimage check-list
- jQuery('.radio-image-wrapper input').change(function(){
- jQuery(this).parent().parent().find(".check-list").removeClass("check-list");
- jQuery(this).siblings("label").children("#check-list").addClass("check-list");
-
- var panel_body = jQuery(this).parents('.panel-body');
- if( jQuery(this).val() == 'post-right-sidebar' ){
- panel_body.siblings('.gdl-default-post-left-sidebar').slideUp();
- panel_body.siblings('.gdl-default-post-right-sidebar').slideDown();
- }else if( jQuery(this).val() == 'post-left-sidebar' ){
- panel_body.siblings('.gdl-default-post-right-sidebar').slideUp();
- panel_body.siblings('.gdl-default-post-left-sidebar').slideDown();
- }else if( jQuery(this).val() == 'post-both-sidebar' ){
- panel_body.siblings('.gdl-default-post-left-sidebar').slideDown();
- panel_body.siblings('.gdl-default-post-right-sidebar').slideDown();
- }else if( jQuery(this).val() == 'post-no-sidebar' ){
- panel_body.siblings('.gdl-default-post-left-sidebar').slideUp();
- panel_body.siblings('.gdl-default-post-right-sidebar').slideUp();
- }
-
- if( jQuery(this).val() == 'page-right-sidebar' ){
- panel_body.siblings('.gdl-default-page-left-sidebar').slideUp();
- panel_body.siblings('.gdl-default-page-right-sidebar').slideDown();
- }else if( jQuery(this).val() == 'page-left-sidebar' ){
- panel_body.siblings('.gdl-default-page-right-sidebar').slideUp();
- panel_body.siblings('.gdl-default-page-left-sidebar').slideDown();
- }else if( jQuery(this).val() == 'page-both-sidebar' ){
- panel_body.siblings('.gdl-default-page-left-sidebar').slideDown();
- panel_body.siblings('.gdl-default-page-right-sidebar').slideDown();
- }else if( jQuery(this).val() == 'page-no-sidebar' ){
- panel_body.siblings('.gdl-default-page-left-sidebar').slideUp();
- panel_body.siblings('.gdl-default-page-right-sidebar').slideUp();
- }
- })
- jQuery('.radio-image-wrapper input:checked').each(function(){
- jQuery(this).triggerHandler("change");
- });
-
- jQuery('.body-gdl_background_pattern .radio-image-wrapper label').append("<a href='#' class='deleteimage'>x</a>");
-
- jQuery('.deleteimage').live('click', function() {
- var fimage = jQuery(this).siblings('img').attr("src");
- jQuery.ajax({
- type: 'POST',
- data: {
- action: 'deleteimage',
- fimg: fimage
- },
- url: '../wp-content/themes/k2/include/pattern-delete.php',
- success: function(msg) {
- alert(msg);
- }
- });
- jQuery(this).closest(".radio-image-wrapper").remove();
- });
-
- //background combobox
- jQuery('#gdl_background_style').change(function(){
- if(jQuery(this).val() == 'Pattern'){
- jQuery('#gdl_background_pattern_collection').closest('.panel-body').slideDown();
- jQuery('#gdl_background_pattern_collection').val("K2 Default Collection");
- jQuery(this).parents('.panel-body').siblings('.gdl_background_pattern_div').slideDown();
- jQuery(this).parents('.panel-body').siblings('.body-gdl_background_custom').slideUp();
- }else if(jQuery(this).val() == 'Custom Image'){
- jQuery('#gdl_background_pattern_collection').closest('.panel-body').slideUp();
- jQuery(this).parents('.panel-body').siblings('.gdl_background_pattern_div').slideUp();
- jQuery(this).parents('.panel-body').siblings('.body-gdl_background_custom').slideDown();
- patternhide();
- }else{
- jQuery('#gdl_background_pattern_collection').closest('.panel-body').slideUp();
- jQuery(this).parents('.panel-body').siblings('.gdl_background_pattern_div').slideUp();
- jQuery(this).parents('.panel-body').siblings('.body-gdl_background_custom').slideUp();
- patternhide();
- }
- });
- jQuery('#gdl_background_style').each(function(){
- if(jQuery(this).val() == 'Pattern'){
- jQuery('#gdl_background_pattern_collection').closest('.panel-body').css('display','block');
- jQuery(this).parents('.panel-body').siblings('.gdl_background_pattern_div').css('display','none');
- jQuery(this).parents('.panel-body').siblings('.body-gdl_background_custom').css('display','none');
- }else if(jQuery(this).val() == 'Custom Image'){
- jQuery('#gdl_background_pattern_collection').closest('.panel-body').css('display','none');
- jQuery(this).parents('.panel-body').siblings('.gdl_background_pattern_div').css('display','none');
- jQuery(this).parents('.panel-body').siblings('.body-gdl_background_custom').css('display','block');
- patternhide();
- }else{
- jQuery('#gdl_background_pattern_collection').closest('.panel-body').css('display','none');
- jQuery(this).parents('.panel-body').siblings('.gdl_background_pattern_div').css('display','none');
- jQuery(this).parents('.panel-body').siblings('.body-gdl_background_custom').css('display','none');
- patternhide();
- }
- });
-
-
-
- //PATTERN COLLECTION
- jQuery('#gdl_background_pattern_collection').change(function(){
- //alert(jQuery(this).val());
- if(jQuery(this).val() == 'K2 Default Collection'){
- jQuery('.gdl_background_pattern_div').slideDown();
- jQuery('.gdl_background_pattern_div2').slideUp();
- jQuery('.gdl_background_pattern_div3').slideUp();
- jQuery('.gdl_background_pattern_div4').slideUp();
- jQuery('.body-gdl_custom_pattern').slideUp();
- jQuery('.gdl_background_pattern_div5').slideUp();
- }else if(jQuery(this).val() == 'Subtle Patterns Volume 1'){
- jQuery('.gdl_background_pattern_div').slideUp();
- jQuery('.gdl_background_pattern_div2').slideDown();
- jQuery('.gdl_background_pattern_div3').slideUp();
- jQuery('.gdl_background_pattern_div4').slideUp();
- jQuery('.body-gdl_custom_pattern').slideUp();
- jQuery('.gdl_background_pattern_div5').slideUp();
- }else if(jQuery(this).val() == 'Subtle Patterns Volume 2'){
- jQuery('.gdl_background_pattern_div').slideUp();
- jQuery('.gdl_background_pattern_div2').slideUp();
- jQuery('.gdl_background_pattern_div3').slideDown();
- jQuery('.gdl_background_pattern_div4').slideUp();
- jQuery('.body-gdl_custom_pattern').slideUp();
- jQuery('.gdl_background_pattern_div5').slideUp();
- }else if(jQuery(this).val() == 'Subtle Patterns Volume 3'){
- jQuery('.gdl_background_pattern_div').slideUp();
- jQuery('.gdl_background_pattern_div2').slideUp();
- jQuery('.gdl_background_pattern_div3').slideUp();
- jQuery('.gdl_background_pattern_div4').slideDown();
- jQuery('.body-gdl_custom_pattern').slideUp();
- jQuery('.gdl_background_pattern_div5').slideUp();
- }else if(jQuery(this).val() == 'Miscellaneous'){
- jQuery('.gdl_background_pattern_div').slideUp();
- jQuery('.gdl_background_pattern_div2').slideUp();
- jQuery('.gdl_background_pattern_div3').slideUp();
- jQuery('.gdl_background_pattern_div4').slideUp();
- jQuery('.body-gdl_custom_pattern').slideDown();
- jQuery('.gdl_background_pattern_div5').slideDown();
- }else{
- jQuery('.gdl_background_pattern_div').slideUp();
- jQuery('.gdl_background_pattern_div2').slideUp();
- jQuery('.gdl_background_pattern_div3').slideUp();
- jQuery('.gdl_background_pattern_div4').slideUp();
- jQuery('.body-gdl_custom_pattern').slideUp();
- jQuery('.gdl_background_pattern_div5').slideUp();
- }
- });
- jQuery('#gdl_background_pattern_collection').each(function(){
- if(jQuery('#gdl_background_style').val()=="Pattern"&&jQuery(this).val() == 'K2 Default Collection'){
- jQuery('.gdl_background_pattern_div').css('display','block');
- jQuery('.gdl_background_pattern_div2').css('display','none');
- jQuery('.gdl_background_pattern_div3').css('display','none');
- jQuery('.gdl_background_pattern_div4').css('display','none');
- jQuery('.body-gdl_custom_pattern').css('display','none');
- jQuery('.gdl_background_pattern_div5').css('display','none');
- }else if(jQuery('#gdl_background_style').val()=="Pattern"&&jQuery(this).val() == 'Subtle Patterns Volume 1'){
- jQuery('.gdl_background_pattern_div').css('display','none');
- jQuery('.gdl_background_pattern_div2').css('display','block');
- jQuery('.gdl_background_pattern_div3').css('display','none');
- jQuery('.gdl_background_pattern_div4').css('display','none');
- jQuery('.body-gdl_custom_pattern').css('display','none');
- jQuery('.gdl_background_pattern_div5').css('display','none');
- }else if(jQuery('#gdl_background_style').val()=="Pattern"&&jQuery(this).val() == 'Subtle Patterns Volume 2'){
- jQuery('.gdl_background_pattern_div').css('display','none');
- jQuery('.gdl_background_pattern_div2').css('display','none');
- jQuery('.gdl_background_pattern_div3').css('display','block');
- jQuery('.gdl_background_pattern_div4').css('display','none');
- jQuery('.body-gdl_custom_pattern').css('display','none');
- jQuery('.gdl_background_pattern_div5').css('display','none');
- }else if(jQuery('#gdl_background_style').val()=="Pattern"&&jQuery(this).val() == 'Subtle Patterns Volume 3'){
- jQuery('.gdl_background_pattern_div').css('display','none');
- jQuery('.gdl_background_pattern_div2').css('display','none');
- jQuery('.gdl_background_pattern_div3').css('display','none');
- jQuery('.gdl_background_pattern_div4').css('display','block');
- jQuery('.body-gdl_custom_pattern').css('display','none');
- jQuery('.gdl_background_pattern_div5').css('display','none');
- }else if(jQuery('#gdl_background_style').val()=="Pattern"&&jQuery(this).val() == 'Miscellaneous'){
- jQuery('.gdl_background_pattern_div').css('display','none');
- jQuery('.gdl_background_pattern_div2').css('display','none');
- jQuery('.gdl_background_pattern_div3').css('display','none');
- jQuery('.gdl_background_pattern_div4').css('display','none');
- jQuery('.body-gdl_custom_pattern').css('display','block');
- jQuery('.gdl_background_pattern_div5').css('display','block');
- }else{
- jQuery('.gdl_background_pattern_div').css('display','none');
- jQuery('.gdl_background_pattern_div2').css('display','none');
- jQuery('.gdl_background_pattern_div3').css('display','none');
- jQuery('.gdl_background_pattern_div4').css('display','none');
- jQuery('.body-gdl_custom_pattern').css('display','none');
- jQuery('.gdl_background_pattern_div5').css('display','none');
- }
- });
-
-
-
-
- // Load Default Color
- jQuery('#gdl_load_default_color_button').click(function(){
- jQuery.confirm({
- 'message' : 'Are you sure to do this?',
- 'buttons' : {
- 'Yes' : {
- 'class' : 'confirm-yes',
- 'action': function(){
- jQuery('.color-picker').each(function(){
- jQuery(this).val(jQuery(this).attr('default'));
- jQuery(this).trigger('keyup.miniColors');
- });
-
- }
- },
- 'No' : {
- 'class' : 'confirm-no',
- 'action': function(){ return false; }
- }
- }
- });
- });
- });
- function patternhide(){
- jQuery('.gdl_background_pattern_div').slideUp();
- jQuery('.gdl_background_pattern_div2').slideUp();
- jQuery('.gdl_background_pattern_div3').slideUp();
- jQuery('.gdl_background_pattern_div4').slideUp();
- jQuery('.gdl_background_pattern_div5').slideUp();
- jQuery('.body-gdl_custom_pattern').slideUp();
- }
- // a function to check if selected font is currenty available for use
- (function($) {
-
- var element;
- $.fontAvailable = function(fontName) {
- var width, height;
-
- // prepare element, and append to DOM
- if(!element) {
- element = $( document.createElement( 'span' ))
- .css( 'visibility', 'hidden' )
- .css( 'position', 'absolute' )
- .css( 'top', '-10000px' )
- .css( 'left', '-10000px' )
- .html( 'abcdefghijklmnopqrstuvwxyz' )
- .appendTo( document.body );
- }
-
- // get the width/height of element after applying a fake font
- width = element
- .css('font-family', '__FAKEFONT__')
- .width();
- height = element.height();
-
- // set test font
- element.css('font-family', fontName);
-
- return width !== element.width() || height !== element.height();
- }
-
- $.fn.setBlankText = function(){
- this.live("blur", function(){
- var default_value = $(this).attr("rel");
- if ($(this).val() == ""){
- $(this).val(default_value);
- $(this).css('font-style','italic');
- $(this).css('color','#999');
- }
-
- }).live("focus", function(){
- var default_value = $(this).attr("rel");
- if ($(this).val() == default_value){
- $(this).val("");
- $(this).css('font-style','normal');
- $(this).css('color','#444');
- }
- });
- }
- })(jQuery);