Plugin Directory

Changeset 2821105


Ignore:
Timestamp:
11/20/2022 10:02:24 AM (3 years ago)
Author:
mi13
Message:

update plugin

Location:
mi13-like/trunk
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • mi13-like/trunk/js/mi13_like.js

    r1996520 r2821105  
    11/*
    2 mi13_like script 0.1
     2mi13_like script ver 0.2
    33*/
    44
    55jQuery(function ($) {
    66  var mi13_like = function() {
    7     id =  $(this).attr('id');data = $(this).attr('data');like = $(this).attr('like');dislike = $(this).attr('dislike');
     7    id = $(this).attr('id');data = $(this).attr('data');flag = $(this).attr('flag');
    88    if (navigator.cookieEnabled == true) {
    9     $(this).parent().load(mi13_like_ajax.url+'?action=mi13_like&id='+id+'&data='+data+'&like='+like+'&dislike='+dislike+'&nonce='+mi13_like_ajax.nonce);
     9    $(this).parent().load(mi13_like_ajax.url+'?action=mi13_like&id='+id+'&data='+data+'&flag='+flag+'&nonce='+mi13_like_ajax.nonce);
    1010    } else {
    1111    $(this).siblings('.mi13_like_note').html(mi13_like_ajax.message);
     
    1515  $('#mi13_like_down').one('click', mi13_like);
    1616});
    17 
    18 
  • mi13-like/trunk/mi13-like.php

    r2597834 r2821105  
    44Plugin URI:     https://wordpress.org/plugins/mi13-like/
    55Description:        The plugin likes for your posts.
    6 Version:            0.11
     6Version:            0.12
    77Author:         mi13
    88 
    9 Copyright 2018 Mihail Nebov  (email: mihail_teo@mail.ru)
     9Copyright 2018 - 2021 Mihail Nebov  (email: mihail_teo@mail.ru)
    1010
    1111This program is free software; you can redistribute it and/or modify
     
    4040        'priority' => 11,
    4141        'style' => 'margin-top:8px;background:#fff;color:#ccc;',
     42        'style_for_your_vote' =>'color:#828282;',
    4243        'like_class' => 'icon-thumb-up',
    43         'dislike_class' => 'icon-thumb-down');
     44        'dislike_class' => 'icon-thumb-down'
     45    );
    4446    add_option('mi13_like', $default_settings);
    4547}
     
    5759    wp_enqueue_style('mi13-like-icomoon', plugins_url('/css/icomoon/style.css',__FILE__), false,'0.1','all');
    5860    wp_enqueue_script('jquery');
    59     wp_enqueue_script('mi13_like', plugins_url('/js/mi13_like.js',__FILE__), array('jquery'),'0.1',true);
     61    wp_enqueue_script('mi13_like', plugins_url('/js/mi13_like.js',__FILE__), array('jquery'),'0.2',true);
    6062    wp_localize_script( 'mi13_like', 'mi13_like_ajax',
    6163        array(
     
    7375}
    7476function mi13_like_menu() {
    75     $page = add_options_page('mi13 like', 'mi13-like', 'manage_options', 'mi13_like', 'mi13_like_page');
     77    $page = add_options_page(
     78        'mi13 like', 'mi13-like',
     79        'manage_options',
     80        'mi13_like',
     81        'mi13_like_page'
     82    );
    7683    add_action( 'admin_print_scripts-' . $page, 'mi13_like_admin_scripts' );
    7784}
     
    8592    $settings['priority'] = (isset($settings['priority']) && !empty($settings['priority'])) ? $settings['priority'] : 11;
    8693    $settings['style'] = strip_tags($settings['style']);
     94    $settings['style_for_your_vote'] = isset($settings['style_for_your_vote']) ? strip_tags($settings['style_for_your_vote']) : 'color:#828282;';
    8795    $settings['like_class'] = strip_tags($settings['like_class']);
    8896    $settings['dislike_class'] = strip_tags($settings['dislike_class']);
     
    239247                  </tr>
    240248                  <tr>
     249                   <th scope="row">vote style:</th>
     250                   <td><input type="text" name="mi13_like[style_for_your_vote]" value="<?php echo get_option('mi13_like')['style_for_your_vote']; ?>" size="50"></td>
     251                  </tr>
     252                  <tr>
    241253                   <th scope="row">like class:</th>
    242254                   <td><input type="text" name="mi13_like[like_class]" value="<?php echo get_option('mi13_like')['like_class']; ?>" size="50"></td>
     
    277289            $dislike_class = $settings['dislike_class'];
    278290            $div_style = $settings['style'];
     291            $style_like = '';
     292            $style_dislike = '';
     293            $flag='x';
    279294            $div_open = $div.' style="'.$div_style.'"';
    280295            if ( (isset($_COOKIE["mi13_like_$id"])) || ($nonce==$nonce_old) ) {  // Накрутка (удалены куки)
    281296                if (isset($_COOKIE["mi13_like_$id"])) {
    282                     if($_COOKIE["mi13_like_$id"]=='mi13_like_up') $note.=$settings['like_note'];
    283                     elseif($_COOKIE["mi13_like_$id"]=='mi13_like_down') $note.=$settings['dislike_note'];
     297                    if($_COOKIE["mi13_like_$id"]=='mi13_like_up') {
     298                        $note.=$settings['like_note'];
     299                        $style_like .= $settings['style_for_your_vote'];
     300                        $flag = 'like';
     301                    }
     302                    elseif($_COOKIE["mi13_like_$id"]=='mi13_like_down') {
     303                        $note.=$settings['dislike_note'];
     304                        $style_dislike .= $settings['style_for_your_vote'];
     305                        $flag = 'dislike';
     306                    }
     307                    elseif($nonce==$nonce_old) {
     308                        $flag = 'repeat';
     309                    }
    284310                }
    285311                $button_like = '<i class="'.$like_class.'" style="'.$style.'"></i>';
    286312                $button_dislike = '<i class="'.$dislike_class.'" style="'.$style.'"></i>';
    287             } else {
    288                 $button_like = '<i id="mi13_like_up" class="'.$like_class.'" role="button" data="'.$id.'" like="'.$like.'"  dislike="'.$dislike.'" title="'.__('I liked it','mi13-like').'" style="'.$style.'"></i>';
    289                 $button_dislike = '<i id="mi13_like_down" class="'.$dislike_class.'" role="button" data="'.$id.'" like="'.$like.'"  dislike="'.$dislike.'" title="'.__('I disliked it','mi13-like').'" style="'.$style.'"></i>';
    290313            }
     314            $button_like = '<i id="mi13_like_up" class="'.$like_class.'" role="button" data="'.$id.'" flag="'.$flag.'" title="'.__('I liked it','mi13-like').'" style="'.$style.$style_like.'" aria-label="like"></i>';
     315            $button_dislike = '<i id="mi13_like_down" class="'.$dislike_class.'" role="button" data="'.$id.'" flag="'.$flag.'" title="'.__('I disliked it','mi13-like').'" style="'.$style.$style_dislike.'" aria-label="dislike"></i>';
    291316            return '<'.$div_open.' class="mi13_like" aria-hidden="true">'.$button_like.'<span class="mi13_like_like">'.$like.'</span>'.$button_dislike.'<span class="mi13_like_dislike">'.$dislike.'</span><span class="mi13_like_note">'.$note.'</span></'.$div.'>';   
    292317        }
     
    308333function mi13_like_ajax() {
    309334    check_ajax_referer( 'mi13_like', 'nonce' );   // Проверка nonce
    310     $nonce = $_GET['nonce'];
    311     $id = $_GET['id'];
    312     $data = $_GET['data'];
    313     $like = intval($_GET['like']);
    314     $dislike = intval($_GET['dislike']);
    315     if ($data>0) {
    316         $post = get_post($data);
    317         if (!$post) wp_die('request failed - 2');   // Нет поста с таким id
    318     } else wp_die('request failed - 1');   // нет id поста
     335    $nonce = isset($_GET['nonce']) ? $_GET['nonce'] : '';
     336    $vote = isset($_GET['id']) ? $_GET['id'] : '';
     337    if (($vote!='mi13_like_down') && ($vote!='mi13_like_up')) wp_die('request failed - 1');   //  Не понятно за или против
     338    $data = isset($_GET['data']) ? intval($_GET['data']) : -1;
     339    $flag = isset($_GET['flag']) ? $_GET['flag'] : '';
     340    if ($flag=='repeat') wp_die('request failed - 2');    // Накрутка
     341    if( empty($nonce) || $data<=0 || empty($flag) ) wp_die('request failed - 3');
     342    $post = get_post($data);
     343    if (!$post) wp_die('request failed - 3');   // Нет поста с таким id
    319344    update_post_meta ("$data",'mi13_like_nonce',$nonce);
    320     if(isset($_COOKIE["mi13_like_$data"])) wp_die('request failed - 3');   // Прямой запрос
    321     $like_old = intval(get_post_meta ("$data",'mi13_like_up',true));
    322     $dislike_old = intval(get_post_meta ("$data",'mi13_like_down',true));
    323     if (($dislike!=$dislike_old) && ($like!=$like_old)) wp_die('request failed - 4');    // Накрутка
    324     if (($id!='mi13_like_down') && ($id!='mi13_like_up')) wp_die('request failed - 5');   //  Не понятно за или против
    325     elseif ($id=='mi13_like_down')  {
    326         $dislike += 1;
    327         update_post_meta ("$data",'mi13_like_down',$dislike);
     345    $like = intval(get_post_meta ("$data",'mi13_like_up',true));
     346    $dislike = intval(get_post_meta ("$data",'mi13_like_down',true));
     347    $style_like = '';
     348    $style_dislike = '';
     349    $settings = get_option('mi13_like');
     350    if($vote=='mi13_like_down')  {
     351        if($flag=='dislike' && $dislike>0) {
     352            $dislike -= 1;
     353            update_post_meta ("$data",'mi13_like_down',$dislike);
     354            $vote = '';
     355        }
     356        elseif($flag=='like' && $like>0) {
     357            $like -= 1;
     358            $dislike += 1;
     359            update_post_meta ("$data",'mi13_like_up',$like);
     360            update_post_meta ("$data",'mi13_like_down',$dislike);
     361            $style_dislike .= $settings['style_for_your_vote'];
     362        }
     363        else {
     364            $dislike += 1;
     365            update_post_meta ("$data",'mi13_like_down',$dislike);
     366            $style_dislike .= $settings['style_for_your_vote'];
     367        }
    328368    } else {
    329         $like += 1;
    330         update_post_meta ("$data",'mi13_like_up',$like);
     369        if($flag=='like' && $like>0) {
     370            $like -= 1;
     371            update_post_meta ("$data",'mi13_like_up',$like);
     372            $vote = '';
     373        }
     374        elseif($flag=='dislike' && $dislike>0) {
     375            $like += 1;
     376            $dislike -= 1;
     377            update_post_meta ("$data",'mi13_like_up',$like);
     378            update_post_meta ("$data",'mi13_like_down',$dislike);
     379            $style_like .= $settings['style_for_your_vote'];
     380        }
     381        else {
     382            $like += 1;
     383            update_post_meta ("$data",'mi13_like_up',$like);
     384            $style_like .= $settings['style_for_your_vote'];
     385        }
    331386    };
    332     setcookie("mi13_like_$data", $id, time() + 30000000, COOKIEPATH, COOKIE_DOMAIN );
     387    setcookie("mi13_like_$data", $vote, time() + 30000000, COOKIEPATH, COOKIE_DOMAIN );
    333388    $style = 'font-family: \'icomoon\' !important;';
    334     echo '<i class="icon-thumb-up" style="'.$style.'"></i><span class="mi13_like_like">'.$like.'</span><i class="icon-thumb-down" style="'.$style.'"></i><span class="mi13_like_dislike">'.$dislike.'</span><span class="mi13_like_note">'.get_option('mi13_like')['thank_you_note'].'</span>';
     389    $note = get_option('mi13_like')['thank_you_note'];
     390    $like_class = $settings['like_class'];
     391    $dislike_class = $settings['dislike_class'];
     392    $button_like = '<i class="'.$like_class.'" style="'.$style.$style_like.'" aria-label="like"></i>';
     393    $button_dislike = '<i class="'.$dislike_class.'" style="'.$style.$style_dislike.'" aria-label="dislike"></i>';
     394    echo $button_like.'<span class="mi13_like_like">'.$like.'</span>'.$button_dislike.'<span class="mi13_like_dislike">'.$dislike.'</span><span class="mi13_like_note">'.$note.'</span>';   
    335395    wp_die();
    336396}
  • mi13-like/trunk/readme.txt

    r2597834 r2821105  
    44Donate link: https://money.yandex.ru/to/41001276246895
    55Requires at least: 4.7
    6 Tested up to: 5.8.1
    7 Stable tag: 0.11
     6Tested up to: 6.1.1
     7Stable tag: 0.12
    88
    99Плагин лайков для ваших постов.
     
    5050= 0.11 =
    5151* Добавлен виджет популярных постов на основе лайков, доработан код.
     52= 0.12 =
     53* Добавлена возможность менять голос и поле для стиля активного голоса в настройках.
Note: See TracChangeset for help on using the changeset viewer.