﻿$jq.namespace('MatchCore.UI.Search');
MatchCore.UI.Search.UserNameSearch = function() {
    var _textbox = null;
    var _button = null;
    var wireUpControls = function() {

        $jq(_button).bind('click', search);
    };
    var search = function() {
        location.href = '/usearch/usearchdl.aspx?lid=226&handle=' + escape(_textbox.value);
    };
    return {
        init: function(opts) {
            if (opts && opts != null) {
                _textbox = opts.textbox;
                _button = opts.button;
                wireUpControls();
            }
        }
    };
};

$jq(document).ready(function() {
    $jq(".userSearch").filter(function() {
        return $jq(this).val() != "enter username here"
    }).removeClass("watermarkOn");
    
    $jq(".userSearch").focus(function() {
        $jq(this).filter(function() {
            return $jq(this).val() == "" || $jq(this).val() == "enter username here"
        }).removeClass("watermarkOn").val("");
    });
    $jq(".userSearch").blur(function() {
        $jq(this).filter(function() {
            return $jq(this).val() == ""
        }).addClass("watermarkOn").val("enter username here");
    });
});

MatchCore.UI.Search.Pager = function() {
    var _container;
    var _pageSize = 0;
    var _currentPage = 1;
    var _totalPages = 0;
    var _elmCollection = new Array();

    var wireUpControls = function() {
        $jq("li", _container).each(function() {
            _elmCollection.push(this);
        });
        _totalPages = _elmCollection.length / _pageSize;
        $jq(".nextPage").bind("click", showNextPage);
    }
    var hidePages = function() {
        $jq(_elmCollection).each(function() {
            $jq(this).hide();
        });
    }
    var showNextPage = function() {
        hidePages();
        if (_currentPage >= _totalPages) {
            _currentPage = 0;
        }
        var startIndex = _currentPage * _pageSize;
        var endIndex = startIndex + _pageSize;
        _currentPage++;
        for (startIndex; startIndex < endIndex; startIndex++) {
            $jq(_elmCollection[startIndex]).show();
        }
    }
    return {
        init: function(opts) {
            _container = opts.container;
            _pageSize = opts.meta.pageSize;
            wireUpControls();
            showNextPage();
        }
    }

}
