Read and Understood

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: https://mantos.com

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) The user_id of person who acknowledged NO postings (and t.he ALL USERS option was selected)

Each row may contain an email address which corresponds to the non-zero RNU_USER_ID, regardless
of wether any acknowledgments were made.

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.

Screenshots

Installation

  1. Install Plugin by one of three methods:
    a. If using a multisite, install plugin from dashboard using MySites=>NetworkAdmin=>Plugins
    and select ADDNEW. Otherwise, from dashboard select Plugins=>AddNew.
    b. In the SEARCH PLUGIN box in the upper right, enter READ AND UNDERSTOOD and press enter.
    c. Select the READ AND UNDERSTOOD plugin by Mantos I.T. COnsulting, Inc, press INSTALL NOW.
    d. Alternative to above steps: Download the plugin from any trusted site, extract if in ZIP format,
    and 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. Optionally choose categories. Posts in any of the selected categories may be acknowledged
    and the READ AND UNDERSTOOD button will appear at the end of the post. Use the CTRL-click
    to slect and deselect categories.
    b. Optionally add the [rnu_ack] shortcode into any posts that are to be acknowledged that or not
    in any categories selected above. The READ AND UNDERSTOOD button will appear wherever the
    shortcode was placed. NOTE: If a shortcode is placed in a post which is also of a slected
    category, more than one READ AND UNDERSTOOD button will appear in that post.
    c. 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.

FAQ

Installation Instructions
  1. Install Plugin by one of three methods:
    a. If using a multisite, install plugin from dashboard using MySites=>NetworkAdmin=>Plugins
    and select ADDNEW. Otherwise, from dashboard select Plugins=>AddNew.
    b. In the SEARCH PLUGIN box in the upper right, enter READ AND UNDERSTOOD and press enter.
    c. Select the READ AND UNDERSTOOD plugin by Mantos I.T. COnsulting, Inc, press INSTALL NOW.
    d. Alternative to above steps: Download the plugin from any trusted site, extract if in ZIP format,
    and 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. Optionally choose categories. Posts in any of the selected categories may be acknowledged
    and the READ AND UNDERSTOOD button will appear at the end of the post. Use the CTRL-click
    to slect and deselect categories.
    b. Optionally add the [rnu_ack] shortcode into any posts that are to be acknowledged that or not
    in any categories selected above. The READ AND UNDERSTOOD button will appear wherever the
    shortcode was placed. NOTE: If a shortcode is placed in a post which is also of a slected
    category, more than one READ AND UNDERSTOOD button will appear in that post.
    c. 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.
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.

Reviews

Needs more work

This plugin would be great, but I feel its half finished if that. Lacks a lot of features that would make this plugin usable.

Read all 5 reviews

Contributors & Developers

“Read and Understood” is open source software. The following people have contributed to this plugin.

Contributors

Translate “Read and Understood” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.

Changelog

2.1

  • Now works on WordPress multisites.
  • Respects [rnu_ack] shortcode even if category doesn’t match. (corrects an error).

2.0

  • Corrects previous attempt to change length of id field of rnu_acknowledgment table reported by davidpalmer0205.

1.9

  • Attempts to mitigate an error whereby users of the plugin using a version earlier than V1.7 may have
  • had lost their category selections. Please go into Settings => Read and Understood from your WP-Admin page
  • and ensure that the categories that you what acknowleged are in fact selected.

1.8

  • Respects [rnu_ack] shortcode. Add this shortcode to any post to include the READ AND UNDERSTOOD button at that place in the post.
  • Note that that is in ADDITION to whether or not the post is of a category selected for inclusion from the admin page, in which case,
  • the button will appear at the end of the post. If you include the shortcode in a post for such a category, the button will appear
  • wherever the shortcode has been added as well as at the end of the post.
  • Corrected textdomain to read-and-understood-locale.

1.7

  • Added suggested security of checking for ABSPATH
  • Allows no categories or multiple categories to be selected for acknowledgements. (arnold-fungai )

1.6

  • Added functionality originally intended for Version 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.5

  • Temporarily backs out Version 1.4
  • Created new version to do so in case authorse had automatically upgraded to broken V 1.4

1.4

  • Broken: Users reported “Headers already sent …” error
  • 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