/**
 * Quan ly hop thoai them co phieu vao danh sach canh bao
 * @author      Nhan Nguyen <nh2nnt@yahoo.com>
 * @since       July 22, 2009
 */
iAlertBox = new function() {
    /**
     * danh sach co phieu
     * @var string
     */
    var _symbols;

    /**
     * thuc hien viec them co phieu vao danh 
     * sach canh bao
     * @param string symbols     danh sach co phieu phan cach boi dau phay (,)
     * @return void
     */
    this.show = function(symbols) {
        _symbols = symbols;

        if (symbols.replace(/\s+/, '') != '') {
            iBox.wait();

            // gui yeu cau them co phieu vao danh sach
            // canh bao
            dojo.xhrPost({
                url: (jSys.baseUrl + '/alert/import'), 
                content: {
                   symbols: _symbols
                },
                handleAs: 'json',
                load: function(data) {
                    if (data['result'] == 'OK')
                        iBox.message('Đã thêm các cổ phiếu được chọn vào danh sách cảnh báo.', 'Thông báo');
                    else 
                        iBox.message(data['result'], 'Thông báo');
                }, 
                error: function(message) {
                    iBox.message('Mất kết nối đến máy chủ.', 'Thông báo', 'OK', 'Error');
                }
            });
        }
        else 
            iBox.message('Xin hãy chọn ít nhất 1 cổ phiếu.', 'Thông báo', 'OK', 'Info');
    }

    /**
     * lay danh sach cac ma chung khoan duoc chon
     * dua vao css-selector syntax va thuoc tinh value 
     * cua checkbox
     * @param string cssSelector    dung de loc ra cac checkbox
     * @return string               danh sach ma duoc chon phan cach boi dau phay (,)
     */
    this.fetchSymbols = function(cssSelector) {
        var coll = [];

        // duyet qua tat ca checkbox de lay danh sach co
        // phieu duoc chon
        dojo.query(cssSelector).forEach(function(item) {
            if (item.checked) 
                coll.push(item.value);
        });

        return coll.join(',').replace(/\s+/, '');
    }

    /**
     * dat trang thai cho tat ca checkbox co trong 
     * danh sach 
     * @param string cssSelector        bieu thuc loc danh sach checkbox
     * @param bool checked              trang thai muon dat
     * @return void
     */
    this.applyState = function(cssSelector, checked) {
        // duyet qua tat ca checkbox de dat trang thai
        dojo.query(cssSelector).forEach(function(item) {
            item.checked = checked;
        });
    }
};
