var tab_dane=new Array();
var vmax=0;
var vmax2=new Array();
var csv_types = new Array('link', 'title', 'category', 'domain', 'url', 'title_url');

function check_csvtypes(){
   pattern = v('newscv_pattern');
   items = pattern.match(/\[.*?\]/);
   alert(items.join(' '));
   return false;
}


function refresh_needs()
{
   $('#zakladki').find('table').each(function(){
     
      if ($(this).hasClass('loaded')){
         $(this).removeClass('loaded');
         $('.c_' + $(this).attr('class')).html('');
         $(this).find('tbody').html('');
      }
   });
}

function loadArtCount(id){
    $.post("ajax.cgi", {'ajax' : 'loadArtCount', 'id' : id}, function(data){
        result = eval('(' + data + ')');
        if (result && result['command']){
            $('#artcount_' + id).html('Artykułów: ' + result['data']);
        }
    });
}

function removeAcc(id){
    if (!confirm('Czy napewno skasować wpis id=' + id + '?')){
        return;
    }
    $.post("ajax.cgi", {'ajax' : 'removeAcc', 'id' : id}, function(data){
        result = eval('(' + data + ')');
        if (result && result['command']){
            $('#tr_acc_' + id).remove();
        } else {
            alert('Nie usunięto elementu id=' + id + '. Wystąpił błąd');
        }
    });
    
}

function dropzawies(id){
    if (!confirm('Czy napewno przywrócić wpis id=' + id + '?')){
        return;
    }
    $.post("ajax.cgi", {'ajax' : 'dropzawies', 'id' : id}, function(data){
        result = eval('(' + data + ')');
        if (result && result['command']){
            $('#tr_acc_blocked_' + id).remove();
        } else {
            alert('Nie usunięto elementu id=' + id + '. Wystąpił błąd');
        }
    });
}

function new_needs(type)
{
   if (!$('table.' + type).hasClass('loaded'))
   {
      $('table.' + type + ' tbody').html('<div class="loading_img"><img  src="images/ajax-loader.gif" alt="Ładowanie"></div>');
      user = parseInt($('#select_user').val(), 10);
      if (!user || user == 0){
         user = parseInt($('#browsing_user').val());
      }
      $.post("ajax.cgi", {'ajax' : 'needs', 'need_type' : type, 'user_id' : user}, function(data){
         //alert(data);
         //$('#footer').append('<br><br><br>' + data);
         //alert(data.substring(data.length / 2, data.length));
         result = eval('(' + data + ')');
         if (result['command']){
            $('table.' + type + ' tbody').html(result['data']);
            $('.c_' + type).html($('table.' + type).find('tr').length);
            $('table.' + type).addClass('loaded');
            set_imadze();
         }
         else{
            $('table.' + type + ' tbody').html('Brak wyników');
         }
      });
   }
}

function toggleBook(obj, form)
{
   return false;
   document.forms[form].project_id.value = get_id($(obj).attr('name'));
   pos = getXY(obj);
   $('#booked').css('top', (pos[1] - $('#booked').height() * 2) + 'px').css('left', (pos[0] - $('#booked').width() - 20) + 'px');
   $('#booked').show();
}

function book_writer(obj)
{
   id = get_id($(obj).attr('name'));
   user = document.forms['need_form'].browsing_user.value;
   $.post("ajax.cgi", {'ajax' : 'book_writer', 'project_id' : id, 'user_id' : user}, function(data){
      result = eval('(' + data + ')');
      if (result['command']){
         tr = $(obj).parent().parent();
         field = tr.find('.booked');
         currentTime = new Date();
         currentTime.setDate(currentTime.getDate() + 1);
         d = currentTime.getFullYear() + '-' + (currentTime.getMonth() + 1) + '-' + currentTime.getDate() + ' ' + currentTime.getHours() + ':' + currentTime.getMinutes();
         img = '<img src="images/cross.png" class="imadze pointer" alt="Usuń" title="Usuń" name="removebook_'+id+'" onclick="drop_book(this);">';
         field.html('(Zarezerwowano dla: ' + document.forms['need_form'].user_name.value + ' do dnia: ' + d + img + ')');
      }
      else{
         alert('Wystąpił błąd albo zarezerwowałeś już maksymalną ilość');
      }
   });
}

function drop_book(obj)
{
   id = get_id($(obj).attr('name'));
   $.post("ajax.cgi", {'ajax' : 'drop_book', 'project_id' : id}, function(data){
      result = eval('(' + data + ')');
      if (result['command']){
         tr = $(obj).parent().parent();
         tr.find('.booked').html('');
      }else{
         alert('Podczas usuwania występił błąd');
      }
   });
   
}

function generatePassword(){
   len = 8;
   letters = 'abcdefghijklmnoprstuwxyz1234567890';
   pass = '';
   for (i = 0;i < len; i++){
      idx = Math.floor(Math.random() * letters.length);
      if (Math.random() > 0.5){
         pass += letters[idx].toUpperCase();
      }else{
         pass += letters[idx];
      }
   }
   for (i=0;i<arguments.length;i++) {
       $('input[name='+arguments[i]+']').val(pass);
   }
   return pass;
}

function vprzedatuj(){
   var f = document.forms['przedatuj_form'];
   if (!isDigit(f.ile_art.value)){
      alert('Niepoprawna ilosc');
      return false;
   }
   return true;
}

function switchaction(action, form)
{
   document.forms[form].action.value = action;
   if (action == 'przedatuj'){
      checkSel();
   }
}

function multiakcje_change(obj)
{
   if (obj.value == 'usun_linki')
      $('#ile_dziennie').show();
   else
      $('#ile_dziennie').hide();
}

function rozwin(obj)
{
   $(obj).parent().find('div').slideToggle('slow');
}

function checkrows(obj, f, form)
{
   id = f.selected.value;
   tab = $(obj).parent().parent().parent();
   tab.find('.savebtn').hide();
   tab.find('tr').each(function(){
      $(this).find('.editable input[type=text]').each(function(){
        if (form == 'users_form'){
            $(this).parent().html($(this).val());
        } else {
            $(this).parent().html('<a href="index.cgi?page=showcategory&id='+id+'">' + $(this).val() + '</a>');
        }
      });
   });
}

function editrow(obj, form)
{
	var f = document.forms[form];
    checkrows(obj, f, form);
	f.selected.value = get_id(obj.name); 
	f.action.value = 'update_' + form;
	//obj.value = 'Zamień';
	
	tr = $(obj).parent().parent('tr');
    var i = cimg('images/disk_multiple.png', 'savebtn', 'Zapisz', 'submit(\''+form+'\');');
    tr.find('.savebtn').show();
	tr.find('td').each(function()
	{
		if ($(this).hasClass('editable'))
		{
			var element = cr('input', 'text', $(this).attr('class').split(' ').slice(-1), trim($(this).text()));
			$(this).html(element);
            $(this).append(i);
		}
	});
    //dis_multiple.png
	//tr.css('background', '#cccccc');
	//obj.setAttribute('onclick', 'submit(\''+form+'\');');
    return false;
}

function removerow(obj, form)
{
	var f = document.forms[form];
	f.action.value = 'remove_'+form;
	f.selected.value = get_id(obj.name);
	submit(form);
}

function cimg(src, _class, title, onclick)
{
   var i = document.createElement('img');
   i.src = src;
   i.setAttribute('class', _class);
   i.setAttribute('title', title);
   i.setAttribute('alt', title);
   i.setAttribute('onclick', onclick);
   return i;
   
}

function cr(element, type, name, value)
{
	var e = document.createElement(element);
	e.setAttribute('type', type);
	if (type == 'text')
		e.setAttribute('size', 12);
	e.name = name;
	e.value = value;
    e.setAttribute("value", value);
	return e;
}

function submit(form)
{
	document.forms[form].submit();
}s

function add_to_clipboard()
{
   document.csvform.csv.focus();
   document.csvform.csv.select();
}

function isDate(sDate) {
   var re = /^\d{4}(\-|\/|\.)\d{1,2}\1\d{1,2}$/
   if (re.test(sDate)) {
      var dArr = sDate.split("-");
      if (dArr[0] > 2100 || dArr[0] < 2000)
	return false;
     if (dArr[1] > 12 || dArr[1] < 0)
	return false;
    if (dArr[2] > 31 || dArr[2] < 0)
	return false;

	return true;
   }
   else {
      return false;
   }
}

function add_tag()
{
   alert('ch tak');
}

function isDigit(digit){
	var re=/^\d+$/
	if (re.test(digit)){
		return true;
	}
	else{
		return false;
	}
}

function valid_przedatuj(){
    if (!isDigit(document.forms.form_lista_artow.ile_art.value)){
        alert('Niepoprawna ilość artykułów');
        return false;
    }
    if (!isDigit(document.forms.form_lista_artow.ile_dni.value)){
        alert('Niepoprawna ilość dni');
        return false;
    }
    if (document.forms.form_lista_artow.start_date.value != ''){
        if (!isDate(document.forms.form_lista_artow.start_date.value)){
            alert('Niepoprawna data');
            return false;
        }
    }
    
    if (confirm('Czy napewno przedatować te artykuły?')){
        checkSel();
        return true;
    }
        else{
        return false
    }
}

function valid_edit_art(form)
{
	var result = true;
	if (form.art_title.value.length < 1)
	{
		result = false;
		alert('Niepoprawny tytuł');
	}
	if (form.art_category.value.length < 1)
	{
		result = false;
		alert('Niepoprawna kategoria');
	}
	if (form.art_tags.value.length < 1)
	{
		result = false;
		alert('Niepoprawne tagi');
	}
	return result;
}
function UsunZapotrzebowanie(id, enddate)
{
	var form = document.forms['need_form'];
	form.project_id.value=id;
    form.enddate.value = enddate;
	var days = prompt('Na ile dni zawiesić zapotrzebowanie?');
	if (!days)
		return false;
	var reg = /^[\d]+$/;
	if (!reg.test(days))
	{
		alert('Nie poprawna ilość dni');
		return false;
	}
	form.days.value=days;
	return true;
}

function PriorytetZapotrzebowanie(id, obj, up)
{
	//var form = document.forms['need_form'];
	//form.project_id.value=id;
	//form.wywal.value='2';
    if (up)
      akcja = 2;
   else
      akcja = 3;
    $.post("ajax.cgi", {'ajax' : 'priorytet', 'project' : id, 'akcja' : akcja}, function(data){
      result = eval('(' + data + ')');
      if (result['command']){
         tr = $(obj).parent().parent();
         pr_field = tr.find('.pr_no');
         if (!result['data']){
            //usuwa z prio
            pr_field.html('');
            tr.find('.prio_down').hide();
            tr.find('.prio_up').show();
            $('.c_priorytet').html(parseInt($('.c_priorytet').html(), 10) - 1);
            $('.c_do_napisania').html(parseInt($('.c_do_napisania').html(), 10) + 1);
            $('.do_napisania').find('tbody').append(tr.clone());
            tr.remove();
         }
         else{
            pr_field.html('Priorytet: ' + result['data']);
            if (parseInt(result['data'], 10) == 1){
               $('.c_priorytet').html(parseInt($('.c_priorytet').html(), 10) + 1);
               $('.c_do_napisania').html(parseInt($('.c_do_napisania').html(), 10) - 1);
               $('.priorytet').find('tbody').append(tr.clone());
               tr.remove();
            }
            if (parseInt(result['data'], 10) == 3){
               tr.find('.prio_up').hide();
               tr.find('.prio_down').show();
            }
            else{
               tr.find('.prio_down').show();
               tr.find('.prio_up').show();
            }
         }
         
      }else{
         alert('Wystąpił bład zapytania');
      }
    });
	return false;
}

function PriorytetUsun(id)
{
	var form = document.forms['need_form'];
	form.project_id.value=id;
	form.wywal.value='3';
	return true;
}

function SetTemplate()
{
   var e = g('template_id');
   e.value = 1;
}

function WywalZapotrzebowanie(id, obj)
{
   $.post("ajax.cgi", {'ajax' : 'block_in_needs', 'project' : id}, function(data){
      result = eval('(' + data + ')');
      if (result['command']){
         $(obj).parent().parent().remove();
      }
      else{
         alert('Podczas usuwania wystąpił błąd');
      }
   });
   return false;
}

function can_add()
{
   if ($('input[name=action_type]:radio:checked').length > 0 &&
       ($('.radio_text_type').is(':hidden') || $('input[name=text_type]:radio:checked').length > 0) &&
       $('input[name=link_source]:radio:checked').length > 0)
   {
      $('[name*=add_new_set]').removeAttr("disabled");
   }
}

function display_new(s)
{
	if (s.value == 0)
	{
      no_border(s);
      no_border(g('new_category_name'));
		g('new_category_name').disabled=false;
	}
	else
	{
      g('new_category_name').value='';
		g('new_category_name').disabled=true;
        validate_blur(g('new_category_name'));
        set_valid(s, true);
	}
}

function change_date(id, date)
{
	if (date == '')
		return
	g('year' + id).value = date.substring(0, 4);
	g('mounth' + id).value = date.substring(5, 7);
	g('day' + id).value = date.substring(8, 10);
}

function form_submit(object, form_name)
{
	if (object.value != 0){
		document.forms[form_name].submit();
	}
}

function sprawdz_co(object)
{
	if (object.value == 'nazwa')
	{
		g('nowa_nazwa').style.display = 'block';
	}
	else
	{
		g('nowa_nazwa').style.display = 'none';
	}
}

function check_count()
{
	var el = g('arts_count');
	count = el.innerHTML;
	if (count == '0')
	{
		return confirm('Czy napewno usunąć projekt?');
	}
	else
	{
		alert('Nie możesz usunąć projektu, ponieważ zawiera: ' + count + ' artukuły/ów');
		return false;
	}
}

function loadtr(obj)
{
   for (i = 0; i < trlinks.length - 1; i++){
      add_swl_link_set($(obj).parent().find('.set').find('input[type=button]'));
   }
   
   i = 0;
   tpl = $(obj).parent().find('.set').each(function(){
      $(this).find('input[name=title_b_1_' + i + ']').val(trlinks[i]['title']);
      $(this).find('input[name=link_b_1_' + i + ']').val(trlinks[i]['url']);
      i++;
   });
}

function add_swl_link_set(obj)
{
   tpl = $(obj).parent().clone();
   tpl.find('.nocopy').remove();
   set = $(obj).parent().parent().find('.set').length;
   $(obj).parent().parent().find('.level_count').val(set + 1);
   tpl.find('.setmember').each(function(){
      if ($(this).attr('name') !== undefined){
            $(this).attr('name', get_name($(this).attr('name')) + '_' + set);
         }
         if ($(this).attr('id') !== undefined)
            $(this).attr('id', get_name($(this).attr('id')) + '_' + set);
         if ($(this).attr('for') !== undefined)
            $(this).attr('for', get_name($(this).attr('for')) + '_' + set);
   });
   $(obj).parent().parent().append(tpl);
   
   $('.blur').blur(function(){
			$(this).click(validate_blur(this));
		});
}

function copy_above(from, set)
{
   lvl = parseInt(from, 10) + 1;
   i = 0;
   $('div .level_' + lvl).find('.set_' + set).find('.set').remove();
   tpl = $('div .level_' + from).find('.set_' + set).find('.set').clone().each(function(){
      $(this).find('.setmember').each(function(){
         if ($(this).attr('name') !== undefined){
            $(this).attr('name', get_tag_name($(this).attr('name')) + '_' + set + '_' + lvl + '_' + i);
         }
         if ($(this).attr('id') !== undefined)
            $(this).attr('id', get_tag_name($(this).attr('id')) + '_' + set + '_' + lvl + '_' + i);
         if ($(this).attr('for') !== undefined)
            $(this).attr('for', get_tag_name($(this).attr('for')) + '_' + set + '_' + lvl + '_' + i);
      });
      i++;
      $('div .level_' + lvl).find('.set_' + set).find('.sets').append($(this));
   });
   $('div .level_' + lvl).find('.set_' + set).find('.level_count').val(i);
   
   $('.blur').blur(function(){
			$(this).click(validate_blur(this));
   });
   return false;
}

function recount()
{
   var set = 0;
   //('#sets').find
   $('.setclass').each(function(){
      $(this).find('#set_no').html(parseInt(set, 10) + 1);
      $(this).attr('id', 'set_' + set);
      $(this).find('.setmemeber').each(function(){
         $(this).attr('name', get_name($(this).attr('name')) + '_' + set);
         $(this).attr('id', get_name($(this).attr('id')) + '_' + set);
      });
      set++;
   });
   $("#ilosc_art").val(set);
}

function add_link_set()
{
   var sets = $(".boxek").length;
   var template = $(".boxek:last").clone();
   $("#ilosc_box").val(sets + 1);
   template.find('.box_no').html(sets + 1);
   template.attr('id', 'box_' + sets);
   template.find('.setmemeber').each(function(){
      var name = get_name($(this).attr('name'));
      var id = get_name($(this).attr('id'));
      $(this).attr('name', name + '_' + sets);
      $(this).attr('id', id + '_' + sets);
   });
   $("#boxy").append(template);
}

function remove_link_set(btn)
{
   var name = get_id(btn.name);
   if ($(".boxek").length == 1)
   {
      $(btn).parent().parent().parent().parent().find('.powiadomienie').remove();
      $(btn).parent().parent().parent().before(get_error("Jeden zestaw musi zostać.", 'blad'));
      return false;
   }
   $('#box_'+name).remove();
   recount_link_set();
   return false;
}

function recount_link_set()
{
   var set = 0;
   $('.boxek').each(function(){
      $(this).find('.box_no').html(set + 1);
      $(this).attr('id', 'box_' + set);
      $(this).find('.setmemeber').each(function(){
         $(this).attr('name', get_name($(this).attr('name')) + '_' + set);
         $(this).attr('id', get_name($(this).attr('id')) + '_' + set);
      });
      set++;
   });
   $("#ilosc_box").val(set);
}

function add_set()
{
   if ($('#set_0').is(':hidden'))
   {
      $('#set_0').show();
      return;
   }
   var sets = $(".setclass").length;
   $("#ilosc_art").val(sets + 1);
   var template = $(".setclass:last").clone();
   template.find('#set_no').html(sets + 1);
   template.attr('id', 'set_' + sets);
   template.find('.setmemeber').each(function(){
      var name = get_name($(this).attr('name'));
      if (name == 'art_desc')
         $(this).val('');
      if (name == 'title' || name == 'keywords')
         $(this).val(textareahack(name, sets - 1))
      if (name == 'category'){
         template.find('select').val($(".setclass:last").find('select').val());
      }
      var id = get_name($(this).attr('id'));
      $(this).attr('name', name + '_' + sets);
      $(this).attr('id', id + '_' + sets);
   });
   $("#sets").append(template);
   
   $('.blur').blur(function(){
			$(this).click(validate_blur(this));
		});
}

function textareahack(name, id)
{
   return g(name + '_' + id).value;
}

function selecthack()
{
   
}

function remove_set(btn)
{
   var name = get_id(btn.name);
   if ($(".setclass").length == 1)
   {
      $(btn).parent().parent().parent().parent().find('.powiadomienie').remove();
      $(btn).parent().parent().parent().before(get_error("Jeden zestaw musi zostać.", 'blad'));
      return false;
   }
   $('#set_'+name).remove();
   recount();
}

function get_name(name)
{
	return name.substring(0, name.lastIndexOf('_'));
}

function get_tag_name(name)
{
	return name.substring(0, name.indexOf('_'));
}

function get_real_tagname(name)
{
   var ret = /^(.*)_\d+_\d+/.exec(name);
   return ret[1];
}

function get_linkset_id(name)
{
   var ret = /^(.*)_\d+_\d+_\d+/.exec(name);
   return ret[2];
}

function get_id(name)
{
	return name.substring(name.lastIndexOf('_') + 1, name.length);
}



function add_date(btn)
{
   var set = get_id(btn.name);
   var dates = $('#set_'+set+' .dates');
   count = dates.find('.dateentry').length;
   $('#ilosc_zap_'+set).val(count + 1);
   var template = dates.find('.dateentry:last').clone();
   template.attr('id', 'date_' + count);
   template.find('.setmemeber').each(function(){
      $(this).attr('id', $(this).attr('id').replace(/(\d+?)/, count));
      $(this).attr('name', $(this).attr('name').replace(/(\d+?)/, count));
      $(this).val('');
      var tagname = get_tag_name($(this).attr('name'));
      if (tagname == 'add')
         $(this).hide();
      if (tagname == 'remove')
         $(this).show();
   });
   dates.append(template);
}

function recount_dates()
{
   var sets = 0;
   $('.setclass').each(function(){
      var dates = 0;
      $(this).find('.dateentry').each(function(){
         $(this).attr('id', 'date_' + dates);
         $(this).find('.setmemeber').each(function(){
            $(this).attr('id', get_real_tagname($(this).attr('id')) + '_' + dates + '_' + sets);
            $(this).attr('name', get_real_tagname($(this).attr('name')) + '_' + dates + '_' + sets);
         });
         dates++;
      });
      $('#ilosc_zap_'+sets).val(dates);
      sets++;
   });
}

function remove_date(btn)
{
   var ret = /_(\d+?)_/.exec(btn.name);
   var id = ret[1];
   $('#date_'+id).remove();
   recount_dates();
   
}

function tag_end(btn)
{
   var id = get_id(btn.name);
   var el = g('art_desc_' + id);
   var startPos = el.selectionStart;
   var endPos = el.selectionEnd;
   el.value = el.value.substring(0, startPos)+ '\n<"tagend">\n'+ el.value.substring(endPos, el.value.length); 
}

function change_pub_type(obj)
{
   if ($(obj).val() == 'template')
   {
      $('.radio_text_type').hide();
      $('.synonym_field').hide();
      $('.article_field').hide();
   }
   else if ($(obj).val() == 'publication')
   {
      $('.radio_text_type').show();
   }
}

function change_link_source(obj)
{
   if ($(obj).val() == 'text')
      $('.linkset').hide();
   else if ($(obj).val() == 'manual')
      $('.linkset').show();
}


function change_text_type(obj)
{
   if (obj.value == 'normal')
   {
      $('.synonym_field').hide();
      $('.article_field').show();
   }
   else if (obj.value == 'synonym')
   {
      $('.synonym_field').show();
      $('.article_field').hide();
   }
}

function enable_count(obj)
{
   if (obj.checked)
      $('#art_miesz_length').attr('disabled', true);
   else
      $('#art_miesz_length').removeAttr('disabled');
}

