Skip to content

Commit

Permalink
Support to create notes in modules inner pages separated
Browse files Browse the repository at this point in the history
  • Loading branch information
vasanthlmsace committed Aug 28, 2021
1 parent fdf10ba commit 3883481
Show file tree
Hide file tree
Showing 13 changed files with 56 additions and 36 deletions.
4 changes: 3 additions & 1 deletion ltool/bookmarks/classes/bookmarkstool_filter.php
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,9 @@ public function get_course_selector($selectcourse, $usercondition, $userparams)
foreach ($records as $record) {
$instanceblock = check_instanceof_block($record);
if (isset($instanceblock->instance) && $instanceblock->instance == 'course' || $instanceblock->instance == 'mod') {
$courses[] = $instanceblock->courseid;
if ($instanceblock->courseid > 1) {
$courses[] = $instanceblock->courseid;
}
}
}
}
Expand Down
2 changes: 1 addition & 1 deletion ltool/bookmarks/version.php
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@
defined('MOODLE_INTERNAL') || die();

$plugin->component = 'ltool_bookmarks';
$plugin->version = 2021082600;
$plugin->version = 2021082800;
$plugin->requires = 2020061501;


2 changes: 1 addition & 1 deletion ltool/note/amd/build/learningnote.min.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion ltool/note/amd/build/learningnote.min.js.map

Large diffs are not rendered by default.

12 changes: 5 additions & 7 deletions ltool/note/amd/src/learningnote.js
Original file line number Diff line number Diff line change
Expand Up @@ -104,22 +104,20 @@ define(['jquery', 'core/modal_factory', 'core/str', 'core/fragment', 'core/modal
modal.getRoot().on(ModalEvents.save, function(e) {

e.preventDefault();
submitForm(modal);
submitFormData(modal, contextid, params);
modal.getRoot().submit();
});

document.querySelector("#popout-action").addEventListener('click', function() {
var pageurlobj = params.pageurl.split("&");
var pageurljson = JSON.stringify(pageurlobj);
var url = M.cfg.wwwroot+"/local/learningtools/ltool/note/pop_out.php?contextid="+
params.contextid+"&pagetype="+params.pagetype+"&contextlevel="+params.contextlevel+
"&course="+params.course+"&user="+params.user+"&pageurl="+params.pageurl+"&pagetitle="+params.pagetitle
"&course="+params.course+"&user="+params.user+"&pageurl="+pageurljson+"&pagetitle="+params.pagetitle
+"&heading="+params.heading;
modal.hide();
window.open(url, '_blank');
});

document.body.onsubmit = function (e) {
e.preventDefault();
submitFormData(modal, contextid, params)
};
});
});

Expand Down
2 changes: 2 additions & 0 deletions ltool/note/classes/note.php
Original file line number Diff line number Diff line change
Expand Up @@ -63,11 +63,13 @@ public function get_tool_icon() {
public function get_tool_records() {
global $DB, $PAGE, $USER, $CFG;
require_once($CFG->dirroot.'/local/learningtools/ltool/note/lib.php');

$args = [];
$data = [];
$args['contextid'] = $PAGE->context->id;
$args['pagetype'] = $PAGE->pagetype;
$args['user'] = $USER->id;
$args['pageurl'] = $PAGE->url->out(false);
$data = [];
$data['name'] = $this->get_tool_name();
$data['icon'] = $this->get_tool_icon();
Expand Down
9 changes: 5 additions & 4 deletions ltool/note/classes/notetool_filter.php
Original file line number Diff line number Diff line change
Expand Up @@ -115,7 +115,9 @@ public function get_course_selector() {
foreach ($records as $record) {
$instanceblock = check_instanceof_block($record);
if (isset($instanceblock->instance) && $instanceblock->instance == 'course' || $instanceblock->instance == 'mod') {
$courses[] = $instanceblock->courseid;
if ($instanceblock->courseid > 1) {
$courses[] = $instanceblock->courseid;
}
}
}
}
Expand Down Expand Up @@ -149,9 +151,8 @@ public function get_activity_selector() {
$usercondition = $this->get_user_sql($this->courseid, $this->childid);
$usersql = $usercondition['sql'];
$userparams = $usercondition['params'];

$sql = "SELECT * FROM {learningtools_note}
WHERE $usersql AND course = :course AND coursemodule != 0 GROUP BY coursemodule";
$sql = "SELECT coursemodule, course FROM {learningtools_note}
WHERE $usersql AND course = :course AND coursemodule != 0 GROUP BY coursemodule, course";
$params = [
'course' => $this->selectcourse,
];
Expand Down
14 changes: 9 additions & 5 deletions ltool/note/lib.php
Original file line number Diff line number Diff line change
Expand Up @@ -274,9 +274,13 @@ function get_contextuser_notes($args) {
$template = [];
$listrecords = [];
$sql = "SELECT * FROM {learningtools_note}
WHERE userid = :userid AND contextid = :contextid ORDER BY timecreated DESC";
WHERE userid = :userid AND contextid = :contextid AND pageurl= :pageurl ORDER BY timecreated DESC";

$params = ['userid' => $args['user'], 'contextid' => $args['contextid']];
$params = [
'userid' => $args['user'],
'contextid' => $args['contextid'],
'pageurl' => $args['pageurl']
];
$records = $DB->get_records_sql($sql, $params);
$cnt = 1;
if (!empty($records)) {
Expand Down Expand Up @@ -359,8 +363,8 @@ function user_save_notes($contextid, $data) {
]
]);
$event->trigger();
$pageusernotes = $DB->count_records('learningtools_note', array('contextid' =>
$contextid, 'pagetype' => $data['pagetype'], 'userid' => $data['user']));
$pageusernotes = $DB->count_records('learningtools_note', array('pageurl' =>
$data['pageurl'], 'pagetype' => $data['pagetype'], 'userid' => $data['user']));
return $pageusernotes;
}
}
Expand Down Expand Up @@ -437,7 +441,7 @@ function require_deletenote_cap($id) {
*/
function get_userpage_countnotes($args) {
global $DB;
return $DB->count_records('learningtools_note', array('contextid' => $args['contextid'],
return $DB->count_records('learningtools_note', array('pageurl' => $args['pageurl'],
'pagetype' => $args['pagetype'], 'userid' => $args['user']));

}
Expand Down
20 changes: 16 additions & 4 deletions ltool/note/pop_out.php
Original file line number Diff line number Diff line change
Expand Up @@ -33,9 +33,24 @@
$user = optional_param('user', 0, PARAM_INT);
$contextlevel = optional_param('contextlevel', 0, PARAM_INT);
$pagetype = optional_param('pagetype', '', PARAM_TEXT);
$pageurl = optional_param('pageurl', '', PARAM_RAW);
$urlparams = optional_param('pageurl', '', PARAM_RAW);
$pagetitle = optional_param('pagetitle', '', PARAM_TEXT);
$pageheading = optional_param('heading' , '', PARAM_TEXT);
$jsonurlparams = json_decode($urlparams);

if (is_array($jsonurlparams)) {
$pageurl = '';
$cnt = 1;
foreach ($jsonurlparams as $urlparam) {
if ($cnt > 1) {
$pageurl .= '&';
}
$pageurl .= $urlparam;
$cnt++;
}
} else {
$pageurl = $urlparams;
}

$params = [];
$params['contextid'] = $contextid;
Expand All @@ -47,9 +62,7 @@
$params['pagetitle'] = $pagetitle;
$params['pageheading'] = $pageheading;


list($context, $course, $cm) = get_context_info_array($contextid);

$url = new moodle_url('/local/learningtools/ltool/note/pop_out.php');
$pagetitle = !empty($pagetitle) ? $pagetitle : $SITE->shortname;
$pageheading = !empty($pageheading) ? $pageheading : $SITE->fullname;
Expand All @@ -70,7 +83,6 @@

if ($contextid && $courseid && $user && $contextlevel
&& $pagetype && $pageurl) {

$params['popoutaction'] = true;
$actionurl = $url->out(false);
$mform = new editorform($actionurl, $params);
Expand Down
18 changes: 9 additions & 9 deletions ltool/note/styles.css
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
.path-local-learningtools-ltool-note .top-block > div:last-child {
display: inline-block;
}
.path-local-learningtools-ltool-note .top-block > div.ltnote-coursefilter {
.path-local-learningtools-ltool-note .top-block > div.ltbookmarks-coursefilter {
text-align: left;
float: none;
display: block;
Expand Down Expand Up @@ -108,7 +108,6 @@
}
.ltnotes-mainbody .card .card-body .content-block .title-block {
text-align: right;
margin-bottom: 15px;
}
.ltnotes-mainbody .card .card-body .content-block .title-block h4 {
font-size: 15px;
Expand Down Expand Up @@ -212,18 +211,14 @@
.learningtool-note .modal .modal-body .list-context-existnotes .usernotes-mainbody .card .collapsing .card-body:last-child {
border-bottom: 0;
}
.learningtool-note .modal .modal-body .list-context-existnotes .usernotes-mainbody .card .collapse .content-block .desc-block,
.learningtool-note .modal .modal-body .list-context-existnotes .usernotes-mainbody .card .collapsing .content-block .desc-block {
width: 70%;
display: inline-block;
}

.learningtool-note .modal .modal-body .list-context-existnotes .usernotes-mainbody .card .collapse .content-block .title-block,
.learningtool-note .modal .modal-body .list-context-existnotes .usernotes-mainbody .card .collapsing .content-block .title-block {
float: right;
}
.learningtool-note .modal .modal-body .list-context-existnotes .usernotes-mainbody .card .collapse .content-block .action-block,
.learningtool-note .modal .modal-body .list-context-existnotes .usernotes-mainbody .card .collapsing .content-block .action-block {
float: right;
text-align: right;
margin-left: 10px;
}
.learningtool-note .modal .modal-body .usernotes-mainbody .card .collapse .content-block .action-block .edit-action,
Expand All @@ -234,6 +229,10 @@
.learningtool-note .modal .modal-body .usernotes-mainbody .card .collapsing .content-block .action-block .delete-action {
display: inline-block;
}
.learningtool-note .modal .modal-body .list-context-existnotes .usernotes-mainbody .card .collapse .content-block .desc-block,
.learningtool-note .modal .modal-body .list-context-existnotes .usernotes-mainbody .card .collapsing .content-block .desc-block {
margin-top: 15px;
}
.learningtool-note .modal .modal-body .usernotes-mainbody .card .collapse .content-block .desc-block p:empty,
.learningtool-note .modal .modal-body .usernotes-mainbody .card .collapsing .content-block .desc-block p:empty {
display: none;
Expand Down Expand Up @@ -269,4 +268,5 @@

#page-local-learningtools-ltool-note-editlist .mform {
margin-top: 2rem;
}
}

3 changes: 2 additions & 1 deletion ltool/note/tests/lib_test.php
Original file line number Diff line number Diff line change
Expand Up @@ -96,7 +96,8 @@ public function test_note_count(): void {
$args = [
'contextid' => $data['contextid'],
'pagetype' => $data['pagetype'],
'user' => $data['user']
'user' => $data['user'],
'pageurl' => $data['pageurl']
];
$count = get_userpage_countnotes($args);
$this->assertEquals(2, $count);
Expand Down
2 changes: 1 addition & 1 deletion ltool/note/version.php
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,6 @@
defined('MOODLE_INTERNAL') || die();

$plugin->component = 'ltool_note';
$plugin->version = 2021082600;
$plugin->version = 2021082800;
$plugin->requires = 2020061501;

2 changes: 1 addition & 1 deletion version.php
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@
defined('MOODLE_INTERNAL') || die();

$plugin->component = 'local_learningtools';
$plugin->version = 2021082501;
$plugin->version = 2021082800;
$plugin->release = 'v1.0';
$plugin->requires = 2020061501;
$plugin->maturity = MATURITY_STABLE;

0 comments on commit 3883481

Please sign in to comment.