=== Read and Understood === Contributors: petermantos Requires at least: 3.0 Stable tag: 1.4 Tested up to: 4.0 License: GPLv2 or later License URI: http://www.gnu.org/licenses/gpl-2.0.html Tags: Acknowledgement, Accountability, Mantos, Acknowledge, Read, Understood, Understand, Memo == Upgrade Notice == In response to a support request for a list of people who have NOT acknowledged posts in a specified time frame, the format of the export file has changed. In addition to displaying each post acknowledged in a separate column, the administrator may specify an "All Users" option which will show each user in a row whether or not that user acknowledged any of the posts. For backward compatibility, the old format will also remain available for a year. == Screenshots == 1. The Read and Understood administration settings screen. 2. The Read and Understood button at the end of a posting 3. Example of exported CSV file opened in eXcel == Description == Read-and-Understood is a solution to the "I didn't get the memo" problem. The Read and Understood (RnU) WordPress plugin offers readers the opportunity to record an acknowledgement that they have read a specific posting. You can visit us at: One common use of RnU is by employers to record that employees have read postings in a specific, private category such as 'internal' which may only be seen by authorized, logged-in users. By doing so, the employee may assume responsibility for understanding the content and following any instructions, procedures, or policies contained in it. These acknowledgements may then be accessed by administrators via a CSV file containing records created in a given date range. The records are exported using an Export button on the plugin's setting page. In addition to exportation, the records are accessible through any technique used to access a typical MySql database such as PHPadmin, linked tables, or custom programming. The acknowledgements may also be purged (deleted) using the PURGE button also found on the plugin's setting page. Optionally, the plugin may be configured to accept acknowledgements from users who are not logged-in. In that case, the user may enter any username desired provided that it meets an administrator specified format as defined by a regular expression. The default format for such usernames, if allowed, is 1-10 capital letters. An Export file is a comma-separated value (CSV) text file which is generated from the administrative Settings Page. There is header column that contains the post_title of any acknowledgements found within the specified date range. Each row contains the RNU_USERNAME which may represent: 1) The WP username of the logged in reader who made one or more acknowledgments 2) If so configured, the username entered by a person who is NOT logged in 3) If "all Users" is checked to export, the WP username with no acknowledgements Each row contains the RNU_USER_ID which may represent: 1) The user_id of the logged-in user who acknowledged the posting(s) 2) A zero "0", signifying that no person was logged in when the post was acknowledged 3) If empty, null, or blank; it means that the user did not acknowledge any postings within the specified date range. Also in each row, there may be a date/time in a cell in a column headed by a post_title. That date/time corresponds to when the user (row) acknowledged that post (column). Note that username may NOT necessarily correspond to a unique user and may be repeated. In fact, if so configured, a person who is not logged in may enter the username of any person. For this reason, the User_id is also given in each row; which, if zero, means that the acknowledgment was made by a person not logged in who entered that username. == Installation == 1. Upload the plugin read-and-understood files to the `/wp-content/plugins/` directory 2. Activate the read-and-understood plugin through the 'Plugins' menu in WordPress. 3. Configure: Use the Settings link on the WP Admin page and look for the Read and Understood menu a. Choose a category. Only posts with this category may be acknowledged. b. Optionally allow users to acknowledged postings in that category without having a login If you chose that option, you may also restrict the format of the usernames If you know what a regular expression is, you may configure your own format for usernames The default allows for a 1 to 10 character username using capital letters only. == Frequently Asked Questions == = Does RnU work with custom post types? = No, it does not. At the heart of RNU, there is a function called append_post_notification and there is a line in there that says "if($post->post_type == 'post') {" The intent is so that the Read-and-understood button doesn't show up on "regular" pages of the web site. Otherwise, visitors to the website might see the Read-and-Understood acknowledgement button on every page. The post types are: Post (Post Type: 'post') Page (Post Type: 'page') Attachment (Post Type: 'attachment') Revision (Post Type: 'revision') Navigation menu (Post Type: 'nav_menu_item') The program logic could be changed to be something of the nature of "is anything but (the 4 other types)", in which case, the RnU acknowledgment button would appear on pages of custom post types. However, there may be people who are using the plugin who take advantage of the fact that the RnU button shows up only on posts of type 'post' and that it does NOT show up on custom post types. Any enhancement along these lines would want to make the post-types user-selectable. = Are there any known issues? = Sometimes, using Chrome and perhaps in other browsers, the header row of the CSV file appears blank when automatically opened using Microsoft eXcel 2010. Hitting export again shows the download with the headers. == Changelog == = 1.4 = * Changed format of exported CSV file. It now has one column per post. * Optionally, allows export of CSV in "old" format (option to be retired 11/1/2015) * Puts date/time in cell if the user name (row) has read the post (column). * Optionally, exports WordPress Users even if they had not acknowledged a post in the time frame. * Reordered functions, leaning towards alphabetical. = 1.3 = * Looks for POST table using WPDB prefix, rather than assumed "wp_" (thanks to jwbowers for reporting this) * Also, uninstall.php is now used. = 1.2 = * Corrected instance of _( with __( as reported in Support forum = 1.1 = * Corrected display of number of records to be purged on confirmation button * Corrected number of records purged message * Replaced incomplete copy of jquery.js with 1.7.2 * Turned off WP_DEBUG for production. * Created css/images to house jquery-ui images * Moved rnu_uninstall outside of class * Exploits, but does not require JavaScript. * Moved JavaScript to external file in /js folder * First draft of test plan included in /test folder * Ready for Translation, including JavaScript files = 1.0 = * Corrected the description of the login required checkbox by removing "not" * Placed many more string literals in __(...) for future translation = 0.2 = * Removed remote reference to jquery-ui.css and included local copy