Plugin Directory

Changeset 794745


Ignore:
Timestamp:
10/28/2013 12:01:22 PM (12 years ago)
Author:
Name.ly
Message:

version 0.0.6

Location:
quick-post-management/tags/0.0.6
Files:
6 added
4 deleted
5 edited

Legend:

Unmodified
Added
Removed
  • quick-post-management/tags/0.0.6/index.php

    r405644 r794745  
    11<?php
    2 // Silence is golden.
     2/*
     3 * Plugin Name:   Quick Post Management
     4 * Version:       0.0.6
     5 * Plugin URI:    http://name.ly/plugins/
     6 * Description:   QPM adds handy front-end pages/posts management links for one-click actions as drafting, setting private/public, opening/closing comments/trackbacks, trashing/deleting, etc
     7 * Author:        Name.ly
     8 * Author URI:    http://namely.pro/
     9 */
     10
     11
     12
     13if ( ! defined ( 'ABSPATH' ) ) { exit (); }
     14
     15
     16
     17define ( 'QPM_VERSION', '0.0.1' ); // settings' version
     18
     19
     20
     21load_plugin_textdomain ( 'QPM', false, basename ( dirname ( __FILE__ ) ) . '/languages' );
     22
     23
     24
     25global $qpm_options;
     26qpm_load_and_check_settings ();
     27
     28function qpm_load_and_check_settings () {
     29    global $qpm_options;
     30
     31    $qpm_options = get_option ( 'qpm_options' );
     32
     33    // here, in the future, we can check for previous versions, and if such, upgrade accordingly
     34
     35    if ( ! $qpm_options || ! is_array ( $qpm_options ) || ! isset ( $qpm_options [ 'version' ] ) ) {
     36        $qpm_options = array ();
     37        $qpm_options [ "version" ] = QPM_VERSION;
     38        $qpm_options [ "add_to_the_top" ] = "no";
     39        $qpm_options [ "add_to_the_bottom" ] = "yes";
     40        $qpm_options [ "handle_the_content" ] = "yes";
     41        $qpm_options [ "priority_the_content" ] = 999999;
     42        $qpm_options [ "handle_the_excerpt" ] = "yes";
     43        $qpm_options [ "priority_the_excerpt" ] = 999999;
     44        $qpm_options [ "add_set_as_draft" ] = "yes";
     45        $qpm_options [ "add_set_as_private" ] = "yes";
     46        $qpm_options [ "add_close_comments" ] = "yes";
     47        $qpm_options [ "add_close_trackbacks" ] = "no";
     48        $qpm_options [ "add_move2trash" ] = "yes";
     49        $qpm_options [ "add_forcedelete" ] = "no";
     50        $qpm_options [ "add_convert" ] = "no";
     51        $qpm_options [ "add_custom_links" ] = "no";
     52        $qpm_options [ "custom_links" ] = '<a href="%SITE_URL%/wp-admin/post.php?post=%POST_ID%&action=edit">' . __ ( "Edit", "QPM" ) . '</a> | <a href="%SITE_URL%/wp-admin/edit.php?post_type=%POST_TYPE%">' . __ ( "Manage", "QPM" ) . '</a>';
     53        $qpm_options [ "add_qpm_admin" ] = "yes";
     54        $qpm_options [ "mail_post_author" ] = "no";
     55        $qpm_options [ "only_superadmins" ] = "no";
     56        add_option ( "qpm_options", $qpm_options );
     57    }
     58}
     59
     60
     61
     62if ( is_admin () ) {
     63  require_once ( "qpm_admin.php" );
     64}
     65
     66
     67
     68//register_activation_hook ( __FILE__, 'qpm_activate' );
     69//register_deactivation_hook ( __FILE__, 'qpm_deactivate' ); // N.B. this will clear the settings and the table in the database
     70
     71
     72
     73function qpm_activate () {
     74    // done automatically
     75}
     76   
     77function qpm_deactivate () {
     78    // done automatically
     79//  delete_option ( 'qpm_options' );
     80}
     81
     82
     83
     84if ( ! is_admin () && ( ! is_multisite () || is_multisite () && ( "yes" != $qpm_options [ "only_superadmins" ] || is_super_admin () ) ) ) {
     85    if ( "yes" == $qpm_options [ "handle_the_content" ] ) {
     86        add_filter ( "the_content", "qpm_the_content_filter", (int) $qpm_options [ "priority_the_content" ], 1 );
     87    }
     88    if ( "yes" == $qpm_options [ "handle_the_excerpt" ] ) {
     89        add_filter ( "the_excerpt", "qpm_the_content_filter", (int) $qpm_options [ "priority_the_excerpt" ], 1 );
     90    }
     91}
     92
     93
     94
     95function qpm_the_content_filter ( $content ) {
     96
     97    global $qpm_options;
     98    global $post;
     99
     100    $qpm_links = qpm_get_links ( $post->ID );
     101
     102    if ( $qpm_links ) {
     103
     104        if ( "yes" == $qpm_options [ "add_to_the_top" ] ) {
     105            $content = $qpm_links . $content;
     106        }
     107
     108        if ( "yes" == $qpm_options [ "add_to_the_bottom" ] ) {
     109            $content .= $qpm_links;
     110        }
     111
     112    }
     113
     114    return $content;
     115
     116}
     117
     118
     119
     120function qpm_get_links ( $postid ) {
     121
     122    global $qpm_options;
     123
     124    $post = get_post ( $postid );
     125
     126    if ( function_exists ( "current_user_can" ) && ( current_user_can ( "editor" ) || current_user_can ( "edit_post", $postid ) ) ) { // on some international installations, current_user_can ( "editor" ) returns 0 somehow, hence the extra check
     127        $qpm_links = "";
     128        $qpm_links_n = 0;
     129        $link_separator = __ ( " | ", "QPM" );
     130        //
     131        $qpmadminurl = get_option ( "home" ) . "/wp-admin/options-general.php?page=qpm";
     132        $baseactionurl = $qpmadminurl . "&qpmnonce=" . wp_create_nonce ( "qpm_nonce" ); // http://codex.wordpress.org/Function_Reference/wp_create_nonce
     133        if ( "yes" == $qpm_options [ "add_set_as_draft" ] ) {
     134            $qpm_links .= ( $qpm_links ? $link_separator : "" ) . '<a href="' . $baseactionurl . "&postaction=set_as_draft&post_id=" . $postid . '">' . __ ( 'Set as draft', "QPM" ) . '</a>';
     135            $qpm_links_n++;
     136        }
     137        if ( "yes" == $qpm_options [ "add_set_as_private" ] ) {
     138            if ( "publish" == $post->post_status ) {
     139                $qpm_links .= ( $qpm_links ? $link_separator : "" ) . '<a href="' . $baseactionurl . "&postaction=set_as_private&post_id=" . $postid . '">' . __ ( 'Set as private', "QPM" ) . '</a>';
     140                $qpm_links_n++;
     141            } elseif ( "private" == $post->post_status ) {
     142                $qpm_links .= ( $qpm_links ? $link_separator : "" ) . '<a href="' . $baseactionurl . "&postaction=set_as_public&post_id=" . $postid . '">' . __ ( 'Set as public', "QPM" ) . '</a>';
     143                $qpm_links_n++;
     144            } else {
     145                // skip other cases
     146            }
     147        }
     148        if ( "yes" == $qpm_options [ "add_close_comments" ] ) {
     149            if ( "open" == $post->comment_status ) {
     150                $qpm_links .= ( $qpm_links ? $link_separator : "" ) . '<a href="' . $baseactionurl . "&postaction=close_comments&post_id=" . $postid . '">' . __ ( 'Close comments', "QPM" ) . '</a>';
     151                $qpm_links_n++;
     152            } elseif ( "closed" == $post->comment_status ) {
     153                $qpm_links .= ( $qpm_links ? $link_separator : "" ) . '<a href="' . $baseactionurl . "&postaction=open_comments&post_id=" . $postid . '">' . __ ( 'Open comments', "QPM" ) . '</a>';
     154                $qpm_links_n++;
     155            } else {
     156                // skip other cases
     157            }
     158        }
     159        if ( "yes" == $qpm_options [ "add_close_trackbacks" ] ) {
     160            if ( "open" == $post->ping_status ) {
     161                $qpm_links .= ( $qpm_links ? $link_separator : "" ) . '<a href="' . $baseactionurl . "&postaction=close_trackbacks&post_id=" . $postid . '">' . __ ( 'Close trackbacks', "QPM" ) . '</a>';
     162                $qpm_links_n++;
     163            } elseif ( "closed" == $post->ping_status ) {
     164                $qpm_links .= ( $qpm_links ? $link_separator : "" ) . '<a href="' . $baseactionurl . "&postaction=open_trackbacks&post_id=" . $postid . '">' . __ ( 'Open trackbacks', "QPM" ) . '</a>';
     165                $qpm_links_n++;
     166            } else {
     167                // skip other cases
     168            }
     169        }
     170        if ( "yes" == $qpm_options [ "add_move2trash" ] ) {
     171            $qpm_links .= ( $qpm_links ? $link_separator : "" ) . '<a href="' . $baseactionurl . "&postaction=move2trash&post_id=" . $postid . '">' . __ ( 'Move to trash', "QPM" ) . '</a>';
     172            $qpm_links_n++;
     173        }
     174        if ( "yes" == $qpm_options [ "add_forcedelete" ] ) {
     175            $qpm_links .= ( $qpm_links ? $link_separator : "" ) . '<a href="' . $baseactionurl . "&postaction=forcedelete&post_id=" . $postid . '">' . __ ( 'Force delete', "QPM" ) . '</a>';
     176            $qpm_links_n++;
     177        }
     178        if ( "yes" == $qpm_options [ "add_convert" ] ) {
     179            if ( "page" == $post->post_type ) {
     180                $qpm_links .= ( $qpm_links ? $link_separator : "" ) . '<a href="' . $baseactionurl . "&postaction=convert2post&post_id=" . $postid . '">' . __ ( 'Convert into post', "QPM" ) . '</a>';
     181                $qpm_links_n++;
     182            } elseif ( "post" == $post->post_type ) {
     183                $qpm_links .= ( $qpm_links ? $link_separator : "" ) . '<a href="' . $baseactionurl . "&postaction=convert2page&post_id=" . $postid . '">' . __ ( 'Convert into page', "QPM" ) . '</a>';
     184                $qpm_links_n++;
     185            } else {
     186                // skip other cases
     187            }
     188        }
     189        if ( "yes" == $qpm_options [ "add_custom_links" ] && $qpm_options [ "custom_links" ] ) {
     190            $qpm_links .= ( $qpm_links ? $link_separator : "" ) . str_replace ( array ( "%SITE_URL%", "%POST_ID%", "%POST_TYPE%", "%AUTHOR_ID%" ), array ( get_option ( 'home' ), $postid, $post->post_type, $post->post_author ), $qpm_options [ "custom_links" ] );
     191            $qpm_links_n++;
     192        }
     193        if ( "yes" == $qpm_options [ "add_qpm_admin" ] ) {
     194            $qpm_links .= ( $qpm_links ? $link_separator : "" ) . '<a href="' . $qpmadminurl . '">' . __ ( 'QPM settings', "QPM" ) . '</a>';
     195            $qpm_links_n++;
     196        }
     197        //
     198        if ( $qpm_links ) {
     199            $qpm_links = '<div class="qpm">' . ( $qpm_links_n > 1 ? __ ( 'QPM actions: ', "QPM" ) : __ ( 'QPM: ', "QPM" ) ) . $qpm_links . '</div>';
     200        }
     201    } else {
     202        $qpm_links = false;
     203    }
     204    return $qpm_links;
     205}
     206
     207
     208
     209add_shortcode ( 'QuickPostManagement', 'qpm_shortcode' );
     210
     211function qpm_shortcode () {
     212    global $post;
     213
     214    $qpm_links = qpm_get_links ( $post->ID );
     215
     216    if ( $qpm_links ) {
     217        return $qpm_links;
     218    } else {
     219        return '';
     220    }
     221
     222}
     223
     224
     225
    3226?>
  • quick-post-management/tags/0.0.6/license.txt

    r405644 r794745  
    1 
    2 Copyright (c) 2008-2011, Name.ly et al
    3 All rights reserved.
    4 
    5 Redistribution and use in source and binary forms, with or without
    6 modification, are permitted provided that the following conditions are met:
    7     * Redistributions of source code must retain the above copyright
    8       notice, this list of conditions and the following disclaimer.
    9     * Redistributions in binary form must reproduce the above copyright
    10       notice, this list of conditions and the following disclaimer in the
    11       documentation and/or other materials provided with the distribution.
    12     * The name of the author may not be used to endorse or promote products
    13       derived from this software without specific prior written permission.
    14 
    15 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
    16 ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
    17 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
    18 DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
    19 INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
    20 NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
    21 DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
    22 THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
    23 (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
    24 THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
     1            GNU GENERAL PUBLIC LICENSE
     2               Version 2, June 1991
     3
     4 Copyright (C) 1989, 1991 Free Software Foundation, Inc.
     5                          675 Mass Ave, Cambridge, MA 02139, USA
     6 Everyone is permitted to copy and distribute verbatim copies
     7 of this license document, but changing it is not allowed.
     8
     9                Preamble
     10
     11  The licenses for most software are designed to take away your
     12freedom to share and change it.  By contrast, the GNU General Public
     13License is intended to guarantee your freedom to share and change free
     14software--to make sure the software is free for all its users.  This
     15General Public License applies to most of the Free Software
     16Foundation's software and to any other program whose authors commit to
     17using it.  (Some other Free Software Foundation software is covered by
     18the GNU Library General Public License instead.)  You can apply it to
     19your programs, too.
     20
     21  When we speak of free software, we are referring to freedom, not
     22price.  Our General Public Licenses are designed to make sure that you
     23have the freedom to distribute copies of free software (and charge for
     24this service if you wish), that you receive source code or can get it
     25if you want it, that you can change the software or use pieces of it
     26in new free programs; and that you know you can do these things.
     27
     28  To protect your rights, we need to make restrictions that forbid
     29anyone to deny you these rights or to ask you to surrender the rights.
     30These restrictions translate to certain responsibilities for you if you
     31distribute copies of the software, or if you modify it.
     32
     33  For example, if you distribute copies of such a program, whether
     34gratis or for a fee, you must give the recipients all the rights that
     35you have.  You must make sure that they, too, receive or can get the
     36source code.  And you must show them these terms so they know their
     37rights.
     38
     39  We protect your rights with two steps: (1) copyright the software, and
     40(2) offer you this license which gives you legal permission to copy,
     41distribute and/or modify the software.
     42
     43  Also, for each author's protection and ours, we want to make certain
     44that everyone understands that there is no warranty for this free
     45software.  If the software is modified by someone else and passed on, we
     46want its recipients to know that what they have is not the original, so
     47that any problems introduced by others will not reflect on the original
     48authors' reputations.
     49
     50  Finally, any free program is threatened constantly by software
     51patents.  We wish to avoid the danger that redistributors of a free
     52program will individually obtain patent licenses, in effect making the
     53program proprietary.  To prevent this, we have made it clear that any
     54patent must be licensed for everyone's free use or not licensed at all.
     55
     56  The precise terms and conditions for copying, distribution and
     57modification follow.
     58
     59            GNU GENERAL PUBLIC LICENSE
     60   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
     61
     62  0. This License applies to any program or other work which contains
     63a notice placed by the copyright holder saying it may be distributed
     64under the terms of this General Public License.  The "Program", below,
     65refers to any such program or work, and a "work based on the Program"
     66means either the Program or any derivative work under copyright law:
     67that is to say, a work containing the Program or a portion of it,
     68either verbatim or with modifications and/or translated into another
     69language.  (Hereinafter, translation is included without limitation in
     70the term "modification".)  Each licensee is addressed as "you".
     71
     72Activities other than copying, distribution and modification are not
     73covered by this License; they are outside its scope.  The act of
     74running the Program is not restricted, and the output from the Program
     75is covered only if its contents constitute a work based on the
     76Program (independent of having been made by running the Program).
     77Whether that is true depends on what the Program does.
     78
     79  1. You may copy and distribute verbatim copies of the Program's
     80source code as you receive it, in any medium, provided that you
     81conspicuously and appropriately publish on each copy an appropriate
     82copyright notice and disclaimer of warranty; keep intact all the
     83notices that refer to this License and to the absence of any warranty;
     84and give any other recipients of the Program a copy of this License
     85along with the Program.
     86
     87You may charge a fee for the physical act of transferring a copy, and
     88you may at your option offer warranty protection in exchange for a fee.
     89
     90  2. You may modify your copy or copies of the Program or any portion
     91of it, thus forming a work based on the Program, and copy and
     92distribute such modifications or work under the terms of Section 1
     93above, provided that you also meet all of these conditions:
     94
     95    a) You must cause the modified files to carry prominent notices
     96    stating that you changed the files and the date of any change.
     97
     98    b) You must cause any work that you distribute or publish, that in
     99    whole or in part contains or is derived from the Program or any
     100    part thereof, to be licensed as a whole at no charge to all third
     101    parties under the terms of this License.
     102
     103    c) If the modified program normally reads commands interactively
     104    when run, you must cause it, when started running for such
     105    interactive use in the most ordinary way, to print or display an
     106    announcement including an appropriate copyright notice and a
     107    notice that there is no warranty (or else, saying that you provide
     108    a warranty) and that users may redistribute the program under
     109    these conditions, and telling the user how to view a copy of this
     110    License.  (Exception: if the Program itself is interactive but
     111    does not normally print such an announcement, your work based on
     112    the Program is not required to print an announcement.)
     113
     114These requirements apply to the modified work as a whole.  If
     115identifiable sections of that work are not derived from the Program,
     116and can be reasonably considered independent and separate works in
     117themselves, then this License, and its terms, do not apply to those
     118sections when you distribute them as separate works.  But when you
     119distribute the same sections as part of a whole which is a work based
     120on the Program, the distribution of the whole must be on the terms of
     121this License, whose permissions for other licensees extend to the
     122entire whole, and thus to each and every part regardless of who wrote it.
     123Thus, it is not the intent of this section to claim rights or contest
     124your rights to work written entirely by you; rather, the intent is to
     125exercise the right to control the distribution of derivative or
     126collective works based on the Program.
     127
     128In addition, mere aggregation of another work not based on the Program
     129with the Program (or with a work based on the Program) on a volume of
     130a storage or distribution medium does not bring the other work under
     131the scope of this License.
     132
     133  3. You may copy and distribute the Program (or a work based on it,
     134under Section 2) in object code or executable form under the terms of
     135Sections 1 and 2 above provided that you also do one of the following:
     136
     137    a) Accompany it with the complete corresponding machine-readable
     138    source code, which must be distributed under the terms of Sections
     139    1 and 2 above on a medium customarily used for software interchange; or,
     140
     141    b) Accompany it with a written offer, valid for at least three
     142    years, to give any third party, for a charge no more than your
     143    cost of physically performing source distribution, a complete
     144    machine-readable copy of the corresponding source code, to be
     145    distributed under the terms of Sections 1 and 2 above on a medium
     146    customarily used for software interchange; or,
     147
     148    c) Accompany it with the information you received as to the offer
     149    to distribute corresponding source code.  (This alternative is
     150    allowed only for noncommercial distribution and only if you
     151    received the program in object code or executable form with such
     152    an offer, in accord with Subsection b above.)
     153
     154The source code for a work means the preferred form of the work for
     155making modifications to it.  For an executable work, complete source
     156code means all the source code for all modules it contains, plus any
     157associated interface definition files, plus the scripts used to
     158control compilation and installation of the executable.  However, as a
     159special exception, the source code distributed need not include
     160anything that is normally distributed (in either source or binary
     161form) with the major components (compiler, kernel, and so on) of the
     162operating system on which the executable runs, unless that component
     163itself accompanies the executable.
     164
     165If distribution of executable or object code is made by offering
     166access to copy from a designated place, then offering equivalent
     167access to copy the source code from the same place counts as
     168distribution of the source code, even though third parties are not
     169compelled to copy the source along with the object code.
     170
     171  4. You may not copy, modify, sublicense, or distribute the Program
     172except as expressly provided under this License.  Any attempt
     173otherwise to copy, modify, sublicense or distribute the Program is
     174void, and will automatically terminate your rights under this License.
     175However, parties who have received copies, or rights, from you under
     176this License will not have their licenses terminated so long as such
     177parties remain in full compliance.
     178
     179  5. You are not required to accept this License, since you have not
     180signed it.  However, nothing else grants you permission to modify or
     181distribute the Program or its derivative works.  These actions are
     182prohibited by law if you do not accept this License.  Therefore, by
     183modifying or distributing the Program (or any work based on the
     184Program), you indicate your acceptance of this License to do so, and
     185all its terms and conditions for copying, distributing or modifying
     186the Program or works based on it.
     187
     188  6. Each time you redistribute the Program (or any work based on the
     189Program), the recipient automatically receives a license from the
     190original licensor to copy, distribute or modify the Program subject to
     191these terms and conditions.  You may not impose any further
     192restrictions on the recipients' exercise of the rights granted herein.
     193You are not responsible for enforcing compliance by third parties to
     194this License.
     195
     196  7. If, as a consequence of a court judgment or allegation of patent
     197infringement or for any other reason (not limited to patent issues),
     198conditions are imposed on you (whether by court order, agreement or
     199otherwise) that contradict the conditions of this License, they do not
     200excuse you from the conditions of this License.  If you cannot
     201distribute so as to satisfy simultaneously your obligations under this
     202License and any other pertinent obligations, then as a consequence you
     203may not distribute the Program at all.  For example, if a patent
     204license would not permit royalty-free redistribution of the Program by
     205all those who receive copies directly or indirectly through you, then
     206the only way you could satisfy both it and this License would be to
     207refrain entirely from distribution of the Program.
     208
     209If any portion of this section is held invalid or unenforceable under
     210any particular circumstance, the balance of the section is intended to
     211apply and the section as a whole is intended to apply in other
     212circumstances.
     213
     214It is not the purpose of this section to induce you to infringe any
     215patents or other property right claims or to contest validity of any
     216such claims; this section has the sole purpose of protecting the
     217integrity of the free software distribution system, which is
     218implemented by public license practices.  Many people have made
     219generous contributions to the wide range of software distributed
     220through that system in reliance on consistent application of that
     221system; it is up to the author/donor to decide if he or she is willing
     222to distribute software through any other system and a licensee cannot
     223impose that choice.
     224
     225This section is intended to make thoroughly clear what is believed to
     226be a consequence of the rest of this License.
     227
     228  8. If the distribution and/or use of the Program is restricted in
     229certain countries either by patents or by copyrighted interfaces, the
     230original copyright holder who places the Program under this License
     231may add an explicit geographical distribution limitation excluding
     232those countries, so that distribution is permitted only in or among
     233countries not thus excluded.  In such case, this License incorporates
     234the limitation as if written in the body of this License.
     235
     236  9. The Free Software Foundation may publish revised and/or new versions
     237of the General Public License from time to time.  Such new versions will
     238be similar in spirit to the present version, but may differ in detail to
     239address new problems or concerns.
     240
     241Each version is given a distinguishing version number.  If the Program
     242specifies a version number of this License which applies to it and "any
     243later version", you have the option of following the terms and conditions
     244either of that version or of any later version published by the Free
     245Software Foundation.  If the Program does not specify a version number of
     246this License, you may choose any version ever published by the Free Software
     247Foundation.
     248
     249  10. If you wish to incorporate parts of the Program into other free
     250programs whose distribution conditions are different, write to the author
     251to ask for permission.  For software which is copyrighted by the Free
     252Software Foundation, write to the Free Software Foundation; we sometimes
     253make exceptions for this.  Our decision will be guided by the two goals
     254of preserving the free status of all derivatives of our free software and
     255of promoting the sharing and reuse of software generally.
     256
     257                NO WARRANTY
     258
     259  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
     260FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN
     261OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
     262PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
     263OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
     264MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS
     265TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE
     266PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
     267REPAIR OR CORRECTION.
     268
     269  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
     270WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
     271REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
     272INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
     273OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
     274TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
     275YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
     276PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
     277POSSIBILITY OF SUCH DAMAGES.
     278
     279             END OF TERMS AND CONDITIONS
     280
  • quick-post-management/tags/0.0.6/readme.txt

    r407610 r794745  
    1 === Links2Tabs ===
     1=== Quick Post Management ===
     2
    23Contributors: Name.ly, Namely
    3 Donate link: http://links2tabs.com/
    4 Tags: frames, links, references, sites, windows
    5 Requires at least: 2.8
    6 Tested up to: 3.2
    7 Stable tag: 0.0.5
     4Donate link: http://name.ly/plugins/donations/
     5Tags: custom,customisation,customization,quick,instant,short,shortcut,shortcuts,link,links,author,page,pages,post,posts,admin,administration,administrator,edit,editor,change,open,publish,draft,private,password,protected,open,close,comment,comments,trackback,trackbacks,erase,erasing,trash,trashing,delete,deleting,force,convert,management,plugin,plugins,tool,tools,wpmu,wordpress,wp,mu,multi,multisite,multiuser,frontend,front-end
     6Requires at least: 3.0.0
     7Tested up to: 3.4.2
     8Stable tag: trunk
    89License: GPLv2 or later
    910
    10 Links2Tabs bundles references at the bottom of each post and/or page, allowing to open/check all of them with one single click.
    11 
    12 
     11QPM adds page/post management links for one-click actions as drafting, private/public, opening/closing comments/trackbacks, trashing/deleting, etc
    1312
    1413== Description ==
    1514
    16 [Links2Tabs](http://links2tabs.com/) plugin automatically generates the list of references at the bottom of each post and/or page and bundles them into handy links by Links2Tabs services that open all references with one click.
     15Quick Post Management adds the following links visible to editors at the top/bottom of every page/post enabling one-click quick shortcuts as:
    1716
    18 For installation please see the [corresponding section](http://wordpress.org/extend/plugins/links2tabs/installation/). It is as trivial as copying the plugin folder in your WordPress.
     17* Set as draft
     18* Set as private/public
     19* Close/open comments
     20* Close/open trackbacks
     21* Move to trash
     22* Force delete
     23* Convert into page/post
     24* Any number of other custom links
    1925
    20 To get the flavour of what the plugin actually does, see the [screenshots](http://wordpress.org/extend/plugins/links2tabs/screenshots/) and/or a [demo page](http://links2.me/links2tabs/?toc=ToC&title=Links2Tabs+-+What+a+great+tabbing+service!&description=References+1+-+5+for+Info&url1=http%3A%2F%2Fmany.at%2F&caption1=[1]+Many.at&url2=http%3A%2F%2Fbrief.ly%2F&caption2=[2]+Brief.ly&url3=http%3A%2F%2Flinks2.me%2F&caption3=[3]+Links2.Me&url4=http%3A%2F%2Flinks2tabs.com%2Fplugins%2Fwordpress%2F&caption4=[4]+Wordpress&url5=http%3A%2F%2Ffeed2tabs.com%2F&caption5=[5]+Feed2Tabs).
     26If you an editor or moderator on a big site and you often need quickly set post/page as draft or private, this plugin will come pretty handy. It will save you time, as many actions that did require several clicks and significant loading time will now be done with just one click.
    2127
    22 Once installed and activated, the plugin will work automatically. If you would like to fine-tune some bits, just go to the plugin's settings page (WP Admin -> Settings -> Links2Tabs).
     28For installation please see the [corresponding section](http://wordpress.org/extend/plugins/quick-post-management/installation/). It is as trivial as copying the plugin folder in your WordPress.
    2329
    24 The plugin offers the following options.
     30To get the flavour of what the plugin actually does, see the [screen shots](http://wordpress.org/extend/plugins/quick-post-management/screenshots/).
    2531
    26 = Parsing & Final Finish =
    27 
    28 * Show on posts
    29 * Show on pages
    30 * Skip double references (If several double references with the same URLs are found, the title of the first one will be used in the bundle.)
    31 * Include links with images (When set to No, references with images will be skipped)
    32 * Include internal links (Choose whether or not to bundle internal links, i.e., those referring to this site's domain).     
    33 * Add reference tags (the plugin can tag each recognised reference with its number.)
    34 * Link reference tags to the bundle (if "Add reference tags" above is `yes`, the plugin can link each added tag to the result in the page/post bottom.)
    35 * Links per bundle (Select how many references to bundle in one link.)
    36 * Minimum number of links (Set a threshold, so that if the number of references is less than specified, bundled links will not be shown.)
    37 * Text before one bundle (Text to appear before the link in case there is only one reference bundle.)
    38 * Text before many bundles (Text to appear before the links in case there are several bundles.)
    39 * Link target (Where to open the bundled references: new window will set it to `_blank`.)
    40 * Visibility (Who should be able to see the bundles? When set to Public - it will be visible to all visitors. When set to Private - to this site's admins only When set to Hidden - this will disable the reference bundling completely.)
    41 
    42 = Bundled Tabs =
    43 
    44 * Open references in tabs (Enables or disables automatic link opening in separate tabs. Please mind, that if ToC is set to off below, tabs will be enabled anyway.)
    45 * Default reference title (This caption will be used if no valid reference title is found; default is "Reference".)
    46 * Reference title format (How to format the reference titles into the tab captions. It is possible to use `%TITLE%` and `%REF_ID%`. N.B. These titles will be cut off if longer than 100 characters.)
    47 * Bundle Title (Title of the bundle to apprear on the ToC tab*.)
    48 * Bundle Description (Description of the bundle to apprear on the ToC tab*.)
    49 * Bundle Table of Contents (Caption of the ToC tab. Set to off to hide the ToC*.)
    50 
    51 = Advance Settings =
    52 
    53 * Custom API base URL (So that the advanced users have extra playground. It is possible to choose a predefined API base or provide own one**.)
    54 * Plugin Priority (For advanced WordPress users only: priority to use when hooking on `the_content` filter.)
    55 * Exclude URL keywords (URLs containing these keywords won't be included in the bundles.)
    56 
    57 Note 1: * - It is possible to use the following short codes to insert corresponding credentials in Title, Description, and ToC fields above:
    58 
    59 * `%BLOG_NAME%` - site title
    60 * `%BLOG_DESCRIPTION%` - site tagline
    61 * `%POST_TITLE%` - post title
    62 * `%REF_IDS%` - range of references included in the link bundle
    63 
    64 Note 2: ** - For those that want to configure custom API base and even map it on their own domain names, instructions can be found [here](http://name.ly/api/custom-api/).
    65 
    66 
     32Once installed and activated, the plugin back-end will be accessible via a separate menu in the admin panel (WP Admin -> Settings -> QPM / Quick Post Management).
    6733
    6834== Installation ==
     
    7036= As easy, as 1-2-3 =
    7137
    72 1. Upload `links2tabs` folder to the `/wp-content/plugins/` directory
     381. Upload `quick-post-management` folder to the `/wp-content/plugins/` directory
    73391. Activate the plugin through the 'Plugins' menu in WordPress
    74 1. Voila!
     401. Start using the quick management links, voila!
    7541
    7642= Usage =
    7743
    78 Activate the plugin. That's it!
    79 
    80 Advance settings can be accessed via WP Admin -> Settings -> Links2Tabs.
    81 
    82 Please see more details in the [Description](http://wordpress.org/extend/plugins/links2tabs/) section.
    83 
    84 
     44Activate the plugin. Settings can be accessed via WP Admin -> Settings -> QPM / Quick Post Management. The rest is done automatically.
    8545
    8646== Frequently Asked Questions ==
    8747
    88 = Some links in bundles escape the frames and jump to the sites directly. What can I do about it? =
     48= How can I change the way the added links look? =
    8949
    90 Some yet unknown and untested sites may escape from frames so you may wish to set option "Open references in tabs" to "No" in order to prevent them from breaking compilations.
     50You can define it via CSS of `qpm` class.
    9151
    92 Please also [report the link to us](http://links2tabs.com/about/contact/). We will make sure, you won't be bothered by it again.
     52E.g., add the following lines into your theme's `style.css`:
     53`.qpm {
     54    color: #000000;
     55}
     56.qpm a {
     57    color: #E60000;
     58    font-weight: bold;
     59    text-decoration:none;
     60}
     61.qpm a:active {
     62    text-decoration:underline;
     63}
     64.qpm a:hover {
     65    text-decoration:underline;
     66}
     67.qpm a:link {
     68    text-decoration:none;
     69}
     70.qpm a:visited {
     71    text-decoration:none;
     72}`
    9373
    94 = I would like to change styling and layout of the added references. How can I do it? =
     74= Why is email notification disabled? =
    9575
    96 The reference bundles are added within `<div id="links2tabs" class="links2tabs"> ... </div>` HTML structure. You can define any styling you like via your theme CSS by either referring to the element `#links2tabs` or class `.links2tabs`.
     76You will be able to notify post authors via the email in the coming versions of this plugin.
    9777
    98 
     78The functionality is not yet in the code.
    9979
    10080== Screenshots ==
    10181
    102 1. Settings page
    103 1. List of references added to the post with links
    104 1. All references opened with one click
    105 
    106 
     821. Admin page
     832. Post page
    10784
    10885== Changelog ==
    10986
     87= 0.0.6 =
     88
     89* Finished translation and added Spanish translation thanks to [Maria Ramos](http://webhostinghub.com/)
     90
    11091= 0.0.5 =
    11192
    112 * Added a new option of skipping double references.
     93* Fixed warning generated when WP_DEBUG is set to true
    11394
    11495= 0.0.4 =
    11596
    116 * By default, the plugin will now exclude mail and phone references.
    117 * Added a demo page to readme.txt.
     97* Added shortcode `[QuickPostManagement]` [requested by Eckstein](http://wordpress.org/support/topic/use-in-other-places-in-my-template).
    11898
    11999= 0.0.3 =
    120100
    121 * Added a new option of the plugin filter priority.
    122 * Changed the default value of the bundle size from 12 to 10 to make it more intuitive.
    123 * Changed the default value of the threshold links from 2 to 3 to make it more practical.
    124 * Added a new option allowing to black list some URLs by keyword.
     101* Fixed rare case when `current_user_can ( "editor" )` was returning `false`, even for site admins. That was noticed on some localised blogs. Special thank to Jean-Michel Meyer for the tips, help and patience.
    125102
    126103= 0.0.2 =
    127104
    128 * Support for WP prior to version 3.0.0 (before function get_site_url was introduced).
     105* Added options to enable custom links.
    129106
    130107= 0.0.1 =
     
    132109* Initial version.
    133110* Created and tested.
    134 
    135 
    136111
    137112== Upgrade Notice ==
     
    141116This is a great plugin, give it a try.
    142117
    143 
    144 
    145118== Translations ==
    146119
    147 * English - [Name.ly](http://name.ly/)
     120* English UK - [_Name.ly_](http://name.ly/)
     121* English US - [_Name.ly_](http://name.ly/)
     122* Spanish - [Maria Ramos](http://webhostinghub.com/)
     123* Russian - [Kreml.in](http://kreml.in/)
     124* Ukrainian - [Lviv.PRO](http://siohodni.com/)
    148125
    149 If you want to translate this plugin, please read [this](http://links2tabs.com/plugins/wordpress#translating).
     126If you want to translate this plugin, please [contact](http://name.ly/about/contact/) the _Name.ly_ team.
    150127
    151 
     128For quick translation, you can use [Quick Localization](http://wordpress.org/extend/plugins/quick-localization/) plugin.
    152129
    153130== Recommendations ==
    154131
    155 Check out the companion plugin: [Feed2Tabs](http://wordpress.org/extend/plugins/feed2tabs/).
     132Check out our other cool and practical plugins:
    156133
    157 They go well together like coffee and doughnuts!
    158 
    159 
     134* [Feed2Tabs](http://wordpress.org/extend/plugins/feed2tabs/)
     135* [Links2Tabs](http://wordpress.org/extend/plugins/links2tabs/)
     136* [Quick Localization](http://wordpress.org/extend/plugins/quick-localization/)
    160137
    161138== About Name.ly ==
    162139
    163 Name.ly offers your WordPress blogs and many other services allowing to consolidate multiple sites, pages and profiles.
     140_Name.ly_ offers WordPress blogs and many other services allowing to consolidate multiple sites, pages and profiles.
    164141
    165 All on catchy domain names, like sincere.ly, thatis.me, of-cour.se, ...
     142All on catchy domain names, like many.at, brief.ly, sincere.ly, links2.me, thatis.me, of-cour.se, ... and hundreds more.
    166143
     144_Name.ly/PRO_ platform allows domain name owners to run similar sites under their own brand.
    167145
    168 
     146[_Name.ly/PRO_](http://namely.pro/) is most known for being first WordPress driven product allowing reselling emails and sub-domains.
Note: See TracChangeset for help on using the changeset viewer.