var Hydra = function()
{
    //this.lang_code = false;
}

Hydra.prototype.get = function(elem_id)
{
    return document.getElementById(elem_id);
}

Hydra.prototype.open_url = function(url)
{
    document.location.href = url;
}

Hydra.prototype.clear_content = function(elem_id)
{
    this.get(elem_id).innerHTML = '';
}

Hydra.prototype.refresh = function()
{
    document.location.reload();
}

Hydra.prototype.hide_block = function(block)
{
    if (typeof(block)=="string") {
        var elem = this.get(block);
    }
    
    if (elem) {
        elem.style.display = "none";
    }
}

Hydra.prototype.show_block = function(block)
{
    var elem = this.get(block);
    if (elem) {
        elem.style.display = "block";
    }
}

Hydra.prototype.get_attribute = function(elem, attribute_name)
{

    if (elem == undefined) {
        return false;
    }

    if (!elem.hasAttribute) {
        return false;
    }

    if (elem.hasAttribute(attribute_name)) {
        return elem.getAttribute(attribute_name);
    }
    return false;
}

/**
 * Добавляет элемент
 * @param Object parent_elem элемент, для которого надо добавить
 * @param String tag_name имя тега элемента
 * @param Array attributes аттрибуты элемента
 * @param String content контент элемента
 */
Hydra.prototype.add_elem = function(parent_elem, tag_name, attributes, content)
{
    var elem = document.createElement(tag_name);
    
    if (typeof(attributes) == "array" || typeof(attributes) == "object") {
        for(attribute in attributes) {
            elem.setAttribute(attribute, attributes[attribute]);
        }
    }

    if (typeof(content) == "string") {
        elem.textContent = content;
    }
    
    parent_elem.appendChild(elem);
}

Hydra.prototype.add_input_elem = function(parent_elem, attributes)
{
    return this.add_elem(parent_elem, 'input', attributes);
}

Hydra.prototype.add_label = function(parent_elem, content, attributes)
{
    return this.add_elem(parent_elem, 'label', attributes, content);
}

Hydra.prototype.add_br = function(parent_elem)
{
    return this.add_elem(parent_elem, 'br');
}

Hydra.prototype.get_checkbox_value = function(elem_id)
{
    var elem = this.get(elem_id);
    if (elem.checked) {
        return 1;
    }
    return 0;
}

Hydra.prototype.is_function = function(func)
{
    if (typeof(func)=="function") {
        return true;
    }

    return false;
}

Hydra.prototype.is_string = function(str)
{
    if (typeof(str)=="string") {
        return true;
    }

    return false;
}

Hydra.prototype.is_int = function(str)
{
    if (typeof(str)=="number") {
        return true;
    }

    return false;
}


var hydra = new Hydra();