﻿// buttons: { Delete: true, Cancel: false },

//---  Sample code of Jquery Dialog box ---
$(function () {
    $("#dialog").dialog({
        bgiframe: true,
        height: 140,
        modal: true,
        autoOpen: false,
        resizable: false
    })
});

function HasHtmlTags(text) {
    var patt1 = new RegExp("<[^>]*>", "g");
    return patt1.test(text);
}

function setWaitMessage(formName) {
    var submitButton = $('#' + formName).find("input[type='submit']");
    $(submitButton)
                    .val("Παρακαλώ περιμένετε...")
                    .css("cursor", "default")
                    .attr("disabled", "true");
}


function limitChars(textid, limit, infodiv) {
    var text = $('#' + textid).val();
    var textlength = text.length;
    if (textlength > limit) {
        $('#' + infodiv).html('Δεν μπορείς να γράψεις πάνω απο ' + limit + ' χαρακτήρες!');
        $('#' + textid).val(text.substr(0, limit));
        return false;
    } else {
        $('#' + infodiv).html((limit - textlength) + ' χαρακτήρες απομένουν.');
        return true;
    }
}

function returnSafeBool(str) {
    if (str.toString().toLowerCase() == 'true') {
        return true;
    } else if (str.toString().toLowerCase() == 'false') {
        return false;
    }
}

function alert(message, title) {
    var alertTitle = (title != null || title != undefined) ? title : "Alert";
    jAlert(message, alertTitle);
};

//function confirm(msg, callBackFunc) {
//    $.prompt(msg, {
//        callback: callBackFunc,
//        buttons: { Yes: true, No: false }
//    });
//}

//function confirm2(msg, title, callbackFunc) {
//    Boxy.confirm(msg, callbackFunc, { title: title });
//}

//function alert(msg) {
//    var brown_theme_text = '<h3>Alert</h3>' +
//                                  '<p>' + msg + '</p>';

//    $.prompt(brown_theme_text, {
//        buttons: { Ok: true, Cancel: false },
//        prefix: 'brownJqi'
//    });
//}

//function alert2(msg, title, callbackFunc) {
//    Boxy.alert(msg, callbackFunc, { title: title }
//            );
//}

String.prototype.trim = function () {
    return this.replace(/^\s*/, "").replace(/\s*$/, "");
}


$(document).ready(function () {
    var searchTxt = 'αναζήτηση antallakseto.gr';
    $('#searchSiteField')
                .css("color", "gray")
                .attr('value', searchTxt)
                .focus(function () {
                    $(this).attr('value', '');
                })
                .keyup(function (e) {
                    if (e.keyCode == 13) {
                        var searchValue = $('#searchSiteField').attr('value');
                        if (!searchValue)
                            return;
                        if (searchValue.length == 0 || searchValue==searchTxt) {
                            alert("Παρακαλώ εισάγετε κείμενο αναζήτησης");
                            return;
                        }
                        window.location = "/search?sv=" + searchValue.trim();
                    }
                });

        $('#searchSiteBtn')
                .click(function () {
                    var searchValue = $('#searchSiteField').attr('value');
                    if (!searchValue)
                        return;
                    if (searchValue.length == 0|| searchValue==searchTxt) {
                        alert("Παρακαλώ εισάγετε κείμενο αναζήτησης");
                        return;
                    }
                    window.location = "/search?sv=" + searchValue.trim();
                })
});


$('#mainMenu').corner("bottom");
$('#mainSearch').corner("bottom");
$('.notes').corner();
$('.freeAd').corner("tl br");

$(document).ready(function () {
    $('.errorMessage').hide();
})


function initMenu() {
    $('#menu ul').hide();
    $('#menu ul:first').show();
    $('#menu li a').click(
                function () {
                    var checkElement = $(this).next();
                    if ((checkElement.is('ul')) && (checkElement.is(':visible'))) {
                        return false;
                    }
                    if ((checkElement.is('ul')) && (!checkElement.is(':visible'))) {
                        $('#menu ul:visible').slideUp('normal');
                        checkElement.slideDown('normal');
                        return false;
                    }
                }
                )
};


(function ($) {
    $.fn.customConfirm = function (options) {

        var currentOpts = {};
        currentOpts = $.extend({}, $.fn.customConfirm.defaults, options);

        return this.each(function () {
            obj = $(this);
            var o = $.meta ? $.extend({}, currentOpts, $this.data()) : currentOpts;
            var elemID = obj.attr("id");

            var modalStr = "<div class=\"modal\" id=\"yesno" + elemID + "\">" +
                            "<h2>" +
                                "<span id=\"yesNoModalTitle\">" + currentOpts.Title + "</span>" +
                            "</h2>" +
                            currentOpts.Text +
                            "<p>" +
                                "<span id=\"yesNoModalMessage\"></span>" +
                            "</p>" +
                            "<p>" +
                                "<button class=\"close yes\">" +
                                    currentOpts.YesBtn.toString() +
                                "</button>" +
                                "<button class=\"close no\">" +
                                    currentOpts.NoBtn.toString() +
                                "</button>" +
                            "</p>" +
                        "</div>";
            $('body').append(modalStr);

            var relID = "#yesno" + elemID;
            obj.attr("rel", relID);

            var triggers = obj.overlay({
                // some mask tweaks suitable for modal dialogs
                mask: {
                    color: '#ebecff',
                    loadSpeed: 200,
                    opacity: 0.9
                },
                effect: 'apple',
                top: "20px",
                closeOnClick: false,
                load: currentOpts.callImidiately
            });

            BindDelete(relID, elemID, currentOpts, triggers);
        });
    };

    BindDelete = function (relID, elemID, currentOpts, triggers) {
        buttons = $(relID + " button").click(function (e) {
            var className = $(this).attr("class").split(" ")[1];
            var yes = false;
            //var yes = e.srcElement.innerHTML.toString() == currentOpts.YesBtn.toString();
            var yes = className.toString() == "yes";
            if (yes.toString() == "true") {
                if (typeof (currentOpts.callBackFunc) == "function") {
                    currentOpts.callBackFunc.call(this, currentOpts.UseIdAsParameter ? elemID : "");
                }
            }
            //triggers.overlay().close();
        });
    };

    $.fn.customConfirm.defaults = {
        Title: '',
        Text: '',
        YesBtn: "Ναί",
        NoBtn: "Όχι",
        UseIdAsParameter: false,
        callImidiately: false,
        callBackFunc: function () { }
    };

})(jQuery);




(function ($) {
    $.fn.customDeleteProdConfirm = function (options) {

        var currentOpts = {};
        currentOpts = $.extend({}, $.fn.customConfirm.defaults, options);

        return this.each(function () {
            obj = $(this);
            var o = $.meta ? $.extend({}, currentOpts, $this.data()) : currentOpts;
            var elemID = obj.attr("id");

            var modalStr = "<div class=\"modal\" id=\"yesno" + elemID + "\">" +
                            "<h2>" +
                                "<span id=\"yesNoModalTitle\">" + currentOpts.Title + "</span>" +
                            "</h2>" +
                            "<p>" +
                                "<span id=\"yesNoModalMessage\">"+DeleteOptions()+"</span>" +
                            "</p>" +
                            currentOpts.Text +
                            "<p>" +
                                "<button class=\"close yes\">" +
                                    currentOpts.YesBtn.toString() +
                                "</button>" +
                                "<button class=\"close no\">" +
                                    currentOpts.NoBtn.toString() +
                                "</button>" +
                            "</p>" +
                        "</div>";
            $('body').append(modalStr);

            var relID = "#yesno" + elemID;
            obj.attr("rel", relID);

            var triggers = obj.overlay({
                // some mask tweaks suitable for modal dialogs
                mask: {
                    color: '#ebecff',
                    loadSpeed: 200,
                    opacity: 0.9
                },
                top: "20px",
                closeOnClick: false,
                load: currentOpts.callImidiately
            });

            BindDelete(relID, elemID, currentOpts, triggers);
        });
    };

    BindDelete = function (relID, elemID, currentOpts, triggers) {
        buttons = $(relID + " button").click(function (e) {
            var className = $(this).attr("class").split(" ")[1];
            var yes = false;
            //var yes = e.srcElement.innerHTML.toString() == currentOpts.YesBtn.toString();
            var yes = className.toString() == "yes";
            if (yes.toString() == "true") {
                if (typeof (currentOpts.callBackFunc) == "function") {
                    currentOpts.callBackFunc.call(this, currentOpts.UseIdAsParameter ? elemID : "");
                }
            }
            //triggers.overlay().close();
        });
    };

    DeleteOptions = function(){
        var str = "<b>Αιτία διαγραφής</b><br/>"+
        "<input type='radio' name='deleteOption' value='1' /> το έχω ανταλλάξει<br/>"+
        "<input type='radio' name='deleteOption' value='2' /> το έχω πουλήσει<br/>"+
        "<input type='radio' name='deleteOption' value='3' /> το έχω χαρίσει<br/>"+
        "<input type='radio' name='deleteOption' value='4' /> βρήκα αυτό που έψαχνα<br/>"+
        "<input type='radio' checked='checked' name='deleteOption' value='5' /> απλή διαγραφή";
        return str;
    };

    $.fn.customConfirm.defaults = {
        Title: '',
        Text: '',
        YesBtn: "Ναί",
        NoBtn: "Όχι",
        UseIdAsParameter: false,
        callImidiately: false,
        callBackFunc: function () { }
    };

})(jQuery);


jQuery.extend({
    getUrlVars: function () {
        var vars = [], hash;
        var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
        for (var i = 0; i < hashes.length; i++) {
            hash = hashes[i].split('=');
            vars.push(hash[0]);
            vars[hash[0]] = hash[1];
        }
        return vars;
    },
    getUrlVar: function (name) {
        return $.getUrlVars()[name];
    }
});
