﻿// Sefarim specific functions

var Sefarim = 
{
    Rachi:
    {
        switchMode: function()
        {
            $('FlowPanel1').ijax.switchMode(); 
            
            if ($('FlowPanel2').ijax.switchMode()) 
            { 
                $('ToggleRachi_Btn').innerHTML = $('ToggleRachi_Btn').innerHTML == 'Avec Rachi' ? 'Sans Rachi' : 'Avec Rachi'
            }
        }
    },
    
    Search:
    {
        go: function(_searchBox, _searchModeSels, _searchResultList, _resultCountBox, _collectionSelector, _bookSelector, _languageSelector, _versionSelector, _commentSearchSelector, _commentsBookSelector, _commentsVersionSelector)
        {
            this.checkVersion(_languageSelector);
              
            if (_searchBox.value != '')
                Intentware.Codex.Query.search(_searchBox, _searchModeSels, _searchResultList, _resultCountBox, _collectionSelector, _bookSelector, _languageSelector, _versionSelector, _commentSearchSelector, _commentsBookSelector, _commentsVersionSelector);
        },

        searchContextChanged: function(_caller)
        {
            if (_caller.id == "SearchedTextType")
            {
                if (($('SearchedTextType').ijax.getValue() == 2) && $('ToggleRachi_Btn').innerHTML == 'Avec Rachi')
                    Sefarim.Rachi.switchMode();
            }
            else
            if (_caller.id == "SearchedLanguage")
            {
                this.checkVersion($('SearchedLanguage'), $('SearchedVersion'));
                
                var versionTitle_ = _caller.ijax.options[_caller.ijax.selectedIndex].ijax.text;
                                
                if (versionTitle_ == 'Hébreu' || versionTitle_ == 'Vocalisé')
                {
                    $('HebScreenKeyboard').setStyle('display', 'block');
                    $('SearchResult').addClass('ijax_list_culture_HE');
                    $('SearchTab').setStyle('height', 208);
                    $('SearchResult').set('html','');
                }
                else
                {
                    $('HebScreenKeyboard').setStyle('display', 'none');
                    $('SearchResult').removeClass('ijax_list_culture_HE');
                    $('SearchTab').setStyle('height', 158);
                    $('SearchResult').set('html','');
                }
                
                $('SearchBox').value = '';
            }
            
            var loaded_ = false;
            try 
            { 
                $('SearchBox').focus();
                loaded_ = true;
            } 
            catch(e){}

            if (loaded_)
            {
                var array_ = $('ResultCount').getElements('.ijax_field_caption');
                var resultCountBoxCaption_ = array_.length > 0 ? array_[0] : null;
                array_ = $('ResultCount').getElements('.ijax_field_value');
                var resultCountBoxValue_ = array_.length > 0 ? array_[0] : null;
                
                if (resultCountBoxCaption_)
                    resultCountBoxCaption_.setStyle('display', 'none');
                if (resultCountBoxValue_)
                    resultCountBoxValue_.innerHTML = this.searchWaitingMessage;
            }
        },
        
        checkVersion: function(_languageSelector)
        {
            var language1Selected_ = $('language1DDList').ijax.getValue();
            var language2Selected_ = $('language2DDList').ijax.getValue();
            var searchedLanguageSelected_ = _languageSelector.ijax.getValue();
            
            if ((language1Selected_ != searchedLanguageSelected_) && (language2Selected_ != searchedLanguageSelected_))
                $('language1DDList').ijax.setValue(searchedLanguageSelected_, true, true);
        }
    }
}

Sefarim.Search.searchWaitingMessage = "La recherche peut prendre plusieurs secondes en fonction du nombre d'occurrences";

Intentware.Ajax.Object.register('Sefarim', 'Search', Sefarim.Search);

