From a6943ebb59503669872dd8671f01895850333a06 Mon Sep 17 00:00:00 2001 From: Damyon Wiese Date: Tue, 7 Nov 2017 14:35:50 +0800 Subject: [PATCH] MDL-59758 core_user: Pluralise bulk actions Don't say 1 people. --- lang/en/message.php | 4 ++- lang/en/notes.php | 2 ++ notes/tests/behat/participants_notes.feature | 6 ++-- user/amd/build/participants.min.js | 2 +- user/amd/src/participants.js | 31 ++++++++++++++++---- 5 files changed, 34 insertions(+), 11 deletions(-) diff --git a/lang/en/message.php b/lang/en/message.php index ab3e90dbeb5..91eac4707d9 100644 --- a/lang/en/message.php +++ b/lang/en/message.php @@ -112,7 +112,9 @@ $string['sendingvia'] = 'Sending "{$a->provider}" via "{$a->processor}"'; $string['sendingviawhen'] = 'Sending "{$a->provider}" via "{$a->processor}" when {$a->state}'; $string['sendmessage'] = 'Send message'; $string['sendbulkmessage'] = 'Send message to {$a} people'; -$string['sendbulkmessagesent'] = 'Message sent to {$a} people.'; +$string['sendbulkmessagesingle'] = 'Send message to 1 person'; +$string['sendbulkmessagesent'] = 'Message sent to {$a} people'; +$string['sendbulkmessagesentsingle'] = 'Message sent to 1 person'; $string['sendmessageto'] = 'Send message to {$a}'; $string['sendmessagetopopup'] = 'Send message to {$a} - new window'; $string['settings'] = 'Settings'; diff --git a/lang/en/notes.php b/lang/en/notes.php index efc196c1532..c2b388dedff 100644 --- a/lang/en/notes.php +++ b/lang/en/notes.php @@ -25,7 +25,9 @@ $string['addnewnote'] = 'Add a new note'; $string['addbulknote'] = 'Add a new note to {$a} people'; +$string['addbulknotesingle'] = 'Add a new note to 1 person'; $string['addbulknotedone'] = 'Note added to {$a} people'; +$string['addbulknotedonesingle'] = 'Note added to 1 person'; $string['addnewnoteselect'] = 'Select users to write notes about'; $string['bynameondate'] = 'by {$a->name} - {$a->date}'; $string['configenablenotes'] = 'Enable storing of notes about individual users.'; diff --git a/notes/tests/behat/participants_notes.feature b/notes/tests/behat/participants_notes.feature index a2df67154be..58f7c2a0f2d 100644 --- a/notes/tests/behat/participants_notes.feature +++ b/notes/tests/behat/participants_notes.feature @@ -36,17 +36,17 @@ Feature: Add notes to course participants And I set the field with xpath "//tr[contains(normalize-space(.), 'Student 1')]//input[@type='checkbox']" to "1" And I choose "Add a new note" from the participants page bulk action menu And I set the field "bulk-note" to "Student 1 needs to pick up his game" - And I press "Add a new note to 1 people" + And I press "Add a new note to 1 person" And I set the field with xpath "//tr[contains(normalize-space(.), 'Student 1')]//input[@type='checkbox']" to "0" And I set the field with xpath "//tr[contains(normalize-space(.), 'Student 2')]//input[@type='checkbox']" to "1" And I choose "Add a new note" from the participants page bulk action menu And I set the field "bulk-note" to "" - And I press "Add a new note to 1 people" + And I press "Add a new note to 1 person" And I set the field with xpath "//tr[contains(normalize-space(.), 'Student 2')]//input[@type='checkbox']" to "0" And I set the field with xpath "//tr[contains(normalize-space(.), 'Student 3')]//input[@type='checkbox']" to "1" And I choose "Add a new note" from the participants page bulk action menu And I set the field "bulk-note" to " " - And I press "Add a new note to 1 people" + And I press "Add a new note to 1 person" And I follow "Student 1" And I follow "Notes" # Student 1 has note from Teacher diff --git a/user/amd/build/participants.min.js b/user/amd/build/participants.min.js index 267d51d542b..6831b7adf05 100644 --- a/user/amd/build/participants.min.js +++ b/user/amd/build/participants.min.js @@ -1 +1 @@ -define(["jquery","core/str","core/modal_factory","core/modal_events","core/templates","core/notification","core/ajax"],function(a,b,c,d,e,f,g){var h={BULKACTIONSELECT:"#formactionid",BULKUSERCHECKBOXES:"input.usercheckbox",BULKUSERNOSCHECKBOXES:"input.usercheckbox[value='0']",BULKUSERSELECTEDCHECKBOXES:"input.usercheckbox:checked",BULKACTIONFORM:"#participantsform",CHECKALLBUTTON:"#checkall",CHECKALLNOSBUTTON:"#checkallnos",CHECKALLONPAGEBUTTON:"#checkallonpage",CHECKNONEBUTTON:"#checknone"},i=function(a){this.courseId=a.courseid,this.noteStateNames=a.noteStateNames,this.stateHelpIcon=a.stateHelpIcon,this.attachEventListeners()};return i.prototype.modal=null,i.prototype.courseId=-1,i.prototype.noteStateNames={},i.prototype.stateHelpIcon="",i.prototype.attachEventListeners=function(){a(h.BULKACTIONSELECT).on("change",function(b){var c=a(b.target).val();if(c.indexOf("#")!==-1){b.preventDefault();var d=[];a(h.BULKUSERSELECTEDCHECKBOXES).each(function(b,c){var e=a(c).attr("name"),f=e.replace("user","");d.push(f)}),"#messageselect"==c?this.showSendMessage(d).fail(f.exception):"#addgroupnote"==c&&this.showAddNote(d).fail(f.exception),a(h.BULKACTIONSELECT+' option[value=""]').prop("selected","selected")}else""!==c&&(a(h.BULKUSERSELECTEDCHECKBOXES).length>0?a(h.BULKACTIONFORM).submit():a(h.BULKACTIONSELECT+' option[value=""]').prop("selected","selected"))}.bind(this)),a(h.CHECKALLBUTTON).on("click",function(){var b=a(this).data("showallink");b&&(window.location=b)}),a(h.CHECKALLNOSBUTTON).on("click",function(){a(h.BULKUSERNOSCHECKBOXES).prop("checked",!0)}),a(h.CHECKALLONPAGEBUTTON).on("click",function(){a(h.BULKUSERCHECKBOXES).prop("checked",!0)}),a(h.CHECKNONEBUTTON).on("click",function(){a(h.BULKUSERCHECKBOXES).prop("checked",!1)})},i.prototype.showAddNote=function(f){if(0==f.length)return a.Deferred().resolve().promise();var g=[];for(var i in this.noteStateNames)g.push({value:i,label:this.noteStateNames[i]});var j={stateNames:g,stateHelpIcon:this.stateHelpIcon};return a.when(c.create({type:c.types.SAVE_CANCEL,body:e.render("core_user/add_bulk_note",j)}),b.get_string("addbulknote","core_notes",f.length)).then(function(b,c){return this.modal=b,this.modal.setTitle(c),this.modal.setSaveButtonText(c),this.modal.getRoot().on(d.hidden,function(){var b=a("#user-notifications [role=alert]");b.length?b.focus():a(h.BULKACTIONSELECT).focus(),this.modal.getRoot().remove()}.bind(this)),this.modal.getRoot().on(d.save,this.submitAddNote.bind(this,f)),this.modal.show(),this.modal}.bind(this))},i.prototype.submitAddNote=function(a){var c=this.modal.getRoot().find("form textarea").val(),d=this.modal.getRoot().find("form select").val(),e=[],h=0;for(h=0;h0?a(h.BULKACTIONFORM).submit():a(h.BULKACTIONSELECT+' option[value=""]').prop("selected","selected"))}.bind(this)),a(h.CHECKALLBUTTON).on("click",function(){var b=a(this).data("showallink");b&&(window.location=b)}),a(h.CHECKALLNOSBUTTON).on("click",function(){a(h.BULKUSERNOSCHECKBOXES).prop("checked",!0)}),a(h.CHECKALLONPAGEBUTTON).on("click",function(){a(h.BULKUSERCHECKBOXES).prop("checked",!0)}),a(h.CHECKNONEBUTTON).on("click",function(){a(h.BULKUSERCHECKBOXES).prop("checked",!1)})},i.prototype.showAddNote=function(f){if(0==f.length)return a.Deferred().resolve().promise();var g=[];for(var i in this.noteStateNames)g.push({value:i,label:this.noteStateNames[i]});var j={stateNames:g,stateHelpIcon:this.stateHelpIcon},k=null;return k=1==f.length?b.get_string("addbulknotesingle","core_notes"):b.get_string("addbulknote","core_notes",f.length),a.when(c.create({type:c.types.SAVE_CANCEL,body:e.render("core_user/add_bulk_note",j)}),k).then(function(b,c){return this.modal=b,this.modal.setTitle(c),this.modal.setSaveButtonText(c),this.modal.getRoot().on(d.hidden,function(){var b=a("#user-notifications [role=alert]");b.length?b.focus():a(h.BULKACTIONSELECT).focus(),this.modal.getRoot().remove()}.bind(this)),this.modal.getRoot().on(d.save,this.submitAddNote.bind(this,f)),this.modal.show(),this.modal}.bind(this))},i.prototype.submitAddNote=function(a){var c=this.modal.getRoot().find("form textarea").val(),d=this.modal.getRoot().find("form select").val(),e=[],h=0;for(h=0;h