Skip to:
Content
Pages
Categories
Search
Top
Bottom

Search Results for '+.+default+.+'

Viewing 25 results - 3,051 through 3,075 (of 6,788 total)
  • Author
    Search Results
  • #147680
    Robin W
    Moderator

    No problem,

    It might be a theme or plugin issue

    Plugins

    Deactivate all but bbpress and see if this fixes. if it does, re-enable one at a time to see which is causing the error.

    Themes

    If plugins don’t pinpoint the problem, switch to a default theme such as twentytwelve, and see if this fixes.

    #147629
    Robin W
    Moderator

    Suspect this is a theme issue

    Can you switch to a default theme such as twentytwelve for a moment to see if that fixes. If so come back and we can try and get your theme to work with bbpress

    Sudar Muthu
    Participant

    With the recent bbPress update, the way notification is sent is changed. Earlier individual emails are sent to each people, but now only one email is sent with all the email address in bcc. I guess this is done to prevent email bottleneck. But this seems to have caused a issue in my setup.

    I use wpmandrill to send emails through the mandrill service. With the new change, the to and from address is changed to a default “do not reply” email address that is calculated using the current domain name. The code is present in the bbpress/includes/common/functions.php


    $do_not_reply = '<noreply@' . ltrim( get_home_url(), '^(http|https)://' ) . '>';

    So it becomes <nobody@domain.com>

    When this address is used as “to” address, the mandrill service thinks that it is an invalid email address because of the angle brackets.

    I went through the code, but there is no filter to change the $do_not_reply variable.

    #147594
    sigwinstonwolf
    Participant

    Hi, i have reset the forum, and run import again.

    These are my selections:

    source platform: vbulletin3
    –database connections data–
    row limit: 100 row
    delay time: 1 minute
    convert users: checked
    restart: checked
    clean previous installation: checked

    log:

    – start conversion
    – no data to clean
    – user conversion (0-99)
    – user conversion (100-199)
    – cuser conversion ….
    – Delete the default password of WordPress users (1200 – 1299)
    – forum conversion (0-99)
    – calculation forum hierarchy (0-99)
    – conversion threads (0-99)
    – conversion threads (100-199)
    – conversion threads (…)
    – conversion threads (12600-12699)
    – No stickies to stick
    – No super stickies to stick
    – No tag to convert

    Repair any missing information: Continue (<- this is a link to /wp-admin/tools.php?page=bbp-repair)

    WordPress database error: [Table ‘vbulletincopy.tagthread’ doesn’t exist]
    SELECT convert(tagthread.threadid USING “utf8”) AS threadid,convert(tagthread.tagid USING “utf8”) AS tagid,convert(tag.tagtext USING “utf8”) AS tagtext FROM tagthread AS tagthread INNER JOIN tag AS tag USING (tagid) LIMIT 0, 100

    After this message i click “Continue” and run the “repair page” one at a time.
    All operations are successful except “Count the number of threads in which each user” has replied … Failed!

    No replies on forum. Only one replies for each thread.

    I have wordpress 3.9.1 and BBpress 2.5.3

    #147550
    aborruso
    Participant

    Hi all,
    I know that there are several post about it, but I’m not able to find a solution for my forum.
    It’s password proteceted and I cannot send you any link.

    – I have WordPress 3.9.1 and bbpress 2.5.4
    – I use Twenty Eleven (I know it’s a bad theme for bbpress)
    – I have copied the content of /wp-content/plugins/bbpress/templates/default folder in my theme folder
    – I have edited all the php files of my /wp-content/themes/mytheme/bbpress folder and commented “get_sidebar()” function
    – I have created forum.php and bbpress.php file starting from page.php template and commented “get_sidebar()” function

    But I have always the sidebar (below bbpress).

    If I use this code

    function disable_all_widgets( $sidebars_widgets ) {       
        if ( function_exists('is_bbpress') ) {
            if (is_bbpress()) {
                $sidebars_widgets = array(false);
                remove_all_actions('bp_register_widgets');
                unregister_sidebar( 'bp_core_widgets' );
            }
        }
        return $sidebars_widgets;
    }
    
    add_filter('sidebars_widgets', 'disable_all_widgets', 1, 1);

    all the widgets disappear, but I have always meta links.

    I know I should change theme. Do you have some tips for this one?

    Thank you,

    Andrea

    #147528
    Styled Themes
    Participant

    The latest WP and bbPress versions,yes…actually tried it again with a fresh install of WP, but same issue and with twenty fourteen and thirteen.
    No bbpress login widget, just logging in with the Default WordPress admin login form to get to the dashboard. So correct on the example wp-login.php url you posted. I will use my localhost on XAMPP as an example:

    http://localhost/pref/wp-login.php

    If I use http://localhost/pref/wp-admin I do get logged into the dashboard. The url becomes

    http://localhost/wp39/wp-login.php?redirect_to=http%3A%2F%2Flocalhost%2Fwp39%2Fwp-admin%2F&reauth=1

    when hitting the wp-admin url method.

    #147526
    Styled Themes
    Participant

    Forgot to mention I also tried the default WP themes…same thing happens.

    #147525
    Styled Themes
    Participant

    Thanks for the reply… If you are referring to the admin bar plugin for bbPress, that I don’t have, just the default WP user admin bar. I just finished testing all plugins I have installed, and one by one testing the login (each time closing the browser out), but as soon as I activate bbPress, that is when this phenomenon happens…I log into the dashboard and finding myself staring at the site’s front-page. I still have to add a subpage url to the browser address bar, or use the user admin bar at the top to get to the dashboard.

    So, there is something about bbPress that is doing the front page redirect…even if I make bbPress the only active plugin. This does it on my local XAMPP location, as well as my demo site on a live server.

    Incidentally, I’m on the latest WP and bbPress versions.

    #147523
    Stephen Edgar
    Keymaster

    Yes, this is normal and the default for bbPress 2.5.4, when you click ‘reply’ it links to the #new-post form at the bottom of the topic.

    #147479

    In reply to: Missing naviation

    Stephen Edgar
    Keymaster

    bbPress and BuddyPress include the pagination at the top and bottom by default.

    Your custom theme appears to not do that, most likely the template you need to edit is either content-single-topic.php or content-single-topic-lead.php and look for something similar to:

    
    <?php bbp_get_template_part( 'pagination', 'replies' ); ?>
    
    <?php bbp_get_template_part( 'loop',       'replies' ); ?>
    

    And change that to:

    
    <?php bbp_get_template_part( 'pagination', 'replies' ); ?>
    
    <?php bbp_get_template_part( 'loop',       'replies' ); ?>
    
    <?php bbp_get_template_part( 'pagination', 'replies' ); ?>
    

    If your not comfortable doing that then contact the theme author for details.

    Robin W
    Moderator

    Interesting that without the private groups it didn’t work as expected, and with the private groups it also doesn’t work as expected.

    Maybe be worth investigating the theme and other plugins to see if they are causing an issue.

    so with private groups deactivated

    Plugins

    Deactivate all but bbpress and see if this fixes. if it does, re-enable one at a time to see which is causing the error.

    Themes

    If plugins don’t pinpoint the problem, switch to a default theme such as twentytwelve, and see if this fixes.

    wplove3268
    Participant

    I recently installed the eMember plugin (from Tips and Tricks HQ) and have been running bbPress and the Royal Slider slideshow plugin on my site. When all three plugins are running, however, my home page slideshow stops working. I contacted Royal Slider about the issue and they got back to me saying there is a JS error that is blocking the execution of the slideshow-and the source of it was bbPress.

    My site: dev.detoxtheworld.com
    Wordpress version 3.8.1
    Running bbPress version 2.5.3
    I’ve tested the problem using a default theme and it still occurs.

    Here is the script from which the conflict originates: http://dev.detoxtheworld.com/wp-content/plugins/bbpress/templates/default/js/editor.js

    https://bbpress.trac.wordpress.org/browser/tags/2.5.3/templates/default/js/editor.js

    Can anyone tell me what the problem might be and, even better, how to fix it?

    Mod Edit: I removed the code and added a link to the source for improved readability.

    Stephen Edgar
    Keymaster

    Hmmm… What you have outlined sounds like it should be working.

    The one bit I am not sure about is you appear to only be describing WordPress roles and not also including bbPress’ roles in your description above.

    Have you run the bbPress Repair Tool “Remap existing users to default forum roles”?(Tools->Forum)

    This will set the users their bbPress role. The default role is Participant (You can change the default role via bbPress settings)

    As outlined in the roles docs the bbPress role Particpant role includes the capability read_private_forums which in effect means any private forums can be read by users who are logged in, this would include your members and officers WordPress roles if you assign these WordPress role users the bbPress Participant role. If you assign your Officers WordPress role the bbPress Moderator role they will be able to read hidden forums because they have the read_hidden_forums bbPress capability.

    #147370

    Add some debug logging to bbp_set_current_user_default_role() to narrow down the cause,(likely with dumping out the call stack.)

    You should be able to cowboy code something if you’re able to reproduce the issue with a test user account. If you’re able to come up with explicit instructions on how to duplicate this on an installation that only has bbPress running, I’d love to fix anything that isn’t behaving correctly.

    #147369

    In reply to: Can't see any topics

    ubicray
    Participant

    Ran all the repair tools one by one
    Tried default theme, deactivating plugins … no result
    Do you know how can I delete bbpress with all its settings? So i can install again and try
    Now when I uninstall and install again, settings are preserved

    #147368
    JosiahW
    Participant

    Another thing I notices but was not suspicious of until now is that in the users list I see the normal users set to the default WP role of Participant. If I go into their profile the WP role is set to “-No role for this site-“. Nobody has complained about any issue though.

    #147365

    @josiahw That’s pretty odd. If you want to debug, check inside the bbp_set_current_user_default_role function, hooked to bbp_setup_current_user. There are several redundant checks to ensure what you’re seeing doesn’t happen, so I’m curious where it might be failing and how.

    #147354
    ryan360
    Participant

    Bump. I just copied that function into my functions.php file and it’s still linking to the default bbPress forum user page.

    #147349
    Robin W
    Moderator

    suspect this is a theme or plugin issue

    Plugins

    Deactivate all but bbpress and see if this fixes. if it does, re-enable one at a time to see which is causing the error.

    Themes

    If plugins don’t pinpoint the problem, switch to a default theme such as twentytwelve, and see if this fixes.

    #147310
    Stephen Edgar
    Keymaster

    This is most likely an avatar plugin:

    eg
    <img src="http://www.passingrass.com/wp-content/uploads/avatars/460/5ed932eb9e1a5b11af2d1b9e7029b68e-bpthumb.jpg" class="avatar user-460-avatar avatar-20 photo" width="20" height="20" alt="Profile picture of PassinGrass">

    And or your themes CSS at Line #1044
    http://www.passingrass.com/wp-content/themes/sweetdate/custom_buddypress/_inc/css/default.css?ver=20140430

    table.forum td img.avatar {
    float: none;
    margin: 0 5px -8px 0;
    }

    A quick change of that to the following fixes it:

    table.forum td img.avatar {
    float: none;
    margin: 0 5px -8px 0;
    width: 20px;
    }

    You’ll want to find out if it is the plugin or theme and find a more permanent way to keep those changes such as creating a child theme.

    yoosuke
    Participant

    I’m here again!
    It’s great I have a place to come back!

    Now, I’m looking for advice on How to show “Website” part at User Profile page.
    By default, 4 sections are displayed on User Profile page.

    1.user-description, 2.forum-role, 3.topic-count, 4.reply-count

    In edit page, There is a section for entering users “Website”.
    in spite of entering the section, it would not be display at User’s Profile page.
    How can I display it at the User’s Profile page.

    I found that I need to add some PHPcodes into “user-profile.php”.
    But as you know, I have no idea What codes I have to put in.

    would you please advice me…

    WordPress: ver3.9.1
    bbPress: ver2.5.3

    #147292
    aborruso
    Participant

    Hi all,
    I have an old blog with Twenty Eleven theme.

    I have copied “/wp-content/plugins/bbpress/templates/default” folders and file in my “/wp-content/themes/twentyeleven” folder.

    Then I have created forum.php file making a copy of page.php.

    When I modify forum.php there is any change in my website, it seems it reads another theme file.

    What’s wrong in my template structue? I have the bbpress folder copied before and these php files:
    404.php
    archive.php
    author.php
    bbpress-functions.php
    category.php
    comments.php
    content-aside.php
    content-featured.php
    content-gallery.php
    content-image.php
    content-intro.php
    content-link.php
    content-page.php
    content-quote.php
    content-single.php
    content-status.php
    content.php
    footer.php
    forum.php
    functions.php
    header.php
    image.php
    index.php
    page.php
    search.php
    searchform.php
    showcase.php
    sidebar-footer.php
    sidebar-forum.php
    sidebar-page.php
    sidebar.php
    single.php
    tag.php

    #147228

    In reply to: Can't see any topics

    Robin W
    Moderator

    ok, so now we’ll eliminate themes and plugins as the issue

    Plugins

    Deactivate all but bbpress and see if this fixes. if it does, re-enable one at a time to see which is causing the error.

    Themes

    If plugins don’t pinpoint the problem, switch to a default theme such as twentytwelve, and see if this fixes.

    Come back with the results of this

    Jerry
    Participant

    Okay, here is a very tough and long question. So I have this plugin created by Igor Yavych. I have a book review site and I really need my users to be able to rate the books listed (star rating). Here is my dilemma; this plugin only works for WordPress Posts. It does not work for bbpress posts. I want to change this plugin to function with bbpress. I think I probably have to dig through the bbpress codex, but I am hoping someone can tell me an easier way? There is a lot of code posted below from rating.php (my apologies). I will also post code from settings.php at the bottom. I think perhaps I need to just change some common wordpress variables to bbpress variables?
    Of course, what I would actually hope is that someone knows of a star rating plugin that already works for bbpress. I’ve been searching for days and cannot find one.

    <?php
    /*
      Plugin Name: Simple Rating
      Description: Allows users to rate posts and pages.
      Version: 1.3.2
      Author: Igor Yavych
      Author URI: https://www.odesk.com/users/~~d196de64099a8aa3
     */
    require_once ("spr_widgets.php");
    require_once ("spr_upgrade.php");
    upgrade();
    $options=spr_options();
    if ($options['activated']==1&&$options['method']=="auto")
    {
        add_filter('the_content', 'spr_filter', 15);
    }
    
    function spr_filter($content)
    {
        $options=spr_options();
        $list=spr_list_cpt_slugs();
        global $post, $wpdb, $spr_style;
        $disable_rating=get_post_meta($post->ID, '_spr_disable', true);
        //trying to change this to a bbpress plugin instead of a wordpress plugin - bbp_topic_id() or topic_id
        //$disable_rating=get_post_meta($post->topic_id, '_spr_disable', true);
        foreach ($list as $list_)
        {
            if (is_singular($list_)&&$options['where_to_show'][$list_]&&$disable_rating!='1')
            {
                if ($options['position']=='before')
                {
                    $content=spr_rating().$content;
                }
                elseif ($options['position']=='after')
                {
                    $content .= spr_rating();
                }
                break;
            }
            else if ((is_archive()||(is_home()&&$options['loop_on_hp']==1&&in_the_loop()))&&$options['show_in_loops']==1)
            {
                if ($post->post_type==$list_&$options['where_to_show'][$list_]&&$disable_rating!='1')
                {
                    wp_enqueue_style('spr_style', plugins_url('/resources/spr_style.css', __FILE__));
                    if ($spr_style!=1)
                    {
                        spr_print_additional_styles();
                        $spr_style=1;
                    }
                    $query="select <code>votes</code>, <code>points</code> from <code>&quot;.$wpdb->prefix.&quot;spr_rating</code> where <code>post_id</code>='$post->ID';";
                    $popularity=$wpdb->get_results($query, ARRAY_N);
                    if (count($popularity)>0)
                    {
                        $votes=$popularity[0][0];
                        $points=$popularity[0][1];
                    }
                    else
                    {
                        $votes=0;
                        $points=0;
                    }
                    $results='<div id="spr_container"><div class="spr_visual_container">'.spr_show_voted($votes, $points, $options['show_vote_count']).'</div></div>';
                    if ($options['position']=='before')
                    {
                        $content=$results.$content;
                    }
                    elseif ($options['position']=='after')
                    {
                        $content .= $results;
                    }
                    break;
                }
            }
        }
        return $content;
    }
    
    function spr_show_rating()
    {
        $options=spr_options();
        $list=spr_list_cpt_slugs();
        global $post, $wpdb, $spr_added, $spr_added_loop, $spr_style;
        $disable_rating=get_post_meta($post->ID, '_spr_disable', true);
        //trying to change this to a bbpress plugin instead of a wordpress plugin
        //$disable_rating=get_post_meta($post->topic_id, '_spr_disable', true);
        $result="";
        if ($options['method']=="manual"&&$options['activated']==1)
        {
            foreach ($list as $list_)
            {
                if (is_singular($list_)&&$options['where_to_show'][$list_]&&$disable_rating!='1'&&$spr_added!=1)
                {
                    $result=spr_rating();
                    $spr_added=1;
                    break;
                }
                if ((is_archive()||($options['loop_on_hp']==1&&is_home()&&in_the_loop()))&&$options['show_in_loops']==1)
                {
                    if ($post->post_type==$list_&$options['where_to_show'][$list_]&&$disable_rating!='1'&&!isset($spr_added_loop[$post->ID]))
                    {
                        wp_enqueue_style('spr_style', plugins_url('/resources/spr_style.css', __FILE__));
                        if ($spr_style!=1)
                        {
                            spr_print_additional_styles();
                            $spr_style=1;
                        }
                        $query="select <code>votes</code>, <code>points</code> from <code>&quot;.$wpdb->prefix.&quot;spr_rating</code> where <code>post_id</code>='$post->ID';";
                        $popularity=$wpdb->get_results($query, ARRAY_N);
                        if (count($popularity)>0)
                        {
                            $votes=$popularity[0][0];
                            $points=$popularity[0][1];
                        }
                        else
                        {
                            $votes=0;
                            $points=0;
                        }
                        $result='<div id="spr_container"><div class="spr_visual_container">'.spr_show_voted($votes, $points, $options['show_vote_count']).'</div></div>';
                        $spr_added_loop[$post->ID]=1;
                        break;
                    }
                }
            }
            return $result;
        }
    }
    
    function spr_get_entry_rating($post_id, $echo=false)
    {
        global $wpdb, $spr_added_loop, $spr_style;
        $options=spr_options();
        if ($options['activated'])
        {
            if (is_numeric($post_id))
            {
                wp_enqueue_style('spr_style', plugins_url('/resources/spr_style.css', __FILE__));
                if ($spr_style!=1)
                {
                    spr_print_additional_styles();
                    $spr_style=1;
                }
                if (!isset($spr_added_loop[$post_id]))
                {
                    $query="select <code>votes</code>, <code>points</code> from <code>&quot;.$wpdb->prefix.&quot;spr_rating</code> where <code>post_id</code>='$post_id';";
                    $popularity=$wpdb->get_results($query, ARRAY_N);
                    if (count($popularity)>0)
                    {
                        $votes=$popularity[0][0];
                        $points=$popularity[0][1];
                    }
                    else
                    {
                        $votes=0;
                        $points=0;
                    }
                    $result='<div id="spr_container"><div class="spr_visual_container">'.spr_show_voted($votes, $points, $options['show_vote_count']).'</div></div>';
                    $spr_added_loop[$post_id]=1;
                    if ($echo)
                    {
                        echo $result;
                    }
                    else
                    {
                        return $result;
                    }
                }
            }
            else
            {
                echo "Invalid Post ID was supplied";
            }
        }
    }
    
    function spr_rating()
    {
        global $post, $current_user, $wpdb;
        $query="select <code>votes</code>, <code>points</code> from <code>&quot;.$wpdb->prefix.&quot;spr_rating</code> where <code>post_id</code>='$post->ID';";
        $popularity=$wpdb->get_results($query, ARRAY_N);
        if (count($popularity)>0)
        {
            $votes=$popularity[0][0];
            $points=$popularity[0][1];
        }
        else
        {
            $votes=0;
            $points=0;
        }
        wp_enqueue_script('spr_script', plugins_url('/resources/spr_script.js', __FILE__), array('jquery'), NULL);
        wp_enqueue_style('spr_style', plugins_url('/resources/spr_style.css', __FILE__));
        $options=spr_options();
        spr_print_additional_styles();
        if ($votes>0)
        {
            $rate=$points/$votes;
            if ($options['use_aggregated'])
            {
                $aggregated='<div class="spr_hidden" itemscope="" itemtype="http://schema.org/Product"><meta itemprop="name" content="'.$post->post_title.'"><div class="spr_hidden" itemprop="aggregateRating" itemscope="" itemtype="http://schema.org/AggregateRating"><meta itemprop="bestRating" content="'.$options['scale'].'"><meta itemprop="ratingValue" content="'.$rate.'"><meta itemprop="ratingCount" content="'.$votes.'"></div></div>';
            }
            else
            {
                $aggregated='';
            }
        }
        else
        {
            $rate=0;
            $votes=0;
            $aggregated='';
        }
    
        if (is_user_logged_in()==1)
        {
            $query="select * from <code>&quot;.$wpdb->prefix.&quot;spr_votes</code> where <code>post_id</code>='$post->ID' and <code>user_id</code>='$current_user->ID';";
            $voted=$wpdb->get_results($query, ARRAY_N);
            if (count($voted)>0)
            {
                $results='<div id="spr_container"><div class="spr_visual_container">'.spr_show_voted($votes, $points, $options['show_vote_count']).'</div></div>'.$aggregated;
                wp_localize_script('spr_script', 'spr_ajax_object', array('ajax_url'=>admin_url('admin-ajax.php'), 'scale'=>$options['scale'], 'spr_type'=>$options['color'].$options['shape'], 'rating_working'=>false, 'post_id'=>$post->ID));
                return $results;
            }
            else
            {
                $results='<div id="spr_container"><div class="spr_visual_container" id="spr_container_'.$post->ID.'">'.spr_show_voting($votes, $points, $options['show_vote_count']).'</div></div>'.$aggregated;
                wp_localize_script('spr_script', 'spr_ajax_object', array('ajax_url'=>admin_url('admin-ajax.php'), 'scale'=>$options['scale'], 'spr_type'=>$options['color'].$options['shape'], 'rating_working'=>true, 'post_id'=>$post->ID));
                return $results;
            }
        }
        else if ($options['allow_guest_vote']&&filter_var(spr_get_ip(), FILTER_VALIDATE_IP))
        {
            $query="select * from <code>&quot;.$wpdb->prefix.&quot;spr_votes</code> where <code>post_id</code>='$post->ID' and <code>user_id</code>='".spr_get_ip()."';";
            $voted=$wpdb->get_results($query, ARRAY_N);
            if (count($voted)>0)
            {
                $results='<div id="spr_container"><div class="spr_visual_container">'.spr_show_voted($votes, $points, $options['show_vote_count']).'</div></div>'.$aggregated;
                wp_localize_script('spr_script', 'spr_ajax_object', array('ajax_url'=>admin_url('admin-ajax.php'), 'scale'=>$options['scale'], 'spr_type'=>$options['color'].$options['shape'], 'rating_working'=>false, 'post_id'=>$post->ID));
                return $results;
            }
            else
            {
                $results='<div id="spr_container"><div class="spr_visual_container" id="spr_container_'.$post->ID.'">'.spr_show_voting($votes, $points, $options['show_vote_count']).'</div></div>'.$aggregated;
                wp_localize_script('spr_script', 'spr_ajax_object', array('ajax_url'=>admin_url('admin-ajax.php'), 'scale'=>$options['scale'], 'spr_type'=>$options['color'].$options['shape'], 'rating_working'=>true, 'post_id'=>$post->ID));
                return $results;
            }
        }
        else
        {
            wp_localize_script('spr_script', 'spr_ajax_object', array('ajax_url'=>admin_url('admin-ajax.php'), 'scale'=>$options['scale'], 'spr_type'=>$options['color'].$options['shape'], 'rating_working'=>false));
            $results='<div id="spr_container"><div class="spr_visual_container">'.spr_show_voted($votes, $points, $options['show_vote_count']).'</div></div>'.$aggregated;
            return $results;
        }
    }
    
    function spr_show_voted($votes, $points, $show_vc)
    {
        $options=spr_options();
        $spr_type=$options['color'].$options['shape'];
        if ($votes>0)
        {
            $rate=$points/$votes;
        }
        else
        {
            $rate=0;
            $votes=0;
        }
        $html='<div id="spr_shapes">';
        for ($i=1; $i<=$options['scale']; $i++)
        {
            if ($rate>=($i-0.25))
            {
                $class='spr_'.$spr_type.'_full_voted';
            }
            elseif ($rate<($i-0.25)&&$rate>=($i-0.75))
            {
                $class='spr_'.$spr_type.'_half_voted';
            }
            else
            {
                $class='spr_'.$spr_type.'_empty';
            }
            $html .= '<span class="spr_rating_piece '.$class.'"></span> ';
        }
        $html.='</div>';
        if ($show_vc)
        {
            if ($votes==1)
            {
                $votesorvote='vote';
            }
            else
            {
                $votesorvote='votes';
            }
            $html .= '<span id="spr_votes">'.$votes.' '.$votesorvote.'</span>';
        }
    
        return $html;
    }
    
    function spr_show_voting($votes, $points, $show_vc)
    {
        $options=spr_options();
        $spr_type=$options['color'].$options['shape'];
        if ($votes>0)
        {
            $rate=$points/$votes;
        }
        else
        {
            $rate=0;
            $votes=0;
        }
        $html='<div id="spr_shapes">';
        for ($i=1; $i<=$options['scale']; $i++)
        {
            if ($rate>=($i-0.25))
            {
                $class='spr_'.$spr_type.'_full_voting';
            }
            elseif ($rate<($i-0.25)&&$rate>=($i-0.75))
            {
                $class='spr_'.$spr_type.'_half_voting';
            }
            else
            {
                $class='spr_'.$spr_type.'_empty';
            }
            $html .= '<span id="spr_piece_'.$i.'" class="spr_rating_piece '.$class.'"></span> ';
        }
        $html.='</div>';
        if ($show_vc)
        {
            if ($votes==1)
            {
                $votesorvote='vote';
            }
            else
            {
                $votesorvote='votes';
            }
            $html .= '<span id="spr_votes">'.$votes.' '.$votesorvote.'</span>';
        }
        return $html;
    }
    
    function spr_rate()
    {
        global $current_user, $wpdb;
        $options=spr_options();
        if ($options['activated']==1)
        {
            if (isset($_POST['points'])&&isset($_POST['post_id'])) // key parameters are set
            {
                $post_id=(int) esc_sql($_POST['post_id']);
                $points_=(int) esc_sql($_POST['points']);
                if ($points_>=1&&$points_<=$options['scale'])
                {
                    if (is_user_logged_in()==1) // user is logged in
                    {
                        $query="select * from <code>&quot;.$wpdb->prefix.&quot;posts</code> where <code>ID</code>='$post_id';";
                        $post_exists=$wpdb->get_results($query, ARRAY_N);
                        if (count($post_exists)>0) // post exists
                        {
                            $query="select * from <code>&quot;.$wpdb->prefix.&quot;spr_votes</code> where <code>post_id</code>='$post_id' and <code>user_id</code>='$current_user->ID';";
                            $voted=$wpdb->get_results($query, ARRAY_N);
                            if (count($voted)>0)  // already voted
                            {
                                $response=json_encode(array('status'=>2));
                            }
                            else // haven't voted yet 
                            {
                                $wpdb->query("INSERT INTO <code>&quot;.$wpdb->prefix.&quot;spr_votes</code> (<code>post_id</code>, <code>user_id</code>, <code>points</code>) VALUES ('$post_id', '$current_user->ID', '$points_');");
                                $query="select <code>votes</code>, <code>points</code> from <code>&quot;.$wpdb->prefix.&quot;spr_rating</code> where <code>post_id</code>='$post_id';";
                                $popularity=$wpdb->get_results($query, ARRAY_N);
                                if (count($popularity)>0)
                                {
                                    $votes=$popularity[0][0];
                                    $points=$popularity[0][1];
                                }
                                else
                                {
                                    $votes=0;
                                    $points=0;
                                }
                                if ($votes==0||$points==0)
                                {
                                    $wpdb->query("INSERT INTO <code>&quot;.$wpdb->prefix.&quot;spr_rating</code> (<code>post_id</code>, <code>votes</code>, <code>points</code>) VALUES ('$post_id', '1', '$points_');");
                                }
                                else
                                {
                                    $points=$points+$points_;
                                    $votes=$votes+1;
                                    $wpdb->query("UPDATE <code>&quot;.$wpdb->prefix.&quot;spr_rating</code> set <code>votes</code>='$votes', <code>points</code>='$points' where <code>post_id</code>='$post_id';");
                                }
                                $query="select <code>votes</code>, <code>points</code> from <code>&quot;.$wpdb->prefix.&quot;spr_rating</code> where <code>post_id</code>='$post_id';";
                                $popularity=$wpdb->get_results($query, ARRAY_N);
                                if (count($popularity)>0)
                                {
                                    $votes=$popularity[0][0];
                                    $points=$popularity[0][1];
                                }
                                else
                                {
                                    $votes=0;
                                    $points=0;
                                }
                                $html=spr_show_voted($votes, $points, $options['show_vote_count']);
                                $response=json_encode(array('status'=>1, 'html'=>$html));
                            }
                        }
                        else
                        {
                            $response=json_encode(array('status'=>3)); // post doesn't exist
                        }
                    }
                    else if ($options['allow_guest_vote']&&filter_var(spr_get_ip(), FILTER_VALIDATE_IP))
                    {
                        $query="select * from <code>&quot;.$wpdb->prefix.&quot;posts</code> where <code>ID</code>='$post_id';";
                        $post_exists=$wpdb->get_results($query, ARRAY_N);
                        if (count($post_exists)>0) // post exists
                        {
                            $query="select * from <code>&quot;.$wpdb->prefix.&quot;spr_votes</code> where <code>post_id</code>='$post_id' and <code>user_id</code>='".spr_get_ip()."';";
                            $voted=$wpdb->get_results($query, ARRAY_N);
                            if (count($voted)>0)  // already voted
                            {
                                $response=json_encode(array('status'=>2));
                            }
                            else // haven't voted yet 
                            {
                                $wpdb->query("INSERT INTO <code>&quot;.$wpdb->prefix.&quot;spr_votes</code> (<code>post_id</code>, <code>user_id</code>, <code>points</code>) VALUES ('$post_id', '".spr_get_ip()."', '$points_');");
                                $query="select <code>votes</code>, <code>points</code> from <code>&quot;.$wpdb->prefix.&quot;spr_rating</code> where <code>post_id</code>='$post_id';";
                                $popularity=$wpdb->get_results($query, ARRAY_N);
                                if (count($popularity)>0)
                                {
                                    $votes=$popularity[0][0];
                                    $points=$popularity[0][1];
                                }
                                else
                                {
                                    $votes=0;
                                    $points=0;
                                }
                                if ($votes==0||$points==0)
                                {
                                    $wpdb->query("INSERT INTO <code>&quot;.$wpdb->prefix.&quot;spr_rating</code> (<code>post_id</code>, <code>votes</code>, <code>points</code>) VALUES ('$post_id', '1', '$points_');");
                                }
                                else
                                {
                                    $points=$points+$points_;
                                    $votes=$votes+1;
                                    $wpdb->query("UPDATE <code>&quot;.$wpdb->prefix.&quot;spr_rating</code> set <code>votes</code>='$votes', <code>points</code>='$points' where <code>post_id</code>='$post_id';");
                                }
                                $query="select <code>votes</code>, <code>points</code> from <code>&quot;.$wpdb->prefix.&quot;spr_rating</code> where <code>post_id</code>='$post_id';";
                                $popularity=$wpdb->get_results($query, ARRAY_N);
                                if (count($popularity)>0)
                                {
                                    $votes=$popularity[0][0];
                                    $points=$popularity[0][1];
                                }
                                else
                                {
                                    $votes=0;
                                    $points=0;
                                }
                                $html=spr_show_voted($votes, $points, $options['show_vote_count']);
                                $response=json_encode(array('status'=>1, 'html'=>$html));
                            }
                        }
                        else
                        {
                            $response=json_encode(array('status'=>3)); // post doesn't exist
                        }
                    }
                    else
                    {
                        $response=json_encode(array('status'=>4)); // user isn't logged in
                    }
                }
                else
                {
                    $response=json_encode(array('status'=>5));  // key parameters aren't set
                }
            }
            else
            {
                $response=json_encode(array('status'=>6));  // key parameters aren't set
            }
        }
        else
        {
            $response=json_encode(array('status'=>7));  // rating isn't active
        }
        echo $response;
        if (isset($_POST['action']))
        {
            die();
        }
    }
    
    function spr_options()
    {
        $list=spr_list_cpt_slugs();
        foreach ($list as $list_)
        {
            $def_types[$list_]=0;
        }
        $default_options=array("shape"=>"s", "color"=>"y", "where_to_show"=>$def_types, "position"=>"before", "show_vote_count"=>"1", "activated"=>"0", "scale"=>"5", "method"=>"auto", "alignment"=>"center", "vote_count_color"=>"", "vc_bold"=>"0", "vc_italic"=>"0", "show_in_loops"=>"0", "loop_on_hp"=>"0", "use_aggregated"=>"1", "allow_guest_vote"=>"0", "show_stats_metabox"=>"1");
        $options=get_option('spr_settings', 'undef');
        if ($options!='undef')
        {
            $options=json_decode($options, true);
            $diff=array_diff_key($default_options, $options);
            if (count($diff)>0)
            {
                $options=array_merge($options, $diff);
            }
        }
        else
        {
            $options=$default_options;
        }
        return $options;
    }
    
    function spr_options_page()
    {
        require_once (plugin_dir_path(__FILE__).'/settings.php');
    }
    
    function spr_save_settings()
    {
        $current_options=spr_options();
        $current_json=json_encode($current_options);
        if (isset($_POST['spr_shape'])||isset($_POST['spr_color'])||isset($_POST['spr_position'])||isset($_POST['spr_scale'])||isset($_POST['spr_show_vote_count'])||isset($_POST['spr_activated'])||isset($_POST['spr_method'])||isset($_POST['spr_vote_count_color'])||isset($_POST['spr_vc_bold'])||isset($_POST['spr_vc_italic'])||isset($_POST['spr_show_in_loops'])||isset($_POST['spr_loop_on_hp'])||isset($_POST['spr_use_aggregated'])||isset($_POST['spr_allow_guest_vote'])||isset($_POST['spr_show_stats_metabox']))
        {
    
    //Shape
            if (isset($_POST['spr_shape']))
            {
                switch ($_POST['spr_shape'])
                {
                    case 'c' :
                        {
                            $options['shape']='c';
                            break;
                        }
                    case 'h' :
                        {
                            $options['shape']='h';
                            break;
                        }
                    case 'b' :
                        {
                            $options['shape']='b';
                            break;
                        }
                    case 's' :
                        {
                            $options['shape']='s';
                            break;
                        }
                    default:
                        {
                            $options['shape']=$current_options['shape'];
                            break;
                        }
                }
            }
            //Color
            if (isset($_POST['spr_color']))
            {
                switch ($_POST['spr_color'])
                {
                    case 'p' :
                        {
                            $options['color']='p';
                            break;
                        }
                    case 'b' :
                        {
                            $options['color']='b';
                            break;
                        }
                    case 'y' :
                        {
                            $options['color']='y';
                            break;
                        }
                    case 'r' :
                        {
                            $options['color']='r';
                            break;
                        }
                    case 'g' :
                        {
                            $options['color']='g';
                            break;
                        }
                    default:
                        {
                            $options['color']=$current_options['color'];
                            break;
                        }
                }
            }
            //Position
            if (isset($_POST['spr_position']))
            {
                switch ($_POST['spr_position'])
                {
                    case 'before' :
                        {
                            $options['position']='before';
                            break;
                        }
                    case 'after' :
                        {
                            $options['position']='after';
                            break;
                        }
                    default:
                        {
                            $options['position']=$current_options['position'];
                            break;
                        }
                }
            }
            //Alignment 
            if (isset($_POST['spr_alignment']))
            {
                switch ($_POST['spr_alignment'])
                {
                    case 'center' :
                        {
                            $options['alignment']='center';
                            break;
                        }
                    case 'left' :
                        {
                            $options['alignment']='left';
                            break;
                        }
                    case 'right' :
                        {
                            $options['alignment']='right';
                            break;
                        }
                    default:
                        {
                            $options['alignment']=$current_options['alignment'];
                            break;
                        }
                }
            }
            //Show vote count
            if (isset($_POST['spr_show_vote_count']))
            {
                $options['show_vote_count']='1';
            }
            else
            {
                $options['show_vote_count']='0';
            }
            //Activated
            if (isset($_POST['spr_activated']))
            {
                $options['activated']='1';
            }
            else
            {
                $options['activated']='0';
            }
            //Scale
            if (isset($_POST['spr_scale']))
            {
                if ($_POST['spr_scale']>=3&&$_POST['spr_scale']<=10)
                {
                    $options['scale']=$_POST['spr_scale'];
                }
                else
                {
                    $options['scale']=$current_options['scale'];
                }
            }
            //Method
            if (isset($_POST['spr_method']))
            {
                switch ($_POST['spr_method'])
                {
                    case 'auto' :
                        {
                            $options['method']='auto';
                            break;
                        }
                    case 'manual' :
                        {
                            $options['method']='manual';
                            break;
                        }
                    default:
                        {
                            $options['method']=$current_options['method'];
                            break;
                        }
                }
            }
            // Vote count color
            if (isset($_POST['spr_vote_count_color']))
            {
                if (preg_match('@^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$@', $_POST['spr_vote_count_color']))
                {
                    $options['vote_count_color']=$_POST['spr_vote_count_color'];
                }
                else
                {
                    $_POST['spr_vote_count_color']="";
                }
            }
            //Bold
            if (isset($_POST['spr_vc_bold']))
            {
                $options['vc_bold']='1';
            }
            else
            {
                $options['vc_bold']='0';
            }
            //Italic
            if (isset($_POST['spr_vc_italic']))
            {
                $options['vc_italic']='1';
            }
            else
            {
                $options['vc_italic']='0';
            }
    
            if (isset($_POST['spr_show_in_loops']))
            {
                $options['show_in_loops']='1';
            }
            else
            {
                $options['show_in_loops']='0';
            }
            //Loop on homepage
            if (isset($_POST['spr_loop_on_hp']))
            {
                $options['loop_on_hp']='1';
            }
            else
            {
                $options['loop_on_hp']='0';
            }
            //Use aggregated
            if (isset($_POST['spr_use_aggregated']))
            {
                $options['use_aggregated']='1';
            }
            else
            {
                $options['use_aggregated']='0';
            }
    
            //Allow guests to vote
            if (isset($_POST['spr_allow_guest_vote']))
            {
                $options['allow_guest_vote']='1';
            }
            else
            {
                $options['allow_guest_vote']='0';
            }
            //Show statistics metabox
            if (isset($_POST['spr_show_stats_metabox']))
            {
                $options['show_stats_metabox']='1';
            }
            else
            {
                $options['show_stats_metabox']='0';
            }
    
            //where to show
            $list=spr_list_cpt_slugs();
            foreach ($list as $list_)
            {
                $def_types[$list_]=0;
                if (isset($_POST[$list_]))
                {
                    $options['where_to_show'][$list_]='1';
                }
                else
                {
                    $options['where_to_show'][$list_]='0';
                }
            }
            $default_options=array("shape"=>"s", "color"=>"y", "where_to_show"=>$def_types, "position"=>"before", "show_vote_count"=>"1", "activated"=>"0", "scale"=>"5", "method"=>"auto", "alignment"=>"center", "vote_count_color"=>"", "vc_bold"=>"0", "vc_italic"=>"0", "show_in_loops"=>"0", "loop_on_hp"=>"0", "use_aggregated"=>"1", "allow_guest_vote"=>"0", "show_stats_metabox"=>"1");
            $diff=array_diff_key($default_options, $options);
            if (count($diff)>0)
            {
                $options=array_merge($options, $diff);
            }
            $options=json_encode($options);
    
            if ($current_json!=$options)
            {
                update_option('spr_settings', $options);
                echo "<div class='updated'><p>Settings were updated successfully.</p></div>";
            }
        }
    }
    
    function spr_menu()
    {
        add_options_page('Simple Rating', 'Simple Rating', 'manage_options', 'spr_options', 'spr_options_page');
    }
    
    function spr_activation_func()
    {
        global $wpdb;
        $query="CREATE TABLE IF NOT EXISTS <code>&quot;.$wpdb->prefix.&quot;spr_votes</code>  (
    	<code>post_id</code> INT(11) NULL DEFAULT NULL,
    	<code>user_id</code> TINYTEXT NULL COLLATE 'utf8_unicode_ci',
    	<code>points</code> INT(11) NULL DEFAULT NULL 
    )
    COLLATE='utf8_unicode_ci'
    ENGINE=MyISAM;
    ";
        $wpdb->query($query);
        $query="CREATE TABLE IF NOT EXISTS <code>&quot;.$wpdb->prefix.&quot;spr_rating</code> (
    	<code>post_id</code> INT(11) NOT NULL,
    	<code>votes</code> INT(11) NOT NULL,
    	<code>points</code> INT(11) NOT NULL
    )
    COLLATE='utf8_unicode_ci'
    ENGINE=MyISAM;
    ";
        $wpdb->query($query);
        $list=spr_list_cpt_slugs();
        foreach ($list as $list_)
        {
            $def_types[$list_]=0;
        }
        $default_options=array("shape"=>"s", "color"=>"y", "where_to_show"=>$def_types, "position"=>"before", "show_vote_count"=>"1", "activated"=>"0", "scale"=>"5", "method"=>"auto", "alignment"=>"center", "vote_count_color"=>"", "vc_bold"=>"0", "vc_italic"=>"0", "show_in_loops"=>"0", "loop_on_hp"=>"0", "use_aggregated"=>"1", "allow_guest_vote"=>"0", "show_stats_metabox"=>"1");
        add_option('spr_settings', json_encode($default_options));
        add_option('spr_version', '1.3.1');
    }
    
    function add_spr_checkbox()
    {
        global $post;
        $type=get_post_type($post->ID);
        $disable_rating=get_post_meta($post->ID, '_spr_disable', true);
        ?>
        <div class="misc-pub-section">
            <input id="spr_disable_rating" type="checkbox" name="spr_disable_rating"  value="<?php echo $disable_rating; ?>" <?php checked($disable_rating, 1, true); ?>>
            <label for="spr_enable_rating">Disable rating for this entry</label></div>
        <?php
    }
    
    function spr_new_update_post_handler($data, $postarr)
    {
    
        if (isset($_POST['spr_disable_rating']))
        {
            update_post_meta($postarr['ID'], '_spr_disable', '1');
        }
        else
        {
            delete_post_meta($postarr['ID'], '_spr_disable');
        }
        return $data;
    }
    
    function spr_truncate_tables()
    {
        global $wpdb;
        $query="TRUNCATE TABLE <code>&quot;.$wpdb->prefix.&quot;spr_votes</code> ;";
        $wpdb->query($query);
        $query="TRUNCATE TABLE <code>&quot;.$wpdb->prefix.&quot;spr_rating</code>;";
        $wpdb->query($query);
        echo "<div class='updated'><p>All votes were cleared.</p></div>";
    }
    
    function spr_add_settings_link($links)
    {
    
        return array_merge(
                array(
            'settings'=>'<a href="'.admin_url('options-general.php?page=spr_options').'">Settings</a>'
                ), $links
        );
    }
    
    function spr_print_additional_styles()
    {
        $options=spr_options();
        $style="<style>";
        $vc_style="#spr_votes{";
        $c_style="#spr_container{";
        if (strlen($options['vote_count_color'])>0&&$options['show_vote_count'])
        {
            $vc_style.="color:".$options['vote_count_color']." !important;";
        }
        if ($options['vc_bold']&&$options['show_vote_count'])
        {
            $vc_style.="font-weight:700 !important;";
        }
        if ($options['vc_italic']&&$options['show_vote_count'])
        {
            $vc_style.="font-style:italic !important;";
        }
        $vc_style.="}";
        if ($vc_style!="#spr_votes{}")
        {
            $style.=$vc_style;
        }
        if ($options['alignment']=="right"||$options['alignment']=="left")
        {
            $c_style.="text-align:".$options['alignment']." !important;";
        }
        $c_style.="}";
        if ($c_style!="#spr_container{}")
        {
            $style.=$c_style;
        }
        $style.="</style>";
        if ($style!="<style></style>")
        {
            echo $style;
        }
    }
    
    function spr_get_post_types_fo()
    {
        $options=spr_options();
        $post_types=get_post_types(array('public'=>true, '_builtin'=>false), 'objects', 'and');
        $result='<table><tr><td class="spr_cb_labels">Posts</td><td><input type="checkbox" name="post" id="post" value="'.$options['where_to_show']['post'].'" '.checked($options['where_to_show']['post'], 1, false).'></td></tr><tr><td class="spr_cb_labels">Pages</td><td><input type="checkbox" name="page" id="page" value="'.$options['where_to_show']['page'].'" '.checked($options['where_to_show']['page'], 1, false).'></td></tr>';
        foreach ($post_types as $post_type)
        {
            $result.= '<tr><td class="spr_cb_labels">'.$post_type->labels->name.'</td><td><input type="checkbox" name="'.$post_type->rewrite['slug'].'" id="'.$post_type->rewrite['slug'].'" value="'.$options['where_to_show'][$post_type->rewrite['slug']].'" '.checked($options['where_to_show'][$post_type->rewrite['slug']], 1, false).'></td></tr>';
        }
        $result.="</table>";
        return $result;
    }
    
    function spr_list_cpt_slugs()
    {
        $types=array("post", "page");
        $post_types=get_post_types(array('public'=>true, '_builtin'=>false), 'objects', 'and');
        foreach ($post_types as $post_type)
        {
            $types[]=$post_type->rewrite['slug'];
        }
        return $types;
    }
    
    function spr_get_ip()
    {
        if (getenv("HTTP_CLIENT_IP")&&strcasecmp(getenv("HTTP_CLIENT_IP"), "unknown"))
        {
            $ip=getenv("HTTP_CLIENT_IP");
        }
        else if (getenv("HTTP_X_FORWARDED_FOR")&&strcasecmp(getenv("HTTP_X_FORWARDED_FOR"), "unknown"))
        {
            $ip=getenv("HTTP_X_FORWARDED_FOR");
        }
        else if (getenv("REMOTE_ADDR")&&strcasecmp(getenv("REMOTE_ADDR"), "unknown"))
        {
            $ip=getenv("REMOTE_ADDR");
        }
        else if (isset($_SERVER['REMOTE_ADDR'])&&$_SERVER['REMOTE_ADDR']&&strcasecmp($_SERVER['REMOTE_ADDR'], "unknown"))
        {
            $ip=$_SERVER['REMOTE_ADDR'];
        }
        else
        {
            $ip="unknown";
        }
        return($ip);
    }
    
    function spr_list_ratings($post)
    {
        $options=spr_options();
        global $wpdb;
        wp_enqueue_style('spr_style', plugins_url('/resources/spr_style.css', __FILE__));
        $query="select <code>points</code>,<code>user_id</code>, count(points) as <code>amount</code> from <code>&quot;.$wpdb->prefix.&quot;spr_votes</code> where <code>post_id</code>='".$post->ID."' group by <code>points</code> order by <code>points</code> asc;";
        $list=$wpdb->get_results($query, ARRAY_A);
        $html="";
        $result="";
        if (count($list)>0)
        {
            $totalpoints=0;
            $totalvoters=0;
            for ($i=$options['scale']; $i>=1; $i--)
            {
                $users=0;
                $guests=0;
                $votes=0;
                $found=false;
                foreach ($list as $list_)
                {
                    if ($list_['points']==$i)
                    {
                        $found=true;
                        $totalpoints+=$list_['points']*$list_['amount'];
                        $totalvotes+=$list_['amount'];
                        $votes=$list_['amount'];
                        if (is_numeric($list_['used_id']))
                        {
                            $users++;
                        }
                        else if ($options['allow_guest_vote']&&filter_var($list_['used_id'], FILTER_VALIDATE_IP))
                        {
                            $guests++;
                        }
                    }
                }
                if ($found)
                {
                    if ($votes==1)
                    {
                        $votesorvote='vote';
                    }
                    else
                    {
                        $votesorvote='votes';
                    }
                    $html.='<div id="spr_visual_container_adm">'.spr_show_voted(1, $i, false).'<span id="spr_votes">'.$votes." ".$votesorvote."</span></div><br/>";
                }
                else
                {
                    $html.='<div id="spr_visual_container_adm">'.spr_show_voted(1, $i, false)."<span id='spr_votes'>0 votes</span></div><br/>";
                }
            }
            $result='<div id="spr_visual_container_adm">'.spr_show_voted($totalvotes, $totalpoints, true)."</div><div style='text-align:center;font-size:15px;margin:3px;font-weight:700;'>Statistics by rating:</div>";
        }
        else
        {
            $html.="There are no votes for this entry yet.";
        }
        echo $result.$html;
    }
    
    function spr_add_custom_box()
    {
        $options=spr_options();
        if ($options['show_stats_metabox'])
        {
            foreach ($options['where_to_show'] as $k=> $v)
            {
                if ($v)
                {
                    $screens[]=$k;
                }
            }
            if (count($screens)>0)
            {
                foreach ($screens as $screen)
                {
                    add_meta_box('spr_rating_stats', __('Rating statistics', 'spr_text_domain'), 'spr_list_ratings', $screen, 'side');
                }
            }
        }
    }
    
    add_action('add_meta_boxes', 'spr_add_custom_box');
    add_filter('plugin_action_links_'.plugin_basename(__FILE__), 'spr_add_settings_link');
    add_filter('wp_insert_post_data', 'spr_new_update_post_handler', '99', 2);
    add_action('post_submitbox_misc_actions', 'add_spr_checkbox');
    add_action('admin_menu', 'spr_menu');
    add_action('wp_ajax_spr_rate', 'spr_rate');
    add_action('wp_ajax_nopriv_spr_rate', 'spr_rate');
    register_activation_hook(__FILE__, 'spr_activation_func');
    ?>

    Here is code from settings.php. Here I think I probably have to change wp_enqueue to something else, among other things:

    <?php
    if (isset($_POST['spr_reset_votes']))
    {
        if (current_user_can('activate_plugins'))
        {
            spr_truncate_tables();
        }
    }
    spr_save_settings();
    $options=spr_options();
    wp_enqueue_style('farbtastic');
    wp_enqueue_script('farbtastic');
    wp_enqueue_style('spr_style', plugins_url('/resources/spr_style.css', __FILE__));
    wp_enqueue_script('spr_admin', plugins_url('/resources/spr_admin.js', __FILE__), array('farbtastic', 'jquery'), NULL);
    wp_localize_script('spr_admin', 'spr_ajax_object', array('scale'=>$options['scale'], 'spr_type'=>$options['color'].$options['shape']));
    ?>
    <h1>Adjust settings of the Simple Rating</h1>
    <div style="float:left;">
        <form name="form" method="POST" style="margin-top:15px;">
            <table>
                <tr>
                    <td  class="spr_adm_label"><label>Show rating</label></td>
                    <td><input type="checkbox" name="spr_activated" id="spr_activated" value="<?php echo $options['activated']; ?>" <?php checked($options['activated'], 1, true); ?>></td>
                    <td class="spr_hint_container"><div class="spr_hint tooltip-right" data-tooltip="Unless you check this box, rating won't show up."></div></td>
                </tr>
                <tr>
                    <td  class="spr_adm_label"><label>Allow guests to vote</label></td>
                    <td><input type="checkbox" name="spr_allow_guest_vote" id="spr_allow_guest_vote" value="<?php echo $options['allow_guest_vote']; ?>" <?php checked($options['allow_guest_vote'], 1, true); ?>></td>
                    <td class="spr_hint_container"><div class="spr_hint tooltip-right" data-tooltip="If you check this box, guests will be allowed to vote. Guest votes will be tracked by IP instead of UserID"></div></td>
                </tr>
                <tr>
                    <td  class="spr_adm_label"><label>Insertion method</label></td>
                    <td>
                        <select name="spr_method" id="spr_method" class="spr_admin_input">
                            <option value="auto" <?php selected($options['method'], 'auto', true); ?>>Automatic</option>
                            <option value="manual" <?php selected($options['method'], 'manual', true); ?>>Manual</option>
                        </select>
                    </td>
                    <td class="spr_hint_container"><div class="spr_hint tooltip-right" data-tooltip="Automatic method is recommended if you don't want to touch theme files. It will use filter to insert rating before or after content. If you want to insert rating into a specific part of your template, set method to Manual and insert <?php if(function_exists('spr_show_rating')){echo spr_show_rating();}?> where you need it."></div></td>
                </tr> 
                <tr>
                    <td  class="spr_adm_label"><label>Shape</label></td>
                    <td>
                        <select name="spr_shape" id="spr_shape" class="spr_admin_input">
                            <option value="s" <?php selected($options['shape'], 's', true); ?>>Stars</option>
                            <option value="c" <?php selected($options['shape'], 'c', true); ?>>Circles</option>
                            <option value="h" <?php selected($options['shape'], 'h', true); ?>>Hearts</option>
                            <option value="b" <?php selected($options['shape'], 'b', true); ?>>Bar</option>
                        </select>
                    </td>
                </tr>
                <tr>
                    <td  class="spr_adm_label"><label>Color</label></td>
                    <td>
                        <select name="spr_color" id="spr_color" class="spr_admin_input">
                            <option value="y" <?php selected($options['color'], 'y', true); ?>>Yellow</option>
                            <option value="p" <?php selected($options['color'], 'p', true); ?>>Purple</option>
                            <option value="g" <?php selected($options['color'], 'g', true); ?>>Green</option>
                            <option value="b" <?php selected($options['color'], 'b', true); ?>>Blue</option>
                            <option value="r" <?php selected($options['color'], 'r', true); ?>>Red</option>
                        </select>
                    </td>
                </tr>
                <tr>
                    <td  class="spr_adm_label"><label>Alignment</label></td>
                    <td>
                        <select name="spr_alignment" id="spr_alignment" class="spr_admin_input">
                            <option value="center" <?php selected($options['alignment'], 'center', true); ?>>Center</option>
                            <option value="right" <?php selected($options['alignment'], 'right', true); ?>>Right</option>
                            <option value="left" <?php selected($options['alignment'], 'left', true); ?>>Left</option>
                        </select>
                    </td>
                </tr>
                <tr>
                    <td  class="spr_adm_label"><label>Show vote count</label></td>
                    <td><input type="checkbox" name="spr_show_vote_count" id="spr_show_vote_count" value="<?php echo $options['show_vote_count']; ?>" <?php checked($options['show_vote_count'], 1, true); ?>></td>
                </tr>
                <tr>
                    <td  class="spr_adm_label"><label>Vote count color</label></td>
                    <td>
                        <input type="text" size="10" maxlength="8" name="spr_vote_count_color" id="spr_vote_count_color" value="<?php echo $options['vote_count_color']; ?>" class="spr_admin_input">
                    </td>
                    <td><a href="#" id="spr_vote_count_color_box" class="pickcolor" style="padding: 4px 11px; border: 1px solid #dfdfdf; background-color: <?php echo $options['vote_count_color']; ?>;"></a>
                        <div id="psr_color_picker" style="z-index: 100; background:#eee; border:1px solid #ccc; position:absolute; display:none;"></div></td>
                </tr>
                <tr>
                    <td  class="spr_adm_label"><label>Vote count style</label></td>
                    <td> 
                        Bold <input type="checkbox" name="spr_vc_bold" id="spr_vc_bold" value="<?php echo $options['vc_bold']; ?>" <?php checked($options['vc_bold'], 1, true); ?>>
                        Italic <input type="checkbox" name="spr_vc_italic" id="spr_vc_italic" value="<?php echo $options['vc_italic']; ?>" <?php checked($options['vc_italic'], 1, true); ?>>
                    </td>
                </tr>
                <tr>
                    <td  class="spr_adm_label"><label>Scale</label></td>
                    <td><input type="text" size="10" maxlength="200" name="spr_scale" id="spr_scale" value="<?php echo $options['scale']; ?>" class="spr_admin_input"></td>
                    <td class="spr_hint_container"><div class="spr_hint tooltip-right" data-tooltip="Scale of rating. Allowed values: 3-10."></div></td>
                </tr>
                <tr>
                    <td  class="spr_adm_label"><label>Where to add rating</label></td>
                    <td>
                        <?php echo spr_get_post_types_fo(); ?>
                    </td>
                </tr> 
                <tr>
                    <td  class="spr_adm_label"><label>Position</label></td>
                    <td>
                        <select name="spr_position" id="spr_position" class="spr_admin_input">
                            <option value="before" <?php selected($options['position'], 'before', true); ?>>Before content</option>
                            <option value="after" <?php selected($options['position'], 'after', true); ?>>After content</option>
                        </select>
                    </td>
                </tr>  
                <tr>
                    <td  class="spr_adm_label"><label>Show in loops</label></td>
                    <td><input type="checkbox" name="spr_show_in_loops" id="spr_show_in_loops" value="<?php echo $options['show_in_loops']; ?>" <?php checked($options['show_in_loops'], 1, true); ?>></td>
                    <td class="spr_hint_container"><div class="spr_hint tooltip-right" data-tooltip="Check this box if you want to show rating in the loops. Category page for example. Note: voting is allowed only from a single page."></div></td>
                </tr>
                <tr>
                    <td  class="spr_adm_label"><label>Show in loop on home page</label></td>
                    <td><input type="checkbox" name="spr_loop_on_hp" id="spr_loop_on_hp" value="<?php echo $options['loop_on_hp']; ?>" <?php checked($options['loop_on_hp'], 1, true); ?>></td>
                    <td class="spr_hint_container"><div class="spr_hint tooltip-right" data-tooltip="If your homepage uses loop and you want to show rating there, check this box."></div></td>
                </tr>
                <tr>
                    <td  class="spr_adm_label"><label>Use aggregated rating</label></td>
                    <td><input type="checkbox" name="spr_use_aggregated" id="spr_use_aggregated" value="<?php echo $options['use_aggregated']; ?>" <?php checked($options['use_aggregated'], 1, true); ?>></td>
                    <td class="spr_hint_container"><div class="spr_hint tooltip-right" data-tooltip="If you check this box, rating will be shown in search engines' snippets. See Screenshot 4 for example. Note: this plugin can't control rating style in snippets."></div></td>
                </tr>
                <tr>
                    <td  class="spr_adm_label"><label>Show statistics metabox</label></td>
                    <td><input type="checkbox" name="spr_show_stats_metabox" id="spr_show_stats_metabox" value="<?php echo $options['show_stats_metabox']; ?>" <?php checked($options['show_stats_metabox'], 1, true); ?>></td>
                    <td class="spr_hint_container"><div class="spr_hint tooltip-right" data-tooltip="If you check this box, you will see metabox with rating statistics when editing posts/pages/custom post type entries."></div></td>
                </tr>
            </table>
            <input type="submit" style="margin-top:10px;" class='button button-primary button-large' value="Save settings">
        </form>
    </div>
    <div id="postbox-container-1" class="postbox-container" style="float: right;display:inline-block;width: 280px;margin-right:20px;">
        <div class="postbox ">
            <h3 class="spr_widget_title">
                <span>Live preview</span>
            </h3>
            <div class="inside">         
                <div id="spr_container"><div class="spr_visual_container"><?php echo spr_show_voting(5, 25, $options['show_vote_count']); ?></div></div>
            </div>
        </div>
        <div class="postbox ">
            <h3 class="spr_widget_title">
                <span>Donate</span>
            </h3>
            <div class="inside">         
                <form action="https://www.moneybookers.com/app/payment.pl" method="post">
                    <input type="hidden" name="pay_to_email" value="igor.yavych@gmail.com">
                    <input type="hidden" name="status_url" value="mailto:igor.yavych@gmail.com">
                    <input type="hidden" name="language" value="EN">
                    <input type="hidden" name="recipient_description" value="Simple Rating">
                    <input type="text" name="amount" size="5"  value="5" />
                    <select name="currency" style="margin-top:-1px;" id="currency">
                        <option value="USD" selected="selected">USD</option>
                        <option value="EUR">EUR</option>
                    </select>
                    <input type="hidden" name="confirmation_note" value="Thanks for your support!">
                    <br/><input class="spr_button button button-primary button-small" type="submit" value="Donate via Skrill">
                </form>
            </div>
        </div>
        <div class="postbox ">
            <h3 class="spr_widget_title">
                <span>Reset votes</span>
            </h3>
            <div class="inside">         
                <form method="post" onsubmit="return confirm('Do you really want to reset votes?')">
                    You can reset votes by pressing button below.<br/>
                    <input type="hidden" name="spr_reset_votes" value="1">
                    <input class="spr_button button button-primary button-small" type="submit" value="Reset votes">
                </form>
            </div>
        </div>
        <div class="postbox ">
            <h3 class="spr_widget_title">
                <span>Feedback</span>
            </h3>
            <div class="inside">         
                Found a bug? Or maybe have a feature request? Head over to <a href="http://wordpress.org/support/plugin/simple-rating">support forum</a> and let me know!
            </div>
        </div>
    </div>
    #147185
    infd
    Participant

    If i push “reply” on any post then default reply form push my post directly under that post. If i don’t push “reply” on any post then default reply form behaves as if I pressed the answer under the first post in the topic. Is it possible to change this behavior? I need this – if i don’t push “reply” then my post appears last in topic as if i pressed the answer to the last post of the topic.
    WordPress 3.9.1
    bbPress 2.5.3

Viewing 25 results - 3,051 through 3,075 (of 6,788 total)
Skip to toolbar