From b7a3595f4226ce59e950a6bd08ae0531c4368cdd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BD=D1=82=D0=BE=D0=BD=20=D0=A8=D0=B0=D0=BB=D0=B8?= =?UTF-8?q?=D0=BC=D0=BE=D0=B2?= <solidovic@gmail.com> Date: Mon, 22 Sep 2014 00:36:41 +0400 Subject: [PATCH] aaa --- .../media/js/discipline/EditStructure.js | 85 +++++++++---------- ~dev_rating/media/js/discipline/general.js | 2 +- 2 files changed, 42 insertions(+), 45 deletions(-) diff --git a/~dev_rating/media/js/discipline/EditStructure.js b/~dev_rating/media/js/discipline/EditStructure.js index ea3fbf780..da47faead 100644 --- a/~dev_rating/media/js/discipline/EditStructure.js +++ b/~dev_rating/media/js/discipline/EditStructure.js @@ -36,7 +36,7 @@ $(function() { </div>\ </div>\ <div class="subModules">\ - '+GetSubModuleTmp()+'\ + '+ GetSubModuleTmp() +'\ </div>\ <div class="addSubModule">Добавить мероприятие</div>\ </div>' @@ -45,7 +45,7 @@ $(function() { // Подсчет текущего контроля function CountCurrentControl(subModulesDiv){ var maxCredits = 0; - $('.inputCurrentControl', subModulesDiv).each(function(){ + $('input.inputCurrentControl', subModulesDiv).each(function(){ var credit = parseInt($(this).val()); maxCredits = maxCredits + ((isNum(credit)) ? credit : 0); }); @@ -54,7 +54,7 @@ $(function() { // Подсчет рубежного контроля function CountLandmarkControl(subModulesDiv){ var maxCredits = 0; - $('.inputLandmarkControl', subModulesDiv).each(function(){ + $('input.inputLandmarkControl', subModulesDiv).each(function(){ var credit = parseInt($(this).val()); maxCredits = maxCredits + ((isNum(credit)) ? credit : 0); }); @@ -100,28 +100,31 @@ $(function() { // DIV с мероприятиями для данного модуля var subModulesDiv = thisObj.parent().parent().parent(); // ID мероприятия - var ID = thisObj.parent('div').parent('div').attr('id'); + var ID = thisObj.parent().parent().attr('id'); var NewMaxRate = 0; - if (thisObj.val() != '') + if (thisObj.val().length > 0 ) NewMaxRate = parseInt(thisObj.val()); // Ограничение 100 баллов var MaxSumRate = 100; - if ($('div').is('.ExamModule')) MaxSumRate = 60; + if ($('.ExamModule').first().length > 0) MaxSumRate = 60; var currentControl = 0; - $('.moduleHead .currentControl').each(function(){ + $('div.moduleHead').children('div.currentControl').each(function(){ currentControl += parseInt($(this).text()); }); + var landmarkControl = 0; - $('.moduleHead .landmarkControl').each(function(){ + $('div.moduleHead').children('div.landmarkControl').each(function(){ landmarkControl += parseInt($(this).text()); }); + var subtract = 0; if (thisObj.parent().attr('class').indexOf('landmarkControl') + 1 > 0) subtract = parseInt(thisObj.parent().siblings('.currentControl').children().val()); if (thisObj.parent().attr('class').indexOf('currentControl') + 1 > 0) subtract = parseInt(thisObj.parent().siblings('.landmarkControl').children().val()); + if (currentControl + landmarkControl + NewMaxRate - subtract - OldMaxRate > MaxSumRate) { if (NewMaxRate == 0) thisObj.val('0'); @@ -174,7 +177,7 @@ $(function() { data = $.parseJSON(data); if(data.success === true) EventInspector_ShowMsg('Модули поменяли порядок', 'success'); - else EventInspector_ShowMsg('Ошибка при изменение порядка модулей', 'error'); + else EventInspector_ShowMsg('Ошибка при изменении порядка модулей', 'error'); } ); } @@ -191,7 +194,7 @@ $(function() { data = $.parseJSON(data); if(data.success === true) EventInspector_ShowMsg('Мероприятия поменяли порядок', 'success'); - else EventInspector_ShowMsg('Ошибка при изменение порядка мероприятий', 'error'); + else EventInspector_ShowMsg('Ошибка при изменении порядка мероприятий', 'error'); } ); } @@ -207,23 +210,20 @@ $(function() { // Для того, который СТАЛ находится ниже var nextModuleID = parentDIV.next('div').attr('id'); SwapModuleOrder(ModuleID, nextModuleID); - - return false }); // Переместить вниз МОДУЛЬ $(".moduleList").on('click', '.downModule', function(){ var parentDIV = $(this).parent('div').parent('div').parent('div'); - if ($('div').is(parentDIV.next('.moduleGroup'))) { - parentDIV.insertAfter(parentDIV.next('.moduleGroup')); + var moduleGroupDiv = parentDIV.next('div.moduleGroup'); + if (moduleGroupDiv.length > 0) { + parentDIV.insertAfter(moduleGroupDiv); var ModuleID = parentDIV.attr('id'); // Для того, который СТАЛ находится выше var prevModuleID = parentDIV.prev('div').attr('id'); SwapModuleOrder(ModuleID, prevModuleID); } - - return false }); // Переместить вверх мероприятие @@ -234,45 +234,43 @@ $(function() { var SubmoduleID = parentDIV.attr('id'); var nextSubmoduleID = parentDIV.next('div').attr('id'); SwapSubmoduleOrder(SubmoduleID, nextSubmoduleID); - - return false }); // Переместить вниз мероприятие $(".moduleList").on('click', '.downSubModule', function(){ var parentDIV = $(this).parent('div').parent('div'); - if ($('div').is(parentDIV.next('.subModule'))) { - parentDIV.insertAfter(parentDIV.next()); + var subModule = parentDIV.next('div.subModule'); + if (subModule.length > 0) { + parentDIV.insertAfter(subModule); var SubmoduleID = parentDIV.attr('id'); var prevSubmoduleID = parentDIV.prev('div').attr('id'); SwapSubmoduleOrder(SubmoduleID, prevSubmoduleID); } - - return false }); // Добавить модуль $('.addModule').click(function(){ - var OrderNum = $('.moduleGroup', '.moduleList').last().index('.moduleGroup') + 2; + var OrderNum = $('div.moduleGroup', 'div.moduleList').last().index('.moduleGroup') + 2; $.post( URLdir + 'handler/map/AddModule', { - 'DisciplineID': DisciplineID, - // 'OrderNum': OrderNum + 'DisciplineID': DisciplineID }, function(data){ data = $.parseJSON(data); if(data.success === true) { - if ($('div').is('.ExamModule')) - $('.ExamModule').before(GetModuleTmp()); + var ExamModule = $('div.ExamModule'); + if (ExamModule.length > 0) + $('div.ExamModule').before(GetModuleTmp()); else - $('.moduleList').append(GetModuleTmp()); + $('div.moduleList').append(GetModuleTmp()); + // К добавленному модулю добавляем ID - var thisModuleDIV = $('.moduleGroup').eq(OrderNum - 1); + var thisModuleDIV = $('div.moduleGroup').eq(OrderNum - 1); thisModuleDIV.attr('id', data.ModuleID); // К добавленному в модуль мероприятию добавляем ID - thisModuleDIV.children('.subModules').children('.subModule').eq(0).attr('id', data.SubmoduleID); + thisModuleDIV.children('div.subModules').children('div.subModule').eq(0).attr('id', data.SubmoduleID); EventInspector_ShowMsg('Модуль добавлен', 'success'); } else EventInspector_ShowMsg('Ошибка при добавление модуля', 'error'); } @@ -285,21 +283,20 @@ $(function() { // Добавить мероприятие $('.moduleList').on('click', '.addSubModule', function(){ - var ModuleID = $(this).parent('div').attr('id'); - var SubmodulesDIV = $(this).siblings('.subModules'); - var OrderNum = SubmodulesDIV.children('.subModule').last().index() + 2; + var ModuleID = $(this).parent().attr('id'); + var SubmodulesDIV = $(this).siblings('div.subModules'); + var OrderNum = SubmodulesDIV.children('div.subModule').last().index() + 2; $.post( URLdir + 'handler/map/AddSubmodule', { 'ModuleID': ModuleID - //'OrderNum': OrderNum }, function(data){ data = $.parseJSON(data); if(data.success === true) { // К добавленному мероприятию добавляем ID SubmodulesDIV.append(GetSubModuleTmp()); - SubmodulesDIV.children('.subModule').eq(OrderNum - 1).attr('id', data.SubmoduleID); + SubmodulesDIV.children('div.subModule').eq(OrderNum - 1).attr('id', data.SubmoduleID); EventInspector_ShowMsg('Мероприятие добавлено', 'success'); } else EventInspector_ShowMsg('Ошибка при добавление мероприятия', 'error'); } @@ -315,11 +312,11 @@ $(function() { // Подтверждение при удаление модуля $('.moduleList').on('click', '.confirmDeleteModule', function(){ var thisObj = $(this); - var subModulesDIV = $(this).parent('div').parent('div').next('.subModules'); + var subModulesDIV = $(this).parent().parent().next('div.subModules'); var CurrentModuleOrder = $(this).parent().parent().parent().index() + 1; // Собираем в JSON строку ID мероприятий var JSONSubmodules = '['; - $('.subModule', subModulesDIV).each(function(){ + $('div.subModule', subModulesDIV).each(function(){ JSONSubmodules += $(this).attr('id') + ','; }); JSONSubmodules = JSONSubmodules.substr(0, JSONSubmodules.length - 1); @@ -334,7 +331,7 @@ $(function() { $.post( URLdir + 'handler/map/DeleteModule', { - 'ModuleID': $(this).parent('div').parent('div').parent('div').attr('id'), + 'ModuleID': $(this).parent('').parent('').parent('').attr('id'), 'SubmodulesID': JSONSubmodules, 'CurrentModuleOrder': CurrentModuleOrder, 'ChangeOrderModulesID': ChangeOrderModulesID @@ -342,7 +339,7 @@ $(function() { function(data){ data = $.parseJSON(data); if(data.success === true) { - thisObj.parent('div').parent('div').parent('div').remove(); + thisObj.parent('').parent('').parent('').remove(); EventInspector_ShowMsg('Модуль удален', 'success'); } else EventInspector_ShowMsg('Ошибка при удаление модуля', 'error'); @@ -368,20 +365,20 @@ $(function() { return $(element).attr("id"); }); var ChangeOrderSubmodulesID = '[' + AttrID.get() + ']'; - ChangeSubmoduleMaxRate($(this).parent('div').parent('div').attr('id'), 0); + ChangeSubmoduleMaxRate($(this).parent('').parent('').attr('id'), 0); // $.post( URLdir + 'handler/map/DeleteSubmodule', { - 'SubmoduleID': $(this).parent('div').parent('div').attr('id'), + 'SubmoduleID': $(this).parent('').parent('').attr('id'), 'CurrentSubmoduleOrder': CurrentSubmoduleOrder, 'ChangeOrderSubmodulesID': ChangeOrderSubmodulesID }, function(data){ data = $.parseJSON(data); if(data.success === true) { - var sub = thisObj.parent('div').parent('div'); - var mod = sub.parent('div').parent('div').find('.moduleHead'); + var sub = thisObj.parent('').parent(''); + var mod = sub.parent('').parent('').find('.moduleHead'); // get old submodule values var dif1 = sub.find('.currentControl').find('input').val(); var dif2 = sub.find('.landmarkControl').find('input').val(); @@ -419,7 +416,7 @@ $(function() { $('.moduleList').on('focusout', '.ModuleName', function(){ var NewModuleName = $(this).val(); if (NewModuleName != '' && ModuleName != NewModuleName) { - var ID = $(this).parent('div').parent('div').parent('div').attr('id'); + var ID = $(this).parent('').parent('').parent('').attr('id'); $.post( URLdir + 'handler/map/ChangeModuleName', { diff --git a/~dev_rating/media/js/discipline/general.js b/~dev_rating/media/js/discipline/general.js index 00d6382d7..757b412d3 100644 --- a/~dev_rating/media/js/discipline/general.js +++ b/~dev_rating/media/js/discipline/general.js @@ -108,7 +108,7 @@ $(function() { var jTemp = $('.HiddenInputFacultyID').first(); - if (jTemp) { + if (jTemp.length > 0) { FacultyID = jTemp.val(); // Факультет, к которой привязана дисциплина jTemp.remove(); // Тут даже Шерлок Холмс бессилен } -- GitLab