cff-admin-scripts.js
183 lines
| 1 | jQuery(document).ready(function($) { |
| 2 | |
| 3 | //Tooltips |
| 4 | jQuery('#cff-admin .cff-tooltip-link').click(function(){ |
| 5 | jQuery(this).closest('tr, h3, div').find('.cff-tooltip').slideToggle(); |
| 6 | }); |
| 7 | |
| 8 | //Toggle Access Token field |
| 9 | if( jQuery('#cff_show_access_token').is(':checked') ) jQuery('.cff-access-token-hidden').show(); |
| 10 | jQuery('#cff_show_access_token').change(function(){ |
| 11 | jQuery('.cff-access-token-hidden').fadeToggle(); |
| 12 | }); |
| 13 | |
| 14 | |
| 15 | //Is this a page, group or profile? |
| 16 | var cff_page_type = jQuery('.cff-page-type select').val(), |
| 17 | $cff_page_type_options = jQuery('.cff-page-options'), |
| 18 | $cff_profile_error = jQuery('.cff-profile-error.cff-page-type'); |
| 19 | |
| 20 | //Should we show anything initially? |
| 21 | if(cff_page_type !== 'page') $cff_page_type_options.hide(); |
| 22 | if(cff_page_type == 'profile') $cff_profile_error.show(); |
| 23 | |
| 24 | //When page type is changed show the relevant item |
| 25 | jQuery('.cff-page-type').change(function(){ |
| 26 | cff_page_type = jQuery('.cff-page-type select').val(); |
| 27 | |
| 28 | if( cff_page_type !== 'page' ) { |
| 29 | $cff_page_type_options.fadeOut(function(){ |
| 30 | if( cff_page_type == 'profile' ) { |
| 31 | $cff_profile_error.fadeIn(); |
| 32 | } else { |
| 33 | $cff_profile_error.fadeOut(); |
| 34 | } |
| 35 | }); |
| 36 | |
| 37 | } else { |
| 38 | $cff_page_type_options.fadeIn(); |
| 39 | $cff_profile_error.fadeOut(); |
| 40 | } |
| 41 | }); |
| 42 | |
| 43 | |
| 44 | //Post limit manual setting |
| 45 | var cff_limit_setting = jQuery('#cff_limit_setting').val(), |
| 46 | cff_post_limit = jQuery('#cff_post_limit').val(), |
| 47 | $cff_limit_manual_settings = jQuery('#cff_limit_manual_settings'); |
| 48 | if( typeof cff_post_limit === 'undefined' ) cff_post_limit = ''; |
| 49 | |
| 50 | //Should we show anything initially? |
| 51 | if(cff_limit_setting == 'auto') $cff_limit_manual_settings.hide(); |
| 52 | if(cff_post_limit.length > 0){ |
| 53 | $cff_limit_manual_settings.show(); |
| 54 | jQuery('#cff_limit_setting').val('manual'); |
| 55 | } |
| 56 | |
| 57 | jQuery('#cff_limit_setting').change(function(){ |
| 58 | cff_limit_setting = jQuery('#cff_limit_setting').val(); |
| 59 | |
| 60 | if(cff_limit_setting == 'auto'){ |
| 61 | $cff_limit_manual_settings.hide(); |
| 62 | jQuery('#cff_post_limit').val(''); |
| 63 | } else { |
| 64 | $cff_limit_manual_settings.show(); |
| 65 | } |
| 66 | }); |
| 67 | |
| 68 | |
| 69 | //Header icon |
| 70 | //Icon type |
| 71 | //Check the saved icon type on page load and display it |
| 72 | jQuery('#cff-header-icon-example').removeClass().addClass('fa fa-' + jQuery('#cff-header-icon').val() ); |
| 73 | //Change the header icon when selected from the list |
| 74 | jQuery('#cff-header-icon').change(function() { |
| 75 | var $self = jQuery(this); |
| 76 | |
| 77 | jQuery('#cff-header-icon-example').removeClass().addClass('fa fa-' + $self.val() ); |
| 78 | }); |
| 79 | |
| 80 | |
| 81 | //Test Facebook API connection button |
| 82 | jQuery('#cff-api-test').click(function(e){ |
| 83 | e.preventDefault(); |
| 84 | //Show the JSON |
| 85 | jQuery('#cff-api-test-result textarea').css('display', 'block'); |
| 86 | }); |
| 87 | |
| 88 | |
| 89 | //If 'Others only' is selected then show a note |
| 90 | var $cffOthersOnly = jQuery('#cff-others-only'); |
| 91 | |
| 92 | if ( jQuery("#cff_show_others option:selected").val() == 'onlyothers' ) $cffOthersOnly.show(); |
| 93 | |
| 94 | jQuery("#cff_show_others").change(function() { |
| 95 | if ( jQuery("#cff_show_others option:selected").val() == 'onlyothers' ) { |
| 96 | $cffOthersOnly.show(); |
| 97 | } else { |
| 98 | $cffOthersOnly.hide(); |
| 99 | } |
| 100 | }); |
| 101 | |
| 102 | |
| 103 | //If '__ days ago' date is selected then show 'Translate this' |
| 104 | var $cffTranslateDate = jQuery('#cff-translate-date'); |
| 105 | |
| 106 | if ( jQuery("#cff-date-formatting option:selected").val() == '1' ) $cffTranslateDate.show(); |
| 107 | |
| 108 | jQuery("#cff-date-formatting").change(function() { |
| 109 | if ( jQuery("#cff-date-formatting option:selected").val() == '1' ) { |
| 110 | $cffTranslateDate.fadeIn(); |
| 111 | } else { |
| 112 | $cffTranslateDate.fadeOut(); |
| 113 | } |
| 114 | }); |
| 115 | |
| 116 | //Add the color picker |
| 117 | if( jQuery('.cff-colorpicker').length > 0 ) jQuery('.cff-colorpicker').wpColorPicker(); |
| 118 | |
| 119 | |
| 120 | //Mobile width |
| 121 | var cff_feed_width = jQuery('#cff-admin #cff_feed_width').val(), |
| 122 | $cff_width_options = jQuery('#cff-admin #cff_width_options'); |
| 123 | |
| 124 | if (typeof cff_feed_width !== 'undefined') { |
| 125 | //Show initially if a width is set |
| 126 | if(cff_feed_width.length > 1 && cff_feed_width !== '100%') $cff_width_options.show(); |
| 127 | |
| 128 | jQuery('#cff_feed_width').change(function(){ |
| 129 | cff_feed_width = jQuery(this).val(); |
| 130 | |
| 131 | if( cff_feed_width.length < 2 || cff_feed_width == '100%' ) { |
| 132 | $cff_width_options.slideUp(); |
| 133 | } else { |
| 134 | $cff_width_options.slideDown(); |
| 135 | } |
| 136 | }); |
| 137 | } |
| 138 | |
| 139 | //Scroll to hash for quick links |
| 140 | jQuery('#cff-admin a').click(function() { |
| 141 | if (location.pathname.replace(/^\//,'') == this.pathname.replace(/^\//,'') && location.hostname == this.hostname) { |
| 142 | var target = jQuery(this.hash); |
| 143 | target = target.length ? target : this.hash.slice(1); |
| 144 | if (target.length) { |
| 145 | jQuery('html,body').animate({ |
| 146 | scrollTop: target.offset().top |
| 147 | }, 500); |
| 148 | return false; |
| 149 | } |
| 150 | } |
| 151 | }); |
| 152 | |
| 153 | //Shortcode tooltips |
| 154 | jQuery('#cff-admin label').click(function(){ |
| 155 | var $sbi_shortcode = jQuery(this).siblings('.cff_shortcode'); |
| 156 | if($sbi_shortcode.is(':visible')){ |
| 157 | jQuery(this).siblings('.cff_shortcode').css('display','none'); |
| 158 | } else { |
| 159 | jQuery(this).siblings('.cff_shortcode').css('display','block'); |
| 160 | } |
| 161 | }); |
| 162 | jQuery('#cff-admin label').hover(function(){ |
| 163 | if( jQuery(this).siblings('.cff_shortcode').length > 0 ){ |
| 164 | jQuery(this).attr('title', 'Click for shortcode option').append('<code class="cff_shortcode_symbol">[]</code>'); |
| 165 | } |
| 166 | }, function(){ |
| 167 | jQuery(this).find('.cff_shortcode_symbol').remove(); |
| 168 | }); |
| 169 | |
| 170 | //Open/close the expandable option sections |
| 171 | jQuery('.cff-expandable-options').hide(); |
| 172 | jQuery('.cff-expand-button a').on('click', function(e){ |
| 173 | e.preventDefault(); |
| 174 | var $self = jQuery(this); |
| 175 | $self.parent().next('.cff-expandable-options').toggle(); |
| 176 | if( $self.text().indexOf('Show') !== -1 ){ |
| 177 | $self.text( $self.text().replace('Show', 'Hide') ); |
| 178 | } else { |
| 179 | $self.text( $self.text().replace('Hide', 'Show') ); |
| 180 | } |
| 181 | }); |
| 182 | |
| 183 | }); |