﻿function AttachDefaultButton(btnID, event)
{ 
     var btn = document.getElementById(btnID); 
     if (document.all)
     { 
       if (event.keyCode == 13)
       { 
             btn.click();
             stopBubbling(event) 
        } 
     } 
     else if (document.getElementById)  
     { 
       if (event.which == 13)
       { 
            btn.click();
            stopBubbling(event)  
        }
     } 
     else if (document.layers) 
     {
       if (event.which == 13)
       {
           btn.click();
           stopBubbling(event) 
       }
     } 
}

function stopBubbling(e) {

  if(!e)
    e = window.event;
  
  if(e.stopPropagation)
    e.stopPropagation();
  
  if(e.preventDefault)
    e.preventDefault();
    
  e.cancelBubble = true;
  e.cancel = true;
  e.returnValue = false;
  return false;
     
}

/**MODAL MANAGEMENT**/

var CurrentModal;
var CurrentModalOnCloseDoPostBack = false;
var CurrentModalOnCloseTargetID = '';
var CurrentModalOpeningParent = null;
var CurrentModalOnCloseCallbackFunction = '';

 function OpenModal(behaviorID, url, width, height, OpenModalParams) {
    var m = $find(behaviorID);
     if( m ) {
     
        CurrentModal = m
        
        var scrolling = 'NO';
      
        if( OpenModalParams ) {
            CurrentModalOnCloseDoPostBack = OpenModalParams.OnClosePostBack
            CurrentModalOnCloseTargetID = OpenModalParams.OnCloseTargetID
            CurrentModalOpeningParent = OpenModalParams.Parent;
            CurrentModalOnCloseCallbackFunction = OpenModalParams.OnCloseCallbackFunction;
            if( OpenModalParams.ScrollFrame && OpenModalParams.ScrollFrame == true) {
                scrolling = 'auto';
            }
        }
          
        if( url != '' ) {        
            var mContent = $get(behaviorID + '_content')
            if( mContent ) {
                mContent.innerHTML = '<iframe src=\'' + url + '\' width=\'' + width + '\' height=\'' + height + '\' scrolling=\'' + scrolling + '\' frameborder=\'0\'/>';         
            }            
         }
         
        m.show()  
        return true;
    } else {
        return false;
    } 
    
}

function OpenModalParams() {
    var OnClosePostBack = false;
    var OnCloseTargetID = '';   
    var OnCloseCallbackFunction = '';
    var Parent = null;     
    var ScrollFrame = false;
}

function HideModal(HideModalParams) {

    var m = CurrentModal;
    
    if( m ) {
  
         var mContent = $get(m._id + '_content')
         if( mContent ) {
            mContent.innerHTML = '';       
          }
          
          m.hide();
          
          var _EventArgs = '';
            if( HideModalParams ) {
                _EventArgs = HideModalParams.EventArgs;
                
                if( _EventArgs = 'undefined' ) {
                    _EventArgs = '';
                }
                
                if( HideModalParams.CancelOnCloseDoPostBack ) {
                    CurrentModalOnCloseDoPostBack = false;
                }
            }      
          
          if( CurrentModalOnCloseDoPostBack ) {
            if( CurrentModalOpeningParent ) {
                CurrentModalOpeningParent.UpdatePage(CurrentModalOnCloseTargetID, _EventArgs);
            } else {
                UpdatePage(CurrentModalOnCloseTargetID, _EventArgs);
            }
          } else if( CurrentModalOnCloseCallbackFunction ) {
          
            var _tmp = CurrentModalOnCloseCallbackFunction;
            _tmp  = _tmp + '({ \'EventTargetID\':\'' + CurrentModalOnCloseTargetID + '\', \'EventArgs\':\'' + _EventArgs + '\' })'
            
            if( CurrentModalOpeningParent ) {
                CurrentModalOpeningParent.eval(_tmp);
            } else {
                eval(_tmp);
            }
          }
          
          CurrentModal = null;
          CurrentModalOnCloseDoPostBack = false;
          CurrentModalOnCloseTargetID = '';
          CurrentModalOpeningParent = null;
          
    }  
}

function HideModalParams() {
    var EventArgs;
    var CancelOnCloseDoPostBack = false;
}

function ModalOnCloseCallbackParams() {
    var EventTargetID = '';
    var EventArgs = '';
}

function UpdatePage(target, args) {
    setTimeout('__doPostBack(\'' + target + '\', \'' + args + '\')',100)
}

function ChangePaginationPageSize(ddlID, baseURL) {
    var ddl = $get(ddlID);

    if ( baseURL.indexOf('?') == -1 ) {
        baseURL += "?"      
    } else {
        baseURL += "&"      
    }
   
    redirect(baseURL + 'cp=1&ps=' + ddl[ddl.selectedIndex].value);    
}

function GetFlashMovie(movieName) {     
    if (navigator.appName.indexOf("Microsoft") != -1) {
        return window[movieName]
    } else {
        return document[movieName]
    } 
} 

function ClearDefaultText(tbx, defaultText) {

    if( tbx ) {
        if( tbx.value == defaultText ) {
            tbx.value = '';
        }
    }  
}

//Phone tabbing
function PhoneNumberAutoTab(tbx, nextTbxID, e) {
    var tbx_next = $get(nextTbxID); 
    var sourceKeyCode = (e.keyCode) ? e.keyCode : e.charCode;
        
    if( sourceKeyCode != 9 && sourceKeyCode != 16) {     
        if( tbx.value.length == tbx.maxLength ) {
           tbx_next.focus();       
        }          
    } else {
         stopBubbling(e)
    } 
}