1var dtLMSAssignmentFrontend = { 2 3 dtInit : function() { 4 5 jQuery( 'body' ).delegate( '#dtlms-upload-assignment', 'click', function(){ 6 7 var this_item = jQuery(this), 8 uploadassignment_nonce = this_item.attr('data-uploadassignment-nonce'), 9 course_id = this_item.attr('data-courseid'), 10 user_id = this_item.attr('data-userid'), 11 lesson_id = this_item.attr('data-lessonid'), 12 quiz_id = this_item.attr('data-quizid'), 13 assignment_id = this_item.attr('data-assignmentid'), 14 author_id = this_item.attr('data-authorid'), 15 assignment_grade_id = this_item.attr('data-assignmentgradeid'), 16 parent_curriculum_id = this_item.attr('data-parentcurriculumid'); 17 18 jQuery.ajax({ 19 type: 'POST', 20 url: lmsfrontendobject.ajaxurl, 21 data: 22 { 23 action : 'dtlms_upload_assignment', 24 uploadassignment_nonce: uploadassignment_nonce, 25 course_id : course_id, 26 user_id : user_id, 27 lesson_id : lesson_id, 28 quiz_id : quiz_id, 29 assignment_id : assignment_id, 30 author_id : author_id, 31 assignment_grade_id : assignment_grade_id, 32 parent_curriculum_id : parent_curriculum_id, 33 }, 34 beforeSend: function(){ 35 dtLMSCommonUtils.dtLMSAjaxBeforeSend(undefined); 36 }, 37 error: function (xhr, status, error) { 38 jQuery('.dtlms-curriculum-content-holder').html('Something went wrong!'); 39 jQuery('.dtlms-upload-assignment-holder').sortable({ placeholder: 'sortable-placeholder' }); 40 }, 41 success: function (response) { 42 jQuery('.dtlms-curriculum-content-holder').html(response); 43 dtLMSFrontendUtils.dtLMSEnableCourseCurriculumContentScroll(); 44 dtLMSFrontendUtils.dtLMSEnableCourseCurriculumDetailsScroll(); 45 dtLMSFrontendUtils.dtLMSEnableCourseCurriculumResponsiveScroll(); 46 }, 47 complete: function(){ 48 dtLMSCommonUtils.dtLMSAjaxAfterSend(undefined); 49 } 50 }); 51 52 }); 53 54 jQuery( 'body' ).delegate( '.dtlms-add-upload-assignment-field', 'click', function(){ 55 56 var clone = jQuery("#dtlms-upload-assignment-section-to-clone").clone(); 57 clone.attr('class', 'dtlms-upload-assignment').removeAttr('id').removeClass('hidden'); 58 clone.find('input').attr('class', 'assignment-attachment').attr('name', 'assignment-attachment[]'); 59 clone.appendTo('.dtlms-upload-assignment-holder'); 60 61 jQuery('.dtlms-upload-assignment-holder').sortable({ placeholder: 'sortable-placeholder' }); 62 63 dtLMSFrontendUtils.dtLMSEnableCourseCurriculumContentScroll(); 64 dtLMSFrontendUtils.dtLMSEnableCourseCurriculumDetailsScroll(); 65 dtLMSFrontendUtils.dtLMSEnableCourseCurriculumResponsiveScroll(); 66 67 }); 68 69 jQuery('body').delegate('span.dtlms-remove-upload-assignment-field','click', function(e){ 70 71 jQuery(this).parents('.dtlms-upload-assignment').remove(); 72 e.preventDefault(); 73 74 }); 75 76 if(jQuery('.dtlms-upload-assignment-holder').length) { 77 jQuery('.dtlms-upload-assignment-holder').sortable({ placeholder: 'sortable-placeholder' }); 78 } 79 80 81 jQuery( 'body' ).delegate( '.dtlms-submit-assignment', 'click', function(){ 82 83 var assignment_attachment = jQuery('input[name^=assignment-attachment]').map(function(idx, elem) { 84 if(this.value != '') { 85 return this.value; 86 } 87 }).get(); 88 89 if((jQuery('.assignment-textarea').length && jQuery('.assignment-textarea').val() == '') || (jQuery('.assignment-attachment').length && assignment_attachment.length === 0)) { 90 alert(lmsassignmentobject.assignmentNotification); 91 return; 92 } 93 94 var this_item = jQuery(this), 95 submitassignment_nonce = this_item.attr('data-submitassignment-nonce'), 96 course_id = this_item.attr('data-courseid'), 97 user_id = this_item.attr('data-userid'), 98 lesson_id = this_item.attr('data-lessonid'), 99 quiz_id = this_item.attr('data-quizid'), 100 assignment_id = this_item.attr('data-assignmentid'), 101 author_id = this_item.attr('data-authorid'), 102 parent_curriculum_id = this_item.attr('data-parentcurriculumid'), 103 next_curriculum_id = this_item.attr('data-nextcurriculumid'), 104 enable_next_curriculum = this_item.attr('data-enablenextcurriculum'); 105 106 var form = jQuery('.formAssignment')[0]; 107 var data = new FormData(form); 108 data.append('action', 'dtlms_submit_assignment'); 109 data.append('submitassignment_nonce', submitassignment_nonce); 110 data.append('course_id', course_id);
111 data.append('user_id', user_id); 112 data.append('lesson_id', lesson_id); 113 data.append('quiz_id', quiz_id); 114 data.append('assignment_id', assignment_id); 115 data.append('author_id', author_id); 116 data.append('parent_curriculum_id', parent_curriculum_id); 117 data.append('next_curriculum_id', next_curriculum_id); 118 119 jQuery.ajax({ 120 type: 'POST', 121 url: lmsfrontendobject.ajaxurl, 122 enctype: 'multipart/form-data', 123 data: data, 124 processData: false, 125 contentType: false, 126 cache: false, 127 beforeSend: function(){ 128 this_item.prepend( '<span><i class="fas fa-spinner fa-spin"></i></span>' ); 129 }, 130 success: function (response) { 131 if(response == 'error') { 132 jQuery('body').find('.dtlms-assignment-errors').removeClass('hidden'); 133 } else { 134 jQuery('body').find('#dtlms-course-curriculum-popup').remove(); 135 jQuery('body').append(response); 136 } 137 138 dtLMSFrontendUtils.dtLMSEnableCourseCurriculumContentScroll(); 139 dtLMSFrontendUtils.dtLMSEnableCourseCurriculumDetailsScroll(); 140 dtLMSFrontendUtils.dtLMSEnableCourseCurriculumResponsiveScroll(); 141 142 // Enable next curriculum item 143 if(enable_next_curriculum == 'true') { 144 if(next_curriculum_id > 0) { 145 if(parent_curriculum_id > 0) { 146 jQuery('ul.dtlms-curriculum-list li a[data-curriculumid="' + next_curriculum_id + '"][ data-parentcurriculumid="' + parent_curriculum_id + '"]').parents('li').removeClass('locked').addClass('unlocked'); 147 } else { 148 jQuery('ul.dtlms-curriculum-list li a[data-curriculumid="' + next_curriculum_id + '"][ data-parentcurriculumid="-1"]').parents('li').removeClass('locked').addClass('unlocked'); 149 } 150 } 151 } 152 153 }, 154 complete: function(){ 155 this_item.find('span').remove(); 156 } 157 }); 158 159 }); 160 161 162 jQuery( 'body' ).delegate( '.dtlms-view-assignment', 'click', function(){ 163 164 var this_item = jQuery(this), 165 assignment_grade_id = this_item.attr('data-assignmentgradeid'), 166 assignment_id = this_item.attr('data-assignmentid'); 167 168 jQuery.ajax({ 169 type: "POST", 170 url: lmsfrontendobject.ajaxurl, 171 data: 172 { 173 action : 'dtlms_view_assignment', 174 assignment_grade_id: assignment_grade_id, 175 assignment_id : assignment_id, 176 }, 177 beforeSend: function(){ 178 this_item.prepend( '<span><i class="fas fa-spinner fa-spin"></i></span>' ); 179 }, 180 success: function (response) { 181 jQuery('.dtlms-curriculum-content-holder').html(response); 182 }, 183 complete: function(){ 184 this_item.find('span').remove(); 185 } 186 }); 187 188 }); 189 190 }, 191 192}; 193 194jQuery(document).ready(function() { 195 196 "use strict"; 197 198 dtLMSAssignmentFrontend.dtInit(); 199 200});
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.