(function($) {
    $.fn.cn_malp = function() {
        this.each(function(){
            var obj = $(this);
            var txt = obj.html().replace(RegExp('-at-','i'), '@');
            var subject = obj.attr('title');
            var to = obj.attr('rel'); 
            obj.html('<a href="mailto:' + to + ' <' + txt + '>?subject=' + subject + '">' + txt + '</a>');
        });
    };    
})(jQuery);

(function($) {

    $.fn.cn_tabs = function(options) {
        
        var defaults = {			
    		tabClassName: '.tab-content',
    		sectionTitleTag: 'h2',
    		fadeFx: true
    	};
	
        var options = $.extend(defaults, options);
        
        this.each(function(i){
            
            var obj = $(this);
            
            var items = $(options.tabClassName, obj);
            items.hide();
            $(obj).prepend('<ul id="tabnav-' + i + '" class="tabnav"></ul>');
            $('.tabnav').hide();
            items.each(function(i) {
                var currItem    = this;
                var currID      = currItem.id;
                var currTAG     = currItem.getElementsByTagName(options.sectionTitleTag)[0]
                var currHTML    = currTAG.innerHTML;
                
                $('.tabnav', obj).append("\n" + '<li id="' + currID + '-tablink" ' + (i == 0 ? ' class=first-child' : '') + '><a id="' + $(currTAG).attr('rel') + '" class="' + currTAG.className + '" href="#' +  currID + '">' + currHTML + '</a></li>');
            }); 
            $('.tabnav').fadeIn();
            $('.tabnav a', obj).click(function(){
                targetID = this.hash;
                items.hide();
                if (options.fadeFx) {
                    $(targetID).fadeIn('fast');
                } else {
                    $(targetID).show();
                };
                
                var tabNavItems = $('.tabnav li', obj);
                    tabNavItems.removeClass('current');
                    var matchingUrl;
                    tabNavItems.each(function(){
                        matchingUrl = '#' + $(this).children('a').attr('href').split('#')[1];
                        if (matchingUrl == targetID) {
                            $(this).addClass('current');
                        } 
                        $($('.tab-content .tabnav li', obj).get(0)).addClass('current');
                    }); 
                return false;
            })
            items.first().show();
            $($('.tabnav li', obj).get(0)).addClass('current');
        });
    };
    
})(jQuery);

(function($) {
    $.fn.cn_limit_chars = function() {
        this.each(function(){
            var obj = $(this);
            limitChars($(obj), 250);
            $(obj).keypress(function(){
                limitChars($(obj), 250);
            });
        });
    };    
})(jQuery);


function limitChars(obj, limit) {
    var text = $(obj).val(); 
    var textlength = text.length;
    var objParent = $(obj).parent();
    var textBox = $(objParent).children('.small-note').children('.char-count');
    
    if (!(textlength < limit)) {
        $(obj).val(text.substr(0,limit));
        $(textBox).html('<span class="error">limit od 250 znakova iskorišten</span>');
    } else {
        var preostalo = (limit - textlength);
        $(textBox).html('preostalo: ' + preostalo);
    }
}

function check_code(el) {
    var fieldValue = el.value;
    if (fieldValue != '') {
        var re = /^[A-Za-z0-9]*[A-Za-z0-9\-]*[A-Za-z0-9]$/;
        var retest = re.test(fieldValue);
        if (retest == true) {
            $.ajax({
                type: "POST",
                url: "/admin/ajax_update.php",
                data: "action=check_code&code=" + fieldValue,
                success: function(msg){
                    $('#feedback').show();
                    $('#feedback').html(msg);
                }
            });
        } else {
            $('#feedback').html('<span class="error">Molimo koristite samo slova i brojeve, bez razmaka!</span>');
        }
    } else {
        $('#feedback').html('<span class="error">Unesite barem jedan znak</span>');
    }
}


function showCoords(c) {
	jQuery('#x').val(c.x);
	jQuery('#y').val(c.y);
	jQuery('#x2').val(c.x2);
	jQuery('#y2').val(c.y2);
	jQuery('#w').val(c.w);
	jQuery('#h').val(c.h);
};

function update_event(year, month, day, el, app_id) {
    clearTimeout(notificationTimeout);

    date = year + '-' + month + '-' + day;
    // alert(el.parentNode);
    $.ajax({
        type: "POST",
        url: "/admin/ajax_update.php",
        data: "action=update_cal&date=" + date + "&app_id=" + app_id,
        success: function(msg){
            // alert( "Data Saved: " + msg );
            if (el.className == 'event' || el.className == 'todayevent') {
                el.className = null;
            } else {
                el.className = 'event';
            }
            $('#feedback').fadeIn(200);
            $('#feedback').html(msg);
            notificationTimeout = setTimeout(function(){
                $('#feedback').fadeOut(200);
            }, 1000);
        }
    });
}

function markAsDone(source, target) {
    var textarea = $(source);
    if (textarea.html() != '') {
        $('#' + target).addClass('done');
    } else {
        $('#' + target).removeClass('done');
    }
}


function updateProfileURL() {
    $('#account-url').val('apartmani-' + $('#last_name').val().toLowerCase());
}





