if ( typeof YouHolder == 'undefined' ) { YouHolder = {} }
if ( typeof YouHolder.ParterUser == 'undefined' ) { YouHolder.PartnerUser= {} }

(function($){
 var login_popup  = null;
 var choose_popup = null;
 var partner_name = '';

 function partner_signup() {
   var that = $(this).parents('.popupBody');
   var agree = that.find('#agree');

   if(agree.size() > 0 && !agree.attr('checked')) {
     alert('必須同意服務條款');
     return false;
   }

   if(that.find('.box').hasClass('invalid')){
     alert('請選擇不重複的帳號');
     return false;
   }

   var name  = that.find('.name').val();
   $.ajax( {
      url: '/membercenter/psignup',
      data: { name: name, agree: 'y'},
      dataType: 'script'
   });
   return false;
 }

 function check_name() {
   var that = $(this).parents('.popupBody')
   var name = that.find('.name').val();
   that.find('.box .msg').html('<img src="/images/alert/searchstock_loading.gif" />');

   $.ajax({
     url: '/membercenter/plogin',
     data: { name: name},
     dataType: 'script'
   });
   return false;
 }

 YouHolder.PartnerUser.hook_event = function(pname) {
   partner_name = pname;

   login_popup = $('#partner_login').jqm({modal: true });
   login_popup.find('.ok').click(partner_signup);

   choose_popup = $('#partner_choose_login_name').jqm({modal: true});
   choose_popup.find('.ok').click(partner_signup);
   choose_popup.find('.check').click(check_name);

   login_popup.find('.partner_name').html(partner_name);
   choose_popup.find('.partner_name').html(partner_name);
   choose_popup.find('.box input.name').change(function(){
      choose_popup.find('.box').removeClass('invalid');
   })
 }

 YouHolder.PartnerUser.show_login = function(name, email) {
    login_popup.find('.box .input.name').html(name);
    login_popup.find('.box .input.email').html(email);
    login_popup.jqmShow();
 }

 YouHolder.PartnerUser.show_choose_login_name = function(name, email, taken) {
   var box = choose_popup.find('.box');
   box.find('.name').val(name);
   box.find('.input.email').html(email);

   if(taken == 0){
     box.addClass('invalid');
     box.find('h3').html('這個帳號在GoYou已被其他人使用');
     box.find('.msg').html('');
   } else{
     box.removeClass('invalid');
     box.find('h3').html('您可使用'+partner_name+'帳號或重新輸入');
     box.find('.msg').html('ok');
   }

   choose_popup.jqmShow();
 }

 YouHolder.PartnerUser.plogin = function() {
   $.ajax({ url: "/membercenter/plogin", dataType: "script"});
 }

 var partner_set_im;
 var partner_set_im_account;
 var partner_set_im_provider;

 var partner_confirm_im;

 function set_im() {
   var account     = partner_set_im_account.val();
   var im_provider = partner_set_im_provider.val();
   var data  = { "user_im_setting[account]": account, "user_im_setting[im_provider]": im_provider};
   $.ajax({ url: '/membercenter/set_im_account', data: data, dataType: 'script' }); 
   partner_set_im.jqmHide();
   return false;
 }

 function confirm_im() {
   var data =  { im_account_code: partner_confirm_im.find('input.textInput').val() };
   $.ajax({ url: '/membercenter/authenticate_im_account', data: data, dataType: 'script' });
   partner_confirm_im.jqmHide();
   return false;
 }

 function reset_im() {
   var account     = partner_confirm_im.find('span.account').html();
   var im_provider = partner_confirm_im.find('span.im_provider').html();
   partner_confirm_im.jqmHide();
   YouHolder.PartnerUser.set_im(account, im_provider);
   return false;
 }

 function send_confirm_code() {
   $.ajax({ url: '/membercenter/send_im_confirm', dataType: 'script' });
   return false;
 }

 function get_im_setting(){
   $.ajax({ url: '/membercenter/psetim', dataType: 'script'});
   return false;
 }

 YouHolder.PartnerUser.init_im = function() {
    partner_set_im         = $('#partner_set_im').jqm();
    partner_set_im_account = partner_set_im.find('input.textInput');
    partner_set_im_provider = partner_set_im.find('select#im_provider');

    partner_confirm_im = $('#partner_confirm_im').jqm();

    partner_set_im.find('a.ok').click(set_im);
    partner_confirm_im.find('a.ok').click(confirm_im);

    $('a.reset_im').click(reset_im);
    $('a.send_confirm_code').click(send_confirm_code);
    $('a.partner_set_im').click(get_im_setting);

    if(window.location.hash == '#im_setting'){
      window.location.hash='#';
      get_im_setting();
    }
 }

 YouHolder.PartnerUser.set_im = function(account, im_provider) {
   partner_set_im_account.val(account);
   partner_set_im_provider.val(im_provider);
   partner_set_im.jqmShow();
 }

 YouHolder.PartnerUser.confirm_im = function(account, im_provider) {
   partner_confirm_im.find('span.account').html(account);
   partner_confirm_im.find('span.im_provider').html(im_provider);
   partner_confirm_im.find('input.textInput').val('');
   partner_confirm_im.jqmShow();
 }

})(jQuery);

