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