WordPress.org

Plugin Directory

Changeset 548996


Ignore:
Timestamp:
05/25/12 15:24:14 (5 years ago)
Author:
epicalex
Message:

complete js rewrite

Location:
slingpic/trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • slingpic/trunk/readme.txt

    r495616 r548996  
    99Tested up to:      3.3.1 
    1010Stable tag:        3.0 
    11 Version:           1.01 
     11Version:           2 
    1212 
    1313== Description == 
     
    1919 
    2020== Upgrade Notice == 
     21 
     22Version 2 has been rewritten from the ground up and now includes new variables and sharing services. Please check the options page to make sure you're chosen services are still selected.  
    2123 
    2224== Screenshots == 
     
    3133 
    3234== Changelog == 
     35 
     36= 2.0 = 
     37 
     38*SlingPic js script has been completely rewritten 
     39*New services added 
     40*New Style for share widget 
     41*All required scripts and styles moved to SlingPic CDN 
     42*Scripts loaded in footer to speed up page load 
    3343 
    3444= 1.01 = 
  • slingpic/trunk/slingpic.php

    r494576 r548996  
    6060        add_action( 'admin_init', array( &$this, 'register_settings' ) ); 
    6161        add_action( 'wp_enqueue_scripts', array( &$this, 'scripts' ) ); 
    62         add_action( 'wp_head', array( &$this, 'script_vars' ) ); 
     62        add_action( 'wp_footer', array( &$this, 'script_vars' ) ); 
    6363        add_action( 'wp_print_styles', array( &$this, 'styles' ) ); 
    6464         
     
    350350         
    351351         $this->settings['animation'] = array( 
     352            'section' => 'advanced', 
    352353            'title'   => __( 'Animation Type' ), 
    353354            'type'    => 'radio', 
     
    358359                'slide' => 'Slide', 
    359360                'always-on' => 'Always On' 
    360             ), 
    361             'section' => 'advanced', 
     361            ) 
    362362        );   
    363363 
    364364        $this->settings['animationEffects'] = array( 
     365            'section' => 'advanced', 
    365366            'title'   => __( 'Animation Effects' ), 
    366367            'desc'    => __( 'Turn animations on or off.' ), 
     
    370371                '0' => 'Off', 
    371372                '1' => 'On' 
    372             ), 
    373             'section' => 'advanced', 
     373            ) 
    374374        );               
    375375     
     
    387387     
    388388         $this->settings['position'] = array( 
     389            'section' => 'advanced', 
    389390            'title'   => __( 'Position of Bar' ), 
    390391            'desc'    => __( 'Should the bar appear at the top or bottom?' ), 
     
    394395                'top' => 'Top', 
    395396                'bottom' => 'Bottom', 
    396             ), 
    397             'section' => 'advanced', 
     397            ) 
    398398        );       
    399399         
    400400        $this->settings['sliderOverlayColor'] = array( 
     401            'section' => 'advanced', 
    401402            'title'   => __( 'Overlay Colour' ), 
    402403            'desc'    => __( 'Choose the colour of the bar which appears over the image.' ), 
    403404            'std'     => '#000000', 
    404405            'type'    => 'colour', 
    405             'section' => 'advanced' 
    406406        ); 
    407407         
    408408        $this->settings['popupBox'] = array( 
     409            'section' => 'advanced', 
    409410            'title'   => __( 'Privacy Popup Speed' ), 
    410411            'desc'    => __( 'How fast should the privacy popup appear?' ), 
     
    415416                'fast' => 'Fast', 
    416417            ), 
    417             'section' => 'advanced', 
    418         );   
    419  
    420         $this->settings['shareClasses'] = array( 
    421             'title'   => __( 'Apply to which Image Class?' ), 
    422             'desc'    => __( 'The image class that the plugin will work on' ), 
    423             'std'     => 'img', 
    424             'type'    => 'text', 
    425             'section' => 'general' 
    426         );   
    427          
     418        );   
     419 
     420        $this->settings['showShare'] = array( 
     421            'section' => 'general', 
     422            'title'   => __( 'Turn on image sharing?' ), 
     423            'desc'    => __( 'Quickly activate or deactivate image sharing.' ), 
     424            'std'     => 'true', 
     425            'type'    => 'radio', 
     426            'choices' => array( 
     427                'true' => 'On', 
     428                'false' => 'Off', 
     429            ), 
     430        );   
     431 
    428432        $this->settings['share_sites_default'] = array( 
    429433            'section' => 'general', 
    430434            'title'   => __( 'Default Share Options' ), 
    431             'desc'    => __( 'Choose the main 3 sharing options here.' ), 
     435            'desc'    => __( 'Choose the main sharing options here.' ), 
    432436            'type'    => 'social_choice', 
    433437            'choices' => array ( 
    434                 'twitter'   => 'Twitter', 
    435                 'facebook'  => 'Facebook', 
    436                 'email'     => 'Email', 
    437                 'delicious' => 'Delicious', 
    438                 'designfloat' => 'Designfloat', 
    439                 'digg'      => 'Digg', 
    440                 'friendfeed' => 'Friendfeed', 
    441                 'linkedin'  => 'Linkedin', 
    442                 'myspace'   => 'Myspace', 
    443                 'netvibes'  => 'Netvibes', 
    444                 'reddit'    => 'Reddit', 
    445                 'stumbleupon' => 'Stumbleupon', 
    446                 'technorati' => 'Technorati', 
    447                 'yahoobuzz' => 'Yahoobuzz', 
     438                'facebook'      => 'Facebook', 
     439                'twitter'       => 'Twitter', 
     440                'tumblr'        => 'Tumblr', 
     441                'email'         => 'Email', 
     442                'googleplus'    => 'Google+', 
     443                'delicious'     => 'Delicious', 
     444                'linkedin'      => 'Linkedin', 
     445                'virb'          => 'Virb', 
     446                'posterous'     => 'Posterous', 
     447                'evernote'      => 'Evernote', 
     448                'stumbleupon'   => 'Stumbleupon', 
     449                'reddit'        => 'Reddit', 
     450                'gmail'         => 'Gmail', 
     451                'friendfeed'    => 'Friendfeed', 
     452                'orkut'         => 'Orkut', 
     453                'technorati'    => 'Technorati', 
     454                'yahoomail'     => 'Yahoomail', 
     455                'blogger'       => 'Blogger', 
     456                'netvibes'      => 'Netvibes', 
     457                'digg'          => 'Digg', 
     458                'designfloat'   => 'Designfloat' 
    448459            ), 
    449460            'std'     =>  array ( 
     
    460471            'type'    => 'social_choice', 
    461472            'choices' => array ( 
    462                 'twitter'   => 'Twitter', 
    463                 'facebook'  => 'Facebook', 
    464                 'email'     => 'Email', 
    465                 'delicious' => 'Delicious', 
    466                 'designfloat' => 'Designfloat', 
    467                 'digg'      => 'Digg', 
    468                 'friendfeed' => 'Friendfeed', 
    469                 'linkedin'  => 'Linkedin', 
    470                 'myspace'   => 'Myspace', 
    471                 'netvibes'  => 'Netvibes', 
    472                 'reddit'    => 'Reddit', 
    473                 'stumbleupon' => 'Stumbleupon', 
    474                 'technorati' => 'Technorati', 
    475                 'yahoobuzz' => 'Yahoobuzz', 
     473                'facebook'      => 'Facebook', 
     474                'twitter'       => 'Twitter', 
     475                'tumblr'        => 'Tumblr', 
     476                'email'         => 'Email', 
     477                'googleplus'    => 'Google+', 
     478                'delicious'     => 'Delicious', 
     479                'linkedin'      => 'Linkedin', 
     480                'virb'          => 'Virb', 
     481                'posterous'     => 'Posterous', 
     482                'evernote'      => 'Evernote', 
     483                'stumbleupon'   => 'Stumbleupon', 
     484                'reddit'        => 'Reddit', 
     485                'gmail'         => 'Gmail', 
     486                'friendfeed'    => 'Friendfeed', 
     487                'orkut'         => 'Orkut', 
     488                'technorati'    => 'Technorati', 
     489                'yahoomail'     => 'Yahoomail', 
     490                'blogger'       => 'Blogger', 
     491                'netvibes'      => 'Netvibes', 
     492                'digg'          => 'Digg', 
     493                'designfloat'   => 'Designfloat' 
    476494            ), 
    477495            'std'     =>  array ( 
     
    479497                'facebook'  => 1, 
    480498                'email'     => 1, 
    481                 'delicious' => 1, 
    482                 'designfloat' => 1, 
    483                 'digg'      => 1, 
    484                 'friendfeed' => 1, 
    485                 'linkedin'  => 1, 
    486                 'myspace'   => 1, 
    487                 'netvibes'  => 1, 
    488                 'reddit'    => 1, 
    489                 'stumbleupon' => 1, 
    490                 'technorati' => 1, 
    491                 'yahoobuzz' => 1, 
    492             ) 
     499            ) 
     500        ); 
     501 
     502        $this->settings['alignShare'] = array( 
     503            'section' => 'general', 
     504            'title'   => __( 'Left or Right Align?' ), 
     505            'desc'    => __( 'Align the sharing options to the right or the left.' ), 
     506            'std'     => 'left', 
     507            'type'    => 'radio', 
     508            'choices' => array( 
     509                'left' => 'Left', 
     510                'right' => 'Right', 
     511            ), 
     512        );   
     513 
     514        $this->settings['dontShow'] = array( 
     515            'section' => 'general', 
     516            'title'   => __( 'Filter out certain image classes?' ), 
     517            'desc'    => __( 'The image classes that the plugin will filter out. Enter a comma separated list.' ), 
     518            'std'     => 'dontshow', 
     519            'type'    => 'text', 
     520        );   
     521 
     522        $this->settings['minShareWidth'] = array( 
     523            'section' => 'general', 
     524            'title'   => __( 'Minimum image width?' ), 
     525            'desc'    => __( 'The minimum width of an image in pixels to add the share tool to.' ), 
     526            'std'     => '350', 
     527            'type'    => 'text', 
     528        );   
     529 
     530        $this->settings['minShareHeight'] = array( 
     531            'section' => 'general', 
     532            'title'   => __( 'Minimum image height?' ), 
     533            'desc'    => __( 'The minimum height of an image in pixels to add the share tool to.' ), 
     534            'std'     => '350', 
     535            'type'    => 'text', 
    493536        ); 
    494537         
     
    497540         
    498541        $this->settings['spanWidth'] = array( 
     542            'section' => 'advanced', 
    499543            'title'   => __( 'Image Span Width' ), 
    500544            'desc'    => __( 'What percentage of the image should the bar cover?' ), 
    501545            'type'    => 'text', 
    502546            'std'     => '100%', 
    503             'section' => 'advanced', 
    504547        );   
    505548 
    506549        $this->settings['className'] = array( 
     550            'section' => 'advanced', 
    507551            'title'   => __( 'What class to assign to caption' ), 
    508552            'desc'    => __( 'Useful for adding custom CSS.' ), 
    509553            'std'     => '', 
    510554            'type'    => 'text', 
    511             'section' => 'advanced' 
    512555        );   
    513556 
    514557        $this->settings['prefix'] = array( 
     558            'section' => 'advanced', 
    515559            'title'   => __( 'Custom HTML prefix' ), 
    516560            'desc'    => __( 'Add custom HTML or text to the beginning of the overlay.' ), 
    517561            'std'     => '', 
    518562            'type'    => 'text', 
    519             'section' => 'advanced' 
    520563        );   
    521564         
     
    591634    public function scripts() { 
    592635         
    593         wp_deregister_script( 'jquery' ); 
    594         wp_register_script( 'jquery', 'http://code.jquery.com/jquery-latest.min.js'); 
    595636        wp_enqueue_script( 'jquery' ); 
    596         wp_register_script( 'slingpic', 'http://cdn.slingpic.com/slingpic.js', array('jquery')); 
    597         wp_enqueue_script( 'slingpic' ); 
    598      
    599     } 
    600      
     637     
     638    } 
     639 
    601640    public function script_vars() { 
    602641 
    603         $shareOptions = get_option( 'slingpic_options' ); 
     642        $shareOptions = get_option('slingpic_options'); 
    604643        $shareDefault = $shareOptions['share_sites_default']; 
    605         $shareBox = $shareOptions['share_sites_box']; 
    606          
    607         echo '<script type="text/javascript"> 
    608          
    609         var shareDefault = ['; 
    610             foreach ( $shareDefault as $site => $value ) 
    611             echo '"' . $site . '", '; 
    612              
    613         echo ']; 
    614          
    615         var shareBox = ['; 
    616             foreach ( $shareBox as $site => $value ) 
    617             echo '"' . $site . '", '; 
    618              
    619         echo ']; 
    620          
    621         </script>'; 
     644        $shareBox = $shareOptions['share_sites_box']; ?> 
     645         
     646        <script src="http://cdn.slingpic.com/plugin/jquery.slingPic.js"></script> 
     647        <script> 
     648            jQuery("img").slingPic({ 
     649                primary_links: [<?php   foreach ( $shareDefault as $site => $value ) 
     650                echo '"' . $site . '", '; ?>], 
     651                secondary_links: [<?php foreach ( $shareBox as $site => $value ) 
     652                echo '"' . $site . '", '; ?>], 
     653                minShareWidth: <?php echo $shareOptions['minShareWidth'] ;?>, // Minimum img width to show share 
     654                minShareHeight: <?php echo $shareOptions['minShareHeight'] ;?>, // Minimum img height to show share 
     655                alignShare: '<?php echo $shareOptions['alignShare'] ;?>', // 'left' or 'right' only 
     656                showShare: <?php echo $shareOptions['showShare'] ;?>, 
     657                dontShow: '<?php echo $shareOptions['dontShow'] ;?>' // Ability to filter out certain images again (only use a class) 
     658            }); 
     659        </script> 
     660 
     661        <?php    
    622662    } 
    623663     
     
    636676 
    637677    /** 
    638     * Styling for the options page 
     678    * Styling for the front 
    639679    * 
    640680    * @since 1.0 
    641681    */ 
    642682    public function styles() { 
    643          
     683 
    644684    } 
    645685     
Note: See TracChangeset for help on using the changeset viewer.