'maxbytes', 'maxattachments', 'forcesubscribe', 'trackingtype',
'rsstype', 'rssarticles', 'timemodified', 'warnafter',
'blockafter', 'blockperiod', 'completiondiscussions', 'completionreplies',
- 'completionposts'));
+ 'completionposts', 'displaywordcount'));
$discussions = new backup_nested_element('discussions');
<?xml version="1.0" encoding="UTF-8" ?>
-<XMLDB PATH="mod/forum/db" VERSION="20120122" COMMENT="XMLDB file for Moodle mod/forum"
+<XMLDB PATH="mod/forum/db" VERSION="20130205" COMMENT="XMLDB file for Moodle mod/forum"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="../../../lib/xmldb/xmldb.xsd"
>
<FIELD NAME="completiondiscussions" TYPE="int" LENGTH="9" NOTNULL="true" DEFAULT="0" SEQUENCE="false" COMMENT="Nonzero if a certain number of posts are required to mark this forum completed for a user."/>
<FIELD NAME="completionreplies" TYPE="int" LENGTH="9" NOTNULL="true" DEFAULT="0" SEQUENCE="false" COMMENT="Nonzero if a certain number of replies are required to mark this forum complete for a user."/>
<FIELD NAME="completionposts" TYPE="int" LENGTH="9" NOTNULL="true" DEFAULT="0" SEQUENCE="false" COMMENT="Nonzero if a certain number of posts or replies (total) are required to mark this forum complete for a user."/>
+ <FIELD NAME="displaywordcount" TYPE="int" LENGTH="1" NOTNULL="true" DEFAULT="0" SEQUENCE="false"/>
</FIELDS>
<KEYS>
<KEY NAME="primary" TYPE="primary" FIELDS="id"/>
function xmldb_forum_upgrade($oldversion) {
global $CFG, $DB, $OUTPUT;
- $dbman = $DB->get_manager(); // loads ddl manager and xmldb classes
+ $dbman = $DB->get_manager(); // Loads ddl manager and xmldb classes.
+ // Moodle v2.2.0 release upgrade line.
+ // Put any upgrade step following this.
- // Moodle v2.2.0 release upgrade line
- // Put any upgrade step following this
+ // Moodle v2.3.0 release upgrade line.
+ // Put any upgrade step following this.
- // Moodle v2.3.0 release upgrade line
- // Put any upgrade step following this
+ // Moodle v2.4.0 release upgrade line.
+ // Put any upgrade step following this.
+ // Moodle v2.5.0 release upgrade line.
+ // Put any upgrade step following this.
+ if ($oldversion < 2013020500) {
- // Moodle v2.4.0 release upgrade line
- // Put any upgrade step following this
+ // Define field displaywordcount to be added to forum.
+ $table = new xmldb_table('forum');
+ $field = new xmldb_field('displaywordcount', XMLDB_TYPE_INTEGER, '1', null, XMLDB_NOTNULL, null, '0', 'completionposts');
+ // Conditionally launch add field displaywordcount.
+ if (!$dbman->field_exists($table, $field)) {
+ $dbman->add_field($table, $field);
+ }
+
+ // Forum savepoint reached.
+ upgrade_mod_savepoint(true, 2013020500, 'forum');
+ }
return true;
}
$string['displayperiod'] = 'Display period';
$string['displaystart'] = 'Display start';
$string['displaystart_help'] = 'This setting specifies whether a forum post should be displayed from a certain date. Note that administrators can always view forum posts.';
+$string['displaywordcount'] = 'Display word count';
+$string['displaywordcount_help'] = 'This setting specifies whether the word count of each post should be displayed or not.';
$string['eachuserforum'] = 'Each person posts one discussion';
$string['edit'] = 'Edit';
$string['editedby'] = 'Edited by {$a->name} - original submission {$a->date}';
$postclass = 'shortenedpost';
$postcontent = format_text(forum_shorten_post($post->message), $post->messageformat, $options, $course->id);
$postcontent .= html_writer::link($discussionlink, get_string('readtherest', 'forum'));
- $postcontent .= html_writer::tag('span', '('.get_string('numwords', 'moodle', count_words(strip_tags($post->message))).')...', array('class'=>'post-word-count'));
+ $postcontent .= html_writer::tag('div', '('.get_string('numwords', 'moodle', count_words($post->message)).')',
+ array('class'=>'post-word-count'));
} else {
// Prepare whole post
$postclass = 'fullpost';
if (!empty($highlight)) {
$postcontent = highlight($highlight, $postcontent);
}
+ if (!empty($forum->displaywordcount)) {
+ $postcontent .= html_writer::tag('div', get_string('numwords', 'moodle', count_words($post->message)),
+ array('class'=>'post-word-count'));
+ }
$postcontent .= html_writer::tag('div', $attachedimages, array('class'=>'attachedimages'));
}
+
// Output the post content
$output .= html_writer::tag('div', $postcontent, array('class'=>'posting '.$postclass));
$output .= html_writer::end_tag('div'); // Content
$mform->addHelpButton('maxattachments', 'maxattachments', 'forum');
$mform->setDefault('maxattachments', $CFG->forum_maxattachments);
+ $mform->addElement('selectyesno', 'displaywordcount', get_string('displaywordcount', 'forum'));
+ $mform->addHelpButton('displaywordcount', 'displaywordcount', 'forum');
+ $mform->setDefault('displaywordcount', 0);
+ $mform->setAdvanced('displaywordcount');
+
if ($CFG->enablerssfeeds && isset($CFG->forum_enablerssfeeds) && $CFG->forum_enablerssfeeds) {
//-------------------------------------------------------------------------------
$mform->addElement('header', '', get_string('rss'));
* div.left
* div.options
* div.commands
+ * div.post-word-count
* div.forum-post-rating
* div.link
* div.footer
.forumpost .options .forum-post-rating {float:left;}
.forumpost .content .posting {overflow:auto;max-width:100%;}
.forumpost .content .attachedimages img {max-width:100%;}
+.forumpost .post-word-count { font-size: .85em; font-style: italic; }
+.forumpost .shortenedpost .post-word-count { display: inline; padding: 0 .3em; }
.dir-rtl .forumpost .row .topic,
.dir-rtl .forumpost .row .content-mask,
defined('MOODLE_INTERNAL') || die();
-$module->version = 2012112902; // The current module version (Date: YYYYMMDDXX)
-$module->requires = 2012112900; // Requires this Moodle version
+$module->version = 2013020500; // The current module version (Date: YYYYMMDDXX)
+$module->requires = 2012112900; // Requires this Moodle version
$module->component = 'mod_forum'; // Full name of the plugin (used for diagnostics)
$module->cron = 60;
padding-right: 10px;
}
.forumpost .content .shortenedpost a,
-.forumpost .content .shortenedpost span.post-word-count,
+.forumpost .content .post-word-count,
.forumpost .commands,
.forumpost .topic .author,
.forumpost .options .link {
#adminsettings .form-buttons {
margin: 0;
text-align: center;
-}
\ No newline at end of file
+}
.forumpost.firstpost .row.header {background-color:#DDD;}
.forumpost .topic .author {font-size: 0.8em;padding:4px;}
.forumpost .topic .subject {font-weight: bold;padding:4px 4px 0;}
-.forumpost .content div,
-.forumpost .options div {padding:4px;}
+.forumpost .content > div,
+.forumpost .options > div {padding:4px;}
.forumpost.unread {background: #9EBEFF;}
.forumpost.unread .content {border:2px solid #0046C7;} /** inside border of unread posts in nested format in */
.forumpost .comment-ctrl,
defined('MOODLE_INTERNAL') || die();
-$version = 2013020800.00; // YYYYMMDD = weekly release date of this DEV branch
+$version = 2013020800.01; // YYYYMMDD = weekly release date of this DEV branch
// RR = release increments - 00 in DEV branches
// .XX = incremental changes