diff --git a/mod/assign/feedback/editpdf/styles.css b/mod/assign/feedback/editpdf/styles.css
index 95eb850b808..9411e823aba 100644
--- a/mod/assign/feedback/editpdf/styles.css
+++ b/mod/assign/feedback/editpdf/styles.css
@@ -298,10 +298,6 @@ ul.assignfeedback_editpdf_menu {
border-radius: 4px;
}
-.assignfeedback_editpdf_menu li img {
- height: auto;
-}
-
.assignfeedback_editpdf_menu li button {
margin: 0;
background: none;
@@ -319,7 +315,7 @@ ul.assignfeedback_editpdf_menu {
}
.assignfeedback_editpdf_widget .commentdrawable img {
- padding: 1px;
+ margin: 0 5px;
}
.assignfeedback_editpdf_widget .commentdrawable a {
@@ -327,11 +323,8 @@ ul.assignfeedback_editpdf_menu {
position: relative;
left: -17px;
top: 2px;
- height: 14px;
- background-color: white;
- border-left: 1px solid #ccc;
- border-bottom: 1px solid #ccc;
- line-height: 14px;
+ height: 16px;
+ width: 16px;
}
.assignfeedback_editpdf_widget .commentdrawable textarea {
diff --git a/mod/assign/feedback/editpdf/yui/build/moodle-assignfeedback_editpdf-editor/moodle-assignfeedback_editpdf-editor-debug.js b/mod/assign/feedback/editpdf/yui/build/moodle-assignfeedback_editpdf-editor/moodle-assignfeedback_editpdf-editor-debug.js
index 80f64403e28..aeddd2388d9 100644
--- a/mod/assign/feedback/editpdf/yui/build/moodle-assignfeedback_editpdf-editor/moodle-assignfeedback_editpdf-editor-debug.js
+++ b/mod/assign/feedback/editpdf/yui/build/moodle-assignfeedback_editpdf-editor/moodle-assignfeedback_editpdf-editor-debug.js
@@ -2161,7 +2161,7 @@ Y.extend(COMMENTMENU, M.assignfeedback_editpdf.dropdown, {
var listitem = Y.Node.create('
'),
linkitem = Y.Node.create('' + quickcomment.rawtext + ''),
deletelinkitem = Y.Node.create('');
linkitem.setAttribute('title', quickcomment.rawtext);
@@ -2552,7 +2552,7 @@ var COMMENT = function(editor, gradeid, pageno, x, y, width, colour, rawtext) {
'preserveAspectRatio="xMinYMin meet">' +
'');
- menu = Y.Node.create('
');
+ menu = Y.Node.create('
');
this.menulink = menu;
container.append(label);
diff --git a/mod/assign/feedback/editpdf/yui/build/moodle-assignfeedback_editpdf-editor/moodle-assignfeedback_editpdf-editor-min.js b/mod/assign/feedback/editpdf/yui/build/moodle-assignfeedback_editpdf-editor/moodle-assignfeedback_editpdf-editor-min.js
index 525b9391fc3..5b6f19fa3af 100644
--- a/mod/assign/feedback/editpdf/yui/build/moodle-assignfeedback_editpdf-editor/moodle-assignfeedback_editpdf-editor-min.js
+++ b/mod/assign/feedback/editpdf/yui/build/moodle-assignfeedback_editpdf-editor/moodle-assignfeedback_editpdf-editor-min.js
@@ -1,9 +1,9 @@
YUI.add("moodle-assignfeedback_editpdf-editor",function(u,e){var c,i,s,n,a,h,l,p,f,_,m,b,w,o=M.cfg.wwwroot+"/mod/assign/feedback/editpdf/ajax.php",y=M.cfg.wwwroot+"/mod/assign/feedback/editpdf/ajax_progress.php",k="assignfeedback_editpdf_widget",v=".navigate-previous-button",x=" .navigate-next-button",A=".searchcommentsbutton",S=".expcolcommentsbutton",N=".assignfeedback_editpdf_commentsearch input",D=".assignfeedback_editpdf_commentsearch ul",T=".navigate-page-select",I=".loading",C=".progress-info.progress-striped",r=".drawingregion",g=".drawingcanvas",q=".commentcolourbutton",E=".annotationcolourbutton",Y=".warningmessages",z=".infoicon",R='input[name="assignfeedback_editpdf_haschanges"]',X=".currentstampbutton",L='[data-region="user-info"]',P=".rotateleftbutton",j=".rotaterightbutton",O={white:"rgb(255,255,255)",yellow:"rgb(255,236,174)",red:"rgb(249,181,179)",green:"rgb(214,234,178)",blue:"rgb(203,217,237)",clear:"rgba(255,255,255, 0)"},d={white:"rgb(255,255,255)",yellow:"rgb(255,207,53)",red:"rgb(239,69,64)",green:"rgb(152,202,62)",blue:"rgb(125,159,211)",black:"rgb(51,51,51)"},B={comment:".commentbutton",pen:".penbutton",line:".linebutton",rectangle:".rectanglebutton",oval:".ovalbutton",stamp:".stampbutton",select:".selectbutton",drag:".dragbutton",highlight:".highlightbutton"},t=function(t,e){this.x=parseInt(t,10),this.y=parseInt(e,10),this.clip=function(t){return this.xt.x+t.width&&(this.x=t.x+t.width),this.yt.y+t.height&&(this.y=t.y+t.height),this}};M.assignfeedback_editpdf=M.assignfeedback_editpdf||{},M.assignfeedback_editpdf.point=t,t=function(t,e,i,s){this.x=t,this.y=e,this.width=i,this.height=s,this.bound=function(t){for(var e,i=0,s=0,n=0,a=0,o=0,o=0;os||0===o)&&(s=e.x),(e.ya||0===o)&&(a=e.y);return this.x=i,this.y=n,this.width=s-i,this.height=a-n,this},this.has_min_width=function(){return 5<=this.width},this.has_min_height=function(){return 5<=this.height},this.set_min_width=function(){this.width=5},this.set_min_height=function(){this.height=5}},M.assignfeedback_editpdf=M.assignfeedback_editpdf||{},M.assignfeedback_editpdf.rect=t,t=function(){this.start=!1,this.end=!1,this.starttime=0,this.annotationstart=!1,this.tool="drag",this.commentcolour="yellow",this.annotationcolour="red",this.stamp="",this.path=[]},M.assignfeedback_editpdf=M.assignfeedback_editpdf||{},M.assignfeedback_editpdf.edit=t,t=function(t){this.editor=t,this.shapes=[],this.nodes=[],this.erase=function(){if(this.shapes)for(;0'),i=u.Node.create(''),e.setAttrs({alt:M.util.get_string("deleteannotation","assignfeedback_editpdf")}),e.setStyles({backgroundColor:"white"}),i.addClass("deleteannotationbutton"),i.append(e),s.append(i),i.setData("annotation",this),i.on("click",this.remove,this),i.on("key",this.remove,"space,enter",this),i.setX(n[0]+t.x+t.width-18),i.setY(n[1]+t.y+6),this.drawable.nodes.push(i)),this.drawable},draw:function(){return this.draw_highlight(),this.drawable},remove:function(t){var e,i;for(t.preventDefault(),e=this.editor.pages[this.editor.currentpage].annotations,i=0;i");return s.addClass("annotation"),s.addClass("stamp"),s.setStyles({position:"absolute",display:"inline-block",backgroundImage:"url("+this.editor.get_stamp_image_url(this.path)+")",width:this.endx-this.x,height:this.endy-this.y,backgroundSize:"100% 100%"}),e.append(s),s.setX(i.x),s.setY(i.y),t.store_position(s,i.x,i.y),this.editor.get("readonly")||(s.on("gesturemovestart",this.editor.edit_start,null,this.editor),s.on("gesturemove",this.editor.edit_move,null,this.editor),s.on("gesturemoveend",this.editor.edit_end,null,this.editor)),t.nodes.push(s),this.drawable=t,l.superclass.draw.apply(this)},draw_current_edit:function(t){var e,i,s=new M.assignfeedback_editpdf.rect,n=new M.assignfeedback_editpdf.drawable(this.editor),a=this.editor.get_dialogue_element(r);return s.bound([t.start,t.end]),i=this.editor.get_window_coordinates(new M.assignfeedback_editpdf.point(s.x,s.y)),(e=u.Node.create("")).addClass("annotation"),e.addClass("stamp"),e.setStyles({position:"absolute",display:"inline-block",backgroundImage:"url("+this.editor.get_stamp_image_url(t.stamp)+")",width:s.width,height:s.height,backgroundSize:"100% 100%"}),a.append(e),e.setX(i.x),e.setY(i.y),n.store_position(e,i.x,i.y),n.nodes.push(e),n},init_from_edit:function(t){var e=new M.assignfeedback_editpdf.rect;return e.bound([t.start,t.end]),e.width<40&&(e.width=40),e.height<40&&(e.height=40),this.gradeid=this.editor.get("gradeid"),this.pageno=this.editor.currentpage,this.x=e.x,this.y=e.y,this.endx=e.x+e.width,this.endy=e.y+e.height,this.colour=t.annotationcolour,this.path=t.stamp,!0},move:function(t,e){t-=this.x,e-=this.y;this.x+=t,this.y+=e,this.endx+=t,this.endy+=e,this.drawable&&this.drawable.erase(),this.editor.drawables.push(this.draw())}}),M.assignfeedback_editpdf=M.assignfeedback_editpdf||{},M.assignfeedback_editpdf.annotationstamp=l,u.extend(p=function(t){t.draggable=!1,t.centered=!1,t.width="auto",t.visible=!1,t.footerContent="",p.superclass.constructor.apply(this,[t])},M.core.dialogue,{initializer:function(t){var e,i;p.superclass.initializer.call(this,t),this.get("boundingBox").addClass("assignfeedback_editpdf_dropdown"),e=this.get("buttonNode"),t=this.bodyNode,(i=u.Node.create("")).addClass("accesshide"),i.setHTML(this.get("headerText")),t.prepend(i),t.on("clickoutside",function(t){this.get("visible")&&t.target.get("id")!==e.get("id")&&t.target.ancestor().get("id")!==e.get("id")&&(t.preventDefault(),this.hide())},this),e.on("click",function(t){t.preventDefault(),this.show()},this),e.on("key",this.show,"enter,space",this)},show:function(){var t=this.get("buttonNode"),e=p.superclass.show.call(this);return this.align(t,[u.WidgetPositionAlign.TL,u.WidgetPositionAlign.BL]),e}},{NAME:"Dropdown menu",ATTRS:{headerText:{value:""},buttonNode:{value:null}}}),u.Base.modifyAttrs(p,{modal:{getter:function(){return!1}}}),M.assignfeedback_editpdf=M.assignfeedback_editpdf||{},M.assignfeedback_editpdf.dropdown=p,u.extend(f=function(t){f.superclass.constructor.apply(this,[t])},M.assignfeedback_editpdf.dropdown,{initializer:function(t){var e,n=u.Node.create('');u.each(this.get("colours"),function(t,e){var i=M.util.get_string(e,"assignfeedback_editpdf"),s=this.get("iconprefix")+e,s=M.util.image_url(s,"assignfeedback_editpdf"),i=u.Node.create('');i.setAttribute("data-colour",e),i.setAttribute("data-rgb",t),i.setAttribute("role","menuitem"),i.setStyle("backgroundImage","none"),(s=u.Node.create("")).append(i),s.setAttribute("role","none"),n.append(s)},this),e=u.Node.create(""),n.delegate("click",this.callback_handler,"button",this),n.delegate("key",this.callback_handler,"down:13","button",this),this.set("headerText",M.util.get_string("colourpicker","assignfeedback_editpdf")),e.append(n),this.set("bodyContent",e),f.superclass.initializer.call(this,t)},callback_handler:function(t){t.preventDefault();var e=this.get("callback"),i=this.get("context");this.hide(),u.bind(e,i,t)()}},{NAME:"Colourpicker",ATTRS:{colours:{value:{}},callback:{value:null},context:{value:null},iconprefix:{value:"colour_"}}}),M.assignfeedback_editpdf=M.assignfeedback_editpdf||{},M.assignfeedback_editpdf.colourpicker=f,u.extend(_=function(t){_.superclass.constructor.apply(this,[t])},M.assignfeedback_editpdf.dropdown,{initializer:function(t){var i=u.Node.create('');u.each(this.get("stamps"),function(t){var e=M.util.get_string("stamp","assignfeedback_editpdf"),e=u.Node.create('');e.setAttribute("data-stamp",t),e.setAttribute("role","menuitem"),e.setStyle("backgroundImage","none"),(t=u.Node.create("")).append(e),t.setAttribute("role","none"),i.append(t)},this),i.delegate("click",this.callback_handler,"button",this),i.delegate("key",this.callback_handler,"down:13","button",this),this.set("headerText",M.util.get_string("stamppicker","assignfeedback_editpdf")),this.set("bodyContent",i),_.superclass.initializer.call(this,t)},callback_handler:function(t){t.preventDefault();var e=this.get("callback"),i=this.get("context");this.hide(),u.bind(e,i,t)()}},{
-NAME:"Colourpicker",ATTRS:{stamps:{value:[]},callback:{value:null},context:{value:null}}}),M.assignfeedback_editpdf=M.assignfeedback_editpdf||{},M.assignfeedback_editpdf.stamppicker=_,u.extend(m=function(t){m.superclass.constructor.apply(this,[t])},M.assignfeedback_editpdf.dropdown,{initializer:function(t){var e=this.get("comment"),i=u.Node.create(''),s=u.Node.create(''+M.util.get_string("addtoquicklist","assignfeedback_editpdf")+"");s.on("click",e.add_to_quicklist,e),s.on("key",e.add_to_quicklist,"enter,space",e),i.append(s),(s=u.Node.create(''+M.util.get_string("deletecomment","assignfeedback_editpdf")+"")).on("click",function(t){t.preventDefault(),this.menu.hide(),this.remove()},e),s.on("key",function(){e.menu.hide(),e.remove()},"enter,space",e),i.append(s),s=u.Node.create("
"),i.append(s),this.set("headerText",M.util.get_string("commentcontextmenu","assignfeedback_editpdf")),(s=u.Node.create("")).append(i),this.set("bodyContent",s),m.superclass.initializer.call(this,t)},show:function(){var n,a=this.get("boundingBox").one("ul");a.all(".quicklist_comment").remove(!0),(n=this.get("comment")).deleteme=!1,u.each(n.editor.quicklist.comments,function(t){var e=u.Node.create(''),i=u.Node.create(''+t.rawtext+""),s=u.Node.create('');i.setAttribute("title",t.rawtext),e.append(i),e.append(s),a.append(e),e.on("click",n.set_from_quick_comment,n,t),e.on("key",n.set_from_quick_comment,"space,enter",n,t),s.on("click",n.remove_from_quicklist,n,t),s.on("key",n.remove_from_quicklist,"space,enter",n,t)},this),m.superclass.show.call(this)}},{NAME:"Commentmenu",ATTRS:{comment:{value:null}}}),M.assignfeedback_editpdf=M.assignfeedback_editpdf||{},M.assignfeedback_editpdf.commentmenu=m,u.extend(b=function(t){t.draggable=!1,t.centered=!0,t.width="400px",t.visible=!1,t.headerContent=M.util.get_string("searchcomments","assignfeedback_editpdf"),t.footerContent="",b.superclass.constructor.apply(this,[t])},M.core.dialogue,{initializer:function(){var t,e,i;this.get("boundingBox").addClass("assignfeedback_editpdf_commentsearch"),this.get("editor"),t=u.Node.create(""),e=M.util.get_string("filter","assignfeedback_editpdf"),e=u.Node.create(''),t.append(e),i=u.Node.create(''),t.append(i),e.on("keyup",this.filter_search_comments,this),i.delegate("click",this.focus_on_comment,"a",this),i.delegate("key",this.focus_on_comment,"enter,space","a",this),this.set("bodyContent",t)},filter_search_comments:function(){var t=this.get("id"),e=u.one("#"+t+N),t=u.one("#"+t+D),i=e.get("value");t.all("li").each(function(t){-1!==t.get("text").indexOf(i)?t.show():t.hide()})},focus_on_comment:function(t){t.preventDefault();var t=t.target.ancestor("li").getData("comment"),e=this.get("editor");this.hide(),t.pageno=t.clean().pageno,t.pageno!==e.currentpage&&(e.currentpage=t.pageno,e.change_page()),t.node=t.drawable.nodes[0].one("textarea"),t.node.ancestor("div").removeClass("commentcollapsed"),t.node.focus()},show:function(){var i=this.get("boundingBox").one("ul"),t=this.get("editor");i.all("li").remove(!0),u.each(t.pages,function(t){u.each(t.comments,function(t){var e=u.Node.create(''+t.rawtext+"
");i.append(e),e.setData("comment",t)},this)},this),this.centerDialogue(),b.superclass.show.call(this)}},{NAME:"commentsearch",ATTRS:{editor:{value:null}}}),u.Base.modifyAttrs(b,{modal:{getter:function(){return!0}}}),M.assignfeedback_editpdf=M.assignfeedback_editpdf||{},M.assignfeedback_editpdf.commentsearch=b,t=function(d,t,e,i,s,n,a,o){this.editor=d,this.gradeid=t||0,this.x=parseInt(i,10)||0,this.y=parseInt(s,10)||0,this.width=parseInt(n,10)||0,this.rawtext=o||"",this.pageno=e||0,this.colour=a||"yellow",this.drawable=!1,this.deleteme=!1,this.menulink=null,this.menu=null,this.clean=function(){return{gradeid:this.gradeid,x:parseInt(this.x,10),y:parseInt(this.y,10),width:parseInt(this.width,10),rawtext:this.rawtext,pageno:parseInt(this.pageno,10),colour:this.colour}},this.draw=function(t){var e=new M.assignfeedback_editpdf.drawable(this.editor),i=this.editor.get_dialogue_element(g),s=u.Node.create(""),n=u.Node.create(''),a=u.Node.create(""),o=u.Node.create(''),r=u.Node.create('
');return this.menulink=r,n.append(a),a.append(s),n.append(o),n.setAttribute("tabindex","-1"),a.setAttribute("tabindex","0"),s.setAttribute("tabindex","-1"),r.setAttribute("tabindex","0"),this.editor.get("readonly")?s.setAttribute("readonly","readonly"):n.append(r),this.width<100&&(this.width=100),a=this.editor.get_window_coordinates(new M.assignfeedback_editpdf.point(this.x,this.y)),s.setStyles({width:this.width+"px",backgroundColor:O[this.colour],color:"rgb(51, 51, 51)"}),i.append(n),n.setStyle("position","absolute"),n.setX(a.x),n.setY(a.y),e.store_position(n,a.x,a.y),e.nodes.push(n),s.set("value",this.rawtext),i=s.get("scrollHeight"),s.setStyles({height:i+"px",overflow:"hidden"}),o.setStyle("color",O[this.colour]),this.attach_events(s,r),t?s.focus():d.collapsecomments&&n.addClass("commentcollapsed"),this.drawable=e},this.delete_comment_later=function(){this.deleteme&&!this.is_menu_active()&&this.remove()},this.is_menu_active=function(){
-return null!==this.menu&&this.menu.get("visible")},this.attach_events=function(i,e){var s=i.ancestor("div"),t=i.ancestor("label"),n=t.next("svg");i.collapse=function(t){i.collapse.delay=u.later(t,i,function(){d.collapsecomments&&!this.is_menu_active()&&s.addClass("commentcollapsed")}.bind(this))}.bind(this),i.expand=function(){!0!==i.getData("dragging")&&(i.collapse.delay&&i.collapse.delay.cancel(),s.removeClass("commentcollapsed"))},s.on("mouseenter",function(){"comment"!==d.currentedit.tool&&"select"!==d.currentedit.tool&&!this.editor.get("readonly")||i.expand()},this),s.on("click|tap",function(){i.expand(),i.focus()},this),i.on("keyup",function(t){9===t.keyCode&&t.shiftKey&&"0"===e.getAttribute("tabindex")&&e.focus(),e.setAttribute("tabindex","0")},this),e.on("keydown",function(t){9===t.keyCode&&t.shiftKey&&e.setAttribute("tabindex","-1")},this),t.on("focus",function(){i.active=!0,i.collapse.delay&&i.collapse.delay.cancel(),i.setAttribute("tabindex","0"),i.expand(),i.focus(),t.setAttribute("tabindex","-1")},this),e.on("focus",function(){i.active=!0,i.collapse.delay&&i.collapse.delay.cancel(),this.deleteme=!1,t.setAttribute("tabindex","0")},this),i.on("blur",function(){i.setAttribute("tabindex","-1")},this),t.on("blur",function(){t.setAttribute("tabindex","0")},this),s.on("mouseleave",function(){d.collapsecomments&&!0!==i.active&&i.collapse(400)},this),s.on("blur",function(){i.active=!1,i.collapse(800)},this),this.editor.get("readonly")||(i.on("blur",function(){this.rawtext=i.get("value"),this.width=parseInt(i.getStyle("width"),10),""===this.rawtext.replace(/^\s+|\s+$/g,"")&&(this.deleteme=!0,u.later(400,this,this.delete_comment_later)),this.editor.save_current_page(),this.editor.editingcomment=!1},this),e.setData("comment",this),i.on("keyup",function(){i.setStyle("height","auto");var t=i.get("scrollHeight");t===parseInt(i.getStyle("height"),10)+8&&(t-=8),i.setStyle("height",t+"px")}),i.on("gesturemovestart",function(t){"select"===d.currentedit.tool&&(t.preventDefault(),d.collapsecomments?(i.setData("offsetx",8),i.setData("offsety",8)):(i.setData("offsetx",t.clientX-s.getX()),i.setData("offsety",t.clientY-s.getY())))}),i.on("gesturemove",function(t){var e;"select"===d.currentedit.tool&&(e=t.clientX-i.getData("offsetx"),t=t.clientY-i.getData("offsety"),!0!==i.getData("dragging")&&(i.collapse(0),i.setData("dragging",!0)),e=this.editor.get_canvas_coordinates(new M.assignfeedback_editpdf.point(e,t)),(t=this.editor.get_canvas_bounds(!0)).x=0,t.y=0,t.width-=24,t.height-=24,e.clip(t),this.x=e.x,this.y=e.y,t=this.editor.get_window_coordinates(e),s.setX(t.x),s.setY(t.y),this.drawable.store_position(s,t.x,t.y))},null,this),i.on("gesturemoveend",function(){"select"===d.currentedit.tool&&(!0===i.getData("dragging")&&i.setData("dragging",!1),this.editor.save_current_page())},null,this),n.on("gesturemovestart",function(t){"select"===d.currentedit.tool&&(t.preventDefault(),i.setData("offsetx",t.clientX-s.getX()),i.setData("offsety",t.clientY-s.getY()),i.expand())}),n.on("gesturemove",function(t){var e;"select"===d.currentedit.tool&&(e=t.clientX-i.getData("offsetx"),t=t.clientY-i.getData("offsety"),!0!==i.getData("dragging")&&(i.collapse(100),i.setData("dragging",!0)),e=this.editor.get_canvas_coordinates(new M.assignfeedback_editpdf.point(e,t)),(t=this.editor.get_canvas_bounds(!0)).x=0,t.y=0,t.width-=24,t.height-=24,e.clip(t),this.x=e.x,this.y=e.y,t=this.editor.get_window_coordinates(e),s.setX(t.x),s.setY(t.y),this.drawable.store_position(s,t.x,t.y))},null,this),n.on("gesturemoveend",function(){"select"===d.currentedit.tool&&(!0===i.getData("dragging")&&i.setData("dragging",!1),this.editor.save_current_page())},null,this),this.menu=new M.assignfeedback_editpdf.commentmenu({buttonNode:this.menulink,comment:this}))},this.remove=function(){for(var t=0,e=this.editor.pages[this.editor.currentpage].comments,t=0;t')).append(s.one("*").cloneNode()),i.append(t),n.prepend(i),i.transition({duration:1,delay:a,opacity:0},function(){i.remove()})},prepare_pages_for_display:function(t){var e,i,s,n;if(!t.pagecount)return this.dialogue&&this.dialogue.hide(),void new M.core.alert({message:M.util.get_string("cannotopenpdf","assignfeedback_editpdf")}).show();for(this.pages=t.pages,e=0;ee.width||i.y<0||i.y>e.height||("pen"===this.currentedit.tool&&this.currentedit.path.push(i),"select"===this.currentedit.tool?this.currentannotation&&this.currentedit&&this.currentannotation.move(this.currentedit.annotationstart.x+i.x-this.currentedit.start.x,this.currentedit.annotationstart.y+i.y-this.currentedit.start.y):"drag"===this.currentedit.tool?(t=i.x-this.currentedit.start.x,e=i.y-this.currentedit.start.y,s.getDOMNode().scrollLeft-=t,s.getDOMNode().scrollTop-=e):this.currentedit.start&&(this.currentedit.end=i,this.redraw_current_edit())))},edit_end:function(){var t;(new Date).getTime()-this.currentedit.start<300||!1===this.currentedit.start||("comment"===this.currentedit.tool?(this.currentdrawable&&this.currentdrawable.erase(),this.currentdrawable=!1,(t=new M.assignfeedback_editpdf.comment(this)).init_from_edit(this.currentedit)&&(this.pages[this.currentpage].comments.push(t),this.drawables.push(t.draw(!0)),this.editingcomment=!0)):(t=this.create_annotation(this.currentedit.tool,{}))&&(this.currentdrawable&&this.currentdrawable.erase(),this.currentdrawable=!1,t.init_from_edit(this.currentedit)&&(this.pages[this.currentpage].annotations.push(t),this.drawables.push(t.draw()))),this.save_current_page(),this.currentedit.starttime=0,this.currentedit.start=!1,this.currentedit.end=!1,this.currentedit.path=[])},resize:function(){var t,e;if(this.dialogue){if(!this.dialogue.get("visible"))return;this.dialogue.centerDialogue()}return(e=u.one("body").get("winHeight")-120)<100&&(e=100),t=this.get_dialogue_element(r),this.dialogue&&t.setStyle("maxHeight",e+"px"),this.redraw(),!0},create_annotation:function(t,e){return e.type=t,e.editor=this,"line"===t?new M.assignfeedback_editpdf.annotationline(e):"rectangle"===t?new M.assignfeedback_editpdf.annotationrectangle(e):"oval"===t?new M.assignfeedback_editpdf.annotationoval(e):"pen"===t?new M.assignfeedback_editpdf.annotationpen(e):"highlight"===t?new M.assignfeedback_editpdf.annotationhighlight(e):"stamp"===t&&new M.assignfeedback_editpdf.annotationstamp(e)},save_current_page:function(){this.clear_warnings(!1);var t=o,e={method:"post",context:this,sync:!1,data:{sesskey:M.cfg.sesskey,action:"savepage",index:this.currentpage,userid:this.get("userid"),attemptnumber:this.get("attemptnumber"),assignmentid:this.get("assignmentid"),page:this.stringify_current_page()},on:{success:function(t,e){var i;try{if((i=u.JSON.parse(e.responseText)).error)return new M.core.ajaxException(i);u.one(R).set("value","true"),this.warning(M.util.get_string("draftchangessaved","assignfeedback_editpdf"),!0)}catch(s){return new M.core.exception(s)}},failure:function(t,e){return new M.core.exception(e.responseText)}}};u.io(t,e)},open_search_comments:function(t){this.searchcommentswindow||(this.searchcommentswindow=new M.assignfeedback_editpdf.commentsearch({editor:this})),this.searchcommentswindow.show(),t.preventDefault()},expandCollapseComments:function(){var t=u.all(".commentdrawable");this.collapsecomments?(this.collapsecomments=!1,t.removeClass("commentcollapsed")):(this.collapsecomments=!0,t.addClass("commentcollapsed"))},redraw:function(){var t,e=this.pages[this.currentpage];if(e!==undefined){for(;0")).setAttribute("value",t),e={page:t+1,total:this.pages.length},i.setHTML(M.util.get_string("pagexofy","assignfeedback_editpdf",e)),n.append(i);n.removeAttribute("disabled"),n.on("change",function(){this.currentpage=n.get("value"),this.clear_warnings(!1),this.change_page()},this),a=this.get_dialogue_element(v),s=this.get_dialogue_element(x),a.on("click",this.previous_page,this),a.on("key",this.previous_page,"down:13",this),s.on("click",this.next_page,this),s.on("key",this.next_page,"down:13",this)},previous_page:function(t){t.preventDefault(),this.currentpage--,this.currentpage<0&&(this.currentpage=0),this.clear_warnings(!1),this.change_page()},next_page:function(t){t.preventDefault(),this.currentpage++,this.currentpage>=this.pages.length&&(this.currentpage=this.pages.length-1),this.clear_warnings(!1),this.change_page()},move_canvas:function(){for(var t=this.get_dialogue_element(r),e=parseInt(t.get("scrollLeft"),10),i=parseInt(t.get("scrollTop"),10),s=0;s'),s=u.Node.create(''+M.util.get_string("addtoquicklist","assignfeedback_editpdf")+"");s.on("click",e.add_to_quicklist,e),s.on("key",e.add_to_quicklist,"enter,space",e),i.append(s),(s=u.Node.create(''+M.util.get_string("deletecomment","assignfeedback_editpdf")+"")).on("click",function(t){t.preventDefault(),this.menu.hide(),this.remove()},e),s.on("key",function(){e.menu.hide(),e.remove()},"enter,space",e),i.append(s),s=u.Node.create("
"),i.append(s),this.set("headerText",M.util.get_string("commentcontextmenu","assignfeedback_editpdf")),(s=u.Node.create("")).append(i),this.set("bodyContent",s),m.superclass.initializer.call(this,t)},show:function(){var n,a=this.get("boundingBox").one("ul");a.all(".quicklist_comment").remove(!0),(n=this.get("comment")).deleteme=!1,u.each(n.editor.quicklist.comments,function(t){var e=u.Node.create(''),i=u.Node.create(''+t.rawtext+""),s=u.Node.create('');i.setAttribute("title",t.rawtext),e.append(i),e.append(s),a.append(e),e.on("click",n.set_from_quick_comment,n,t),e.on("key",n.set_from_quick_comment,"space,enter",n,t),s.on("click",n.remove_from_quicklist,n,t),s.on("key",n.remove_from_quicklist,"space,enter",n,t)},this),m.superclass.show.call(this)}},{NAME:"Commentmenu",ATTRS:{comment:{value:null}}}),M.assignfeedback_editpdf=M.assignfeedback_editpdf||{},M.assignfeedback_editpdf.commentmenu=m,u.extend(b=function(t){t.draggable=!1,t.centered=!0,t.width="400px",t.visible=!1,t.headerContent=M.util.get_string("searchcomments","assignfeedback_editpdf"),t.footerContent="",b.superclass.constructor.apply(this,[t])},M.core.dialogue,{initializer:function(){var t,e,i;this.get("boundingBox").addClass("assignfeedback_editpdf_commentsearch"),this.get("editor"),t=u.Node.create(""),e=M.util.get_string("filter","assignfeedback_editpdf"),e=u.Node.create(''),t.append(e),i=u.Node.create(''),t.append(i),e.on("keyup",this.filter_search_comments,this),i.delegate("click",this.focus_on_comment,"a",this),i.delegate("key",this.focus_on_comment,"enter,space","a",this),this.set("bodyContent",t)},filter_search_comments:function(){var t=this.get("id"),e=u.one("#"+t+N),t=u.one("#"+t+D),i=e.get("value");t.all("li").each(function(t){-1!==t.get("text").indexOf(i)?t.show():t.hide()})},focus_on_comment:function(t){t.preventDefault();var t=t.target.ancestor("li").getData("comment"),e=this.get("editor");this.hide(),t.pageno=t.clean().pageno,t.pageno!==e.currentpage&&(e.currentpage=t.pageno,e.change_page()),t.node=t.drawable.nodes[0].one("textarea"),t.node.ancestor("div").removeClass("commentcollapsed"),t.node.focus()},show:function(){var i=this.get("boundingBox").one("ul"),t=this.get("editor");i.all("li").remove(!0),u.each(t.pages,function(t){u.each(t.comments,function(t){var e=u.Node.create(''+t.rawtext+"
");i.append(e),e.setData("comment",t)},this)},this),this.centerDialogue(),b.superclass.show.call(this)}},{NAME:"commentsearch",ATTRS:{editor:{value:null}}}),u.Base.modifyAttrs(b,{modal:{getter:function(){return!0}}}),M.assignfeedback_editpdf=M.assignfeedback_editpdf||{},M.assignfeedback_editpdf.commentsearch=b,t=function(d,t,e,i,s,n,a,o){this.editor=d,this.gradeid=t||0,this.x=parseInt(i,10)||0,this.y=parseInt(s,10)||0,this.width=parseInt(n,10)||0,this.rawtext=o||"",this.pageno=e||0,this.colour=a||"yellow",this.drawable=!1,this.deleteme=!1,this.menulink=null,this.menu=null,this.clean=function(){return{gradeid:this.gradeid,x:parseInt(this.x,10),y:parseInt(this.y,10),width:parseInt(this.width,10),rawtext:this.rawtext,pageno:parseInt(this.pageno,10),colour:this.colour}},this.draw=function(t){var e=new M.assignfeedback_editpdf.drawable(this.editor),i=this.editor.get_dialogue_element(g),s=u.Node.create(""),n=u.Node.create(''),a=u.Node.create(""),o=u.Node.create(''),r=u.Node.create('
');return this.menulink=r,n.append(a),a.append(s),n.append(o),n.setAttribute("tabindex","-1"),a.setAttribute("tabindex","0"),s.setAttribute("tabindex","-1"),r.setAttribute("tabindex","0"),this.editor.get("readonly")?s.setAttribute("readonly","readonly"):n.append(r),this.width<100&&(this.width=100),a=this.editor.get_window_coordinates(new M.assignfeedback_editpdf.point(this.x,this.y)),s.setStyles({width:this.width+"px",backgroundColor:O[this.colour],color:"rgb(51, 51, 51)"}),i.append(n),n.setStyle("position","absolute"),n.setX(a.x),n.setY(a.y),e.store_position(n,a.x,a.y),e.nodes.push(n),s.set("value",this.rawtext),i=s.get("scrollHeight"),s.setStyles({height:i+"px",overflow:"hidden"}),o.setStyle("color",O[this.colour]),this.attach_events(s,r),t?s.focus():d.collapsecomments&&n.addClass("commentcollapsed"),this.drawable=e},this.delete_comment_later=function(){this.deleteme&&!this.is_menu_active()&&this.remove()},
+this.is_menu_active=function(){return null!==this.menu&&this.menu.get("visible")},this.attach_events=function(i,e){var s=i.ancestor("div"),t=i.ancestor("label"),n=t.next("svg");i.collapse=function(t){i.collapse.delay=u.later(t,i,function(){d.collapsecomments&&!this.is_menu_active()&&s.addClass("commentcollapsed")}.bind(this))}.bind(this),i.expand=function(){!0!==i.getData("dragging")&&(i.collapse.delay&&i.collapse.delay.cancel(),s.removeClass("commentcollapsed"))},s.on("mouseenter",function(){"comment"!==d.currentedit.tool&&"select"!==d.currentedit.tool&&!this.editor.get("readonly")||i.expand()},this),s.on("click|tap",function(){i.expand(),i.focus()},this),i.on("keyup",function(t){9===t.keyCode&&t.shiftKey&&"0"===e.getAttribute("tabindex")&&e.focus(),e.setAttribute("tabindex","0")},this),e.on("keydown",function(t){9===t.keyCode&&t.shiftKey&&e.setAttribute("tabindex","-1")},this),t.on("focus",function(){i.active=!0,i.collapse.delay&&i.collapse.delay.cancel(),i.setAttribute("tabindex","0"),i.expand(),i.focus(),t.setAttribute("tabindex","-1")},this),e.on("focus",function(){i.active=!0,i.collapse.delay&&i.collapse.delay.cancel(),this.deleteme=!1,t.setAttribute("tabindex","0")},this),i.on("blur",function(){i.setAttribute("tabindex","-1")},this),t.on("blur",function(){t.setAttribute("tabindex","0")},this),s.on("mouseleave",function(){d.collapsecomments&&!0!==i.active&&i.collapse(400)},this),s.on("blur",function(){i.active=!1,i.collapse(800)},this),this.editor.get("readonly")||(i.on("blur",function(){this.rawtext=i.get("value"),this.width=parseInt(i.getStyle("width"),10),""===this.rawtext.replace(/^\s+|\s+$/g,"")&&(this.deleteme=!0,u.later(400,this,this.delete_comment_later)),this.editor.save_current_page(),this.editor.editingcomment=!1},this),e.setData("comment",this),i.on("keyup",function(){i.setStyle("height","auto");var t=i.get("scrollHeight");t===parseInt(i.getStyle("height"),10)+8&&(t-=8),i.setStyle("height",t+"px")}),i.on("gesturemovestart",function(t){"select"===d.currentedit.tool&&(t.preventDefault(),d.collapsecomments?(i.setData("offsetx",8),i.setData("offsety",8)):(i.setData("offsetx",t.clientX-s.getX()),i.setData("offsety",t.clientY-s.getY())))}),i.on("gesturemove",function(t){var e;"select"===d.currentedit.tool&&(e=t.clientX-i.getData("offsetx"),t=t.clientY-i.getData("offsety"),!0!==i.getData("dragging")&&(i.collapse(0),i.setData("dragging",!0)),e=this.editor.get_canvas_coordinates(new M.assignfeedback_editpdf.point(e,t)),(t=this.editor.get_canvas_bounds(!0)).x=0,t.y=0,t.width-=24,t.height-=24,e.clip(t),this.x=e.x,this.y=e.y,t=this.editor.get_window_coordinates(e),s.setX(t.x),s.setY(t.y),this.drawable.store_position(s,t.x,t.y))},null,this),i.on("gesturemoveend",function(){"select"===d.currentedit.tool&&(!0===i.getData("dragging")&&i.setData("dragging",!1),this.editor.save_current_page())},null,this),n.on("gesturemovestart",function(t){"select"===d.currentedit.tool&&(t.preventDefault(),i.setData("offsetx",t.clientX-s.getX()),i.setData("offsety",t.clientY-s.getY()),i.expand())}),n.on("gesturemove",function(t){var e;"select"===d.currentedit.tool&&(e=t.clientX-i.getData("offsetx"),t=t.clientY-i.getData("offsety"),!0!==i.getData("dragging")&&(i.collapse(100),i.setData("dragging",!0)),e=this.editor.get_canvas_coordinates(new M.assignfeedback_editpdf.point(e,t)),(t=this.editor.get_canvas_bounds(!0)).x=0,t.y=0,t.width-=24,t.height-=24,e.clip(t),this.x=e.x,this.y=e.y,t=this.editor.get_window_coordinates(e),s.setX(t.x),s.setY(t.y),this.drawable.store_position(s,t.x,t.y))},null,this),n.on("gesturemoveend",function(){"select"===d.currentedit.tool&&(!0===i.getData("dragging")&&i.setData("dragging",!1),this.editor.save_current_page())},null,this),this.menu=new M.assignfeedback_editpdf.commentmenu({buttonNode:this.menulink,comment:this}))},this.remove=function(){for(var t=0,e=this.editor.pages[this.editor.currentpage].comments,t=0;t')).append(s.one("*").cloneNode()),i.append(t),n.prepend(i),i.transition({duration:1,delay:a,opacity:0},function(){i.remove()})},prepare_pages_for_display:function(t){var e,i,s,n;if(!t.pagecount)return this.dialogue&&this.dialogue.hide(),void new M.core.alert({message:M.util.get_string("cannotopenpdf","assignfeedback_editpdf")}).show();for(this.pages=t.pages,e=0;ee.width||i.y<0||i.y>e.height||("pen"===this.currentedit.tool&&this.currentedit.path.push(i),"select"===this.currentedit.tool?this.currentannotation&&this.currentedit&&this.currentannotation.move(this.currentedit.annotationstart.x+i.x-this.currentedit.start.x,this.currentedit.annotationstart.y+i.y-this.currentedit.start.y):"drag"===this.currentedit.tool?(t=i.x-this.currentedit.start.x,e=i.y-this.currentedit.start.y,s.getDOMNode().scrollLeft-=t,s.getDOMNode().scrollTop-=e):this.currentedit.start&&(this.currentedit.end=i,this.redraw_current_edit())))},edit_end:function(){var t;(new Date).getTime()-this.currentedit.start<300||!1===this.currentedit.start||("comment"===this.currentedit.tool?(this.currentdrawable&&this.currentdrawable.erase(),this.currentdrawable=!1,(t=new M.assignfeedback_editpdf.comment(this)).init_from_edit(this.currentedit)&&(this.pages[this.currentpage].comments.push(t),this.drawables.push(t.draw(!0)),this.editingcomment=!0)):(t=this.create_annotation(this.currentedit.tool,{}))&&(this.currentdrawable&&this.currentdrawable.erase(),this.currentdrawable=!1,t.init_from_edit(this.currentedit)&&(this.pages[this.currentpage].annotations.push(t),this.drawables.push(t.draw()))),this.save_current_page(),this.currentedit.starttime=0,this.currentedit.start=!1,this.currentedit.end=!1,this.currentedit.path=[])},resize:function(){var t,e;if(this.dialogue){if(!this.dialogue.get("visible"))return;this.dialogue.centerDialogue()}return(e=u.one("body").get("winHeight")-120)<100&&(e=100),t=this.get_dialogue_element(r),this.dialogue&&t.setStyle("maxHeight",e+"px"),this.redraw(),!0},create_annotation:function(t,e){return e.type=t,e.editor=this,"line"===t?new M.assignfeedback_editpdf.annotationline(e):"rectangle"===t?new M.assignfeedback_editpdf.annotationrectangle(e):"oval"===t?new M.assignfeedback_editpdf.annotationoval(e):"pen"===t?new M.assignfeedback_editpdf.annotationpen(e):"highlight"===t?new M.assignfeedback_editpdf.annotationhighlight(e):"stamp"===t&&new M.assignfeedback_editpdf.annotationstamp(e)},save_current_page:function(){this.clear_warnings(!1);var t=o,e={method:"post",context:this,sync:!1,data:{sesskey:M.cfg.sesskey,action:"savepage",index:this.currentpage,userid:this.get("userid"),attemptnumber:this.get("attemptnumber"),assignmentid:this.get("assignmentid"),page:this.stringify_current_page()},on:{success:function(t,e){var i;try{if((i=u.JSON.parse(e.responseText)).error)return new M.core.ajaxException(i);u.one(R).set("value","true"),this.warning(M.util.get_string("draftchangessaved","assignfeedback_editpdf"),!0)}catch(s){return new M.core.exception(s)}},failure:function(t,e){return new M.core.exception(e.responseText)}}};u.io(t,e)},open_search_comments:function(t){this.searchcommentswindow||(this.searchcommentswindow=new M.assignfeedback_editpdf.commentsearch({editor:this})),this.searchcommentswindow.show(),t.preventDefault()},expandCollapseComments:function(){var t=u.all(".commentdrawable");this.collapsecomments?(this.collapsecomments=!1,t.removeClass("commentcollapsed")):(this.collapsecomments=!0,t.addClass("commentcollapsed"))},redraw:function(){var t,e=this.pages[this.currentpage];if(e!==undefined){for(;0")).setAttribute("value",t),e={page:t+1,total:this.pages.length},i.setHTML(M.util.get_string("pagexofy","assignfeedback_editpdf",e)),n.append(i);n.removeAttribute("disabled"),n.on("change",function(){this.currentpage=n.get("value"),this.clear_warnings(!1),this.change_page()},this),a=this.get_dialogue_element(v),s=this.get_dialogue_element(x),a.on("click",this.previous_page,this),a.on("key",this.previous_page,"down:13",this),s.on("click",this.next_page,this),s.on("key",this.next_page,"down:13",this)},previous_page:function(t){t.preventDefault(),this.currentpage--,this.currentpage<0&&(this.currentpage=0),this.clear_warnings(!1),this.change_page()},next_page:function(t){t.preventDefault(),this.currentpage++,this.currentpage>=this.pages.length&&(this.currentpage=this.pages.length-1),this.clear_warnings(!1),this.change_page()},move_canvas:function(){for(var t=this.get_dialogue_element(r),e=parseInt(t.get("scrollLeft"),10),i=parseInt(t.get("scrollTop"),10),s=0;s