WordPress.org

Plugin Directory

Changeset 1288395


Ignore:
Timestamp:
11/18/15 02:19:04 (2 years ago)
Author:
darkwhispering
Message:

Updated icons, removed 3 networks, added 3 new networks

Location:
ep-social-widget
Files:
28 added
30 deleted
11 edited
1 copied

Legend:

Unmodified
Added
Removed
  • ep-social-widget/tags/1.5.0/ep_social_settings.php

    r837420 r1288395  
    33class epSocialSettings { 
    44 
    5     function __construct() { 
     5    function __construct() 
     6    { 
    67        // Folder for user uploaded icons 
    78        $wp_upload_dir = wp_upload_dir(); 
    8         $this->icondir = $wp_upload_dir['basedir'].'/epsocial_icons/'; 
    9         $this->iconurl = $wp_upload_dir['baseurl'].'/epsocial_icons/'; 
    10     } 
    11  
    12     function epsocial_panel() { 
    13         if (!current_user_can('manage_options'))  { 
    14             wp_die( __('You do not have sufficient permissions to access this page.') ); 
    15         } 
    16     ?> 
     9        $this->icondir = $wp_upload_dir['basedir'] . '/epsocial_icons/'; 
     10        $this->iconurl = $wp_upload_dir['baseurl'] . '/epsocial_icons/'; 
     11    } 
     12 
     13    function epsocial_panel() 
     14    { 
     15        if ( ! current_user_can( 'manage_options' ) ) 
     16        { 
     17            wp_die( __( 'You do not have sufficient permissions to access this page.' ) ); 
     18        } 
     19        ?> 
    1720        <div class="wrap ep-social"> 
    18             <h2><?php echo __('EP Social Widget settings'); ?></h2> 
    19              
    20             <?php if(!empty($_POST)) : ?> 
     21            <h2><?php _e( 'EP Social Widget settings' ); ?></h2> 
     22 
     23            <?php if ( ! empty( $_POST ) ) : ?> 
    2124                <?php 
    22                     if(!empty($_POST['submit'])) { 
    23                         $response = $this->epsocial_save($_POST); 
    24                     } elseif (!empty($_POST['delete'])) { 
    25                         $response = $this->epsocial_delete($_POST); 
     25                    if ( ! empty( $_POST['submit'] ) ) 
     26                    { 
     27                        $response = $this->epsocial_save( $_POST ); 
     28                    } 
     29                    elseif ( ! empty( $_POST['delete'] ) ) 
     30                    { 
     31                        $response = $this->epsocial_delete( $_POST ); 
    2632                    } 
    2733                ?> 
    2834                <div class="<?php echo $response['status']; ?>"> 
    2935                    <ul> 
    30                     <?php foreach($response['msg'] as $msg) : ?> 
     36                    <?php foreach ( $response['msg'] as $msg ) : ?> 
    3137                        <li><?php echo $msg; ?></li> 
    3238                    <?php endforeach; ?> 
     
    3440                </div> 
    3541            <?php endif; ?> 
    36              
     42 
    3743            <?php 
    3844 
    3945            ?> 
    40              
    41             <h3>Add new network</h3> 
     46 
     47            <h3><?php _e( 'Add new network' ); ?></h3> 
    4248            <p> 
    43                 The default icon is 25x25 pixels. The upload does <strong>NOT</strong> resize your images so if you want your icons in the same size you have to resize them yourself in an application like photoshop. If you wish to have larger icons for you own added networks that is possible and your are welcome to use it. 
     49                <?php _e( 'The default icon is 26x26 pixels. The upload does <strong>NOT</strong> resize your images, however, the plugin sets a fixed size of 26x26 when rendering the widget.' ); ?> 
    4450            </p> 
    4551            <form method="post" enctype="multipart/form-data"> 
     
    4854                        <tr valign="top"> 
    4955                            <th scope="row"> 
    50                                 <label for="abc_title"><?php echo __('Network name'); ?>:</label> 
     56                                <label for="abc_title"><?php _e( 'Network name' ); ?>:</label> 
    5157                            </th> 
    5258                            <td> 
    53                                 <input type="text" name="network_name" />                 
     59                                <input type="text" name="network_name" /> 
    5460                            </td> 
    5561                        </tr> 
    5662                        <tr valign="top"> 
    5763                            <th scope="row"> 
    58                                 <label for="abc_message"><?php echo __('Icon'); ?>:</label> 
     64                                <label for="abc_message"><?php _e( 'Icon' ); ?>:</label> 
    5965                            </th> 
    6066                            <td> 
    6167                                <input type="file" name="icon" /> 
     68                                <p class="description"><?php _e( 'Only .png, .jpg and .gif is support.' ); ?></p> 
    6269                            </td> 
    6370                        </tr> 
     
    7178            </form> 
    7279 
    73             <h3>Your added networks</h3> 
    74             <p>Icon is show with a max height of 70px, so don't be alarmed if your icon it not in ful size in the list, it will be on the site</p> 
     80            <h3><?php _e( 'Your added networks' ); ?></h3> 
    7581            <div id="ep-social-networks"> 
    7682                <table class="wp-list-table widefat"> 
    7783                    <thead> 
    78                         <th width="20%">Network name</th> 
    79                         <th width="80%">Icon</th> 
    80                         <th></th>                    
     84                        <th width="20%"><?php _e( 'Network name' ); ?></th> 
     85                        <th width="80%"><?php _e( 'Icon' ); ?></th> 
     86                        <th></th> 
    8187                    </thead> 
    8288                    <?php 
    8389                        $networks = $this->get_user_networks(); 
    84                         if($networks) : 
    85                             foreach($networks as $network) : 
     90                        if ( $networks ) : 
     91                            foreach ( $networks as $network ) : 
    8692                            ?> 
    8793                                <tr> 
    8894                                    <td><?php echo $network['name']; ?></td> 
    89                                     <td><img src="<?php echo $this->iconurl; ?><?php echo $network['icon']; ?>" alt="<?php echo $network['name']; ?>" style="max-height:70px"></td> 
     95                                    <td><img src="<?php echo $this->iconurl; ?><?php echo $network['icon']; ?>" alt="<?php echo $network['name']; ?>" width="26" height="26"></td> 
    9096                                    <td> 
    9197                                        <div class="row-actions"> 
     
    104110                        ?> 
    105111 
    106                         <tr> 
    107                             <td>No networks added</td> 
    108                         </tr> 
     112                            <tr> 
     113                                <td><?php _e( 'No networks added' ); ?></td> 
     114                            </tr> 
    109115 
    110116                        <?php 
     
    117123    } 
    118124 
    119     private function get_user_networks() { 
    120         if(!file_exists($this->icondir)) return NULL; 
    121  
    122         $icons = scandir($this->icondir); 
    123  
    124         unset($icons[0]); 
    125         unset($icons[1]); 
    126  
    127         foreach($icons as $icon) { 
    128             $ext = pathinfo($icon, PATHINFO_EXTENSION); 
    129             $name = str_replace('icon-','',str_replace('.'.$ext,'',$icon)); 
     125    private function get_user_networks() 
     126    { 
     127        if ( ! file_exists( $this->icondir ) ) 
     128        { 
     129            return NULL; 
     130        } 
     131 
     132        $icons = scandir( $this->icondir ); 
     133 
     134        unset( $icons[0] ); 
     135        unset( $icons[1] ); 
     136 
     137        foreach ( $icons as $icon ) 
     138        { 
     139            $ext  = pathinfo( $icon, PATHINFO_EXTENSION ); 
     140            $name = str_replace( 'icon-', '', str_replace( '.' . $ext, '', $icon ) ); 
    130141 
    131142            $networks[] = array( 
     
    138149    } 
    139150 
    140     private function epsocial_delete($data) { 
     151    private function epsocial_delete( $data ) 
     152    { 
    141153        $icon = $data['icon']; 
    142154 
    143         if (unlink($this->icondir.$icon)) { 
     155        if ( unlink( $this->icondir . $icon ) ) 
     156        { 
    144157            return array( 
    145                 'status' => 'updated', 
    146                 'msg' => array( 
    147                     0 => 'Your network is deleted.' 
     158                'status' => __( 'updated' ), 
     159                'msg'    => array( 
     160                    0 => __( 'Your network is deleted.' ) 
    148161                ) 
    149162            ); 
    150         } else { 
     163        } 
     164        else 
     165        { 
    151166            return array( 
    152                 'status' => 'error', 
    153                 'msg' => array( 
    154                     0 => 'Could not delete the network.' 
     167                'status' => __( 'error' ), 
     168                'msg'    => array( 
     169                    0 => __( 'Could not delete the network.' ) 
    155170                ) 
    156171            ); 
    157172        } 
    158  
    159  
    160     } 
    161      
    162     private function epsocial_save($data) { 
     173    } 
     174 
     175    private function epsocial_save( $data ) 
     176    { 
    163177        // Icon 
    164178        $icon = $_FILES['icon']; 
    165179 
    166         // Validate if the icon is gif, png or jpg and not larger then 1MB in size 
    167         if (!preg_match('![a-z0-9\-\.\/]+\.(?:gif|png|jpg)!Ui' , $icon['name'])) { 
    168             $error[] = 'Only gif, png, jpg images are allowed'; 
    169         } 
    170         if ($icon['size'] > 2000000) { 
    171             $error[] = 'Maximum size allowed is 2MB'; 
    172         } 
    173         if (empty($data['network_name'])) { 
    174             $error[] = 'You must enter a network name'; 
     180        // Validate if the icon is gif, png or jpg and not larger then 2MB in size 
     181        if ( ! preg_match( '![a-z0-9\-\.\/]+\.(?:gif|png|jpg)!Ui', $icon['name'] ) ) 
     182        { 
     183            $error[] = __( 'Only gif, png, jpg images are allowed' ); 
     184        } 
     185 
     186        if ( $icon['size'] > 2000000 ) 
     187        { 
     188            $error[] = __( 'Maximum size allowed is 2MB' ); 
     189        } 
     190 
     191        if ( empty( $data['network_name'] ) ) 
     192        { 
     193            $error[] = __( 'You must enter a network name' ); 
    175194        } 
    176195 
    177196        // Check if we have any error and if so, return them and stop the script, else, continue 
    178         if(count($error) > 0) { 
     197        if ( count( $error ) > 0 ) 
     198        { 
    179199            return array( 
    180                 'status'    => 'error', 
    181                 'msg'   => $error 
    182             ); 
    183             die(); 
    184         } else { 
    185  
    186             if(!is_dir($this->icondir)) { 
    187                 mkdir($this->icondir); 
    188                 chmod($this->icondir, 0755); 
    189             } else { 
    190                 chmod($this->icondir, 0755); 
     200                'status' => __( 'error' ), 
     201                'msg'    => $error 
     202            ); 
     203        } 
     204        else 
     205        { 
     206            if ( ! is_dir( $this->icondir ) ) 
     207            { 
     208                mkdir( $this->icondir ); 
     209                chmod( $this->icondir, 0755 ); 
    191210            } 
     211            else 
     212            { 
     213                chmod( $this->icondir, 0755 ); 
     214            } 
    192215 
    193216            // Clean network name 
    194             $network    = $this->get_slug($data['network_name']); 
    195             $ext        = pathinfo($icon['name'], PATHINFO_EXTENSION); 
    196             $new_name   = 'icon-'.$network.'.'.$ext; 
    197             $uploadfile = $this->icondir.basename($new_name); 
    198             $movefile   = move_uploaded_file($icon['tmp_name'],$uploadfile); 
    199  
    200             if($movefile) { 
     217            $network    = $this->get_slug( $data['network_name'] ); 
     218            $ext        = pathinfo( $icon['name'], PATHINFO_EXTENSION ); 
     219            $new_name   = 'icon-' . $network . '.' . $ext; 
     220            $uploadfile = $this->icondir . basename( $new_name ); 
     221            $movefile   = move_uploaded_file( $icon['tmp_name'], $uploadfile ); 
     222 
     223            if ( $movefile ) 
     224            { 
    201225                return array( 
    202                     'status' => 'updated', 
    203                     'msg' => array( 
    204                         0 => 'Your network is added.' 
     226                    'status' => __( 'updated' ), 
     227                    'msg'    => array( 
     228                        0 => __( 'Your network is added.' ) 
    205229                    ) 
    206230                ); 
     
    209233    } 
    210234 
    211     private function get_slug($str, $replace=array(), $delimiter='_') { 
    212         setlocale(LC_ALL, 'sv_SE.UTF8'); 
    213         if(!empty($replace)) { 
    214             $str = str_replace((array)$replace, ' ', $str); 
    215         } 
    216  
    217         $clean = iconv('UTF-8', 'ASCII//TRANSLIT', $str); 
    218         $clean = preg_replace("/[^a-zA-Z0-9\/_|+ -]/", '', $clean); 
    219         $clean = strtolower(trim($clean, '-')); 
    220         $clean = preg_replace("/[\/_|+ -]+/", $delimiter, $clean); 
     235    private function get_slug( $str, $replace = array(), $delimiter = '_' ) 
     236    { 
     237        setlocale( LC_ALL, 'sv_SE.UTF8' ); 
     238        if ( ! empty( $replace ) ) 
     239        { 
     240            $str = str_replace( (array) $replace, ' ', $str ); 
     241        } 
     242 
     243        $clean = iconv( 'UTF-8', 'ASCII//TRANSLIT', $str ); 
     244        $clean = preg_replace( '/[^a-zA-Z0-9\/_|+ -]/', '', $clean ); 
     245        $clean = strtolower( trim( $clean, '-' ) ); 
     246        $clean = preg_replace( '/[\/_|+ -]+/', $delimiter, $clean ); 
    221247 
    222248        return $clean; 
     
    224250} 
    225251 
    226 function epsocial_settings() { 
     252function epsocial_settings() 
     253{ 
    227254    $settings_panel = new epSocialSettings; 
    228255    return $settings_panel->epsocial_panel(); 
    229256} 
    230257 
    231 function epsocial_menu() { 
    232     add_submenu_page('options-general.php', 'EP Social Widget Settings', 'EP Social Widget', 'manage_options', 'ep-social-widget', 'epsocial_settings'); 
     258function epsocial_menu() 
     259{ 
     260    add_submenu_page( 
     261        'options-general.php', 
     262        'EP Social Widget Settings', 
     263        'EP Social Widget', 
     264        'manage_options', 
     265        'ep-social-widget', 
     266        'epsocial_settings' 
     267    ); 
    233268} 
    234 add_action('admin_menu','epsocial_menu'); 
     269add_action( 'admin_menu','epsocial_menu' ); 
  • ep-social-widget/tags/1.5.0/ep_social_widget.php

    r1059003 r1288395  
    33Plugin Name: EP Social Widget 
    44Plugin URI: http://www.darkwhispering.com 
    5 Description: Very small and easy to use widget and shortcode to display social icons on your site. Facebook, Twitter, Flickr, Google Plus, Youtube, LinkedIn, DeviantArt, Meetup, MySpace, Soundcloud, Bandcamp, Pinterest, Vimeo, Tumblr and RSS feed 
     5Description: Very small and easy to use widget and shortcode to display social icons on your site. Facebook, Twitter, Flickr, Google, Google Plus, Youtube, LinkedIn, Soundcloud, Pinterest, Vimeo, Tumblr, Instagram, Github and RSS feed. 
    66Author: Mattias Hedman 
    77Author URI: http://www.darkwhispering.com 
    8 Version: 1.4.1 
     8Version: 1.5.0 
    99*/ 
    10 define('EPS_VERSION','1.4.1'); 
    11  
    12 add_action('init','epSocialWidgetVersion',1); 
     10define( 'EPS_VERSION','1.5.0' ); 
     11 
     12add_action( 'init', 'epSocialWidgetVersion', 1 ); 
    1313function epSocialWidgetVersion() 
    1414{ 
    15     if (get_option('ep-social-widget-version') != EPS_VERSION) { 
    16         update_option('ep-social-widget-old-version', get_option('ep-social-widget-version')); 
    17         update_option('ep-social-widget-version',EPS_VERSION); 
     15    if ( get_option( 'ep-social-widget-version' ) != EPS_VERSION ) 
     16    { 
     17        update_option( 'ep-social-widget-old-version', get_option( 'ep-social-widget-version' ) ); 
     18        update_option( 'ep-social-widget-version', EPS_VERSION ); 
    1819    } 
    1920} 
     
    2324// ==================== 
    2425 
    25 function epsw_shortcode($args){ 
     26function epsw_shortcode( $args ) 
     27{ 
    2628    // User uploaded icon url 
    2729    $wp_upload_dir = wp_upload_dir(); 
    28     $iconurl = $wp_upload_dir['baseurl'].'/epsocial_icons/'; 
    29     $icondir = $wp_upload_dir['basedir'].'/epsocial_icons/'; 
     30    $iconurl       = $wp_upload_dir['baseurl'] . '/epsocial_icons/'; 
     31    $icondir       = $wp_upload_dir['basedir'] . '/epsocial_icons/'; 
    3032 
    3133    // Plugin path 
    32     $plugin_path = WP_PLUGIN_DIR.DIRECTORY_SEPARATOR.str_replace(basename(__FILE__),"",plugin_basename(__FILE__)); 
     34    $plugin_path = WP_PLUGIN_DIR . DIRECTORY_SEPARATOR . str_replace( basename( __FILE__ ), '', plugin_basename( __FILE__ ) ); 
    3335 
    3436    $html = '<ul class="ep_social_widget" id="epSW_shortcode">'; 
    35     foreach($args as $network => $link) { 
    36         if($network === 'rss') { 
    37             if($link === '1') { 
     37    foreach ( $args as $network => $link ) 
     38    { 
     39        if ( $network === 'rss' ) 
     40        { 
     41            if ( $link === '1' ) 
     42            { 
    3843                $html .= '<li>'; 
    39                     $html .= '<a href="'.get_bloginfo("rss2_url").'" target="_blank" title="RSS"><img src="'.plugins_url("icons/icon-rss.gif", __FILE__).'" alt="RSS" /></a>'; 
     44                    $html .= '<a href="' . get_bloginfo( "rss2_url" ) . '" target="_blank" title="RSS"><img src="' . plugins_url( "icons/rss.svg", __FILE__ ) . '" alt="RSS" width="26" height="26" /></a>'; 
    4045                $html .= '</li>'; 
    4146            } 
    42         } else { 
     47        } 
     48        else 
     49        { 
    4350            $pattern1 = '/^http:\/\//'; 
    4451            $pattern2 = '/^https:\/\//'; 
    4552 
    46             $l = strip_tags($link); 
    47             if(preg_match($pattern1, $l) || preg_match($pattern2, $l)){ 
     53            $l = strip_tags( $link ); 
     54            if ( preg_match( $pattern1, $l ) || preg_match( $pattern2, $l ) ) 
     55            { 
    4856                $link = $l; 
    49             } else { 
     57            } 
     58            else 
     59            { 
    5060                $link = 'http://'.$l; 
    5161            } 
     
    5363            $html .= '<li>'; 
    5464 
    55             if(file_exists($plugin_path."/icons/icon-".$network.".gif")) { 
    56                 $html .= '<a href="'.$link.'" target="_blank" title="'.$network.'"><img src="'.plugins_url("icons/icon-".$network.".gif", __FILE__).'" alt="'.$network.'" /></a>'; 
    57             } else { 
    58  
    59                 if(!file_exists($icondir)) { 
     65            if ( file_exists( $plugin_path . '/icons/' . $network . '.svg' ) ) 
     66            { 
     67                $html .= '<a href="' . $link . '" target="_blank" title="' . $network . '"><img src="'.plugins_url( "icons/" . $network . ".svg", __FILE__ ).'" alt="' . $network . '" width="26" height="26" /></a>'; 
     68            } 
     69            else 
     70            { 
     71                if ( ! file_exists( $icondir ) ) 
     72                { 
    6073                    $icons = NULL; 
    61                 } else { 
    62                     $icons = scandir($icondir); 
    63                 } 
    64  
    65                 if($icons) { 
    66                     foreach ($icons as $icon) { 
    67                         $ext = pathinfo($icon, PATHINFO_EXTENSION); 
    68                         $name = str_replace('icon-','',str_replace('.'.$ext,'',$icon)); 
    69                         if ($name == $network) { 
    70                             $html .= '<a href="'.$link.'" target="_blank" title="'.$network.'"><img src="'.$iconurl.'icon-'.$network.'.'.$ext.'" alt="'.$network.'" /></a>'; 
     74                } 
     75                else 
     76                { 
     77                    $icons = scandir( $icondir ); 
     78                } 
     79 
     80                if ( $icons ) 
     81                { 
     82                    foreach ( $icons as $icon ) 
     83                    { 
     84                        $ext  = pathinfo( $icon, PATHINFO_EXTENSION ); 
     85                        $name = str_replace( 'icon-', '', str_replace( '.' . $ext, '', $icon ) ); 
     86 
     87                        if ( $name == $network ) 
     88                        { 
     89                            $html .= '<a href="' . $link . '" target="_blank" title="' . $network . '"><img src="' . $iconurl . 'icon-' . $network . '.' . $ext . '" alt="' . $network . '" width="26" height="26" /></a>'; 
    7190                        } 
    7291                    } 
     
    82101    return $html; 
    83102} 
    84 add_shortcode('ep-social-widget', 'epsw_shortcode'); 
     103add_shortcode( 'ep-social-widget', 'epsw_shortcode' ); 
    85104 
    86105 
     
    89108// ================= 
    90109// Load stylesheet and widget 
    91 add_action('wp_head','epSocialWidgetCss'); 
    92 add_action('widgets_init','load_epSocialWidget'); 
     110add_action( 'wp_head','epSocialWidgetCss' ); 
     111add_action( 'widgets_init','load_epSocialWidget' ); 
    93112 
    94113// Register the widget 
    95 function load_epSocialWidget() { 
    96     register_widget('epSocialWidget'); 
     114function load_epSocialWidget() 
     115{ 
     116    register_widget( 'epSocialWidget' ); 
    97117} 
    98118 
    99119// Widget stylesheet 
    100 function epSocialWidgetCss() { 
    101     echo '<link href="'.plugins_url('style.css', __FILE__).'" type="text/css" rel="stylesheet" media="screen" />'; 
    102 } 
    103  
    104 class epSocialWidget extends WP_Widget{ 
    105  
    106     function epSocialWidget() { 
     120function epSocialWidgetCss() 
     121{ 
     122    echo '<link href="' . plugins_url( 'style.css', __FILE__ ) . '" type="text/css" rel="stylesheet" media="screen" />'; 
     123} 
     124 
     125class epSocialWidget extends WP_Widget { 
     126 
     127    function epSocialWidget() 
     128    { 
    107129        //Settings 
    108         $widget_ops = array('classname'=>'epsocialwidget','description'=>__('Display social icons on your site.','epsocialwidget')); 
     130        $widget_ops = array( 
     131            'classname' => 'epsocialwidget', 
     132            'description' => __( 'Display social icons on your site.', 'epsocialwidget' ) 
     133        ); 
    109134 
    110135        //Controll settings 
    111         $control_ops = array('id_base' => 'epsocialwidget'); 
     136        $control_ops = array( 'id_base' => 'epsocialwidget' ); 
    112137 
    113138        //Create widget 
    114         $this->WP_Widget('epsocialwidget',__('EP Social Widget'),$widget_ops,$control_ops); 
     139        $this->WP_Widget( 'epsocialwidget', __( 'EP Social Widget' ), $widget_ops, $control_ops ); 
    115140 
    116141        // Plugin path 
    117         $this->plugin_path = WP_PLUGIN_DIR.DIRECTORY_SEPARATOR.str_replace(basename(__FILE__),"",plugin_basename(__FILE__)); 
     142        $this->plugin_path = WP_PLUGIN_DIR . DIRECTORY_SEPARATOR . str_replace( basename( __FILE__ ), '', plugin_basename( __FILE__ ) ); 
    118143 
    119144        // User uploaded icon url 
    120145        $wp_upload_dir = wp_upload_dir(); 
    121         $this->iconurl = $wp_upload_dir['baseurl'].'/epsocial_icons/'; 
    122         $this->icondir = $wp_upload_dir['basedir'].'/epsocial_icons/'; 
     146        $this->iconurl = $wp_upload_dir['baseurl'] . '/epsocial_icons/'; 
     147        $this->icondir = $wp_upload_dir['basedir'] . '/epsocial_icons/'; 
    123148    } 
    124149 
    125150    // Widget frontend 
    126     function widget($args,$instance) { 
    127         extract($args); 
     151    function widget( $args, $instance ) 
     152    { 
     153        extract( $args ); 
    128154 
    129155        /* If we just upgraded from v1.0.2 or lower to v1.1.0 we need to update the instance array */ 
    130         if (get_option('ep-social-widget-old-version') <= '1.1.0') { 
    131             $v_upgrade = get_option('ep-social-widget-1.0.2to1.1.0'); 
    132             if (!$v_upgrade) { 
     156        if ( get_option( 'ep-social-widget-old-version' ) <= '1.1.0' ) 
     157        { 
     158            $v_upgrade = get_option( 'ep-social-widget-1.0.2to1.1.0' ); 
     159            if ( ! $v_upgrade ) 
     160            { 
    133161                $title = $instance['title']; 
    134                 $rss = $instance['rss']; 
    135                 unset($instance['title']); 
    136                 unset($instance['rss']); 
    137                 $count_networks = count($instance); 
    138                 foreach ($instance as $network => $url) { 
     162                $rss   = $instance['rss']; 
     163                unset( $instance['title'] ); 
     164                unset( $instance['rss'] ); 
     165 
     166                $count_networks = count( $instance ); 
     167                foreach ( $instance as $network => $url ) 
     168                { 
    139169                    $link = $url; 
    140                     $instance[$network] = ''; 
    141                     $instance[$network]['link'] = $link; 
     170                    $instance[ $network ] = ''; 
     171                    $instance[ $network ]['link'] = $link; 
    142172                } 
    143173 
    144174                $icons = $this->get_icons(); 
    145                 if($icons) { 
    146                     foreach ($icons as $icon) { 
    147                         $ext = pathinfo($icon, PATHINFO_EXTENSION); 
    148                         $name = str_replace('icon-','',str_replace('.'.$ext,'',$icon)); 
    149                         $instance[$name]['icon'] = $icon; 
     175                if ( $icons ) 
     176                { 
     177                    foreach ( $icons as $icon ) 
     178                    { 
     179                        $ext  = pathinfo( $icon, PATHINFO_EXTENSION ); 
     180                        $name = str_replace( 'icon-', '', str_replace( '.' . $ext, '', $icon ) ); 
     181                        $instance[ $name ]['icon'] = $icon; 
    150182                    } 
    151183                } 
    152184 
    153185                $instance['title'] = $title; 
    154                 $instance['rss'] = $rss; 
     186                $instance['rss']   = $rss; 
    155187                $i++; 
    156188            } 
     
    159191        //User selected settings 
    160192        $title = $instance['title']; 
    161         unset($instance['title']); 
     193        unset( $instance['title'] ); 
    162194 
    163195        echo $before_widget; 
     
    169201 
    170202            <?php 
    171                 foreach($instance as $network => $data) { 
    172                     if($network === 'rss') { 
    173                         if($data === '1') { 
    174                             echo '<a href="'.get_bloginfo("rss2_url").'" target="_blank" title="RSS"><img src="'.plugins_url("icons/icon-rss.gif", __FILE__).'" alt="RSS" /></a>'; 
     203                foreach ( $instance as $network => $data ) 
     204                { 
     205                    if ( $network === 'rss' ) 
     206                    { 
     207                        if ( $data === '1' ) 
     208                        { 
     209                            echo '<a href="' . get_bloginfo( "rss2_url" ) . '" target="_blank" title="RSS"><img src="' . plugins_url( "icons/rss.svg", __FILE__ ) . '" alt="RSS" width="26" height="26" /></a>'; 
    175210                        } 
    176                     } else { 
    177                         if (!empty($data['link'])) { 
    178                             if (!isset($data['icon'])) { 
    179                                 echo '<a href="'.$data['link'].'" target="_blank" title="'.$network.'"><img src="'.plugins_url("icons/icon-".$network.".gif", __FILE__).'" alt="'.$network.'" /></a>'; 
    180                             } else { 
    181                                 if (!file_exists($this->icondir.$data['icon'])) { 
    182                                     unset($instance[$network]); 
    183                                 } else { 
    184                                     echo '<a href="'.$data['link'].'" target="_blank" title="'.$network.'"><img src="'.$this->iconurl.$data['icon'].'" alt="'.$network.'" /></a>'; 
     211                    } 
     212                    else 
     213                    { 
     214                        if ( ! empty( $data['link'] ) ) 
     215                        { 
     216                            if ( ! isset( $data['icon'] ) ) 
     217                            { 
     218                                echo '<a href="' . $data['link'] . '" target="_blank" title="' . $network . '"><img src="' . plugins_url( "icons/" . $network . ".svg", __FILE__ ) . '" alt="' . $network . '" width="26" height="26" /></a>'; 
     219                            } 
     220                            else 
     221                            { 
     222                                if ( ! file_exists( $this->icondir . $data['icon'] ) ) 
     223                                { 
     224                                    unset( $instance[$network] ); 
     225                                } 
     226                                else 
     227                                { 
     228                                    echo '<a href="' . $data['link'] . '" target="_blank" title="' . $network . '"><img src="' . $this->iconurl . $data['icon'] . '" alt="' . $network . '" width="26" height="26" /></a>'; 
    185229                                } 
    186230                            } 
     
    196240 
    197241    // Widget update 
    198     function update($new_instance,$instance) { 
     242    function update( $new_instance, $instance ) 
     243    { 
    199244        /* If we just upgraded from v1.0.2 or lower to v1.1.0 we need to update the instance array */ 
    200         if (get_option('ep-social-widget-old-version') <= '1.1.0') { 
    201             $v_upgrade = get_option('ep-social-widget-1.0.2to1.1.0'); 
    202             if (!$v_upgrade) { 
     245        if ( get_option( 'ep-social-widget-old-version' ) <= '1.1.0' ) 
     246        { 
     247            $v_upgrade = get_option( 'ep-social-widget-1.0.2to1.1.0' ); 
     248            if ( ! $v_upgrade ) 
     249            { 
    203250                $title = $instance['title']; 
    204                 $rss = $instance['rss']; 
    205                 unset($instance['title']); 
    206                 unset($instance['rss']); 
    207                 $count_networks = count($instance); 
    208                 foreach ($instance as $network => $url) { 
    209                     $link = $url; 
    210                     $instance[$network] = ''; 
    211                     $instance[$network]['link'] = $link; 
     251                $rss   = $instance['rss']; 
     252                unset( $instance['title'] ); 
     253                unset( $instance['rss'] ); 
     254 
     255                $count_networks = count( $instance ); 
     256                foreach ( $instance as $network => $url ) 
     257                { 
     258                    $link                         = $url; 
     259                    $instance[ $network ]         = ''; 
     260                    $instance[ $network ]['link'] = $link; 
    212261                } 
    213262                $instance['title'] = $title; 
    214                 $instance['rss'] = $rss; 
     263                $instance['rss']   = $rss; 
    215264                $i++; 
    216265            } 
     
    221270        $pattern2 = '/^https:\/\//'; 
    222271 
    223         $instance['title'] = strip_tags($new_instance['title']); 
    224         $instance['rss'] = strip_tags($new_instance['rss']); 
    225  
    226         unset($new_instance['title']); 
    227         unset($new_instance['rss']); 
    228  
    229         foreach($new_instance as $key => $new) { 
    230             // if($new) { 
    231                 $link = strip_tags($new); 
    232                 if (!empty($link)) { 
    233                     if(preg_match($pattern1,$link) || preg_match($pattern2,$link)) { 
    234                         $instance[$key]['link'] = $link; 
    235                     } else { 
    236                         $instance[$key]['link'] = 'http://'.$link; 
    237                     } 
    238  
    239                     if(file_exists($this->icondir.'icon-'.$key.'.png')) { 
    240                         $instance[$key]['icon'] = 'icon-'.$key.'.png'; 
    241                     } elseif (file_exists($this->icondir.'icon-'.$key.'.jpg')) { 
    242                         $instance[$key]['icon'] = 'icon-'.$key.'.jpg'; 
    243                     } elseif (file_exists($this->icondir.'icon-'.$key.'.gif')) { 
    244                         $instance[$key]['icon'] = 'icon-'.$key.'.gif'; 
    245                     } 
    246  
    247                 } else { 
    248                     $instance[$key]['link'] = NULL; 
    249                 } 
    250             // } 
    251         } 
    252  
    253         $v_upgrade = get_option('ep-social-widget-1.0.2to1.1.0'); 
    254         if (!$v_upgrade) update_option('ep-social-widget-1.0.2to1.1.0','true'); 
     272        $instance['title'] = strip_tags( $new_instance['title'] ); 
     273        $instance['rss'] = strip_tags( $new_instance['rss'] ); 
     274 
     275        unset( $new_instance['title'] ); 
     276        unset( $new_instance['rss'] ); 
     277 
     278        foreach( $new_instance as $key => $new ) 
     279        { 
     280            $link = strip_tags( $new ); 
     281            if ( ! empty( $link ) ) 
     282            { 
     283                if ( preg_match( $pattern1, $link ) || preg_match( $pattern2, $link ) ) 
     284                { 
     285                    $instance[ $key ]['link'] = $link; 
     286                } 
     287                else 
     288                { 
     289                    $instance[ $key ]['link'] = 'http://' . $link; 
     290                } 
     291 
     292                if ( file_exists( $this->icondir . 'icon-' . $key . '.png' ) ) 
     293                { 
     294                    $instance[ $key ]['icon'] = 'icon-' . $key . '.png'; 
     295                } 
     296                elseif ( file_exists( $this->icondir . 'icon-' . $key . '.jpg' ) ) 
     297                { 
     298                    $instance[ $key ]['icon'] = 'icon-' . $key . '.jpg'; 
     299                } 
     300                elseif ( file_exists( $this->icondir . 'icon-' . $key . '.gif' ) ) 
     301                { 
     302                    $instance[ $key ]['icon'] = 'icon-' . $key . '.gif'; 
     303                } 
     304 
     305            } else { 
     306                $instance[ $key ]['link'] = NULL; 
     307            } 
     308        } 
     309 
     310        $v_upgrade = get_option( 'ep-social-widget-1.0.2to1.1.0' ); 
     311        if ( ! $v_upgrade ) update_option( 'ep-social-widget-1.0.2to1.1.0', 'true' ); 
    255312 
    256313        return $instance; 
     
    258315 
    259316    // Widget backend 
    260     function form($instance) { 
     317    function form( $instance ) 
     318    { 
    261319        /* If we just upgraded from v1.0.2 or lower to v1.1.0 we need to update the instance array */ 
    262         if (get_option('ep-social-widget-old-version') <= '1.1.0') { 
    263             $v_upgrade = get_option('ep-social-widget-1.0.2to1.1.0'); 
    264             if (!$v_upgrade) { 
     320        if ( get_option( 'ep-social-widget-old-version' ) <= '1.1.0' ) 
     321        { 
     322            $v_upgrade = get_option( 'ep-social-widget-1.0.2to1.1.0' ); 
     323            if ( ! $v_upgrade ) 
     324            { 
    265325                $title = $instance['title']; 
    266                 $rss = $instance['rss']; 
    267                 unset($instance['title']); 
    268                 unset($instance['rss']); 
    269                 $count_networks = count($instance); 
    270                 foreach ($instance as $network => $url) { 
    271                     $link = $url; 
    272                     $instance[$network] = ''; 
    273                     $instance[$network]['link'] = $link; 
     326                $rss   = $instance['rss']; 
     327                unset( $instance['title'] ); 
     328                unset( $instance['rss'] ); 
     329 
     330                $count_networks = count( $instance ); 
     331                foreach ( $instance as $network => $url ) 
     332                { 
     333                    $link                         = $url; 
     334                    $instance[ $network ]         = ''; 
     335                    $instance[ $network ]['link'] = $link; 
    274336                } 
    275337                $instance['title'] = $title; 
    276                 $instance['rss'] = $rss; 
     338                $instance['rss']   = $rss; 
    277339                $i++; 
    278340            } 
     
    282344            'title'         => '', 
    283345            'rss'           => '', 
    284             'twitter'       => array('link' => ''), 
    285             'facebook'      => array('link' => ''), 
    286             'flickr'        => array('link' => ''), 
    287             'gplus'         => array('link' => ''), 
    288             'youtube'       => array('link' => ''), 
    289             'linkedin'      => array('link' => ''), 
    290             'deviantart'    => array('link' => ''), 
    291             'meetup'        => array('link' => ''), 
    292             'myspace'       => array('link' => ''), 
    293             'bandcamp'      => array('link' => ''), 
    294             'soundcloud'    => array('link' => ''), 
    295             'pinterest'     => array('link' => ''), 
    296             'vimeo'         => array('link' => ''), 
    297             'tumblr'        => array('link' => '') 
     346            'twitter'       => array( 'link' => '' ), 
     347            'facebook'      => array( 'link' => '' ), 
     348            'flickr'        => array( 'link' => '' ), 
     349            'gplus'         => array( 'link' => '' ), 
     350            'youtube'       => array( 'link' => '' ), 
     351            'linkedin'      => array( 'link' => '' ), 
     352            'soundcloud'    => array( 'link' => '' ), 
     353            'pinterest'     => array( 'link' => '' ), 
     354            'vimeo'         => array( 'link' => '' ), 
     355            'tumblr'        => array( 'link' => '' ), 
     356            'google'        => array( 'link' => '' ), 
     357            'instagram'     => array( 'link' => '' ), 
     358            'github'        => array( 'link' => '' ) 
    298359        ); 
    299         $instance = wp_parse_args((array)$instance,$default); 
    300  
    301         $icons = $this->get_icons(); 
    302  
    303         unset($icons[0]); 
    304         unset($icons[1]); 
    305  
    306         if($icons) { 
    307             foreach($icons as $icon) { 
    308                 $ext = pathinfo($icon, PATHINFO_EXTENSION); 
    309                 $name = str_replace('icon-','',str_replace('.'.$ext,'',$icon)); 
    310  
     360 
     361        $instance = wp_parse_args( (array) $instance, $default ); 
     362        $icons    = $this->get_icons(); 
     363 
     364        unset( $icons[0] ); 
     365        unset( $icons[1] ); 
     366 
     367        if ( $icons ) 
     368        { 
     369            foreach ( $icons as $icon ) 
     370            { 
     371                $ext        = pathinfo( $icon, PATHINFO_EXTENSION ); 
     372                $name       = str_replace( 'icon-', '', str_replace( '.' . $ext, '', $icon ) ); 
    311373                $networks[] = $name; 
    312374            } 
     
    315377        <!-- TITLE --> 
    316378        <p> 
    317             <label for="<?php echo $this->get_field_id('title'); ?>"><?php echo __('Title:'); ?></label> 
     379            <label for="<?php echo $this->get_field_id( 'title' ); ?>"><?php _e( 'Title:' ); ?></label> 
    318380            <br /> 
    319             <input type="text" id="<?php echo $this->get_field_id('title'); ?>" name="<?php echo $this->get_field_name('title'); ?>" value="<?php echo $instance['title']; ?>" class="widefat" /> 
     381            <input type="text" id="<?php echo $this->get_field_id( 'title' ); ?>" name="<?php echo $this->get_field_name( 'title' ); ?>" value="<?php echo $instance['title']; ?>" class="widefat" /> 
    320382        </p> 
    321383 
    322384        <!-- RSS --> 
    323385        <p> 
    324             <label for="<?php echo $this->get_field_id('rss'); ?>"><?php echo __('Display rss link:'); ?></label> 
     386            <label for="<?php echo $this->get_field_id( 'rss' ); ?>"><?php _e( 'Display rss link:' ); ?></label> 
    325387            &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
    326             <input type="radio" id="<?php echo $this->get_field_id('rss'); ?>" name="<?php echo $this->get_field_name('rss'); ?>" <?php if($instance['rss'] == 1): ?> checked="checked" <?php endif; ?> value="1" /> <?php echo __('Yes'); ?> 
     388            <input type="radio" id="<?php echo $this->get_field_id( 'rss' ); ?>" name="<?php echo $this->get_field_name( 'rss' ); ?>" <?php if ( $instance['rss'] == 1 ): ?> checked="checked" <?php endif; ?> value="1" /> <?php _e( 'Yes' ); ?> 
    327389            &nbsp;&nbsp;&nbsp;&nbsp; 
    328             <input type="radio" id="<?php echo $this->get_field_id('rss'); ?>" name="<?php echo $this->get_field_name('rss'); ?>" <?php if($instance['rss'] == 0): ?> checked="checked" <?php endif; ?> value="0" /> <?php echo __('No'); ?> 
     390            <input type="radio" id="<?php echo $this->get_field_id( 'rss' ); ?>" name="<?php echo $this->get_field_name( 'rss' ); ?>" <?php if ( $instance['rss'] == 0 ): ?> checked="checked" <?php endif; ?> value="0" /> <?php _e( 'No' ); ?> 
    329391        </p> 
    330392 
    331         <?php if($networks) : ?> 
     393        <?php if ( $networks ) : ?> 
    332394        <div class="ep-social-user-networks"> 
    333             <a href="#" class="show-hide">Show/Hide user added networks</a> 
     395            <a href="#" class="show-hide"><?php _e( 'Show/Hide user added networks' ); ?></a> 
    334396            <div class="ep-social-content"> 
    335                 <h4>User added networks</h4> 
     397                <h4><?php _e( 'User added networks' ); ?></h4> 
    336398                <?php 
    337                 foreach($networks as $network) : 
     399                foreach ( $networks as $network ) : 
    338400                ?> 
    339401                    <p> 
    340                         <label for="<?php echo $this->get_field_id($network); ?>"><?php echo __(str_replace('_',' ',$network).' profile link:'); ?></label> 
     402                        <label for="<?php echo $this->get_field_id( $network ); ?>"><?php _e( str_replace( '_', ' ', $network ) . ' profile link:' ); ?></label> 
    341403                        <br /> 
    342                         <input type="text" id="<?php echo $this->get_field_id($network); ?>" name="<?php echo $this->get_field_name($network); ?>" value="<?php echo $instance[$network]['link']; ?>" class="widefat" /> 
     404                        <input type="text" id="<?php echo $this->get_field_id( $network ); ?>" name="<?php echo $this->get_field_name( $network ); ?>" value="<?php echo $instance[ $network ]['link']; ?>" class="widefat" /> 
    343405                    </p> 
    344406                <?php 
    345                 unset($instance[$network]); 
     407                unset( $instance[ $network ] ); 
    346408                endforeach; 
    347409                ?> 
     
    351413        endif; 
    352414 
    353         unset($instance['title']); 
    354         unset($instance['rss']); 
    355         unset($instance['0']); 
     415        unset( $instance['title'] ); 
     416        unset( $instance['rss'] ); 
     417        unset( $instance['0'] ); 
    356418        ?> 
    357419 
    358420 
    359421        <div class="ep-social-default-networks"> 
    360             <a href="#" class="show-hide">Show/Hide default networks</a> 
     422            <a href="#" class="show-hide"><?php _e( 'Show/Hide default networks' ); ?></a> 
    361423            <div class="ep-social-content"> 
    362                 <h4>Default networks</h4> 
     424                <h4><?php _e( 'Default networks' ); ?></h4> 
    363425 
    364426                <?php 
    365                 foreach($instance as $network => $link) : 
    366  
    367                     if(file_exists($this->plugin_path."/icons/icon-".$network.".gif")) : 
     427                foreach ( $instance as $network => $link ) : 
     428                    if ( file_exists( $this->plugin_path . '/icons/' . $network . '.svg' ) ) : 
    368429                    ?> 
    369430                    <p> 
    370                         <label for="<?php echo $this->get_field_id($network); ?>"><?php echo __($network.' profile link:'); ?></label> 
     431                        <label for="<?php echo $this->get_field_id( $network ); ?>"><?php _e( $network . ' profile link:' ); ?></label> 
    371432                        <br /> 
    372                         <input type="text" id="<?php echo $this->get_field_id($network); ?>" name="<?php echo $this->get_field_name($network); ?>" value="<?php echo $link['link']; ?>" class="widefat" /> 
     433                        <input type="text" id="<?php echo $this->get_field_id( $network ); ?>" name="<?php echo $this->get_field_name( $network ); ?>" value="<?php echo $link['link']; ?>" class="widefat" /> 
    373434                    </p> 
    374435                    <?php 
     
    381442    } 
    382443    private function get_icons() { 
    383         if(!file_exists($this->icondir)) { 
     444        if ( ! file_exists( $this->icondir ) ) 
     445        { 
    384446            $icons = NULL; 
    385         } else { 
    386             $icons = scandir($this->icondir); 
     447        } 
     448        else 
     449        { 
     450            $icons = scandir( $this->icondir ); 
    387451        } 
    388452 
     
    391455} 
    392456 
    393 function eps_widget_settings() { 
     457function eps_widget_settings() 
     458{ 
    394459?> 
    395460<style> 
     
    417482<?php 
    418483} 
    419 add_action("admin_head", "eps_widget_settings"); 
     484add_action( "admin_head", "eps_widget_settings" ); 
    420485 
    421486// ======================== 
     
    423488// ======================== 
    424489 
    425 include('ep_social_settings.php'); 
     490include( 'ep_social_settings.php' ); 
    426491 
    427492?> 
  • ep-social-widget/tags/1.5.0/readme.txt

    r1193834 r1288395  
    11=== EP Social Widget === 
    2 Contributors: Earth People, darkwhispering 
    3 Tags: social, widget, plugin, facebook, twitter, flickr, rss, social share, google, google plus, youtube, linkedin, myspace, deviantart, meetup, soundcloud, bandcamp, pinterest, vimeo 
     2Contributors: darkwhispering 
     3Tags: social, widget, plugin, facebook, twitter, flickr, rss, social share, google, google plus, youtube, linkedin, soundcloud, pinterest, vimeo, instagram, github 
    44Requires at least: 3.0.0 
    5 Tested up to: 4.2.2 
    6 Stable tag: 1.4.1 
     5Tested up to: 4.4.0 
     6Stable tag: 1.5.0 
    77 
    88Very small and easy to use widget and shortcode to display social icons on your site. Facebook, Twitter, Flickr, Google Plus, Youtube and more. 
     
    2020* Youtube 
    2121* LinkedIn 
    22 * DeviantArt 
    23 * Meetup 
    24 * MySpace 
    2522* Soundcloud 
    26 * Bandcamp 
    2723* Pinterest 
    2824* Vimeo 
    2925* Tumblr 
     26* Google 
     27* Instagram 
     28* Github 
    3029 
    3130You can also choose to display a icon for your RSS 2.0 feed. Icons are in black and white colors only. 
     
    4544* rss 
    4645* linkedin 
    47 * deviantart 
    48 * meetup 
    49 * myspace 
    5046* soundcloud 
    51 * bandcamp 
    5247* pinterest 
    5348* vimeo 
    5449* tumblr 
     50* google 
     51* instagram 
     52* github 
    5553 
    5654Just use the one you want to display in your post/page and give it a link. The RSS option only need a 1 as value if you want that displayed. Remove any network completely to remove it from the post/page. 
     
    7270 
    7371== Changelog == 
     72 
     73= 1.5.0 = 
     74* Replaced old GIF icons with new SVG icons to get consistent quality between platforms and devices. 
     75* Added more spacing between icons. 
     76* Added slight fade out effect on hover. 
     77* Added Github. 
     78* Added Instagram. 
     79* Added Google. *As general for anything Google, Gplus icon still exists separately.* 
     80* Removed Bandcamp. 
     81* Removed Deviantart. 
     82* Removed Meetup. 
     83* Removed MySpace. 
     84* Source code now follows the Wordpress coding standards more closely. 
     85* Tested on Wordpress 4.4 
    7486 
    7587= 1.4.1 = 
  • ep-social-widget/tags/1.5.0/style.css

    r589195 r1288395  
    66    display: block; 
    77    float: left; 
    8     margin: 0 3px 3px 0; 
     8    margin: 0 25px 25px 0; 
    99    line-height: 1; 
     10} 
     11 
     12.ep_social_widget a img { 
     13    transition: opacity .5s; 
     14} 
     15 
     16.ep_social_widget a:hover img { 
     17    opacity: .7; 
    1018} 
    1119 
  • ep-social-widget/trunk/ep_social_settings.php

    r837420 r1288395  
    33class epSocialSettings { 
    44 
    5     function __construct() { 
     5    function __construct() 
     6    { 
    67        // Folder for user uploaded icons 
    78        $wp_upload_dir = wp_upload_dir(); 
    8         $this->icondir = $wp_upload_dir['basedir'].'/epsocial_icons/'; 
    9         $this->iconurl = $wp_upload_dir['baseurl'].'/epsocial_icons/'; 
    10     } 
    11  
    12     function epsocial_panel() { 
    13         if (!current_user_can('manage_options'))  { 
    14             wp_die( __('You do not have sufficient permissions to access this page.') ); 
    15         } 
    16     ?> 
     9        $this->icondir = $wp_upload_dir['basedir'] . '/epsocial_icons/'; 
     10        $this->iconurl = $wp_upload_dir['baseurl'] . '/epsocial_icons/'; 
     11    } 
     12 
     13    function epsocial_panel() 
     14    { 
     15        if ( ! current_user_can( 'manage_options' ) ) 
     16        { 
     17            wp_die( __( 'You do not have sufficient permissions to access this page.' ) ); 
     18        } 
     19        ?> 
    1720        <div class="wrap ep-social"> 
    18             <h2><?php echo __('EP Social Widget settings'); ?></h2> 
    19              
    20             <?php if(!empty($_POST)) : ?> 
     21            <h2><?php _e( 'EP Social Widget settings' ); ?></h2> 
     22 
     23            <?php if ( ! empty( $_POST ) ) : ?> 
    2124                <?php 
    22                     if(!empty($_POST['submit'])) { 
    23                         $response = $this->epsocial_save($_POST); 
    24                     } elseif (!empty($_POST['delete'])) { 
    25                         $response = $this->epsocial_delete($_POST); 
     25                    if ( ! empty( $_POST['submit'] ) ) 
     26                    { 
     27                        $response = $this->epsocial_save( $_POST ); 
     28                    } 
     29                    elseif ( ! empty( $_POST['delete'] ) ) 
     30                    { 
     31                        $response = $this->epsocial_delete( $_POST ); 
    2632                    } 
    2733                ?> 
    2834                <div class="<?php echo $response['status']; ?>"> 
    2935                    <ul> 
    30                     <?php foreach($response['msg'] as $msg) : ?> 
     36                    <?php foreach ( $response['msg'] as $msg ) : ?> 
    3137                        <li><?php echo $msg; ?></li> 
    3238                    <?php endforeach; ?> 
     
    3440                </div> 
    3541            <?php endif; ?> 
    36              
     42 
    3743            <?php 
    3844 
    3945            ?> 
    40              
    41             <h3>Add new network</h3> 
     46 
     47            <h3><?php _e( 'Add new network' ); ?></h3> 
    4248            <p> 
    43                 The default icon is 25x25 pixels. The upload does <strong>NOT</strong> resize your images so if you want your icons in the same size you have to resize them yourself in an application like photoshop. If you wish to have larger icons for you own added networks that is possible and your are welcome to use it. 
     49                <?php _e( 'The default icon is 26x26 pixels. The upload does <strong>NOT</strong> resize your images, however, the plugin sets a fixed size of 26x26 when rendering the widget.' ); ?> 
    4450            </p> 
    4551            <form method="post" enctype="multipart/form-data"> 
     
    4854                        <tr valign="top"> 
    4955                            <th scope="row"> 
    50                                 <label for="abc_title"><?php echo __('Network name'); ?>:</label> 
     56                                <label for="abc_title"><?php _e( 'Network name' ); ?>:</label> 
    5157                            </th> 
    5258                            <td> 
    53                                 <input type="text" name="network_name" />                 
     59                                <input type="text" name="network_name" /> 
    5460                            </td> 
    5561                        </tr> 
    5662                        <tr valign="top"> 
    5763                            <th scope="row"> 
    58                                 <label for="abc_message"><?php echo __('Icon'); ?>:</label> 
     64                                <label for="abc_message"><?php _e( 'Icon' ); ?>:</label> 
    5965                            </th> 
    6066                            <td> 
    6167                                <input type="file" name="icon" /> 
     68                                <p class="description"><?php _e( 'Only .png, .jpg and .gif is support.' ); ?></p> 
    6269                            </td> 
    6370                        </tr> 
     
    7178            </form> 
    7279 
    73             <h3>Your added networks</h3> 
    74             <p>Icon is show with a max height of 70px, so don't be alarmed if your icon it not in ful size in the list, it will be on the site</p> 
     80            <h3><?php _e( 'Your added networks' ); ?></h3> 
    7581            <div id="ep-social-networks"> 
    7682                <table class="wp-list-table widefat"> 
    7783                    <thead> 
    78                         <th width="20%">Network name</th> 
    79                         <th width="80%">Icon</th> 
    80                         <th></th>                    
     84                        <th width="20%"><?php _e( 'Network name' ); ?></th> 
     85                        <th width="80%"><?php _e( 'Icon' ); ?></th> 
     86                        <th></th> 
    8187                    </thead> 
    8288                    <?php 
    8389                        $networks = $this->get_user_networks(); 
    84                         if($networks) : 
    85                             foreach($networks as $network) : 
     90                        if ( $networks ) : 
     91                            foreach ( $networks as $network ) : 
    8692                            ?> 
    8793                                <tr> 
    8894                                    <td><?php echo $network['name']; ?></td> 
    89                                     <td><img src="<?php echo $this->iconurl; ?><?php echo $network['icon']; ?>" alt="<?php echo $network['name']; ?>" style="max-height:70px"></td> 
     95                                    <td><img src="<?php echo $this->iconurl; ?><?php echo $network['icon']; ?>" alt="<?php echo $network['name']; ?>" width="26" height="26"></td> 
    9096                                    <td> 
    9197                                        <div class="row-actions"> 
     
    104110                        ?> 
    105111 
    106                         <tr> 
    107                             <td>No networks added</td> 
    108                         </tr> 
     112                            <tr> 
     113                                <td><?php _e( 'No networks added' ); ?></td> 
     114                            </tr> 
    109115 
    110116                        <?php 
     
    117123    } 
    118124 
    119     private function get_user_networks() { 
    120         if(!file_exists($this->icondir)) return NULL; 
    121  
    122         $icons = scandir($this->icondir); 
    123  
    124         unset($icons[0]); 
    125         unset($icons[1]); 
    126  
    127         foreach($icons as $icon) { 
    128             $ext = pathinfo($icon, PATHINFO_EXTENSION); 
    129             $name = str_replace('icon-','',str_replace('.'.$ext,'',$icon)); 
     125    private function get_user_networks() 
     126    { 
     127        if ( ! file_exists( $this->icondir ) ) 
     128        { 
     129            return NULL; 
     130        } 
     131 
     132        $icons = scandir( $this->icondir ); 
     133 
     134        unset( $icons[0] ); 
     135        unset( $icons[1] ); 
     136 
     137        foreach ( $icons as $icon ) 
     138        { 
     139            $ext  = pathinfo( $icon, PATHINFO_EXTENSION ); 
     140            $name = str_replace( 'icon-', '', str_replace( '.' . $ext, '', $icon ) ); 
    130141 
    131142            $networks[] = array( 
     
    138149    } 
    139150 
    140     private function epsocial_delete($data) { 
     151    private function epsocial_delete( $data ) 
     152    { 
    141153        $icon = $data['icon']; 
    142154 
    143         if (unlink($this->icondir.$icon)) { 
     155        if ( unlink( $this->icondir . $icon ) ) 
     156        { 
    144157            return array( 
    145                 'status' => 'updated', 
    146                 'msg' => array( 
    147                     0 => 'Your network is deleted.' 
     158                'status' => __( 'updated' ), 
     159                'msg'    => array( 
     160                    0 => __( 'Your network is deleted.' ) 
    148161                ) 
    149162            ); 
    150         } else { 
     163        } 
     164        else 
     165        { 
    151166            return array( 
    152                 'status' => 'error', 
    153                 'msg' => array( 
    154                     0 => 'Could not delete the network.' 
     167                'status' => __( 'error' ), 
     168                'msg'    => array( 
     169                    0 => __( 'Could not delete the network.' ) 
    155170                ) 
    156171            ); 
    157172        } 
    158  
    159  
    160     } 
    161      
    162     private function epsocial_save($data) { 
     173    } 
     174 
     175    private function epsocial_save( $data ) 
     176    { 
    163177        // Icon 
    164178        $icon = $_FILES['icon']; 
    165179 
    166         // Validate if the icon is gif, png or jpg and not larger then 1MB in size 
    167         if (!preg_match('![a-z0-9\-\.\/]+\.(?:gif|png|jpg)!Ui' , $icon['name'])) { 
    168             $error[] = 'Only gif, png, jpg images are allowed'; 
    169         } 
    170         if ($icon['size'] > 2000000) { 
    171             $error[] = 'Maximum size allowed is 2MB'; 
    172         } 
    173         if (empty($data['network_name'])) { 
    174             $error[] = 'You must enter a network name'; 
     180        // Validate if the icon is gif, png or jpg and not larger then 2MB in size 
     181        if ( ! preg_match( '![a-z0-9\-\.\/]+\.(?:gif|png|jpg)!Ui', $icon['name'] ) ) 
     182        { 
     183            $error[] = __( 'Only gif, png, jpg images are allowed' ); 
     184        } 
     185 
     186        if ( $icon['size'] > 2000000 ) 
     187        { 
     188            $error[] = __( 'Maximum size allowed is 2MB' ); 
     189        } 
     190 
     191        if ( empty( $data['network_name'] ) ) 
     192        { 
     193            $error[] = __( 'You must enter a network name' ); 
    175194        } 
    176195 
    177196        // Check if we have any error and if so, return them and stop the script, else, continue 
    178         if(count($error) > 0) { 
     197        if ( count( $error ) > 0 ) 
     198        { 
    179199            return array( 
    180                 'status'    => 'error', 
    181                 'msg'   => $error 
    182             ); 
    183             die(); 
    184         } else { 
    185  
    186             if(!is_dir($this->icondir)) { 
    187                 mkdir($this->icondir); 
    188                 chmod($this->icondir, 0755); 
    189             } else { 
    190                 chmod($this->icondir, 0755); 
     200                'status' => __( 'error' ), 
     201                'msg'    => $error 
     202            ); 
     203        } 
     204        else 
     205        { 
     206            if ( ! is_dir( $this->icondir ) ) 
     207            { 
     208                mkdir( $this->icondir ); 
     209                chmod( $this->icondir, 0755 ); 
    191210            } 
     211            else 
     212            { 
     213                chmod( $this->icondir, 0755 ); 
     214            } 
    192215 
    193216            // Clean network name 
    194             $network    = $this->get_slug($data['network_name']); 
    195             $ext        = pathinfo($icon['name'], PATHINFO_EXTENSION); 
    196             $new_name   = 'icon-'.$network.'.'.$ext; 
    197             $uploadfile = $this->icondir.basename($new_name); 
    198             $movefile   = move_uploaded_file($icon['tmp_name'],$uploadfile); 
    199  
    200             if($movefile) { 
     217            $network    = $this->get_slug( $data['network_name'] ); 
     218            $ext        = pathinfo( $icon['name'], PATHINFO_EXTENSION ); 
     219            $new_name   = 'icon-' . $network . '.' . $ext; 
     220            $uploadfile = $this->icondir . basename( $new_name ); 
     221            $movefile   = move_uploaded_file( $icon['tmp_name'], $uploadfile ); 
     222 
     223            if ( $movefile ) 
     224            { 
    201225                return array( 
    202                     'status' => 'updated', 
    203                     'msg' => array( 
    204                         0 => 'Your network is added.' 
     226                    'status' => __( 'updated' ), 
     227                    'msg'    => array( 
     228                        0 => __( 'Your network is added.' ) 
    205229                    ) 
    206230                ); 
     
    209233    } 
    210234 
    211     private function get_slug($str, $replace=array(), $delimiter='_') { 
    212         setlocale(LC_ALL, 'sv_SE.UTF8'); 
    213         if(!empty($replace)) { 
    214             $str = str_replace((array)$replace, ' ', $str); 
    215         } 
    216  
    217         $clean = iconv('UTF-8', 'ASCII//TRANSLIT', $str); 
    218         $clean = preg_replace("/[^a-zA-Z0-9\/_|+ -]/", '', $clean); 
    219         $clean = strtolower(trim($clean, '-')); 
    220         $clean = preg_replace("/[\/_|+ -]+/", $delimiter, $clean); 
     235    private function get_slug( $str, $replace = array(), $delimiter = '_' ) 
     236    { 
     237        setlocale( LC_ALL, 'sv_SE.UTF8' ); 
     238        if ( ! empty( $replace ) ) 
     239        { 
     240            $str = str_replace( (array) $replace, ' ', $str ); 
     241        } 
     242 
     243        $clean = iconv( 'UTF-8', 'ASCII//TRANSLIT', $str ); 
     244        $clean = preg_replace( '/[^a-zA-Z0-9\/_|+ -]/', '', $clean ); 
     245        $clean = strtolower( trim( $clean, '-' ) ); 
     246        $clean = preg_replace( '/[\/_|+ -]+/', $delimiter, $clean ); 
    221247 
    222248        return $clean; 
     
    224250} 
    225251 
    226 function epsocial_settings() { 
     252function epsocial_settings() 
     253{ 
    227254    $settings_panel = new epSocialSettings; 
    228255    return $settings_panel->epsocial_panel(); 
    229256} 
    230257 
    231 function epsocial_menu() { 
    232     add_submenu_page('options-general.php', 'EP Social Widget Settings', 'EP Social Widget', 'manage_options', 'ep-social-widget', 'epsocial_settings'); 
     258function epsocial_menu() 
     259{ 
     260    add_submenu_page( 
     261        'options-general.php', 
     262        'EP Social Widget Settings', 
     263        'EP Social Widget', 
     264        'manage_options', 
     265        'ep-social-widget', 
     266        'epsocial_settings' 
     267    ); 
    233268} 
    234 add_action('admin_menu','epsocial_menu'); 
     269add_action( 'admin_menu','epsocial_menu' ); 
  • ep-social-widget/trunk/ep_social_widget.php

    r1059003 r1288395  
    33Plugin Name: EP Social Widget 
    44Plugin URI: http://www.darkwhispering.com 
    5 Description: Very small and easy to use widget and shortcode to display social icons on your site. Facebook, Twitter, Flickr, Google Plus, Youtube, LinkedIn, DeviantArt, Meetup, MySpace, Soundcloud, Bandcamp, Pinterest, Vimeo, Tumblr and RSS feed 
     5Description: Very small and easy to use widget and shortcode to display social icons on your site. Facebook, Twitter, Flickr, Google, Google Plus, Youtube, LinkedIn, Soundcloud, Pinterest, Vimeo, Tumblr, Instagram, Github and RSS feed. 
    66Author: Mattias Hedman 
    77Author URI: http://www.darkwhispering.com 
    8 Version: 1.4.1 
     8Version: 1.5.0 
    99*/ 
    10 define('EPS_VERSION','1.4.1'); 
    11  
    12 add_action('init','epSocialWidgetVersion',1); 
     10define( 'EPS_VERSION','1.5.0' ); 
     11 
     12add_action( 'init', 'epSocialWidgetVersion', 1 ); 
    1313function epSocialWidgetVersion() 
    1414{ 
    15     if (get_option('ep-social-widget-version') != EPS_VERSION) { 
    16         update_option('ep-social-widget-old-version', get_option('ep-social-widget-version')); 
    17         update_option('ep-social-widget-version',EPS_VERSION); 
     15    if ( get_option( 'ep-social-widget-version' ) != EPS_VERSION ) 
     16    { 
     17        update_option( 'ep-social-widget-old-version', get_option( 'ep-social-widget-version' ) ); 
     18        update_option( 'ep-social-widget-version', EPS_VERSION ); 
    1819    } 
    1920} 
     
    2324// ==================== 
    2425 
    25 function epsw_shortcode($args){ 
     26function epsw_shortcode( $args ) 
     27{ 
    2628    // User uploaded icon url 
    2729    $wp_upload_dir = wp_upload_dir(); 
    28     $iconurl = $wp_upload_dir['baseurl'].'/epsocial_icons/'; 
    29     $icondir = $wp_upload_dir['basedir'].'/epsocial_icons/'; 
     30    $iconurl       = $wp_upload_dir['baseurl'] . '/epsocial_icons/'; 
     31    $icondir       = $wp_upload_dir['basedir'] . '/epsocial_icons/'; 
    3032 
    3133    // Plugin path 
    32     $plugin_path = WP_PLUGIN_DIR.DIRECTORY_SEPARATOR.str_replace(basename(__FILE__),"",plugin_basename(__FILE__)); 
     34    $plugin_path = WP_PLUGIN_DIR . DIRECTORY_SEPARATOR . str_replace( basename( __FILE__ ), '', plugin_basename( __FILE__ ) ); 
    3335 
    3436    $html = '<ul class="ep_social_widget" id="epSW_shortcode">'; 
    35     foreach($args as $network => $link) { 
    36         if($network === 'rss') { 
    37             if($link === '1') { 
     37    foreach ( $args as $network => $link ) 
     38    { 
     39        if ( $network === 'rss' ) 
     40        { 
     41            if ( $link === '1' ) 
     42            { 
    3843                $html .= '<li>'; 
    39                     $html .= '<a href="'.get_bloginfo("rss2_url").'" target="_blank" title="RSS"><img src="'.plugins_url("icons/icon-rss.gif", __FILE__).'" alt="RSS" /></a>'; 
     44                    $html .= '<a href="' . get_bloginfo( "rss2_url" ) . '" target="_blank" title="RSS"><img src="' . plugins_url( "icons/rss.svg", __FILE__ ) . '" alt="RSS" width="26" height="26" /></a>'; 
    4045                $html .= '</li>'; 
    4146            } 
    42         } else { 
     47        } 
     48        else 
     49        { 
    4350            $pattern1 = '/^http:\/\//'; 
    4451            $pattern2 = '/^https:\/\//'; 
    4552 
    46             $l = strip_tags($link); 
    47             if(preg_match($pattern1, $l) || preg_match($pattern2, $l)){ 
     53            $l = strip_tags( $link ); 
     54            if ( preg_match( $pattern1, $l ) || preg_match( $pattern2, $l ) ) 
     55            { 
    4856                $link = $l; 
    49             } else { 
     57            } 
     58            else 
     59            { 
    5060                $link = 'http://'.$l; 
    5161            } 
     
    5363            $html .= '<li>'; 
    5464 
    55             if(file_exists($plugin_path."/icons/icon-".$network.".gif")) { 
    56                 $html .= '<a href="'.$link.'" target="_blank" title="'.$network.'"><img src="'.plugins_url("icons/icon-".$network.".gif", __FILE__).'" alt="'.$network.'" /></a>'; 
    57             } else { 
    58  
    59                 if(!file_exists($icondir)) { 
     65            if ( file_exists( $plugin_path . '/icons/' . $network . '.svg' ) ) 
     66            { 
     67                $html .= '<a href="' . $link . '" target="_blank" title="' . $network . '"><img src="'.plugins_url( "icons/" . $network . ".svg", __FILE__ ).'" alt="' . $network . '" width="26" height="26" /></a>'; 
     68            } 
     69            else 
     70            { 
     71                if ( ! file_exists( $icondir ) ) 
     72                { 
    6073                    $icons = NULL; 
    61                 } else { 
    62                     $icons = scandir($icondir); 
    63                 } 
    64  
    65                 if($icons) { 
    66                     foreach ($icons as $icon) { 
    67                         $ext = pathinfo($icon, PATHINFO_EXTENSION); 
    68                         $name = str_replace('icon-','',str_replace('.'.$ext,'',$icon)); 
    69                         if ($name == $network) { 
    70                             $html .= '<a href="'.$link.'" target="_blank" title="'.$network.'"><img src="'.$iconurl.'icon-'.$network.'.'.$ext.'" alt="'.$network.'" /></a>'; 
     74                } 
     75                else 
     76                { 
     77                    $icons = scandir( $icondir ); 
     78                } 
     79 
     80                if ( $icons ) 
     81                { 
     82                    foreach ( $icons as $icon ) 
     83                    { 
     84                        $ext  = pathinfo( $icon, PATHINFO_EXTENSION ); 
     85                        $name = str_replace( 'icon-', '', str_replace( '.' . $ext, '', $icon ) ); 
     86 
     87                        if ( $name == $network ) 
     88                        { 
     89                            $html .= '<a href="' . $link . '" target="_blank" title="' . $network . '"><img src="' . $iconurl . 'icon-' . $network . '.' . $ext . '" alt="' . $network . '" width="26" height="26" /></a>'; 
    7190                        } 
    7291                    } 
     
    82101    return $html; 
    83102} 
    84 add_shortcode('ep-social-widget', 'epsw_shortcode'); 
     103add_shortcode( 'ep-social-widget', 'epsw_shortcode' ); 
    85104 
    86105 
     
    89108// ================= 
    90109// Load stylesheet and widget 
    91 add_action('wp_head','epSocialWidgetCss'); 
    92 add_action('widgets_init','load_epSocialWidget'); 
     110add_action( 'wp_head','epSocialWidgetCss' ); 
     111add_action( 'widgets_init','load_epSocialWidget' ); 
    93112 
    94113// Register the widget 
    95 function load_epSocialWidget() { 
    96     register_widget('epSocialWidget'); 
     114function load_epSocialWidget() 
     115{ 
     116    register_widget( 'epSocialWidget' ); 
    97117} 
    98118 
    99119// Widget stylesheet 
    100 function epSocialWidgetCss() { 
    101     echo '<link href="'.plugins_url('style.css', __FILE__).'" type="text/css" rel="stylesheet" media="screen" />'; 
    102 } 
    103  
    104 class epSocialWidget extends WP_Widget{ 
    105  
    106     function epSocialWidget() { 
     120function epSocialWidgetCss() 
     121{ 
     122    echo '<link href="' . plugins_url( 'style.css', __FILE__ ) . '" type="text/css" rel="stylesheet" media="screen" />'; 
     123} 
     124 
     125class epSocialWidget extends WP_Widget { 
     126 
     127    function epSocialWidget() 
     128    { 
    107129        //Settings 
    108         $widget_ops = array('classname'=>'epsocialwidget','description'=>__('Display social icons on your site.','epsocialwidget')); 
     130        $widget_ops = array( 
     131            'classname' => 'epsocialwidget', 
     132            'description' => __( 'Display social icons on your site.', 'epsocialwidget' ) 
     133        ); 
    109134 
    110135        //Controll settings 
    111         $control_ops = array('id_base' => 'epsocialwidget'); 
     136        $control_ops = array( 'id_base' => 'epsocialwidget' ); 
    112137 
    113138        //Create widget 
    114         $this->WP_Widget('epsocialwidget',__('EP Social Widget'),$widget_ops,$control_ops); 
     139        $this->WP_Widget( 'epsocialwidget', __( 'EP Social Widget' ), $widget_ops, $control_ops ); 
    115140 
    116141        // Plugin path 
    117         $this->plugin_path = WP_PLUGIN_DIR.DIRECTORY_SEPARATOR.str_replace(basename(__FILE__),"",plugin_basename(__FILE__)); 
     142        $this->plugin_path = WP_PLUGIN_DIR . DIRECTORY_SEPARATOR . str_replace( basename( __FILE__ ), '', plugin_basename( __FILE__ ) ); 
    118143 
    119144        // User uploaded icon url 
    120145        $wp_upload_dir = wp_upload_dir(); 
    121         $this->iconurl = $wp_upload_dir['baseurl'].'/epsocial_icons/'; 
    122         $this->icondir = $wp_upload_dir['basedir'].'/epsocial_icons/'; 
     146        $this->iconurl = $wp_upload_dir['baseurl'] . '/epsocial_icons/'; 
     147        $this->icondir = $wp_upload_dir['basedir'] . '/epsocial_icons/'; 
    123148    } 
    124149 
    125150    // Widget frontend 
    126     function widget($args,$instance) { 
    127         extract($args); 
     151    function widget( $args, $instance ) 
     152    { 
     153        extract( $args ); 
    128154 
    129155        /* If we just upgraded from v1.0.2 or lower to v1.1.0 we need to update the instance array */ 
    130         if (get_option('ep-social-widget-old-version') <= '1.1.0') { 
    131             $v_upgrade = get_option('ep-social-widget-1.0.2to1.1.0'); 
    132             if (!$v_upgrade) { 
     156        if ( get_option( 'ep-social-widget-old-version' ) <= '1.1.0' ) 
     157        { 
     158            $v_upgrade = get_option( 'ep-social-widget-1.0.2to1.1.0' ); 
     159            if ( ! $v_upgrade ) 
     160            { 
    133161                $title = $instance['title']; 
    134                 $rss = $instance['rss']; 
    135                 unset($instance['title']); 
    136                 unset($instance['rss']); 
    137                 $count_networks = count($instance); 
    138                 foreach ($instance as $network => $url) { 
     162                $rss   = $instance['rss']; 
     163                unset( $instance['title'] ); 
     164                unset( $instance['rss'] ); 
     165 
     166                $count_networks = count( $instance ); 
     167                foreach ( $instance as $network => $url ) 
     168                { 
    139169                    $link = $url; 
    140                     $instance[$network] = ''; 
    141                     $instance[$network]['link'] = $link; 
     170                    $instance[ $network ] = ''; 
     171                    $instance[ $network ]['link'] = $link; 
    142172                } 
    143173 
    144174                $icons = $this->get_icons(); 
    145                 if($icons) { 
    146                     foreach ($icons as $icon) { 
    147                         $ext = pathinfo($icon, PATHINFO_EXTENSION); 
    148                         $name = str_replace('icon-','',str_replace('.'.$ext,'',$icon)); 
    149                         $instance[$name]['icon'] = $icon; 
     175                if ( $icons ) 
     176                { 
     177                    foreach ( $icons as $icon ) 
     178                    { 
     179                        $ext  = pathinfo( $icon, PATHINFO_EXTENSION ); 
     180                        $name = str_replace( 'icon-', '', str_replace( '.' . $ext, '', $icon ) ); 
     181                        $instance[ $name ]['icon'] = $icon; 
    150182                    } 
    151183                } 
    152184 
    153185                $instance['title'] = $title; 
    154                 $instance['rss'] = $rss; 
     186                $instance['rss']   = $rss; 
    155187                $i++; 
    156188            } 
     
    159191        //User selected settings 
    160192        $title = $instance['title']; 
    161         unset($instance['title']); 
     193        unset( $instance['title'] ); 
    162194 
    163195        echo $before_widget; 
     
    169201 
    170202            <?php 
    171                 foreach($instance as $network => $data) { 
    172                     if($network === 'rss') { 
    173                         if($data === '1') { 
    174                             echo '<a href="'.get_bloginfo("rss2_url").'" target="_blank" title="RSS"><img src="'.plugins_url("icons/icon-rss.gif", __FILE__).'" alt="RSS" /></a>'; 
     203                foreach ( $instance as $network => $data ) 
     204                { 
     205                    if ( $network === 'rss' ) 
     206                    { 
     207                        if ( $data === '1' ) 
     208                        { 
     209                            echo '<a href="' . get_bloginfo( "rss2_url" ) . '" target="_blank" title="RSS"><img src="' . plugins_url( "icons/rss.svg", __FILE__ ) . '" alt="RSS" width="26" height="26" /></a>'; 
    175210                        } 
    176                     } else { 
    177                         if (!empty($data['link'])) { 
    178                             if (!isset($data['icon'])) { 
    179                                 echo '<a href="'.$data['link'].'" target="_blank" title="'.$network.'"><img src="'.plugins_url("icons/icon-".$network.".gif", __FILE__).'" alt="'.$network.'" /></a>'; 
    180                             } else { 
    181                                 if (!file_exists($this->icondir.$data['icon'])) { 
    182                                     unset($instance[$network]); 
    183                                 } else { 
    184                                     echo '<a href="'.$data['link'].'" target="_blank" title="'.$network.'"><img src="'.$this->iconurl.$data['icon'].'" alt="'.$network.'" /></a>'; 
     211                    } 
     212                    else 
     213                    { 
     214                        if ( ! empty( $data['link'] ) ) 
     215                        { 
     216                            if ( ! isset( $data['icon'] ) ) 
     217                            { 
     218                                echo '<a href="' . $data['link'] . '" target="_blank" title="' . $network . '"><img src="' . plugins_url( "icons/" . $network . ".svg", __FILE__ ) . '" alt="' . $network . '" width="26" height="26" /></a>'; 
     219                            } 
     220                            else 
     221                            { 
     222                                if ( ! file_exists( $this->icondir . $data['icon'] ) ) 
     223                                { 
     224                                    unset( $instance[$network] ); 
     225                                } 
     226                                else 
     227                                { 
     228                                    echo '<a href="' . $data['link'] . '" target="_blank" title="' . $network . '"><img src="' . $this->iconurl . $data['icon'] . '" alt="' . $network . '" width="26" height="26" /></a>'; 
    185229                                } 
    186230                            } 
     
    196240 
    197241    // Widget update 
    198     function update($new_instance,$instance) { 
     242    function update( $new_instance, $instance ) 
     243    { 
    199244        /* If we just upgraded from v1.0.2 or lower to v1.1.0 we need to update the instance array */ 
    200         if (get_option('ep-social-widget-old-version') <= '1.1.0') { 
    201             $v_upgrade = get_option('ep-social-widget-1.0.2to1.1.0'); 
    202             if (!$v_upgrade) { 
     245        if ( get_option( 'ep-social-widget-old-version' ) <= '1.1.0' ) 
     246        { 
     247            $v_upgrade = get_option( 'ep-social-widget-1.0.2to1.1.0' ); 
     248            if ( ! $v_upgrade ) 
     249            { 
    203250                $title = $instance['title']; 
    204                 $rss = $instance['rss']; 
    205                 unset($instance['title']); 
    206                 unset($instance['rss']); 
    207                 $count_networks = count($instance); 
    208                 foreach ($instance as $network => $url) { 
    209                     $link = $url; 
    210                     $instance[$network] = ''; 
    211                     $instance[$network]['link'] = $link; 
     251                $rss   = $instance['rss']; 
     252                unset( $instance['title'] ); 
     253                unset( $instance['rss'] ); 
     254 
     255                $count_networks = count( $instance ); 
     256                foreach ( $instance as $network => $url ) 
     257                { 
     258                    $link                         = $url; 
     259                    $instance[ $network ]         = ''; 
     260                    $instance[ $network ]['link'] = $link; 
    212261                } 
    213262                $instance['title'] = $title; 
    214                 $instance['rss'] = $rss; 
     263                $instance['rss']   = $rss; 
    215264                $i++; 
    216265            } 
     
    221270        $pattern2 = '/^https:\/\//'; 
    222271 
    223         $instance['title'] = strip_tags($new_instance['title']); 
    224         $instance['rss'] = strip_tags($new_instance['rss']); 
    225  
    226         unset($new_instance['title']); 
    227         unset($new_instance['rss']); 
    228  
    229         foreach($new_instance as $key => $new) { 
    230             // if($new) { 
    231                 $link = strip_tags($new); 
    232                 if (!empty($link)) { 
    233                     if(preg_match($pattern1,$link) || preg_match($pattern2,$link)) { 
    234                         $instance[$key]['link'] = $link; 
    235                     } else { 
    236                         $instance[$key]['link'] = 'http://'.$link; 
    237                     } 
    238  
    239                     if(file_exists($this->icondir.'icon-'.$key.'.png')) { 
    240                         $instance[$key]['icon'] = 'icon-'.$key.'.png'; 
    241                     } elseif (file_exists($this->icondir.'icon-'.$key.'.jpg')) { 
    242                         $instance[$key]['icon'] = 'icon-'.$key.'.jpg'; 
    243                     } elseif (file_exists($this->icondir.'icon-'.$key.'.gif')) { 
    244                         $instance[$key]['icon'] = 'icon-'.$key.'.gif'; 
    245                     } 
    246  
    247                 } else { 
    248                     $instance[$key]['link'] = NULL; 
    249                 } 
    250             // } 
    251         } 
    252  
    253         $v_upgrade = get_option('ep-social-widget-1.0.2to1.1.0'); 
    254         if (!$v_upgrade) update_option('ep-social-widget-1.0.2to1.1.0','true'); 
     272        $instance['title'] = strip_tags( $new_instance['title'] ); 
     273        $instance['rss'] = strip_tags( $new_instance['rss'] ); 
     274 
     275        unset( $new_instance['title'] ); 
     276        unset( $new_instance['rss'] ); 
     277 
     278        foreach( $new_instance as $key => $new ) 
     279        { 
     280            $link = strip_tags( $new ); 
     281            if ( ! empty( $link ) ) 
     282            { 
     283                if ( preg_match( $pattern1, $link ) || preg_match( $pattern2, $link ) ) 
     284                { 
     285                    $instance[ $key ]['link'] = $link; 
     286                } 
     287                else 
     288                { 
     289                    $instance[ $key ]['link'] = 'http://' . $link; 
     290                } 
     291 
     292                if ( file_exists( $this->icondir . 'icon-' . $key . '.png' ) ) 
     293                { 
     294                    $instance[ $key ]['icon'] = 'icon-' . $key . '.png'; 
     295                } 
     296                elseif ( file_exists( $this->icondir . 'icon-' . $key . '.jpg' ) ) 
     297                { 
     298                    $instance[ $key ]['icon'] = 'icon-' . $key . '.jpg'; 
     299                } 
     300                elseif ( file_exists( $this->icondir . 'icon-' . $key . '.gif' ) ) 
     301                { 
     302                    $instance[ $key ]['icon'] = 'icon-' . $key . '.gif'; 
     303                } 
     304 
     305            } else { 
     306                $instance[ $key ]['link'] = NULL; 
     307            } 
     308        } 
     309 
     310        $v_upgrade = get_option( 'ep-social-widget-1.0.2to1.1.0' ); 
     311        if ( ! $v_upgrade ) update_option( 'ep-social-widget-1.0.2to1.1.0', 'true' ); 
    255312 
    256313        return $instance; 
     
    258315 
    259316    // Widget backend 
    260     function form($instance) { 
     317    function form( $instance ) 
     318    { 
    261319        /* If we just upgraded from v1.0.2 or lower to v1.1.0 we need to update the instance array */ 
    262         if (get_option('ep-social-widget-old-version') <= '1.1.0') { 
    263             $v_upgrade = get_option('ep-social-widget-1.0.2to1.1.0'); 
    264             if (!$v_upgrade) { 
     320        if ( get_option( 'ep-social-widget-old-version' ) <= '1.1.0' ) 
     321        { 
     322            $v_upgrade = get_option( 'ep-social-widget-1.0.2to1.1.0' ); 
     323            if ( ! $v_upgrade ) 
     324            { 
    265325                $title = $instance['title']; 
    266                 $rss = $instance['rss']; 
    267                 unset($instance['title']); 
    268                 unset($instance['rss']); 
    269                 $count_networks = count($instance); 
    270                 foreach ($instance as $network => $url) { 
    271                     $link = $url; 
    272                     $instance[$network] = ''; 
    273                     $instance[$network]['link'] = $link; 
     326                $rss   = $instance['rss']; 
     327                unset( $instance['title'] ); 
     328                unset( $instance['rss'] ); 
     329 
     330                $count_networks = count( $instance ); 
     331                foreach ( $instance as $network => $url ) 
     332                { 
     333                    $link                         = $url; 
     334                    $instance[ $network ]         = ''; 
     335                    $instance[ $network ]['link'] = $link; 
    274336                } 
    275337                $instance['title'] = $title; 
    276                 $instance['rss'] = $rss; 
     338                $instance['rss']   = $rss; 
    277339                $i++; 
    278340            } 
     
    282344            'title'         => '', 
    283345            'rss'           => '', 
    284             'twitter'       => array('link' => ''), 
    285             'facebook'      => array('link' => ''), 
    286             'flickr'        => array('link' => ''), 
    287             'gplus'         => array('link' => ''), 
    288             'youtube'       => array('link' => ''), 
    289             'linkedin'      => array('link' => ''), 
    290             'deviantart'    => array('link' => ''), 
    291             'meetup'        => array('link' => ''), 
    292             'myspace'       => array('link' => ''), 
    293             'bandcamp'      => array('link' => ''), 
    294             'soundcloud'    => array('link' => ''), 
    295             'pinterest'     => array('link' => ''), 
    296             'vimeo'         => array('link' => ''), 
    297             'tumblr'        => array('link' => '') 
     346            'twitter'       => array( 'link' => '' ), 
     347            'facebook'      => array( 'link' => '' ), 
     348            'flickr'        => array( 'link' => '' ), 
     349            'gplus'         => array( 'link' => '' ), 
     350            'youtube'       => array( 'link' => '' ), 
     351            'linkedin'      => array( 'link' => '' ), 
     352            'soundcloud'    => array( 'link' => '' ), 
     353            'pinterest'     => array( 'link' => '' ), 
     354            'vimeo'         => array( 'link' => '' ), 
     355            'tumblr'        => array( 'link' => '' ), 
     356            'google'        => array( 'link' => '' ), 
     357            'instagram'     => array( 'link' => '' ), 
     358            'github'        => array( 'link' => '' ) 
    298359        ); 
    299         $instance = wp_parse_args((array)$instance,$default); 
    300  
    301         $icons = $this->get_icons(); 
    302  
    303         unset($icons[0]); 
    304         unset($icons[1]); 
    305  
    306         if($icons) { 
    307             foreach($icons as $icon) { 
    308                 $ext = pathinfo($icon, PATHINFO_EXTENSION); 
    309                 $name = str_replace('icon-','',str_replace('.'.$ext,'',$icon)); 
    310  
     360 
     361        $instance = wp_parse_args( (array) $instance, $default ); 
     362        $icons    = $this->get_icons(); 
     363 
     364        unset( $icons[0] ); 
     365        unset( $icons[1] ); 
     366 
     367        if ( $icons ) 
     368        { 
     369            foreach ( $icons as $icon ) 
     370            { 
     371                $ext        = pathinfo( $icon, PATHINFO_EXTENSION ); 
     372                $name       = str_replace( 'icon-', '', str_replace( '.' . $ext, '', $icon ) ); 
    311373                $networks[] = $name; 
    312374            } 
     
    315377        <!-- TITLE --> 
    316378        <p> 
    317             <label for="<?php echo $this->get_field_id('title'); ?>"><?php echo __('Title:'); ?></label> 
     379            <label for="<?php echo $this->get_field_id( 'title' ); ?>"><?php _e( 'Title:' ); ?></label> 
    318380            <br /> 
    319             <input type="text" id="<?php echo $this->get_field_id('title'); ?>" name="<?php echo $this->get_field_name('title'); ?>" value="<?php echo $instance['title']; ?>" class="widefat" /> 
     381            <input type="text" id="<?php echo $this->get_field_id( 'title' ); ?>" name="<?php echo $this->get_field_name( 'title' ); ?>" value="<?php echo $instance['title']; ?>" class="widefat" /> 
    320382        </p> 
    321383 
    322384        <!-- RSS --> 
    323385        <p> 
    324             <label for="<?php echo $this->get_field_id('rss'); ?>"><?php echo __('Display rss link:'); ?></label> 
     386            <label for="<?php echo $this->get_field_id( 'rss' ); ?>"><?php _e( 'Display rss link:' ); ?></label> 
    325387            &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
    326             <input type="radio" id="<?php echo $this->get_field_id('rss'); ?>" name="<?php echo $this->get_field_name('rss'); ?>" <?php if($instance['rss'] == 1): ?> checked="checked" <?php endif; ?> value="1" /> <?php echo __('Yes'); ?> 
     388            <input type="radio" id="<?php echo $this->get_field_id( 'rss' ); ?>" name="<?php echo $this->get_field_name( 'rss' ); ?>" <?php if ( $instance['rss'] == 1 ): ?> checked="checked" <?php endif; ?> value="1" /> <?php _e( 'Yes' ); ?> 
    327389            &nbsp;&nbsp;&nbsp;&nbsp; 
    328             <input type="radio" id="<?php echo $this->get_field_id('rss'); ?>" name="<?php echo $this->get_field_name('rss'); ?>" <?php if($instance['rss'] == 0): ?> checked="checked" <?php endif; ?> value="0" /> <?php echo __('No'); ?> 
     390            <input type="radio" id="<?php echo $this->get_field_id( 'rss' ); ?>" name="<?php echo $this->get_field_name( 'rss' ); ?>" <?php if ( $instance['rss'] == 0 ): ?> checked="checked" <?php endif; ?> value="0" /> <?php _e( 'No' ); ?> 
    329391        </p> 
    330392 
    331         <?php if($networks) : ?> 
     393        <?php if ( $networks ) : ?> 
    332394        <div class="ep-social-user-networks"> 
    333             <a href="#" class="show-hide">Show/Hide user added networks</a> 
     395            <a href="#" class="show-hide"><?php _e( 'Show/Hide user added networks' ); ?></a> 
    334396            <div class="ep-social-content"> 
    335                 <h4>User added networks</h4> 
     397                <h4><?php _e( 'User added networks' ); ?></h4> 
    336398                <?php 
    337                 foreach($networks as $network) : 
     399                foreach ( $networks as $network ) : 
    338400                ?> 
    339401                    <p> 
    340                         <label for="<?php echo $this->get_field_id($network); ?>"><?php echo __(str_replace('_',' ',$network).' profile link:'); ?></label> 
     402                        <label for="<?php echo $this->get_field_id( $network ); ?>"><?php _e( str_replace( '_', ' ', $network ) . ' profile link:' ); ?></label> 
    341403                        <br /> 
    342                         <input type="text" id="<?php echo $this->get_field_id($network); ?>" name="<?php echo $this->get_field_name($network); ?>" value="<?php echo $instance[$network]['link']; ?>" class="widefat" /> 
     404                        <input type="text" id="<?php echo $this->get_field_id( $network ); ?>" name="<?php echo $this->get_field_name( $network ); ?>" value="<?php echo $instance[ $network ]['link']; ?>" class="widefat" /> 
    343405                    </p> 
    344406                <?php 
    345                 unset($instance[$network]); 
     407                unset( $instance[ $network ] ); 
    346408                endforeach; 
    347409                ?> 
     
    351413        endif; 
    352414 
    353         unset($instance['title']); 
    354         unset($instance['rss']); 
    355         unset($instance['0']); 
     415        unset( $instance['title'] ); 
     416        unset( $instance['rss'] ); 
     417        unset( $instance['0'] ); 
    356418        ?> 
    357419 
    358420 
    359421        <div class="ep-social-default-networks"> 
    360             <a href="#" class="show-hide">Show/Hide default networks</a> 
     422            <a href="#" class="show-hide"><?php _e( 'Show/Hide default networks' ); ?></a> 
    361423            <div class="ep-social-content"> 
    362                 <h4>Default networks</h4> 
     424                <h4><?php _e( 'Default networks' ); ?></h4> 
    363425 
    364426                <?php 
    365                 foreach($instance as $network => $link) : 
    366  
    367                     if(file_exists($this->plugin_path."/icons/icon-".$network.".gif")) : 
     427                foreach ( $instance as $network => $link ) : 
     428                    if ( file_exists( $this->plugin_path . '/icons/' . $network . '.svg' ) ) : 
    368429                    ?> 
    369430                    <p> 
    370                         <label for="<?php echo $this->get_field_id($network); ?>"><?php echo __($network.' profile link:'); ?></label> 
     431                        <label for="<?php echo $this->get_field_id( $network ); ?>"><?php _e( $network . ' profile link:' ); ?></label> 
    371432                        <br /> 
    372                         <input type="text" id="<?php echo $this->get_field_id($network); ?>" name="<?php echo $this->get_field_name($network); ?>" value="<?php echo $link['link']; ?>" class="widefat" /> 
     433                        <input type="text" id="<?php echo $this->get_field_id( $network ); ?>" name="<?php echo $this->get_field_name( $network ); ?>" value="<?php echo $link['link']; ?>" class="widefat" /> 
    373434                    </p> 
    374435                    <?php 
     
    381442    } 
    382443    private function get_icons() { 
    383         if(!file_exists($this->icondir)) { 
     444        if ( ! file_exists( $this->icondir ) ) 
     445        { 
    384446            $icons = NULL; 
    385         } else { 
    386             $icons = scandir($this->icondir); 
     447        } 
     448        else 
     449        { 
     450            $icons = scandir( $this->icondir ); 
    387451        } 
    388452 
     
    391455} 
    392456 
    393 function eps_widget_settings() { 
     457function eps_widget_settings() 
     458{ 
    394459?> 
    395460<style> 
     
    417482<?php 
    418483} 
    419 add_action("admin_head", "eps_widget_settings"); 
     484add_action( "admin_head", "eps_widget_settings" ); 
    420485 
    421486// ======================== 
     
    423488// ======================== 
    424489 
    425 include('ep_social_settings.php'); 
     490include( 'ep_social_settings.php' ); 
    426491 
    427492?> 
  • ep-social-widget/trunk/readme.txt

    r1193834 r1288395  
    11=== EP Social Widget === 
    2 Contributors: Earth People, darkwhispering 
    3 Tags: social, widget, plugin, facebook, twitter, flickr, rss, social share, google, google plus, youtube, linkedin, myspace, deviantart, meetup, soundcloud, bandcamp, pinterest, vimeo 
     2Contributors: darkwhispering 
     3Tags: social, widget, plugin, facebook, twitter, flickr, rss, social share, google, google plus, youtube, linkedin, soundcloud, pinterest, vimeo, instagram, github 
    44Requires at least: 3.0.0 
    5 Tested up to: 4.2.2 
    6 Stable tag: 1.4.1 
     5Tested up to: 4.4.0 
     6Stable tag: 1.5.0 
    77 
    88Very small and easy to use widget and shortcode to display social icons on your site. Facebook, Twitter, Flickr, Google Plus, Youtube and more. 
     
    2020* Youtube 
    2121* LinkedIn 
    22 * DeviantArt 
    23 * Meetup 
    24 * MySpace 
    2522* Soundcloud 
    26 * Bandcamp 
    2723* Pinterest 
    2824* Vimeo 
    2925* Tumblr 
     26* Google 
     27* Instagram 
     28* Github 
    3029 
    3130You can also choose to display a icon for your RSS 2.0 feed. Icons are in black and white colors only. 
     
    4544* rss 
    4645* linkedin 
    47 * deviantart 
    48 * meetup 
    49 * myspace 
    5046* soundcloud 
    51 * bandcamp 
    5247* pinterest 
    5348* vimeo 
    5449* tumblr 
     50* google 
     51* instagram 
     52* github 
    5553 
    5654Just use the one you want to display in your post/page and give it a link. The RSS option only need a 1 as value if you want that displayed. Remove any network completely to remove it from the post/page. 
     
    7270 
    7371== Changelog == 
     72 
     73= 1.5.0 = 
     74* Replaced old GIF icons with new SVG icons to get consistent quality between platforms and devices. 
     75* Added more spacing between icons. 
     76* Added slight fade out effect on hover. 
     77* Added Github. 
     78* Added Instagram. 
     79* Added Google. *As general for anything Google, Gplus icon still exists separately.* 
     80* Removed Bandcamp. 
     81* Removed Deviantart. 
     82* Removed Meetup. 
     83* Removed MySpace. 
     84* Source code now follows the Wordpress coding standards more closely. 
     85* Tested on Wordpress 4.4 
    7486 
    7587= 1.4.1 = 
  • ep-social-widget/trunk/style.css

    r589195 r1288395  
    66    display: block; 
    77    float: left; 
    8     margin: 0 3px 3px 0; 
     8    margin: 0 25px 25px 0; 
    99    line-height: 1; 
     10} 
     11 
     12.ep_social_widget a img { 
     13    transition: opacity .5s; 
     14} 
     15 
     16.ep_social_widget a:hover img { 
     17    opacity: .7; 
    1018} 
    1119 
Note: See TracChangeset for help on using the changeset viewer.