


function ItemsList(name)
{
    this.name = name;
    this.order = 'title';
    this.sort = 'ASC';
    this.options = new Object;

    this._setOrder = function _setOrder(column)
    {
        this.order = column;
    }

    this._toggleSort = function _toggleSort()
    {
        //$(dom_obj).find('img').remove();
        if(this.sort == 'ASC'){
            this.sort = 'DESC';
        } else {
            this.sort = 'ASC';
        }
        
        //dom_obj.appendChild(this._getSortImg(this.sort));
    }

    this._getSortImg = function _getSortImg()
    {
        var img_tag = document.createElement('img');
        var img_name = this.sort == 'ASC' ? 'img/items_list_sort_asc.png' : 'img/items_list_sort_desc.png';
        img_tag.setAttribute('src', img_name);
        img_tag.setAttribute('border', 0);

        return img_tag;
    }

    this.changeOrderSort = function changeOrderSort(dom_obj, column)
    {
        if(this.order != column){
            this._setOrder(column);
        } else {
            this._toggleSort();
        }

        this.render(dom_obj, true);
    }

    this.render = function render(dom_obj, update)
    {
        var options = this.options;

        if($(dom_obj).attr('offset') != undefined){
            options.offset = $(dom_obj).attr('offset');
        } else {
            options.offset = 0;
        }

        options.c = this.name;
        options.a = 'list';
        options.order = this.order;
        options.sort = this.sort;

        if(undefined == update){
            options.data_only = false;
            $('#contentBody').load('./', options);
        } else {
            options.data_only = true;
            $('#items_list_items tbody').load('./', options);
        }

        $('th img').remove();
        $('th[column="'+this.order+'"]').append(this._getSortImg());
    }
}