function check_task(divID, check_ts)
{
	var ret = true;
	var alertText = '';
	if (check_ts == 'true')
	{
		ret = ts_checkvars(divID);
	}
	if (check_date_len('taskdatum') == false)
	{
		alertText += '- ' + getLang("tasks", "task_err_date") + '<br/>';
		ret = false;
	}
	if ($('name'))
	{
		if (trimString($('name').value).length == 0)
		{
			alertText += '- ' + getLang("tasks", "task_err_name") + '<br/>';
			ret = false;
		}
	}
	if ($('text'))
	{
		if (trimString($('text').value).length == 0)
		{
			alertText += '- ' + getLang("tasks", "task_err_desc") + '<br/>';
			ret = false;
		}
	}
	if ($('leistDauer'))
	{
		if (trimString($('leistDauer').value).search(/^[0-9]+$/) == -1)
		{
			alertText += '- ' + getLang("tasks", "task_err_duration") + '<br/>';
			ret = false;
		}
	}
	if ($('isNB') && $('NB_grund'))
	{
		if (($('isNB').value == 'Y') && (trimString($('NB_grund').value).length == 0))
		{
			alertText += '- ' + getLang("all", "reasonHaveToFilled") + '<br/>';
			ret = false;
		}
	}
	if (alertText.length > 0)
	{
		showInfoDivContainer(alertText, 'fehler');
	}
	return ret;
}

function task_save(leave)
{
	if ($('taskForm'))
	{
		showInfoDivContainer('', 'ajax');
		var url = 'ajax/srv/tasks.php';
		new Ajax.Request (url,
			{
				method: 'post',
				postBody: $('taskForm').serialize(),
				onSuccess: function (transport)
				{
					var response = transport.responseText;
					if (response != 'error')
					{
						showInfoDivContainer(getLang("pc", "compEdit_saveSuccess"));
						if (leave == 'true')
						{
							location.href = $('backtoString').value;
						}
						else
						{
							if (response.length > 0)
							{
								location.href = response;
							}
						}
					}
					else
					{
						showInfoDivContainer(getLang("all", "failureOccurred"), 'fehler');
					}
				}
			}
		);
	}
}

function taskCheckAndSave(divID, check_ts, leave)
{
	if (check_task(divID, check_ts))
	{
		task_save(leave);
	}
}

function taskShowZuweisungen(taskID, wvID, modus, showCheckboxes)
{
	if ($('task_zuweisungen_div'))
	{
		$('task_zuweisungen_div').innerHTML = '<div style="text-align: center;"><img src="media/hp/ajaxrequest.gif"></div>';
		var url = 'ajax/srv/tasks_zuweisungen.php?t=show&taskID='+encodeURIComponent(taskID)+
							'&wvID='+encodeURIComponent(wvID)+
							'&modus='+encodeURIComponent(modus)+
							'&showCheckboxes='+encodeURIComponent(showCheckboxes);
		new Ajax.Request (url,
			{
				method: 'get',
				onSuccess: function (transport)
				{
					var response = transport.responseText;
					$('task_zuweisungen_div').innerHTML = response;
				}
			}
		);
	}
}

function tasks_getList()
{
	if ($('tasksZuweisungenList'))
	{
		var tasksZuweisungenSelect = ($('tasksZuweisungenSelect')) ? $('tasksZuweisungenSelect').options[$('tasksZuweisungenSelect').selectedIndex].value : 0;
		var tasksZuweisungenSubSelect = ($('tasksZuweisungenSubSelect')) ? $('tasksZuweisungenSubSelect').options[$('tasksZuweisungenSubSelect').selectedIndex].value : 0;
		var taskID = ($('tasks_taskID')) ? $('tasks_taskID').value : 0;
		var wvID = ($('tasks_wvID')) ? $('tasks_wvID').value : 0;
		var modus = ($('tasks_modus')) ? $('tasks_modus').value : 0;
		var showCheckboxes = ($('tasks_showCheckboxes')) ? $('tasks_showCheckboxes').value : 0;
		$('tasksZuweisungenList').innerHTML = '<div><img src="media/hp/ajaxrequest.gif"></div>';
		var url = 'ajax/srv/tasks_zuweisungen.php?t=getList'+
							'&taskID='+encodeURIComponent(taskID)+
							'&wvID='+encodeURIComponent(wvID)+
							'&modus='+encodeURIComponent(modus)+
							'&showCheckboxes='+encodeURIComponent(showCheckboxes)+
							'&selectID='+encodeURIComponent(tasksZuweisungenSelect)+
							'&subSelectID='+encodeURIComponent(tasksZuweisungenSubSelect);
		new Ajax.Request (url,
			{
				method: 'get',
				onSuccess: function (transport)
				{
					var response = transport.responseText;
					$('tasksZuweisungenList').innerHTML = response;
				}
			}
		);
	}
}

function tasks_getSubSelect(subID)
{
	if (parseInt(subID, 10) == 0)
	{
		tasks_getList();
	}
	else
	{
		if ($('tasks_subSelectDiv'))
		{
			$('tasks_subSelectDiv').innerHTML = '<div style="text-align: center; display: inline;"><img src="media/hp/ajaxrequest.gif"></div>';
			var url = 'ajax/srv/tasks_zuweisungen.php?t=subSelect&subID='+encodeURIComponent(subID);
			new Ajax.Request (url,
				{
					method: 'get',
					onSuccess: function (transport)
					{
						var response = transport.responseText;
						$('tasks_subSelectDiv').innerHTML = response;
					}
				}
			);
		}
	}
}

function taskZuweisungenSelect()
{
	if ($('tasksZuweisungenSelect'))
	{
		var subID = parseInt($('tasksZuweisungenSelect').options[$('tasksZuweisungenSelect').selectedIndex].value, 10);
		switch (subID)
		{
			case 4:
			case 5:
			case 6:
				($('tasksZuweisungenSubSelect')) ? $('tasksZuweisungenSubSelect').selectedIndex = 0 : true;
				tasks_getSubSelect(subID);
				break;
			default:
				if ($('tasksZuweisungenSubSelect'))
				{
					$('tasksZuweisungenSubSelect').hide();
					$('tasksZuweisungenSubSelect').selectedIndex = 0;
				}
				tasks_getSubSelect(0);
				break;
		}
	}
}

function tasks_fillAllInput()
{
	var tabelle = $('zuw_tabelle');
	var inputfeld;
	for (var i = 0; i < tabelle.rows.length; i++)
	{
		if (inputfeld = $('zuw_preisfeld_'+i))
		{
			inputfeld.value = $('zuw_preis_alle').value;
		}
	}
}

function tasks_fillAllCheckboxes()
{
	var tabelle = $('zuw_tabelle');
	var checkbox;
	var zuw_checked_alle = $('zuw_checked_alle');
	for (var i = 0; i < tabelle.rows.length; i++)
	{
		if (checkbox = $('zuw_checkedfeld_'+i))
		{
			checkbox.checked = (zuw_checked_alle.checked == true) ? true : false;
		}
	}
}

function tasks_zuweisungen_speichern(taskID, linkTypID)
{
	showInfoDivContainer('', 'ajax');
	var linkTypArr = new Array(1,3,4,5,6);
	var url = 'ajax/srv/tasks_zuweisungen.php?t=save&taskID='+taskID+'&selectID='+linkTypID;
	var deleteString = 'delete=';
	var addString = 'add=';
	var preisString = '';
	for (var i = 0; i < linkTypArr.length; i++)
	{
		if ($$('input.zuwCheckbox_'+linkTypArr[i]).length)
		{
			for (var j = 0; j < $$('input.zuwCheckbox_'+linkTypArr[i]).length; j++)
			{
				deleteString += encodeURIComponent($$('input.zuwCheckbox_'+linkTypArr[i])[j].value);
				if ($$('input.zuwCheckbox_'+linkTypArr[i])[j].checked)
				{
					addString += encodeURIComponent($$('input.zuwCheckbox_'+linkTypArr[i])[j].value);
					if ($('zuw_preis_'+$$('input.zuwCheckbox_'+linkTypArr[i])[j].value) && (typeof $('zuw_preis_'+$$('input.zuwCheckbox_'+linkTypArr[i])[j].value) != 'undefined'))
					{
						preisString += 'preis_'+$$('input.zuwCheckbox_'+linkTypArr[i])[j].value+'='+encodeURIComponent($('zuw_preis_'+$$('input.zuwCheckbox_'+linkTypArr[i])[j].value).value);
					}
				}
				if (typeof $$('input.zuwCheckbox_'+linkTypArr[i])[j+1] != 'undefined')
				{
					deleteString += ',';
					if ($$('input.zuwCheckbox_'+linkTypArr[i])[j+1].checked)
					{
						addString += ',';
					}
					if (typeof $('zuw_preis_'+$$('input.zuwCheckbox_'+linkTypArr[i])[j+1].value) != 'undefined')
					{
						preisString += '&';
					}
				}
			}
		}
	}
	var requestURL = url+'&'+deleteString+'&'+addString;
	if (preisString.length)
	{
		requestURL += '&'+preisString;
	}
	new Ajax.Request (requestURL,
		{
			method: 'get',
			onSuccess: function (transport)
			{
				showInfoDivContainer(getLang("pc", "compEdit_saveSuccess"));
				var response = transport.responseText;
				//alert(response);
			}
		}
	);
}

function tasks_fillAllCheckboxes(linkTypID)
{
	if ($('zuw_checked_alle_'+linkTypID))
	{
		for (var i = 0; i < $$('input.zuwCheckbox_'+linkTypID).length; i++)
		{
			$$('input.zuwCheckbox_'+linkTypID)[i].checked = $('zuw_checked_alle_'+linkTypID).checked;
		}
	}
}

function tasks_countZuweisungenChecked()
{
	var linkTypArr = new Array(1,3,4,5,6);
	var ret = false;
	for (var i = 0; i < linkTypArr.length; i++)
	{
		for (var j = 0; j < $$('input.zuwCheckbox_'+linkTypArr[i]).length; j++)
		{
			if ($$('input.zuwCheckbox_'+linkTypArr[i])[j].checked)
			{
				ret = true;
			}
		}
	}
	if (ret == false)
	{
		alert(getLang("tasks", "task_err_oneAssign"));
	}
	return ret;
}

function tasks_checkAndSubmit(check)
{
	switch (check)
	{
		case 'yes':
			if (tasks_countZuweisungenChecked())
			{
				tasks_checkTask();
			}
			break;
		default:
			if (tasks_countZuweisungenChecked())
			{
				$('taskForm').submit();
			}
			break;
	}
}

function tasks_checkTask()
{
	if (confirm(getLang("tasks", "futureWarning")) == true)
	{
		$('taskForm').submit();
	}
}

function tasks_fillAllInput(linkTypID)
{
	if ($('zuw_preis_alle_'+linkTypID))
	{
		for (var i = 0; i < $$('input.zuwPreis_'+linkTypID).length; i++)
		{
			$$('input.zuwPreis_'+linkTypID)[i].value = $('zuw_preis_alle_'+linkTypID).value;
		}
	}
}

function tasks_changeInterneInfo(e, taskID)
{
  tasks_hideInterneInfoDiv();
  var div = new Element('div', {'id': 'taskInterneInfoDiv'});
  document.body.appendChild(div);
  div.innerHTML = show_load(true);
  div.style.left = (Event.element(e).cumulativeOffset()[0] + Event.element(e).getWidth()) + 'px';
  div.style.top = (Event.element(e).cumulativeOffset()[1] + Event.element(e).getHeight()) + 'px';
  new Ajax.Request('ajax/srv/tasks.php?t=changeInterneInfo&ID='+encodeURIComponent(taskID), {
    onComplete: function (t) {
      div.innerHTML = t.responseText;
    }
  });
}

function tasks_hideInterneInfoDiv()
{
  if ($('taskInterneInfoDiv')) $('taskInterneInfoDiv').remove();
}

function tasks_saveInterneInfo()
{
  if ($('tasks_changeInterneInfo_form'))
  {
    showInfoDivContainer('', 'ajax');
    new Ajax.Request('ajax/srv/tasks.php?t=saveInterneInfo', {
      postBody: $('tasks_changeInterneInfo_form').serialize(),
      onComplete: function (t) {
        tasks_hideInterneInfoDiv();
        showInfoDivContainer(getLang("all", "edit_successfully"));
        location.reload();
      }
    });
  }
}

function tasks_ntShowCheck()
{
  if ($('neuesTicketEinstellungenDiv')) {
    if ($('bugID') && ($('bugID').value == -1)) {
      $('neuesTicketEinstellungenDiv').show();
    } else {
      $('neuesTicketEinstellungenDiv').hide();
    }
  }
}

function tasks_nt_refreshChecklist()
{
  if ($('task_checklistContainer'))
  {
    var firmenID = ($('firmenID')) ? $('firmenID').value : 0;
    var linkTypID = ($('linkTypID')) ? $('linkTypID').value : 0;
    var linkID = ($('selectedLinkID')) ? $('selectedLinkID').value : 0;
    var url = 'ajax/srv/tasks.php?t=getNTChecklist'+
                                '&firmenID='+encodeURIComponent(firmenID)+
                                '&linkTypID='+encodeURIComponent(linkTypID)+
                                '&linkID='+encodeURIComponent(linkID);
    new Ajax.Request(url, {
      onComplete: function (t) {
        $('task_checklistContainer').innerHTML = t.responseText;
      }
    });
  }
}

function tasks_nt_addChecklistToList()
{
  if ($('task_nt_checklistSelect') && $('tasks_nt_checklistIDs'))
  {
    var checklistIDs = [];
    if ($('tasks_nt_checklistIDs').value.length > 0)
      checklistIDs = $('tasks_nt_checklistIDs').value.split(',');
    if ($('task_nt_checklistSelect').value > 0)
      checklistIDs[checklistIDs.length] = $('task_nt_checklistSelect').value;
    var checklistStr = checklistIDs.uniq().join(',');
    var checklistStrOld = $('tasks_nt_checklistIDs').value;
    $('tasks_nt_checklistIDs').value = checklistStr;
    if (checklistStrOld != checklistStr)
      tasks_nt_getChecklistAuflistung();
  }
}

function tasks_nt_getChecklistAuflistung()
{
  if ($('task_checklistAuflistung') && $('tasks_nt_checklistIDs')) {
    var url = 'ajax/srv/tasks.php?t=getNTChecklistAuflistung&ids='+encodeURIComponent($('tasks_nt_checklistIDs').value);
    new Ajax.Request(url, {
      onComplete: function (t) {
        $('task_checklistAuflistung').innerHTML = t.responseText;
      }
    });
  }
}

function tasks_nt_removeChecklistFromList(prcID)
{
  if ($('task_checklistAuflistung') && $('tasks_nt_checklistIDs')) {
    if (confirm(getLang("admin", "generalDeleteQuestion"))) {
      var checklistIDs = [];
      if ($('tasks_nt_checklistIDs').value.length > 0)
        checklistIDs = $('tasks_nt_checklistIDs').value.split(',');
      var newChecklistIDs = [];
      for (var i = 0, len = checklistIDs.length; i < len; ++i) {
        if (checklistIDs[i] != prcID)
          newChecklistIDs[newChecklistIDs.length] = checklistIDs[i];
      }
      $('tasks_nt_checklistIDs').value = newChecklistIDs.join(',');
      tasks_nt_getChecklistAuflistung();
    }
  }
}

function task_nt_checkPauschal()
{
  if ($('task_nt_pauschale') && $('task_nt_pauschale_betrag_container'))
  {
    $('task_nt_pauschale').checked ? $('task_nt_pauschale_betrag_container').show() : $('task_nt_pauschale_betrag_container').hide();
  }
}

function task_nt_addChecklist()
{
  if ($('task_nt_checklistIDs') && $('task_nt_checklistSelect'))
  {
    var checklistIDs = [];
    if ($('task_nt_checklistIDs').value.length > 0)
    {
      checklistIDs = $('task_nt_checklistIDs').value.split(',');
    }
    checklistIDs[checklistIDs.length] = $('task_nt_checklistSelect').value;
    $('task_nt_checklistIDs').value = checklistIDs.join(',');
  }
}
