// Bizmo Object.
jQuery.Bizmo = function(){
  // Private variables and methods.
  var options = {};
  var trackId = 0;
  var test;
    var ebook_media_id; 
    var step = 1;
    var media_type;
  // ClassNames, Labels(i18n), Selectors
  var classNames = {};
  var labels = {
    // track labels
    'trackContentboxHeadingText': localize.upload.track.head,
    'trackContentboxCautionText': localize.upload.track.caution,
    'trackContentboxParagraphText': localize.upload.track.desc,
    'trackContentboxLinkText': localize.upload.track.link,
    'trackSWFUploadButtonText': localize.upload.track.button,
    'trackUploadRunningText': localize.upload.track.status,
    'trackUploadSuccessText': localize.upload.track.success,
    'trackContentboxType': 'track',
    // cover labels
    'coverContentboxHeadingText': localize.upload.cover.head,
    'coverContentboxParagraphText': localize.upload.cover.desc,
    'coverContentboxLinkText': localize.upload.cover.link,
    'coverSWFUploadButtonText': localize.upload.cover.button,
    'coverUploadRunningText': localize.upload.cover.status,
    'coverUploadSuccessText': localize.upload.cover.success,
    'coverContentboxType': 'cover',
    // CD Back cover labels
    'backCoverContentboxHeadingText': localize.upload.back_cover.head,
    'backCoverContentboxParagraphText': localize.upload.back_cover.desc,
    'backCoverContentboxLinkText': localize.upload.back_cover.link,
    'backCoverSWFUploadButtonText': localize.upload.back_cover.button,
    'backCoverUploadRunningText': localize.upload.back_cover.status,
    'backCoverUploadSuccessText': localize.upload.back_cover.success,
    'backCoverContentboxType': 'cover',

    'noScript': '<h3>Minimum flash requirements not satisfied.</h2><p>Get the latest flash player</p><p><a href="http://www.adobe.com/go/getflashplayer"><img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Adobe Flash player" /></a></p>',
    // Video Labels
    'videoContentboxHeadingText':localize.upload.video.head,
    'videoContentboxCautionText': localize.upload.video.caution,
    'videoContentboxParagraphText': localize.upload.video.desc,
    'videoContentboxLinkText': localize.upload.video.link,
    'videoSWFUploadButtonText': localize.upload.video.button,
    'videoUploadRunningText': localize.upload.video.status,
    'videoUploadSuccessText': localize.upload.video.success,
    'videoContentboxType': 'video',

        // Ringtone labels
        'ringtoneContentboxHeadingText': localize.upload.ringtone.head,
        'ringtoneContentboxCautionText': localize.upload.ringtone.caution,
        'ringtoneContentboxParagraphText': localize.upload.ringtone.desc,
        'ringtoneContentboxLinkText': localize.upload.ringtone.link,
        'ringtoneSWFUploadButtonText': localize.upload.ringtone.button,
        'ringtoneUploadRunningText': localize.upload.ringtone.status,
        'ringtoneUploadSuccessText': localize.upload.ringtone.success,
        'ringtoneContentboxType': 'ringtone',

        // Ebook labels
        'ebookContentboxHeadingText': localize.upload.ebook.head,
    'ebookContentboxCautionText': localize.upload.ebook.caution,
        'ebookContentboxParagraphText': localize.upload.ebook.desc,
        'ebookContentboxLinkText': localize.upload.ebook.link,
        'ebookSWFUploadButtonText': localize.upload.ebook.button,
        'ebookUploadRunningText': localize.upload.ebook.status,
        'ebookUploadSuccessText': localize.upload.ebook.success,
      'ebookContentboxType': 'ebook',

        // Ebook synopsis labels
        'synopsisContentboxHeadingText': localize.upload.synopsis.head,
        'synopsisContentboxParagraphText': localize.upload.synopsis.desc,
        'synopsisContentboxLinkText': localize.upload.synopsis.link,
        'synopsisSWFUploadButtonText': localize.upload.synopsis.button,
        'synopsisUploadRunningText': localize.upload.synopsis.status,
        'synopsisUploadSuccessText': localize.upload.synopsis.success,
      'synopsisContentboxType': 'synopsis',

        // Image labels
        'imageContentboxHeadingText': localize.upload.image.head,
    'imageContentboxCautionText': localize.upload.image.caution,
        'imageContentboxParagraphText': localize.upload.image.desc,
        'imageContentboxLinkText': localize.upload.image.link,
        'imageSWFUploadButtonText': localize.upload.image.button,
        'imageUploadRunningText': localize.upload.image.status,
        'imageUploadSuccessText': localize.upload.image.success,
      'imageContentboxType': 'image',

        // Album labels
        'albumContentboxHeadingText': localize.upload.album.head,
    'albumContentboxCautionText': localize.upload.album.caution,
        'albumContentboxParagraphText': localize.upload.album.desc,
        'albumContentboxLinkText': localize.upload.album.link,
        'albumSWFUploadButtonText': localize.upload.album.button,
        'albumUploadRunningText': localize.upload.album.status,
        'albumUploadSuccessText': localize.upload.album.success,
      'albumContentboxType': 'album',
        // Tickets labels
        'ticketContentboxHeadingText': localize.upload.ticket.head,
        'ticketContentboxParagraphText': localize.upload.ticket.desc,
        'ticketContentboxLinkText': localize.upload.ticket.link,
        'ticketSWFUploadButtonText': localize.upload.ticket.button,
        'ticketUploadRunningText': localize.upload.ticket.status,
        'ticketUploadSuccessText': localize.upload.ticket.success,
  'ticketContentboxType': 'ticket',
        'cdContentboxHeadingText': localize.upload.cd.head,
        'cdContentboxParagraphText': localize.upload.cd.desc,
        'cdContentboxLinkText': localize.upload.cd.link,
        'cdSWFUploadButtonText': localize.upload.cd.button,
        'cdUploadRunningText': localize.upload.cd.status,
        'cdUploadSuccessText': localize.upload.cd.success,
        'cdContentboxType': 'cd'
  };
  
  var selectors = {
    'track': '#browse_track',
    'video': '#browse_video',
    'ringtone': '#browse_ringtone',
    'ticket': '#browse_ticket',
    'image': '#browse_image',
    'album': '#browse_album',
    'ebook': '#browse_ebook',
    'cd': '#browse_cd',
    'uploadRunning': '.uploadrunning',
    'coverAddCd': '#add_cd_cover_id', 
    'mediaAddCd': '#add_cd_media_id', 
    'coverAddTrack': '#add_track_cover_id',
    'mediaAddTrack': '#add_track_media_id',
    'mediaAddVideo': '#add_video_media_id',
    'coverAddVideo': '#add_video_cover_id',
    'coverAddRingtone': '#add_ringtone_cover_id',
    'mediaAddRingtone': '#add_ringtone_media_id',
    'coverAddEbook': '#add_ebook_cover_id',
    'synopsisAddEbook': '#add_ebook_synopsis_id',
    'mediaAddEbook': '#add_ebook_media_id',
    'mediaAddTicket': '#add_ticket_media_id',
                'mediaAddImage': '#add_image_media_id',
        'mediaAddAlbum': '#add_album_media_id',
    'addInfo': '#add_form .addinfo',
    'content': '.step_sec',
    'noFlash': '#content #add_items'
  };
  
  // Templates used
  var templates = { };

  templates['contentbox'] = $.template('<div class="tab_name_nest" id="upload_${id}"><div class="tab_heading border_style"> <h2>${heading}<span>${caution}</span></h2></div><div class="tab_content border_style"> <div class="thm_dis ${type}_img"> </div> <div class="upl_hldr"> <div style="margin:0; left: 226px; height:79px; width:400px; position:absolute;"><a id="choose_${id}" href="#">${link}</a><br /> </div><h3 class="chooseText"> ${label} </h3><span>${paragraph}</span> </div></div><div class="tab_btm_nest"> <div class="tab_rd_lt"> </div> <div class="tab_rd_rt"> </div> <div class="tab_rd_mid"> </div> </div><div class="clear"> </div></div>');
  // templates['SWFUploadButton'] = $.template('<span class="chooseText">${chooseText}<span>');
    templates['SWFUploadButton'] = '';
  templates['uploadRunning'] = $.template('<div id="contentbox_${id}" class="upload_nest border_style server_response" ><span id="status_${id}">${paragraph}</span><div class="upload_progress"><div id="progress_${id}" class="upload_progress_fill">0%</div></div></div>');
  templates['selector'] = $.template('${type}${target}_${id}');
  templates['noScript'] = $.template('<div class="contentbox">${message}</div>');
  
  // effects.
  var effects = {
    'hide': 1850
  };
  /**
   * Get Next Upload Id
   *
   * @return
   *  Returns a new id, that is not taken.
   */
  var getNextUploadId = function(){ 
    return (Math.round(new Date().getTime() * Math.random())).toString(16); // return (hex)(timestamp * random()) 
  };
  
  /**
   * Get Default SWFUpload Settings.
   */
  var getDefaultSWFUploadSettings = function(){
    return {
      flash_url : $.uri_for('/flash/swfupload.swf'),
      upload_url: $('#browse_track').attr('href'),  // Relative to the SWF file
      file_size_limit : "10 MB",
      file_types : "*",
      file_types_description : "All files",
      custom_settings: {},

      button_width: 540,
      button_height: 80,
      button_placeholder_id: "spanButtonPlaceholder",
      // button_text: '<span class="theFont">Hello</span>',
      button_text_style: ".chooseText { font-family: verdana, sans-serif'; font-size: 16px; color:#ffffff; }",
      // button_text_left_padding: 12,
      button_text_top_padding: 0,
      
      button_window_mode: SWFUpload.WINDOW_MODE.TRANSPARENT,
      button_cursor: SWFUpload.CURSOR.HAND,
      file_queue_error_handler:     $.Bizmo.uploadError,
      file_dialog_complete_handler: $.Bizmo.fileDialogComplete,
      upload_start_handler:         $.Bizmo.uploadStart,
      upload_progress_handler:      $.Bizmo.uploadProgress,
      upload_success_handler:       $.Bizmo.uploadSuccess
    };
  };
  
  /**
   * Get the current TrackId.
   *
   * @return
   *  Returns the current trackId.
   */
  var getTrackId = function(){
    return this.trackId; 
  };
  
  /**
   * Set Track Id.
   *
   * @param id The current track.id to store.
   */
  var setTrackId = function(id){
    this.trackId = id;
  };
  
  /**
   * Get Selector for id.
   *
   * @param selector    The selector
   * @param id          The id
   */
  var getSelectorForId = function(selector, id, prefix){
    return (typeof(prefix) ==  "undefined" ? '#' : '') + selector + '_' + id; // or selector[selector].replace('${id}', id);
  };
  
  return {
    
    // Public methods.
    
    /**
     * Overwrite an existing label.
     *  Useful for translations.
     *
     * @param name  The name of the label.
     * @param value The string value.
     */
    setLabel: function(name, value){
      labels[name] = value; // since this is an hash, will only append the name => value pair if it already does not exist.
    },
    
    /**
     * Add a new track uploader.
     */
    addTrackUpload: function(){
      setTrackId( getNextUploadId() ); // store the trackId for the submitTrack.
      $.Bizmo.addSWFUpload('track', getTrackId() ,
        {
          file_size_limit : "150 MB",
          file_types : "*.mp3;*.aac;*.m4a;*.m4p;*.wav;*.aif;*.aiff;*.ogg;*.oga;*.wma",
          file_types_description : "Audio files"
        }, 
        selectors['track'], 
        {
          'heading':    labels['trackContentboxHeadingText'],
          'caution':      labels['trackContentboxCautionText'],
          'paragraph':  labels['trackContentboxParagraphText'],
          'link':       labels['trackContentboxLinkText'],
          'chooseText': labels['trackSWFUploadButtonText'],
          'type': labels['trackContentboxType'],
          'chooseText': labels['trackSWFUploadButtonText']
        });
    },

    /**
     * Add a new physical item uploader.
     */
    addCdUpload: function(){
      setTrackId( getNextUploadId() ); // store the trackId for the submitTrack.
      $.Bizmo.addSWFUpload('cd', getTrackId() ,
        {
          file_size_limit : "100 MB",
          upload_url: $('#browse_cd').attr('href'),    // Relative to the SWF file
          file_types : "*.jpg;*.jpeg;*.bmp;*.gif;*.png",
          file_types_description : "Image files"
        }, 
        selectors['cd'], 
        {
          'heading':    labels['cdContentboxHeadingText'],
          'caution':      labels['cdContentboxCautionText'],
          'paragraph':  labels['cdContentboxParagraphText'],
          'link':       labels['cdContentboxLinkText'],
          'chooseText': labels['cdSWFUploadButtonText'],
          'type': labels['cdContentboxType'],
          'chooseText': labels['cdSWFUploadButtonText']
        });
    },
        /**
         * Add a new album image uploader.
         */
        addAlbumUpload: function(){
            setTrackId( getNextUploadId() ); // store the trackId for the submitTrack.
            $.Bizmo.addSWFUpload('album', getTrackId() ,
                {
                  upload_url: $('#browse_album').attr('href'),    // Relative to the SWF file
                    file_size_limit : "100 MB",
                    file_types : "*.jpg;*.jpeg;*.bmp;*.gif;*.png",
                    file_types_description : "Image files"
                },
                selectors['album'],
                {
                    'heading':      labels['albumContentboxHeadingText'],
          'caution':      labels['albumContentboxCautionText'],
                    'paragraph':    labels['albumContentboxParagraphText'],
                    'link':             labels['albumContentboxLinkText'],
                    'chooseText': labels['albumSWFUploadButtonText'],
          'type': labels['albumContentboxType']
                });
        },
    addVideoUpload: function(){
      setTrackId( getNextUploadId() ); 
      $.Bizmo.addSWFUpload('video', getTrackId() ,
        {
          file_size_limit : "100 MB",
          file_types : "*.avi;*.mp4;*.flv;*.mov;*.m4v;*.wmv;*.mpeg;*.mpg;*.mpe;*.divx;*.oggv",
          file_types_description : "Video files",
                            upload_url: $('#browse_video').attr('href')
        }, 
        selectors['video'], 
        {
          'heading':    labels['videoContentboxHeadingText'],
          'caution':      labels['videoContentboxCautionText'],
          'paragraph':  labels['videoContentboxParagraphText'],
          'link':       labels['videoContentboxLinkText'],
          'chooseText': labels['videoSWFUploadButtonText'],
          'type': labels['videoContentboxType']
        });
    },
          /**
          * Add a new ringtone uploader.
          */
          addRingtoneUpload: function(){
              setTrackId( getNextUploadId() ); // store the trackId for the submitTrack.
              $.Bizmo.addSWFUpload('ringtone', getTrackId() ,
              {
                  upload_url: $('#browse_ringtone').attr('href'),    // Relative to the SWF file
                  file_size_limit : "100 MB",
                  file_types : "*.mp3;*.aa3;*.aac;*.au;*.m3u;*.m4p;*.m4r;*.mid;*.midi;*.mpa;*.ntr;*.ram;*.rmf;*.wav;",
                  file_types_description : "Audio(Ringtone) files"
              },
              selectors['ringtone'],
              {
                  'heading':              labels['ringtoneContentboxHeadingText'],
          'caution':      labels['ringtoneContentboxCautionText'],
                  'paragraph':    labels['ringtoneContentboxParagraphText'],
                  'link':                         labels['ringtoneContentboxLinkText'],
                  'chooseText': labels['ringtoneSWFUploadButtonText'],
                        'type': labels['ringtoneContentboxType']
              });
          },

                /**
                * Add a new ebook uploader.
                */
                addEbookUpload: function(){
                    setTrackId( getNextUploadId() ); // store the trackId for the submitTrack.
                    $.Bizmo.addSWFUpload('ebook', getTrackId() ,
                    {
                        upload_url: $('#browse_ebook').attr('href'),    // Relative to the SWF file
                        file_size_limit : "100 MB",
                        file_types : "*.pdf",
                        file_types_description : "Ebook files"
                    },
                    selectors['ebook'],
                    {
                        'heading':              labels['ebookContentboxHeadingText'],
              'caution':      labels['ebookContentboxCautionText'],
                        'paragraph':    labels['ebookContentboxParagraphText'],
                        'link':                         labels['ebookContentboxLinkText'],
                        'chooseText': labels['ebookSWFUploadButtonText'],
                        'type': labels['ebookContentboxType']
                    });
                },


                /**
                * Add a new image uploader.
                */
                addImageUpload: function(){
                    setTrackId( getNextUploadId() ); // store the trackId for the submitTrack.
                    $.Bizmo.addSWFUpload('image', getTrackId() ,
                    {
                        upload_url: $('#browse_image').attr('href'),    // Relative to the SWF file
                        file_size_limit : "100 MB",
                        file_types : "*.jpg;*.jpeg;*.bmp;*.gif;*.png",
                        file_types_description : "Image files"
                    },
                    selectors['image'],
                    {
                        'heading':              labels['imageContentboxHeadingText'],
              'caution':      labels['imageContentboxCautionText'],
                        'paragraph':    labels['imageContentboxParagraphText'],
                        'link':                         labels['imageContentboxLinkText'],
                        'chooseText': labels['imageSWFUploadButtonText'],
                        'type': labels['imageContentboxType']
                    });
                },

                /**
                * Add a new ticket uploader.
                */
                addTicketUpload: function(){
                    setTrackId( getNextUploadId() ); // store the trackId for the submitTrack.
                    $.Bizmo.addSWFUpload('ticket', getTrackId() ,
                    {
                        upload_url: $('#browse_ticket').attr('href'),    // Relative to the SWF file
                        file_size_limit : "10 MB",
                        file_types : "*.jpg;*.jpeg;*.bmp;*.gif;*.png",
                        file_types_description : "Ticket Image"
                    },
                    selectors['ticket'],
                    {
                        'heading':              labels['ticketContentboxHeadingText'],
                        'paragraph':    labels['ticketContentboxParagraphText'],
                        'link':                         labels['ticketContentboxLinkText'],
                        'chooseText': labels['ticketSWFUploadButtonText'],
                        'type': labels['ticketContentboxType']
                    });
                },
    
    /**
     * Add a new cover uploader.
     */
    addCoverUpload: function(){
            var current_cover_id = getNextUploadId();
            $.Bizmo.current_cover_id = current_cover_id;

        var uploadUrl;
        var optionsType;
                if (options.type == 'synopsis') {
                    uploadUrl = '#browse_ebook'; //options.type = 'ebook';
          optionsType = 'ebook';
                } else {
          uploadUrl = '#browse_' + options.type;
          optionsType = options.type;
        }
                if (options.type == 'synopsis') {
                    uploadUrl = '#browse_ebook'; //options.type = 'ebook';
                } else {
                    uploadUrl = '#browse_' + options.type;
                }
      var labels_array;
      if (options.type == 'cd') {
          labels_array = {
                           'heading':    labels['backCoverContentboxHeadingText'],
                           'paragraph':  labels['backCoverContentboxParagraphText'],
                           'link':       labels['backCoverContentboxLinkText'],
                           'chooseText': labels['backCoverSWFUploadButtonText'],
                           'type': labels['backCoverContentboxType']
                         };
      }else{
          labels_array = {
                           'heading':    labels['coverContentboxHeadingText'],
                           'paragraph':  labels['coverContentboxParagraphText'],
                           'link':       labels['coverContentboxLinkText'],
                           'chooseText': labels['coverSWFUploadButtonText'],
                           'type': labels['coverContentboxType'] 
                         };
      }
     
      $.Bizmo.addSWFUpload('cover', current_cover_id,
        {
          upload_url: $(uploadUrl).attr('href'),
          file_size_limit : "10 MB",
          file_types : "*.jpg;*.jpeg;*.bmp;*.gif;*.png",
          file_types_description : "Images files"
        }, 
        selectors[optionsType],labels_array 
        );
    },
                /**
                 * Add a new synopsis uploader.
                 */
                addSynopsisUpload: function(){
                    //setTrackId( getNextUploadId() ); // store the trackId for the submitTrack.
                        $.Bizmo.addSWFUpload('synopsis', getNextUploadId(),
                                {
                                        upload_url: $('#browse_ebook').attr('href'),
                                        file_size_limit : "10 MB",
                                        file_types : "*.pdf",
                                        file_types_description : "Synopsis files"
                                },
                                selectors[options.type],
                                {
                                        'heading':              labels['synopsisContentboxHeadingText'],
                                        'paragraph':    labels['synopsisContentboxParagraphText'],
                                        'link':                         labels['synopsisContentboxLinkText'],
                                        'chooseText': labels['synopsisSWFUploadButtonText'],
                                        'type': labels['synopsisContentboxType']
                                });
                },
    
    // Validate Functions
    /**
     * Submit validate track.
     *  Post the current track form.
     */
                falser: function( e ) {
                  return false;
                },

                popMessage: function( msg ) {
                },

                // Hack to prevent dual submits
                submitDisabled : false, 
    submitValidateTrack: function( e ){
 
                        if( ! $.Bizmo.submitDisabled ) {
                          $.Bizmo.submitDisabled = true;
        var element = $(getSelectorForId('form', getTrackId()));
        var form    = $(element).find('.tab_content .data_coll').children('form');
        $.post(form.attr('action'), form.formToArray(1), $.Bizmo.handleSubmitValidateTrack);
                          $(hideorshow_default());
                          $('#preview_type_1').change(hideshow_radio);
                          $('#preview_type_2').change(hideshow_radio);
                          $('#streaming_only :checkbox').change(hideshow_radio_sellbyothers);
                          $('#sellbyothers :input').change(hideshow_streamingonly);
                          $("#price_structure_id").change(hideorshow_price);
                        }
      return false;
    },

    submitValidateCd: function( e ){
 
                        if( ! $.Bizmo.submitDisabled ) {
                          $.Bizmo.submitDisabled = true;
        var element = $(getSelectorForId('form', getTrackId()));
        var form    = $(element).find('.tab_content .data_coll').children('form');
        $.post(form.attr('action'), form.formToArray(1), $.Bizmo.handleSubmitValidateCd);
                        }
      return false;
    },

                /**
         * Submit validate track.
         *  Post the current track form.
         */
        submitValidateAlbum: function(){
            if( ! $.Bizmo.submitDisabled ) {
              $.Bizmo.submitDisabled = true;
              var element = $(getSelectorForId('form', getTrackId()));
              var form    = $(element).find('.tab_content .data_coll').children('form');
              $(element).load(form.attr('action'), form.formToArray(1), $.Bizmo.handleSubmitValidateAlbum);
              $(hideorshow_default());
              $('#preview_type_1').change(hideshow_radio);
              $('#preview_type_2').change(hideshow_radio);
              $('#streaming_only :checkbox').change(hideshow_radio_sellbyothers);
              $('#sellbyothers :input').change(hideshow_streamingonly);
              $("#price_structure_id").change(hideorshow_price);
              $(function(){$('.date-pick').datePicker({clickInput:true})});
            }
            return false;
        },
                /**
                 * Submit validate edit track.
                 *      Post the current edit track form.
                 */
                submitValidateEditTrack: function(e){
                        e.stopPropagation();

                    e.preventDefault();
                        var form = $('#edit_track');
                        var my_tr = form.parents('.data_coll');
                        var cur_row = form.parents('tr');
                  var params = form.formToArray(1);
               
                        $('#edit_track').load(form.attr('action'), params, function(data){
                         $('.edit_cover_image').remove();
                         my_tr.before(data).remove();
                         $('#edit_track').submit( $.Bizmo.submitValidateEditTrack );
            $(function(){$('.date-pick').datePicker({clickInput:true})});
                        $(hideorshow_edit_default());
                        //$(hideorshow_default());
                        //$(hideorshow_default());
                        $('#preview_type_1').change(hideshow_radio);
                        $('#preview_type_2').change(hideshow_radio);
                        $('#streaming_only :checkbox').change(hideshow_radio_sellbyothers);
                        $('#sellbyothers :input').change(hideshow_streamingonly);
                        $("#price_structure_id").change(hideorshow_price);


                                if(data.match(/class=\"saved\"/)) {
                                    //$.Bizmo.submitEditTrack();
                                    // Update the row with new values
                                    var item_id = $('.data_coll').find('.item_id');
                                    // Update the respective row values
                                    var tr_id = "item-" + $('.data_coll').find('.item_id').html();
                                    if($('.data_coll').find('.item_name').length > 0) {
                                        $('.my-cont-main').find('#'+tr_id).find('.first').html($('.data_coll').find('.item_name').html());
                                        $('.my-cont-bizmo').find('#'+tr_id).find('.first').html($('.data_coll').find('.item_name').html());
                                    }
                                    if($('.data_coll').find('.item_artist').length > 0) {
                                        $('.my-cont-main').find('#'+tr_id).find('.second').html($('.data_coll').find('.item_artist').html());
                                        $('.my-cont-bizmo').find('#'+tr_id).find('.second').html($('.data_coll').find('.item_artist').html());
                                    }

                                   // $('.abt_bizmo_top_right').click();
                                }
                                $(hideorshow_default()); 
                              });
                        return false;
                },

                /**
                 * Submit validate image.
                 *      Post the current image form.
                 */
                submitValidateImage: function(){
                     
                 if( ! $.Bizmo.submitDisabled  ) {
                        $.Bizmo.submitDisabled = true;
                        var element = $(getSelectorForId('form', getTrackId()));
                        var form    = $(element).find('.tab_content .data_coll').children('form');
                        $(element).load(form.attr('action'), form.formToArray(1), $.Bizmo.handleSubmitValidateImage);
                        $(hideorshow_default());
                        $('#preview_type_1').change(hideshow_radio);
                        $('#preview_type_2').change(hideshow_radio);
                        $('#streaming_only :checkbox').change(hideshow_radio_sellbyothers);
                        $('#sellbyothers :input').change(hideshow_streamingonly);
                        $("#price_structure_id").change(hideorshow_price);
                }

                        return false;
                },

          /**
          * Submit validate ringtone.
          *      Post the current ringtone form.
          */
          submitValidateRingtone: function(){
                  if( ! $.Bizmo.submitDisabled ) {
                    $.Bizmo.submitDisabled = true;
              var element = $(getSelectorForId('form', getTrackId()));
              var form    = $(element).find('.tab_content .data_coll').children('form');
              $.post(form.attr('action'), form.formToArray(1), $.Bizmo.handleSubmitValidateRingtone);
                        $(hideorshow_default());
                        $('#preview_type_1').change(hideshow_radio);
                        $('#preview_type_2').change(hideshow_radio);
                        $('#streaming_only :checkbox').change(hideshow_radio_sellbyothers);
                        $('#sellbyothers :input').change(hideshow_streamingonly);
                        $("#price_structure_id").change(hideorshow_price);
                  }
              return false;
          },

                /**
                * Submit validate ebook.
                *      Post the current ebook form.
                */
                submitValidateEbook: function(){
                  if( ! $.Bizmo.submitDisabled ) {
                    $.Bizmo.submitDisabled = true;
                    var element = $(getSelectorForId('form', getTrackId()));
                    var form    = $(element).find('.tab_content .data_coll').children('form');
                    $(element).load(form.attr('action'), form.formToArray(1), $.Bizmo.handleSubmitValidateEbook);
                    $(hideorshow_default());
                        $('#preview_type_1').change(hideshow_radio);
                        $('#preview_type_2').change(hideshow_radio);
                        $('#streaming_only :checkbox').change(hideshow_radio_sellbyothers);
                        $('#sellbyothers :input').change(hideshow_streamingonly);
                        $("#price_structure_id").change(hideorshow_price);
                   }

                    return false;
                },

               /**
     * Submit validate track.
     * Clone the submitValidateTrack to support videos
     * FIXME: Maybe we can wrap everything in a single place
     */
    submitValidateVideo: function(){
                  if( ! $.Bizmo.submitDisabled ) {
                        $.Bizmo.submitDisabled = true;
      var element = $(getSelectorForId('form', getTrackId()));
      var form    = $(element).find('.tab_content .data_coll').children('form');
      $.post(form.attr('action'), form.formToArray(1), $.Bizmo.handleSubmitValidateVideo);
                        $(hideorshow_default());
                        $('#preview_type_1').change(hideshow_radio);
                        $('#preview_type_2').change(hideshow_radio);
                        $('#streaming_only :checkbox').change(hideshow_radio_sellbyothers);
                        $('#sellbyothers :input').change(hideshow_streamingonly);
                        $("#price_structure_id").change(hideorshow_price);
                   }

      return false;
    },
                /**
                * Submit validate ticket.
                *      Post the current ticket form.
                */
                submitValidateTicket: function(){
                  if( ! $.Bizmo.submitDisabled ) {
                    $.Bizmo.submitDisabled = true;
        var element = $('#add_form').find('.addinfo');
        var form = $(element).find('.tab_content .data_coll form');
        $.post(form.attr('action'), form.formToArray(1), $.Bizmo.handleSubmitValidateTicket);
                    // Date Picker event handler goes here
                    $(function(){$('.date-pick').datePicker({clickInput:true})});
                    $(hideorshow_default());
                   }
                    return false;
                },

                /**
                 * Handle validate album submit.
                 *  If album was succesfully saved create a new album upload, else shows the same for,.
                 */
                handleSubmitValidateAlbum: function(responseText, statusText, res){

               $.Bizmo.submitDisabled = false;             
               var element = $(getSelectorForId('form', getTrackId()));

               if( responseText.match(/id\=\"track-/) ) {
                   $('#blank').css('display', 'block');
                   $('#pop_container').html( '<h3>' + localize.upload.track.upload_success + '</h3>' );
                   $('#popper').css('top', '25%');
               }
             if( responseText.match(/class=\"upload_error\"/)) {
                 var statusText = '<div class="upload_nest border_style server_response">' + localize.upload.album.upload_error +'</div>';
                 $(element).html( statusText);
                 $.Bizmo.resetHelpText();
                 // Remove the Last Track Upload
                 if( $( 'upload_' + $.Bizmo.current_cover_id )) { 
                     $( '#upload_' + $.Bizmo.current_cover_id ).remove();
                 }
          $.Bizmo.submitAlbum();
                   $('.upload_nest').remove();
                   $("#upload_*").remove();
                   $('#blank').css('display', 'block');
                   $('#pop_container').html( '<h3>' + localize.upload.album.upload_error + '</h3>' );
                   $('#popper').css('top', '25%');
        $.Bizmo.addAlbumUpload();  // Add New Track Upload.
               }else if( responseText.match(/class=\"saved\"/)) {
                    var statusText = '<div class="upload_nest border_style server_response">' + responseText +'</div>';
                    $(element).html( statusText);
                    // Remove the Last Track Upload
                    if( $( 'upload_' + $.Bizmo.current_cover_id )) {
                        $('#upload_'+ $.Bizmo.current_cover_id ).remove();
                    }
                    $("#myc-tab a").bind("click",function (e) {
                    e.preventDefault();
                    e.stopPropagation();
                    var target = e.target;
                    if( target.tagName == 'A') {
                        var href = $(target).attr('href');
                        if( $(target.parentNode).attr('class') != 'on') {
                            var sib = target.parentNode

                            $('.' + $(target).attr('href')).css('display', 'block');
                            $('.' + $(sib.parentNode).find('.on').find('a').attr('href')).css('display', 'none');
                            $(sib.parentNode).find('.on').attr('class', '')
                            $(sib).attr('class', 'on');
                            if( $(target).attr('href') == 'my-cont-bizmo') {
                                //$('.slider-p').css('display', 'none');
                                $('#my-cont-main-pager').css('display', 'none');
                                $('#my-cont-bizmo-pager').css('display', 'block');
                                $('#cick_me').css('display', 'none');
                                $('#forsale_info').css('display', 'block');
                            } else {
                                //$('.slider-p').css('display', 'block');
                                $('#my-cont-bizmo-pager').css('display', 'none');
                                $('#my-cont-main-pager').css('display', 'block');
                                $('#cick_me').css('display', 'block');
                                $('#forsale_info').css('display', 'none');
                            }
                        }
                    }
                }
            //return false;
            );
               } else {
                   // Another story of werid weird IE, fuck IE!!!!!
                   $(hideorshow_default());
                   document.getElementById('form_' + getTrackId()).innerHTML = responseText;
               }
            $("#myc-tab a").bind("click",function (e) {
                    e.preventDefault();
                    e.stopPropagation();
                    var target = e.target;
                    if( target.tagName == 'A') {
                        var href = $(target).attr('href');
                        if( $(target.parentNode).attr('class') != 'on') {
                            var sib = target.parentNode

                            $('.' + $(target).attr('href')).css('display', 'block');
                            $('.' + $(sib.parentNode).find('.on').find('a').attr('href')).css('display', 'none');
                            $(sib.parentNode).find('.on').attr('class', '')
                            $(sib).attr('class', 'on');
                            if( $(target).attr('href') == 'my-cont-bizmo') {
                                $('#my-cont-main-pager').css('display', 'none');
                                $('#my-cont-bizmo-pager').css('display', 'block');
                                //$('.slider-p').css('display', 'none');
                                $('#cick_me').css('display', 'none');
                                $('#forsale_info').css('display', 'block');
                            } else {
                                //$('.slider-p').css('display', 'block');
                                $('#my-cont-bizmo-pager').css('display', 'none');
                                $('#my-cont-main-pager').css('display', 'block');
                                $('#cick_me').css('display', 'block');
                                $('#forsale_info').css('display', 'none');
                            }
                        }
                    }

                }
            );
        $('.select_all').bind("click",function(e){
                             e.preventDefault();
                             e.stopPropagation();
                             $('input[name=tracks_selected]').attr('checked', true);
                             return false;
                          }
                        );
        $('.deselect_all').bind("click", function(e){
                             e.preventDefault();
                             e.stopPropagation();
                             var disabledCheckboxes = $('input[name=tracks_selected]').filter(':disabled');
                             $('input[name=tracks_selected]').attr('checked', false);
                             disabledCheckboxes.attr('checked', true);
                             return false;
                          }
                        );

               $(function(){$('.date-pick').datePicker({clickInput:true})});
                   if($(getSelectorForId('form', getTrackId())).find('.upload_nest').children('.saved')[0]) {
                        $.Bizmo.submitAlbum(); 
                        $.Bizmo.addAlbumUpload();  // Add New Ringtone Upload.
                    } else {
                        $(getSelectorForId('form', getTrackId())).find('.tab_content .data_coll').children('form').submit( $.Bizmo.submitValidateAlbum );
                        $(hideorshow_default());
                    }
                },

       resetHelpText : function() {
            var tmp_step = step;
            while( tmp_step <=3 ) {
                $('.step_' + tmp_step).parent('.active_step').removeClass('active_step');
                $('.step_' + tmp_step).next('.white').removeClass('white');
                tmp_step++;
            }

            step = 1;
            $('.step_1').parent('.step_cont').addClass('active_step');
            $('.step_1').next('.step_text').addClass('white');
        },



    /**
     * Handle validate edit track submit.
     *  If track was succesfully saved create a new edit track upload, else shows the same for,. 
     */
    handleSubmitValidateTrack: function(responseText, textStatus, req){
             // If its already saved then put it in a separate node
             // Remove the cover upload for previous track and obviosly 
             // New Track uptload 
             $.Bizmo.submitDisabled = false;
             var element = $(getSelectorForId('form', getTrackId()));
             if( responseText.match(/class=\"upload_error\"/)) {
                 var statusText = '<div class="upload_nest border_style server_response">' + localize.upload.track.upload_error +'</div>';
                 $(element).html( statusText);
                 $.Bizmo.resetHelpText();
                 // Remove the Last Track Upload
                 if( $( 'upload_' + $.Bizmo.current_cover_id )) {
                     $( '#upload_' + $.Bizmo.current_cover_id ).remove();
                 }
             }else if( responseText.match(/class=\"saved\"/)) {
                 var statusText = '<div class="upload_nest border_style server_response">' + responseText +'</div>';
                 $(element).html( statusText);
                 $.Bizmo.resetHelpText();
                 // Remove the Last Track Upload
                 if( $( 'upload_' + $.Bizmo.current_cover_id )) {
                     $( '#upload_' + $.Bizmo.current_cover_id ).remove();
                 }
             } else { 
                 var element = $(getSelectorForId('form', getTrackId()));
                 $(element).html( responseText );
                 
                 $(hideorshow_default());
                               $('#preview_type_1').change(hideshow_radio);
                               $('#preview_type_2').change(hideshow_radio);
                               $('#streaming_only :checkbox').change(hideshow_radio_sellbyothers);
                               $('#sellbyothers :input').change(hideshow_streamingonly);
                               $('#price_structure_id').change(hideorshow_price);
             }

       if(responseText.match(/class=\"upload_error\"/)) {
          $.Bizmo.submitTrack();
                   $('.upload_nest').remove();
                   $("#upload_*").remove();
                   $('#blank').css('display', 'block');
                   $('#pop_container').html( '<h3>' + localize.upload.track.upload_error + '</h3>' );
                   $('#popper').css('top', '25%');
        $.Bizmo.addTrackUpload();  // Add New Track Upload.
       }else if($(getSelectorForId('form', getTrackId())).find('.upload_nest').children('.saved')[0]) {
          $.Bizmo.submitTrack();
                   $('.upload_nest').remove();
                   $("#upload_*").remove();
                   // $('.step_sec').append( '<div class="finer_text"> <span>' +  localize.upload.track.upload_success + '</span></div>' );
                   $('#blank').css('display', 'block');
                   $('#pop_container').html( '<h3>' + localize.upload.track.upload_success  + '<br>' + localize.upload.note + '</h3>' );
                   $('#popper').css('top', '25%');
                   document.location = document.location.href=$.uri_for('add/track');
        $.Bizmo.addTrackUpload();  // Add New Track Upload.
       } else {
          $(getSelectorForId('form', getTrackId())).find('.tab_content .data_coll').children('form').submit( $.Bizmo.submitValidateTrack );
       }
     },
    /**
     * Handle validate edit Cd submit.
     *  If track was succesfully saved create a new cd upload, else shows the same for,. 
     */
    handleSubmitValidateCd: function(responseText, textStatus, req){
             // If its already saved then put it in a separate node
             // Remove the cover upload for previous Cd and obviosly 
             // New Cd uptload 
             $.Bizmo.submitDisabled = false;
             var element = $(getSelectorForId('form', getTrackId()));
             if( responseText.match(/class=\"upload_error\"/)) {
                 var statusText = '<div class="upload_nest border_style server_response">' + localize.upload.cd.upload_error +'</div>';
                 $(element).html( statusText);
                 $.Bizmo.resetHelpText();
                 // Remove the Last Track Upload
                 if( $( 'upload_' + $.Bizmo.current_cover_id )) { 
                     $( '#upload_' + $.Bizmo.current_cover_id ).remove();
                 }
             } else if( responseText.match(/class=\"saved\"/)) {
                 var statusText = '<div class="upload_nest border_style server_response">' + responseText +'</div>';
                 $(element).html( statusText);
                 $.Bizmo.resetHelpText();
                 // Remove the Last Track Upload
                 if( $( 'upload_' + $.Bizmo.current_cover_id )) {
                     $( '#upload_' + $.Bizmo.current_cover_id ).remove();
                 }
             } else { 
                 var element = $(getSelectorForId('form', getTrackId()));
                 $(element).html( responseText );
                 
                 $(hideorshow_default());
             }
       if(responseText.match(/class=\"upload_error\"/)) {
          $.Bizmo.submitCd();
                   $('.upload_nest').remove();
                   $("#upload_*").remove();
                   $('#blank').css('display', 'block');
                   $('#pop_container').html( '<h3>' + localize.upload.cd.upload_error  + '</h3>' );
                   $('#popper').css('top', '25%');
        $.Bizmo.addCdUpload();  // Add New Track Upload.
       }else if($(getSelectorForId('form', getTrackId())).find('.upload_nest').children('.saved')[0]) {
          $.Bizmo.submitCd();
                   $('.upload_nest').remove();
                   $("#upload_*").remove();
                   //$('.step_sec').append( '<div class="finer_text"> <span>' +  localize.upload.cd.upload_success + '</span></div>' );
                   $('#blank').css('display', 'block');
                   //$('#pop_container').html( '<h3>' + localize.upload.cd.upload_success  + '<br>' + localize.upload.note + '</h3>' );
                   $('#pop_container').html( '<h3>' + localize.upload.cd.upload_success  + '</h3>' );
                   $('#popper').css('top', '25%');
        $.Bizmo.addCdUpload();  // Add New Track Upload.
       } else {
          $(getSelectorForId('form', getTrackId())).find('.tab_content .data_coll').children('form').submit( $.Bizmo.submitValidateCd );
       }
     },

    handleSubmitValidateEditTrack: function(responseText, textStatus, req){
        if(responseText.match(/class=\"saved\"/)) {
            $.Bizmo.submitEditTrack();
                }else{
                    $(hideorshow_edit_default());
                    //$(hideorshow_default());
                    //$(hideorshow_default());
                    $('#preview_type_1').change(hideshow_radio);
                    $('#preview_type_2').change(hideshow_radio);
                    $('#streaming_only :checkbox').change(hideshow_radio_sellbyothers);
                    $('#sellbyothers :input').change(hideshow_streamingonly);
                    $('#edit_track').submit( $.Bizmo.submitValidateEditTrack );
                    $('#price_structure_id').change(hideorshow_price);
                }
        $(function(){$('.date-pick').datePicker({clickInput:true})});
    },
    /**
     * Handle validate track submit.
     *  If track was succesfully saved create a new track upload, else shows the same for,. 
     */
    handleSubmitValidateVideo: function(responseText, statusText, res){
                $.Bizmo.submitDisabled = false;
            var element = $(getSelectorForId('form', getTrackId()));
             var element = $(getSelectorForId('form', getTrackId()));
             if( responseText.match(/class=\"upload_error\"/)) {
                 var statusText = '<div class="upload_nest border_style server_response">' + localize.upload.video.upload_error +'</div>';
                 $(element).html( statusText);
                 $.Bizmo.resetHelpText();
                 // Remove the Last Track Upload
                 if( $( 'upload_' + $.Bizmo.current_cover_id )) { 
                     $( '#upload_' + $.Bizmo.current_cover_id ).remove();
                 }
            } else if( responseText.match(/class=\"saved\"/)) {
                 var statusText = '<div class="upload_nest border_style server_response">' + responseText +'</div>';
                 $(element).html( statusText);
                 $.Bizmo.resetHelpText();
                 // Remove the Last Track Upload
                 if( $( 'upload_' + $.Bizmo.current_cover_id )) {
                     $( '#upload_' + $.Bizmo.current_cover_id ).remove();
                 }
             } else { 
                 var element = $(getSelectorForId('form', getTrackId()));
                 $(element).html( responseText );
                 $(hideorshow_default());
                 $('#preview_type_1').change(hideshow_radio);
                 $('#preview_type_2').change(hideshow_radio);
                 $('#streaming_only :checkbox').change(hideshow_radio_sellbyothers);
                 $('#sellbyothers :input').change(hideshow_streamingonly);
                 $('#price_structure_id').change(hideorshow_price);
             }
       if(responseText.match(/class=\"upload_error\"/)) {
          $.Bizmo.submitVideo();
                   $('.upload_nest').remove();
                   $("#upload_*").remove();
                   $('#blank').css('display', 'block');
                   $('#pop_container').html( '<h3>' + localize.upload.video.upload_error  + '</h3>' );
                   $('#popper').css('top', '25%');
        $.Bizmo.addVideoUpload();  // Add New Track Upload.
        }else if($(getSelectorForId('form', getTrackId())).find('.upload_nest').children('.saved')[0]) {
           $.Bizmo.submitVideo();
                 $('.upload_nest').remove();
                 $("#upload_*").remove();
                  // $('.step_sec').append( '<div class="finer_text"> <span>' +  localize.upload.video.upload_success + '</span></div>' );
                   $('#blank').css('display', 'block');
                   $('#pop_container').html( '<h3>' + localize.upload.video.upload_success + '<br>' + localize.upload.note + '</h3>' );
                   $('#popper').css('top', '25%');
                   document.location = document.location.href=$.uri_for('add/video'); 
           $.Bizmo.addVideoUpload();  // Add New Track Upload.
         } else {
            $(getSelectorForId('form', getTrackId())).find('.tab_content .data_coll').children('form').submit( $.Bizmo.submitValidateVideo );
         }
      },
                /**
                 * Handle validate ticket submit.
                 *  If track was succesfully saved create a new ticket upload, else shows the same for,.
                 */
                handleSubmitValidateTicket: function(responseText, statusText, res){
                  $.Bizmo.submitDisabled = false;

                    var element = $('#add_form .addinfo');
             if( responseText.match(/class=\"upload_error\"/)) {
                 var statusText = '<div class="upload_nest border_style server_response">' + localize.upload.ticket.upload_error +'</div>';
                 $(element).html( statusText);
                 $.Bizmo.resetHelpText();
                 // Remove the Last Track Upload
                 if( $( 'upload_' + $.Bizmo.current_cover_id )) { 
                     $( '#upload_' + $.Bizmo.current_cover_id ).remove();
                 }
                    }else if( responseText.match(/class=\"saved\"/)) {
                        var statusText = '<div class="upload_nest border_style server_response">' + responseText +'</div>';
                        $(element).html( '' );
                       $('#blank').css('display', 'block');
                       $('#pop_container').html( '<h3>' + localize.upload.ticket.upload_success + '</h3>' );
                       $('#popper').css('top', '25%');
                        $.Bizmo.resetHelpText();
                    } else {
                         var element = $('#add_form .addinfo');
                         $(element).html( responseText );
                         $(hideorshow_default());
                         $('#preview_type_1').change(hideshow_radio);
                         $('#preview_type_2').change(hideshow_radio);
                         $('#streaming_only :checkbox').change(hideshow_radio_sellbyothers);
                         $('#sellbyothers :input').change(hideshow_streamingonly);
                         $('#price_structure_id').change(hideorshow_price);
                     }

                    // Not sure if another upload terminal need to be added???
       if(responseText.match(/class=\"upload_error\"/)) {
          $.Bizmo.submitTicket();
                   $('.upload_nest').remove();
                   $("#upload_*").remove();
                   $('#blank').css('display', 'block');
                   $('#pop_container').html( '<h3>' + localize.upload.ticket.upload_error  + '</h3>' );
                   $('#popper').css('top', '25%');
        $.Bizmo.addTicketUpload();  // Add New Track Upload.
                    }else if($(getSelectorForId('form', getTrackId())).find('.upload_nest').children('.saved')[0]) {
                  $.Bizmo.submitTicket();
                        $('.upload_nest').remove();
                       $('.step_sec').append( '<div class="finer_text"> <span>' +  localize.upload.ticket.upload_success + '</span></div>' );
                        //$("#upload_*").remove();
                       $('#blank').css('display', 'block');
                       $('#pop_container').html( '<h3>' + localize.upload.ticket.upload_success + '</h3>' );
                       $('#popper').css('top', '25%');
                        $.Bizmo.addTicketUpload();  // Add New Ticket Upload.
                    } else {
                        $('#add_form').find('.addinfo').find('.tab_content .data_coll form').submit( $.Bizmo.submitValidateTicket );
                    }
                    $(function(){$('.date-pick').datePicker({clickInput:true})});
                },
          /**
          * Handle validate ringtone submit.
          *  If ringtone was succesfully saved create a new ringtone upload, else shows the same for,.
          */
          handleSubmitValidateRingtone: function(responseText, statusText, res){
                $.Bizmo.submitDisabled = false;

               var element = $(getSelectorForId('form', getTrackId()));
             if( responseText.match(/class=\"upload_error\"/)) {
                 var statusText = '<div class="upload_nest border_style server_response">' + localize.upload.ringtone.upload_error +'</div>';
                 $(element).html( statusText);
                 $.Bizmo.resetHelpText();
                 // Remove the Last Track Upload
                 if( $( 'upload_' + $.Bizmo.current_cover_id )) { 
                     $( '#upload_' + $.Bizmo.current_cover_id ).remove();
                 }
               }else if( responseText.match(/class=\"saved\"/)) {
                    var statusText = '<div class="upload_nest border_style server_response">' + responseText +'</div>';
                    $(element).html( statusText);
                    $.Bizmo.resetHelpText();
                    // Remove the Last Track Upload
                    if( $( 'upload_' + $.Bizmo.current_cover_id )) {
                        $('#upload_'+ $.Bizmo.current_cover_id ).remove();
                    }

               } else {
                   var element = $(getSelectorForId('form', getTrackId()));
                   $(element).html( responseText );
                   $(hideorshow_default());
                   $('#preview_type_1').change(hideshow_radio);
                   $('#preview_type_2').change(hideshow_radio);
                   $('#streaming_only :checkbox').change(hideshow_radio_sellbyothers);
                   $('#sellbyothers :input').change(hideshow_streamingonly);
                   $('#price_structure_id').change(hideorshow_price);
               } 
       if(responseText.match(/class=\"upload_error\"/)) {
          $.Bizmo.submitRingtone();
                   $('.upload_nest').remove();
                   $("#upload_*").remove();
                   $('#blank').css('display', 'block');
                   $('#pop_container').html( '<h3>' + localize.upload.ringtone.upload_error  + '</h3>' );
                   $('#popper').css('top', '25%');
        $.Bizmo.addRingtoneUpload();  // Add New Track Upload.
            }else if($(getSelectorForId('form', getTrackId())).find('.upload_nest').children('.saved')[0]) {
                  $.Bizmo.submitRingtone();
                    $('.server_response').remove();
                    $("#upload_*").remove();
                    // $('.step_sec').append( '<div class="finer_text"> <span>' +  localize.upload.ringtone.upload_success + '</span></div>' );
                   $('#blank').css('display', 'block');
                   $('#pop_container').html( '<h3>' + localize.upload.ringtone.upload_success + '<br>' + localize.upload.note + '</h3>' );
                   $('#popper').css('top', '25%');
                    document.location = document.location.href=$.uri_for('add/ringtone');
                  $.Bizmo.addRingtoneUpload();  // Add New Ringtone Upload.
              } else {
                  $(getSelectorForId('form', getTrackId())).find('.tab_content .data_coll').children('form').submit( $.Bizmo.submitValidateRingtone );
              }
          },

                /**
                * Handle validate ebook submit.
                *  If ebook was succesfully saved create a new ebook upload, else shows the same for,.
                */
            handleSubmitValidateEbook: function(responseText, statusText, res){
              $.Bizmo.submitDisabled = false;

               var element = $(getSelectorForId('form', getTrackId()));
             if( responseText.match(/class=\"upload_error\"/)) {
                 var statusText = '<div class="upload_nest border_style server_response">' + localize.upload.ebook.upload_error +'</div>';
                 $(element).html( statusText);
                 $.Bizmo.resetHelpText();
                 // Remove the Last Track Upload
                 if( $( 'upload_' + $.Bizmo.current_cover_id )) { 
                     $( '#upload_' + $.Bizmo.current_cover_id ).remove();
                 }
               }else if( responseText.match(/class=\"saved\"/)) {
                    var statusText = '<div class="upload_nest border_style server_response">' + responseText +'</div>';
                     $(element).html( statusText );
                    $.Bizmo.resetHelpText();
                    // Remove the Last Track Upload
                    if( $( 'upload_' + $.Bizmo.current_cover_id )) {
                        $('#upload_'+ $.Bizmo.current_cover_id ).remove();
                    }

               } else {
                   var element = $(getSelectorForId('form', getTrackId()));
                   $(element).html( responseText );
                   $(hideorshow_default());
                   $('#preview_type_1').change(hideshow_radio);
                   $('#preview_type_2').change(hideshow_radio);
                   $('#streaming_only :checkbox').change(hideshow_radio_sellbyothers);
                   $('#sellbyothers :input').change(hideshow_streamingonly);
                   $('#price_structure_id').change(hideorshow_price);
               }
       if(responseText.match(/class=\"upload_error\"/)) {
          $.Bizmo.submitEbook();
                   $('.upload_nest').remove();
                   $("#upload_*").remove();
                   $('#blank').css('display', 'block');
                   $('#pop_container').html( '<h3>' + localize.upload.ebook.upload_error  + '</h3>' );
                   $('#popper').css('top', '25%');
        $.Bizmo.addEbookUpload();  // Add New Track Upload.
               }else if($(getSelectorForId('form', getTrackId())).find('.upload_nest').children('.saved')[0]) {
                    $.Bizmo.submitEbook();
                    $('.upload_nest').remove();
                    $("#upload_*").remove();
                     $('.step_sec').append( '<div class="finer_text"> <span>' +  localize.upload.ebook.upload_success + '</span></div>' );
                    $('#blank').css('display', 'block');
                    $('#pop_container').html( '<h3>' + localize.upload.ebook.upload_success + '</h3>' );
                    $('#popper').css('top', '25%');
                    $.Bizmo.addEbookUpload();  // Add New Ringtone Upload.
                } else {
                    $(getSelectorForId('form', getTrackId())).find('.tab_content .data_coll').children('form').submit( $.Bizmo.submitValidateEbook );
                }
            },

                /**
                 * Handle validate image submit.
                 *  If image was succesfully saved create a new image upload, else shows the same for,.
                 */
                handleSubmitValidateImage: function(responseText, statusText, res){
                $.Bizmo.submitDisable = false;
               var element = $(getSelectorForId('form', getTrackId()));
             if( responseText.match(/class=\"upload_error\"/)) {
                 var statusText = '<div class="upload_nest border_style server_response">' + localize.upload.image.upload_error +'</div>';
                 $(element).html( statusText);
                 $.Bizmo.resetHelpText();
                 // Remove the Last Track Upload
                 if( $( 'upload_' + $.Bizmo.current_cover_id )) { 
                     $( '#upload_' + $.Bizmo.current_cover_id ).remove();
                 }
               }else if( responseText.match(/class=\"saved\"/)) {
                    var statusText = '<div class="upload_nest border_style server_response">' + responseText +'</div>';
                    $(element).html( statusText);
                    $.Bizmo.resetHelpText();
                    // Remove the Last Track Upload
                    if( $( 'upload_' + $.Bizmo.current_cover_id )) {
                        $('#upload_'+ $.Bizmo.current_cover_id ).remove();
                    }
               } else {
                   var element = $(getSelectorForId('form', getTrackId()));
                   $(element).html( responseText );
                   $(hideorshow_default());
                   $('#preview_type_1').change(hideshow_radio);
                   $('#preview_type_2').change(hideshow_radio);
                   $('#streaming_only :checkbox').change(hideshow_radio_sellbyothers);
                   $('#sellbyothers :input').change(hideshow_streamingonly);
                   $('#price_structure_id').change(hideorshow_price);
               }
       if(responseText.match(/class=\"upload_error\"/)) {
          $.Bizmo.submitImage();
                   $('.upload_nest').remove();
                   $("#upload_*").remove();
                   $('#blank').css('display', 'block');
                   $('#pop_container').html( '<h3>' + localize.upload.image.upload_error  + '</h3>' );
                   $('#popper').css('top', '25%');
        $.Bizmo.addImageUpload();  // Add New Track Upload.
                   }else if($(getSelectorForId('form', getTrackId())).find('.upload_nest').children('.saved')[0]) {
                        $.Bizmo.submitImage();
                        $('.upload_nest').remove();
                        $("#upload_*").remove();
                    // $('.step_sec').append( '<div class="finer_text"> <span>' +  localize.upload.image.upload_success + '</span></div>' );
                   $('#blank').css('display', 'block');
                   $('#pop_container').html( '<h3>' + localize.upload.image.upload_success + '</h3>' );
                   $('#popper').css('top', '25%');
                        $.Bizmo.addImageUpload();  // Add New Ringtone Upload.
                    } else {
                        $(getSelectorForId('form', getTrackId())).find('.tab_content .data_coll').children('form').submit( $.Bizmo.submitValidateImage );
                    }
                },

                // Submit functions
                submitEditTrack: function(){
                        // try to submit the current track if not done yet try later.
                        // hide the form only.
                },
    
    // Submit functions
    submitTrack: function(){
      // try to submit the current track if not done yet try later.
      // hide the form only.
      
    },
    submitCd: function(){
      // try to submit the current Cd if not done yet try later.
      // hide the form only.
      
    },
                submitImage: function(){
                    // try to submit the current image if not done yet try later.
                    // hide the form only.
                },
                submitAlbum: function(){
                    // try to submit the current image if not done yet try later.
                    // hide the form only.
                },
    
    submitVideo: function() {},
          // Submit functions
          submitRingtone: function(){
              // try to submit the current ringtone if not done yet try later.
              // hide the form only.
          },
                submitEbook: function(){
                    // try to submit the current ebook if not done yet try later.
                    // hide the form only.
                },
                submitTicket: function(){
                    // try to submit the current ringtone if not done yet try later.
                    // hide the form only.
                },
    handleSubmitTrack: function(){
      // if valid submit remove from form.
    },
    handleSubmitCd: function () {},
        handleSubmitAlbum: function(){
      // if valid submit remove from form.
    },
      
    handleSubmitVideo: function () {},
    handleSubmitEditTrack: function () {},
          handleSubmitRingtone: function(){
              // if valid submit remove from form.
          },
                handleSubmitEbook: function(){
                    // if valid submit remove from form.
                },
                handleSubmitTicket: function(){
                    // if valid submit remove from form.
    },
                handleSubmitImage: function(){
                    // if valid submit remove from form.

                },
    // No Flash
    /**
     * Handle no flash plugin, 
     *  or minimum required version available.
     */
    noFlash: function(){
        $(selectors['noFlash']).prepend( templates['noScript'].apply( {'message': labels['noScript']} ));
    },
    
    // SWFUpload functionality and event handlers.
    // Notice: $this in the handlers scope will refer to the current exexuting swfupload.
    
    /**
     * Wrapper function for adding a new swfupload.
     *
     * @param type      The type of attach(current upload id).
     * @param id        The id to attach(current upload id).
     * @param settings  An hash containing the swfupload settings, 
     *                  if none provided defaults will be used.
     * @param selector  The selector point at where to insert the contentbox.
     * @param labels    The labels for the contentbox an hash containing key:value pairs for the contentbox template.
     */
    addSWFUpload: function(type, id, settings, selector, labels){
      options = getDefaultSWFUploadSettings();
      // Iterate over default settings.
      for(key in options){
        if(typeof(settings[key]) != "undefined"){ 
          continue; // skip this key since it already is set.
        }
        settings[key] = options[key];  // Set key to defaults.
      }
      // settings['button_text']          = templates['SWFUploadButton'].apply({'chooseText': labels['chooseText']});
      settings['button_placeholder_id'] = getSelectorForId('choose', id, false);
      
      // custom settings.
      settings['custom_settings']['id'] = id;
      settings['custom_settings']['type'] = type;
      
      // Append content box.
      $(selector).after(templates['contentbox'].apply({
        'id': id,
        'heading':    labels['heading'],
                'caution':      labels['caution'],
        'paragraph':  labels['paragraph'],
        'link':       labels['link'],
                'type': labels['type'],
                'label': labels['chooseText']
      }));
      new SWFUpload(settings); // not storing reference, could store them using a set(uploaders[id] = swfu).
    },
    
    /**
     * Handle file dialog complete
     *
     * @param numFilesSelected  The number of files selected by the user.
     * @param numFilesQueued    The number of files queued for upload. 
     */
    fileDialogComplete: function(numFilesSelected, numFilesQueued){
      if((numFilesSelected&numFilesQueued) == true){
        try { 
          options = this.customSettings;
                                        var omap = {
                                                     'track'   : 'trackUploadRunningText',
                                                     'cover'   : 'coverUploadRunningText',
                                                     'synopsis'   : 'synopsisUploadRunningText',
                                                     'video'   : 'videoUploadRunningText',
                                                     'ringtone': 'ringtoneUploadRunningText',
                                                     'ebook': 'ebookUploadRunningText',
                                                     'ticket': 'ticketUploadRunningText',
                                                     'image': 'imageUploadRunningText',
                                                     'album': 'albumUploadRunningText',
                                                     'cd': 'cdUploadRunningText'
                                                   };
         
          $(getSelectorForId('upload', options.id)).addClass('hidden');
          //$(selectors['uploadRunning']).show();
          $(selectors['content']).append(templates['uploadRunning'].apply({
            'id': options.id ,
            'paragraph' : labels[ omap[options.type] ? omap[ options.type ] : omap['track']]}));
          
          //$(getSelectorForId('contentbox', options.id)).show();
         // Setting media_type to options.type here just because while setting the cover id, the media type for which it is uploading is required.
          if (options.type != 'cover' && options.type != 'synopsis') {
              media_type = options.type;
          }
          $('input[type=submit]').attr("disabled",true);          
          // Yet another skyrock customization, this is going break our desing so BAD!!
          // FUCK!!!!
          if( options.type == 'track' || options.type == 'video' || options.type == 'ringtone' ) {
            $('#wait_message').remove();
            $('.submit').after( '<div id="wait_message" style="font-size: .7em;  padding-bottom:15px;">' + localize.upload.wait_message +  '</div>' );
          }

          if (options.type == 'track') {
            $(selectors['addInfo']).clone().attr('id', getSelectorForId('form', options.id, false)).insertAfter(selectors['track']);

            $(getSelectorForId('form', options.id)).find('.tab_content .data_coll').children('form').submit( $.Bizmo.submitValidateTrack );
                        $('#price_structure_id').change(hideorshow_price);
                        $(hideorshow_default());
                    $('#preview_type_1').change(hideshow_radio);
                    $('#preview_type_2').change(hideshow_radio);
                    $('#streaming_only :checkbox').change(hideshow_radio_sellbyothers);
                        $('#sellbyothers :input').change(hideshow_streamingonly);

            $.Bizmo.addCoverUpload();
          }else if (options.type == 'cd') {
            $(selectors['addInfo']).clone().attr('id', getSelectorForId('form', options.id, false)).insertAfter(selectors['cd']);
            $(getSelectorForId('form', options.id)).find('.tab_content .data_coll').children('form').submit( $.Bizmo.submitValidateCd );
            $.Bizmo.addCoverUpload();
                                        }else if (options.type == 'video') {
            $(selectors['addInfo']).clone().attr('id', getSelectorForId('form', options.id, false)).insertAfter(selectors['video']);
            $(getSelectorForId('form', getTrackId())).find('.tab_content .data_coll').children('form').submit( $.Bizmo.submitValidateVideo );
            /**
             * Maybe we can rewrite this no need to set up id's for every radio button
             * and create different handlers, FIXME: Change this to reduce 
             * no function definitions
             **/
            $('#preview_type_1').change(hideshow_radio);
            $('#preview_type_2').change(hideshow_radio);
                    $('#streaming_only :checkbox').change(hideshow_radio_sellbyothers);
                        $('#sellbyothers :input').change(hideshow_streamingonly);
                        $('#price_structure_id').change(hideorshow_price);
                        $(hideorshow_default());

                                                $.Bizmo.addCoverUpload();
                                        }
                                        else if (options.type == 'image') {
                                                $(selectors['addInfo']).clone().attr('id', getSelectorForId('form', options.id, false)).insertAfter(selectors['image']);
                                                $(getSelectorForId('form', options.id)).find('.tab_content .data_coll').children('form').submit( $.Bizmo.submitValidateImage );
                                         }
                                        else if (options.type == 'album') {
                                                $(selectors['addInfo']).clone().attr('id', getSelectorForId('form', options.id, false)).insertAfter(selectors['album']);
                                                $(getSelectorForId('form', options.id)).find('.tab_content .data_coll').children('form').submit( $.Bizmo.submitValidateAlbum );
                          var m_names = new Array("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec");
                          var selDate = new Date();
                          selDate.setTime(selDate.getTime()+86400000*30);
                          var curr_date = selDate.getDate();
                          var curr_month = selDate.getMonth();
                          var curr_year = selDate.getFullYear();
                          // Date Picker event handler goes here
                          $(function(){ $('.date-pick').datePicker({clickInput:true})});
                          $('#date1').val(curr_date + "-" + m_names[curr_month] + "-" + curr_year);
                                                  $('#date1').keydown( function( e ) { //var chr = String.fromCharCode( e.which ); 
                                                                                         e.preventDefault(); 
                                                  });
                                         }
                                        else if (options.type == 'ringtone') {
                                                $(selectors['addInfo']).clone().attr('id', getSelectorForId('form', options.id, false)).insertAfter(selectors['ringtone']);
                                                $(getSelectorForId('form', options.id)).find('.tab_content .data_coll').children('form').submit( $.Bizmo.submitValidateRingtone );
                                                $('#preview_1').change(hideshow_radio);
                                                $('#preview_2').change(hideshow_radio);
                                                $('#price_structure_id').change(hideorshow_price);
                                                $(hideorshow_default());
                                                $.Bizmo.addCoverUpload();
                                        }
                                        else if (options.type == 'ebook') {
            test = getTrackId();//options.id;
                                                $.Bizmo.addSynopsisUpload();
                                                //$.Bizmo.addCoverUpload();
                                        }

                                        else if (options.type == 'ticket') {
                                                $('#add_form').find('.addinfo').find('.tab_content .data_coll form').submit( $.Bizmo.submitValidateTicket );
                                        } else if (options.type == 'synopsis') {
                                                $(selectors['addInfo']).clone().attr('id', getSelectorForId('form', test, false)).insertAfter(selectors['ebook']);
                                                $(getSelectorForId('form', test)).find('.tab_content .data_coll').children('form').submit( $.Bizmo.submitValidateEbook );
                                                $.Bizmo.addCoverUpload();
                                        }
          this.startUpload();
        }catch(e){}
      }
    },
    
    /**
     * Handle upload start.
     *
     * @param file  The file to start uploading.
     */
    uploadStart: function(file){
            // A Hack!!!
            // Sa tya::: Look here
             if( !  $('.ie').length ) {
               options = this.customSettings;
               $(getSelectorForId('upload', options.id)).css('visibility', 'hidden'); // remove contentbox not used anymore.
             } else {
               // IE, weird again
               // No Fix for IE
             }

           
            if( step ) {
               var tmp_step = step;
               // Reset the Current Step
               if( $('.step_' + step).length ) {
                  $('.step_' + step).parent('.active_step').removeClass('active_step');
                  $('.step_' + step).next('.white').removeClass('white');
               }

               // Most Important Increment step
               step++;

               while( tmp_step <= 3) {
                   tmp_step++;
                   if( $('.step_' + tmp_step).length ) {
                       $('.step_' + tmp_step).parent('.step_cont').addClass('active_step');
                       $('.step_' + tmp_step).parents('.step_cont').find('.step_txt').addClass('white');
                   }
               }
            }


    },
   uploadError: function(file, errorCode, message)
   {
   switch(errorCode) {
   case SWFUpload.UPLOAD_ERROR.UPLOAD_LIMIT_EXCEEDED:
   default:
   alert('You can upload up to '+this.settings.file_size_limit+', please try again.');
   break;
 }
 this.file.cancelFile(false);
 },
    
    /**
     * Handle Upload Progress.
     *
     * @param file          The current file being uploaded.
     * @param bytesLoaded   The current bytes uploaded.
     * @param bytesTotal    The total amount of bytes to be uploaded.
     */
    uploadProgress: function(file, bytesLoaded, bytesTotal) {
      try {
        options = this.customSettings;
        options['percent'] = Math.ceil((bytesLoaded / bytesTotal) * 100)+'%';
        $(getSelectorForId('progress',options.id)).width(options['percent']).html(options['percent']);
      } catch (ex) {
        this.debug(ex);
      }
    },

        serializeTable: function(table) {
            var result = "";
            var tableId = table.id;
            var rows = table.rows;
            for (var i=0; i<rows.length-1; i++) {
                 if (result.length > 0) result += "&";
                     var rowId = rows[i].id;
                     if (rowId)  {
                         rowId = rowId.match(/[^\-]*$/)[0];
                     }
                     result += tableId + '[]=' + rowId;
             }
            return result;
        },
    
    /**
     * Handle Upload Success.
     *
     * @param file          The current file which has finished uploading.
     * @param serverData    The serverData which was returned.
     */
    uploadSuccess: function(file, serverData){
      try {
                         // Option Map, Maps which Success Text to pick
                         // Once the upload is complete. Maybe better
                         // written as labels[ options.type + 'UploadSuccessText' ] ?
                         var omap = {
                             'track'   : 'trackUploadSuccessText',
                             'cover'   : 'coverUploadSuccessText',
                             'video'   : 'videoUploadSuccessText',
                             'ringtone': 'ringtoneUploadSuccessText',
                             'ebook': 'ebookUploadSuccessText',
                             'synopsis': 'synopsisUploadSuccessText',
                             'ticket': 'ticketUploadSuccessText',
                             'image': 'imageUploadSuccessText',
                             'album': 'albumUploadSuccessText',
                             'cd': 'cdUploadSuccessText'
                         };
          options = this.customSettings;
          $(getSelectorForId('upload', options.id)).remove(); // remove contentbox not used anymore.
          $(getSelectorForId('progress', options.id)).parent().remove(); //remove progressbar on completion
                         // As Soon as the upload's complete, publish the filename, so user is happy
                         $(getSelectorForId('status', options.id)).html(   
                             labels[( 
                                 omap[options.type] ? omap[ options.type ] : omap['track']
            )].replace('__file__', file.name)
                          );
       var _media_id = null;
                         switch( options.type) {
           case 'cover':
                     _media_id = options.type + 'Add' + media_type.capitalize();
           break;
           default:
         // Capitalize is not a default function, String Object needs
         // to be extended to allow this. Extension is defined in header.tt
                 if (options.type == 'synopsis') {
                    //selectors['coverAddEbook'] = '#add_ebook_cover_id';
             _media_id = 'synopsisAddEbook';
                 } else if (options.type != 'cover'){
             _media_id = 'mediaAdd'+ options.type.capitalize();
         selectors['coverAddTrack'] = '#add_' + options.type + '_cover_id';
                 }else{
                     // nothing to do here because cover case will not come here at all
                     //selectors[Track'] = '#add_' + options.type + '_cover_id';
                }

           break;
       }
       if (options.type != 'ticket') {
               if (options.type == 'synopsis') {
              $(templates['selector'].apply({
                'target': getSelectorForId('form', getTrackId()),
               'id'    : '#add_ebook_media_id',
              'type': ' '
            }).replace('_#', ' #')).attr('value',ebook_media_id);
              $(templates['selector'].apply({
              'target': getSelectorForId('form', getTrackId()),
               'id'    : selectors[_media_id],
              'type': ' '
            }).replace('_#', ' #')).attr('value',serverData);
        } else {
                 if (options.type == 'ebook') {ebook_media_id = serverData; }
              $(templates['selector'].apply({
              'target': getSelectorForId('form', getTrackId()),
               'id'    : selectors[_media_id],
              'type': ' '
            }).replace('_#', ' #')).attr('value',serverData);
  
        }
                $(selectors[_media_id]).attr( 'value', serverData);
      } else {
           $(selectors[_media_id]).attr( 'value', serverData);
      }
            if ($('.upload_progress').length == 0) {
                $("input[type=submit]").removeAttr('disabled');
                $('input[type=submit]').attr("disbled",false);
            } else {
                //nothing to for the timebeing
            }
       // End of "try" Block
      } catch (e) {
        this.debug(e);
      }
    }
    
  };
}(); // the parens here cause the anonymous function to execute and return
function hideorshow_edit_default() {
    if($('#price_structure_id').length > 0) {
        var ps_val = $('#price_structure_id').text();
        if( ps_val != 'default') {
            $("input[name=price]").attr('disabled',true);
            $('#fixed_price').hide();
        }
    }
    //Removing preview start, preview end text boxes because we are not supporting reencoding of media.
    //$('.time_sec').remove();
    //Removing preview type because we are not supporting changing preview type in edit section
   // $('#previewtype').remove();
}

function hideorshow_default() {
    if($('#price_structure_id').length > 0) {
        var ps_val = $('#price_structure_id').text();
        if( ps_val != 'default') {
            $("input[name=price]").attr('disabled',true);
            $('#fixed_price').hide();
        }
    }
    //if($('#fromtoseconds').length > 0) {
    if($('.time_sec').length > 0) {
        var sb_val = $("input[name=preview_type]:checked").val(); 
        if( sb_val == 'full') {
            $('.time_sec :input').attr('disabled',true);
            $('.time_sec').hide();
        }
    }
}
function hideorshow_price() {
    var cur_val = $(this).text();
    if( cur_val != 'default') {
    $('#fixed_price').hide();
    $("input[name=price]").attr('disabled',true);
    } else {
    $('#fixed_price').show();
    $("input[name=price]").removeAttr('disabled');
    }
}
function hideshow_streamingonly(){
    var cur_val = $('input:radio[@name=sell_by_others]:checked').val();
    if (cur_val == 1) {
       $('input[name=streaming_only]').attr('checked',false);
    }
}
function hideshow_radio(){ 
    switch ($(this).val())
    {
    case 'full':
     $(".time_sec :input").attr('disabled',true);
     $(".time_sec").hide();
    break;
    default:
    $(".time_sec").show();
    $(".time_sec :input").removeAttr('disabled');
    }
}

function hideshow_radio_sellbyothers() {
    var cur_val = $(this).attr('checked');
  //$('#sellbyothers').hide();
    $("input:radio[name=sell_by_others]").each(
        function () {
            if(this.checked){
                this.checked = false;
            }else{
                this.checked = true;
                return false;
            }
        }
    );
}
jQuery(document).ready(function(){
  if( $('#browse_track')[0] ){ // Code for the add track screen
    if( swfobject.hasFlashPlayerVersion("9") ){
      $.Bizmo.addTrackUpload();
    } else {
      $.Bizmo.noFlash();
    }
  }
  else if ( $('#browse_video')[0] ) {
    // This is the code for add video section 
    // This is almost a clone of add track
    // TODO: Can we load methods only which are needed?
    if ( swfobject.hasFlashPlayerVersion("9") ) {
      $.Bizmo.addVideoUpload();
    } else {
      $.Bizmo.noFlash();
    }
  }
        else if( $('#browse_ringtone')[0] ){ // Code for the add ringtone screen
            if( swfobject.hasFlashPlayerVersion("9") ){
                $.Bizmo.addRingtoneUpload();
            } else {
                $.Bizmo.noFlash();
            }
        }
        else if( $('#browse_ebook')[0] ){ // Code for the add ringtone screen
            if( swfobject.hasFlashPlayerVersion("9") ){
                $.Bizmo.addEbookUpload();
            } else {
                $.Bizmo.noFlash();
            }
        }
        else if( $('#browse_image')[0] ){ // Code for the add image screen
            if( swfobject.hasFlashPlayerVersion("9") ){
                $.Bizmo.addImageUpload();
            } else {
                $.Bizmo.noFlash();
            }
        }
        else if( $('#browse_album')[0] ){ // Code for the add album screen
            if( swfobject.hasFlashPlayerVersion("9") ){
                $.Bizmo.addAlbumUpload();
            } else {
                $.Bizmo.noFlash();
            }
        }
        else if( $('#browse_ticket')[0] ){ // Code for the add ticket screen
          var m_names = new Array("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec");
          var selDate = new Date();
          selDate.setTime(selDate.getTime()+86400000*30);
          var curr_date = selDate.getDate();
          var curr_month = selDate.getMonth();
          var curr_year = selDate.getFullYear();
          $('#add_form').find('.addinfo').find('form').submit( $.Bizmo.submitValidateTicket );
          // Date Picker event handler goes here
          var start_date = new Date();
          var end_date   = new Date( 3600 * 24 * 180 * 1000  + start_date.getTime()); 
          // end_date.setTime( start_date.getTime() + ( 3600 * 24 * 180 ) );
          $(function(){$('.date-pick').datePicker({ startDate: start_date.asString(), endDate: end_date.asString(), clickInput:true })});
          $('#date1').val(curr_date + "-" + m_names[curr_month] + "-" + curr_year);
          $('#date1').keydown( function( e ) {
                  //var chr = String.fromCharCode( e.which ); 
              e.preventDefault(); });
          if ( swfobject.hasFlashPlayerVersion("9") ) {
              $.Bizmo.addTicketUpload();
          } else {
              $.Bizmo.noFlash();
          }
      }else if( $('#browse_cd')[0] ) {
            if( swfobject.hasFlashPlayerVersion("9") ){
                $.Bizmo.addCdUpload();
            } else {
                $.Bizmo.noFlash();
            }
      }
        // Disappear my account details updated successful message.
        if($('#myaccount_success')[0]) {
             setTimeout(function(){$('#myaccount_success').hide('slow');}, 15000);
        }
        // Date picker for my account details
        if($('#mydetails')[0]) {
          $(function(){$('.date-pick').datePicker({ startDate: '01/01/1900', endDate:new Date().asString(), 
                                                    clickInput:true
                                                  })
          });
          $('#birthdate').keydown( function( e ) {
                  //var chr = String.fromCharCode( e.which );
              e.preventDefault(); });
          // Show confirm dialog box here 

          $('#change_password_submit').click(function(e){
              var old_pass = $('input[name=old_password]').attr('value');
              var new_pass = $('input[name=password]').attr('value');
              var confirm_pass = $('input[name=confirm_password]').attr('value');
              var super_dd = $('input[name=super_dd]').attr('value');
              if (old_pass != "" && (new_pass == confirm_pass) && super_dd == 1){
              if (confirm(localize.change_password_confirm)){
              return true; 
              }else{return false;}
              }
          });
            
        }
        if( $( '#send_mail' )[0] ) {

            // Set Up Event Handlers if
            // Users want the email sent back again
            $('#send_mail a').click( function(e) {

                    // Prevent the event from doing anything else
                    // Dont wanna be responsible for a wild fire
                    e.stopPropagation();

                    $.get( $('#send_mail a').attr('href') , function(data) {
                            // Now we know that the mail has been sent
                            // Safe to let the user relax
                            var el = $( '#send_mail');
                            $(el).html( data );
                        }
                     );

                    // Make sure its not a proper link
                    return false;
                }
            );
        }
            $('a.arrow').click( function(e) {
                e.preventDefault();
                e.stopPropagation();
                if( $('.ac_sec_mid').css('height') == '0px') {
                    $('.ac_sec_mid').animate(
                        { height: '39px'}, 700, function() {$('.arrow').removeClass('arrow_dwn');}
                    );
                } else {
                    $('.ac_sec_mid').animate(
                        { height: '0px'}, 700,function(){$('.arrow').addClass('arrow_dwn');}
                    );
                }
            });
    if( $('.download_progress')[0] ) {
       var dl_url = $('#download_progress').html();
       $('#blank').css('display', 'block');
       $('#loader').css('display', 'block');
       
       var res_text = $.ajax({type: 'GET', async: false, url: dl_url}).responseText;
       $("#please_wait").css("display", "none");
       $("#success_msg").css("display", "block");
       $('#blank').css('display', 'none');
       $('#loader').css('display', 'none');
       if ( res_text == -1 ) {
           //INVALID ORDER. Please contact support@thebizmo.com with your order details
           $("#success_msg").html(localize.order_invalid_msg);
       } else if ( res_text == -2 ) {
           // ORDER EXPIRED. Please contact support@thebizmo.com with your order details
           $("#success_msg").html(localize.order_expired_msg);
       } else if ( res_text == -3 ) {
           // Sorry, we allow mobile downloads only for rigntones.
           $("#success_msg").html(localize.invalid_download_msg);
       } else if ( res_text == -4 ) {
           $("#success_msg").html(localize.product_not_exists_msg);
       } else {
           // pull the download file
           document.location.href = res_text; 
       }
    }
    if( $('a.left_btm') ) {
      $('a.left_btm').click( function(e) {
        e.preventDefault();
        e.stopPropagation();

        if( $('#lft_nav_col').css('display') == 'none') {
            $('.content_sec').animate( {
              marginLeft: '204px'
            }, 700, function () {
              $('a.left_btm').removeClass('left_btm_min');
              $('.left_btm_ref').removeClass('left_btm_ref_min');
              $('#lft_nav_col').slideToggle('slow');
            });
        } else {
          $('#lft_nav_col').slideToggle('slow', function() {
            $('a.left_btm').addClass('left_btm_min');
            $('.left_btm_ref').addClass('left_btm_ref_min');
            $('.content_sec').animate( {
              marginLeft: '0px'
            }, 700);
          });
        }

      });
    }
        $('.select_all').click(function(e){
                             e.preventDefault();
                             e.stopPropagation();
                             $('input[name=tracks_selected]').attr('checked', true);
                             return false;
                          }
                        );
        $('.deselect_all').click(function(e){
                             e.preventDefault();
                             e.stopPropagation();
                             var disabledCheckboxes = $('input[name=tracks_selected]').filter(':disabled');
                             $('input[name=tracks_selected]').attr('checked', false);
                             disabledCheckboxes.attr('checked', true);

//                             $('input[name=tracks_selected]').attr('checked', false);
                             return false;
                          }
                        );
// Select /Deselect messages
        $('.msg_select_all').click(function(e){
                             e.preventDefault();
                             e.stopPropagation();
                             $('input[name=msg_selected]').attr('checked', true);
                             return false;
                          }
                        );
        $('.msg_deselect_all').click(function(e){
                             e.preventDefault();
                             e.stopPropagation();
                             $('input[name=msg_selected]').attr('checked', false);
                             return false;
                          }
                        );
        $('.msg_delete').click(function(e){
                             var form = $('#delete_message');
                             var params = form.formToArray(1);
                             var target = e.target;
                             var href = $(target).attr('href');
                             e.preventDefault();
                             e.stopPropagation();
                             $.get(href,params, function(data){});
                             return false;
                          }
                        );


      $('#myc-tab  a').click(
        function (e) {
          e.preventDefault();
          e.stopPropagation();
          var target = e.target;
          if( target.tagName == 'A') {
            var href = $(target).attr('href');
            if( $(target.parentNode).attr('class') != 'on') {
              var sib = target.parentNode

              $('.' + $(target).attr('href')).css('display', 'block');
              $('.' + $(sib.parentNode).find('.on').find('a').attr('href')).css('display', 'none');
                $(sib.parentNode).find('.on').attr('class', '')
                $(sib).attr('class', 'on');
                            if( $(target).attr('href') == 'my-cont-bizmo') {
                                //$('.slider-p').css('display', 'none');
                                $('#my-cont-main-pager').css('display', 'none');
                                $('#my-cont-bizmo-pager').css('display', 'block');
                                $('#cick_me').css('display', 'none');
                                $('#forsale_info').css('display','block');
                                $('.my-cont table tr').find('.pause_icon').removeClass('pause_icon').addClass('play_icon');
                            } else {
                                //$('.slider-p').css('display', 'block');
                                $('#my-cont-bizmo-pager').css('display', 'none');
                                $('#my-cont-main-pager').css('display', 'block');
                                $('#cick_me').css('display', 'block');
                                $('#forsale_info').css('display','none');
                                //$('.my-cont table tr').find('.pause_icon').removeClass('pause_icon').addClass('play_icon');
                            } 
            }
          }
          
        }
      );
      $("#act_currency_id").change(function(){
          var cur_val = $("#act_currency_id").val(); 
          var bal_val = $('#'+cur_val).attr('value');
          $("#balance_info").html(bal_val);
          $("#show_currency").val(cur_val);
      });
      // We Need a single unified interface for tabs
      if( $('#skyrock-mt' ) ) {
        $('#skyrock-mt').click( function( e ) {
          e.preventDefault();
          e.stopPropagation();
          var target = e.target;
          if( target.tagName == 'A' ) {
            var move_to = $( target ).attr('href');
            if( move_to.match ( /key_numbers/ ) ) {
              $('#key_numbers').css('display','block');
              $('#top_tens').css('display','none');
               $( target ).parents('ul').find('li').attr('class', '' );
               $( target ).parents('ul').find('a[href="key_numbers"]').parents('li').attr('class', 'on' );
            } else if( move_to.match(/top_tens/) ) {
              $('#key_numbers').css('display','none');
              $('#top_tens').css('display','block');
               $( target ).parents('ul').find('li').attr('class', '' );
              $( target ).parents('ul').find('a[href="top_tens"]').parents('li').attr('class', 'on' );
            }
          }
        });
      }


      if( $('#money-mt') ) {
          $('#money-mt').click( function(e) {
              e.preventDefault();
              e.stopPropagation();
              var target = e.target;
              if( target.tagName == 'A' ) {
                  $('#money-mt li').removeClass('on');
                  $( target ).parents( 'li' ).addClass('on');
                  var where = $( target ).attr('href');
                  if( where == 'my_revenue') {
                      // CRAP!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
                      $('#revenue_sum').css('display', 'block');
                      $('#revenue_tabs').css('display', 'block');
                      $('#my_revenue').css('display', 'block');
                      // Now show the report things
                      $('#report_sum').css('display', 'none');
                      $('#my_report').css('display', 'none');
                      $('#bizmo_report').css('display', 'none');
                      $('#bizmo_sum').css('display', 'none');
                  } else if( where == 'my_report') {
                      // Dont shoe Revenue thingy
                      $('#revenue_sum').css('display', 'none');
                      $('#revenue_tabs').css('display', 'none');
                      $('#my_revenue').css('display', 'none');

                      // Now show the report things
                      $('#report_sum').css('display', 'block');
                      $('#my_report').css('display', 'block');
                      $('#bizmo_report').css('display', 'none');
                      $('#bizmo_sum').css('display', 'none');
                  } else if( where == 'my_bizmo' ) {
                      $('#revenue_sum').css('display', 'none');
                      $('#revenue_tabs').css('display', 'none');
                      $('#my_revenue').css('display', 'none');
                      // Now show the report things
                      $('#report_sum').css('display', 'none');
                      $('#my_report').css('display', 'none');
                      $('#bizmo_report').css('display', 'block');
                      $('#bizmo_sum').css('display', 'block');
                  }
              }
          });   
           
          $(function(){$('#start_date').datePicker({ startDate: '01/01/1900', endDate:new Date().asString(),clickInput:true })});
          $(function(){$('#end_date').datePicker({ startDate: '01/01/1900', endDate:new Date().asString(),clickInput:true })});
          //Vefirying Start Date is always less than end date
          $('.money_form').submit(function(e) {
              //e.preventDefault();
              var m_names = { 'Jan':0,
                              'Feb':1,
                              'Mar':2,
                              'Apr':3,
                              'May':4,
                              'Jun':5,
                              'Jul':6,
                              'Aug':7,
                              'Sep':8,
                              'Oct':9,
                              'Nov':10,
                              'Dec':11
                            };
              var start_date = $('#start_date').val();
              if (start_date){
              var startdate_arr = start_date.split("-");
              var sd_obj = new Date();
              sd_obj.setFullYear(startdate_arr[2],m_names[startdate_arr[1]],startdate_arr[0]); 
              }
              var end_date = $('#end_date').val();       
              if (end_date){
              var enddate_arr = end_date.split("-");
              var ed_obj = new Date();
              ed_obj.setFullYear(enddate_arr[2],m_names[enddate_arr[1]],enddate_arr[0]); 
              }
              if ((end_date && start_date) && (sd_obj.getTime() > ed_obj.getTime())) {
                  //alert("Start date should not be greater than end date");
                  alert(localize.search.date_msg);
                  return false;
              }
              return true;
          });

         $('#revenue_tabs').click( function( e ) {
             e.preventDefault();
             e.stopPropagation();
             var target = e.target;
             if( target.tagName == 'A') {
                 $('#revenue_tabs li').removeClass('on');
                 $( target ).parents('li').addClass('on');
                 switch( $( target ).attr('href') ) {
                     case 'my_sales_first':
                         $('.my_sales_first').css('display','block');
                         $('.my_sales_second').css('display','none');
                         $('.my_sales_third').css('display','none');
                     break;
                     case 'my_sales_second':
                         $('.my_sales_first').css('display','none');
                         $('.my_sales_second').css('display','block');
                         $('.my_sales_third').css('display','none');
                     break;
                     case 'my_sales_third':
                         $('.my_sales_first').css('display','none');
                         $('.my_sales_second').css('display','none');
                         $('.my_sales_third').css('display','block');
                     break;
                     default:
                     break;
              
                 }




             }
         }); 
         
      }










        // To Select the country on the registration page
        // Maybe a different way to do it?
        if( $('#country_sel') ) {
            var country = $.geography();
      var elem    = $('#country_sel').find('[value='+country+']');
            elem.attr('selected', 'true');
        }

        if( $('#srch_tp') ) {
             $('#srch_tp').submit( function (e) {
                 e.preventDefault();    
                 e.stopPropagation();
                 
                 var q = $('#srch_tp .q').attr('value');
                 if( q) {
                     document.location = $.uri_for('/discover#q='+q+'&type=tr');        
                 }
             }

             );

             $('.q').focus( function(){ $('.q').attr('value', ''); $('.q').removeClass('blurry');});
             $('.q').blur( function(){ $('.q').attr('value', localize.search.search_all_media); $('.q').addClass('blurry');});
        }

    if( $('.header_top') ) {
        $('.header_top ul li a').click(
            function ( e ) {
                var target = e.target;
                if( $( target ).attr('href') == 'help') {
                    e.preventDefault();
                    e.stopPropagation();
                    $('#blank').css('display', 'block');
                    $('#help_bizmo').animate(
                        {
                            top: '15%'
                        },800
                    );
                }
            }
        ); 
         

        if( $('#abt_bizmo_close') ) {
            $('#abt_bizmo_close').click( function(e) {
                e.preventDefault();
                e.stopPropagation();
                $('#abt_bizmo').animate(
                    {
                        top: '-300%'
                    }, 800
                );
                $('#blank').css('display', 'none');
            }
            );
        }
        if( $('#help_bizmo_close') ) {
            $('#help_bizmo_close').click( function(e) {
                e.preventDefault();
                e.stopPropagation();
                $('#help_bizmo').animate(
                    {
                        top: '-300%'
                    }, 800
                );
                $('#blank').css('display', 'none');
            }
            );

            $('#popper_close').click( function(e) {
                e.preventDefault();
                e.stopPropagation();
                $('#popper').animate(
                    {
                        top: '-300%'
                    }, 800
                );
                $('#blank').css('display', 'none');
            }
            );

        }
    }
/* Show Tickets if user Click on ti icon */
$('.my-cont .ti').click(function(e) {
   e.preventDefault();
   e.stopPropagation();
   var target = e.target;
   $(target.parentNode.parentNode.parentNode).find('.info').remove();
   $(target.parentNode.parentNode.parentNode).find('.saved').remove();
   $(target.parentNode.parentNode.parentNode).find('.clicked').removeClass('clicked');
   $(target.parentNode.parentNode).addClass('clicked');
   var itemid = $(target.parentNode).attr('id');
   itemid = itemid.substring(5);
   var url = $.uri_for('/your/list_tickets/'+itemid);
   $.get(url,function(data){
      myWindow=window.open('','MyNewWindow','width=600,height=600,left=200,top=200,scrollbars=yes');
      myWindow.document.write(data); 
       myWindow.document.close(); 
   }); 
}
);
/* Show Tickets if user Click on ti icon */
$('.my-cont .sales').click(function(e) {
   e.preventDefault();
   e.stopPropagation();
   var target = e.target;
   var itemid = $(target.parentNode).attr('id');
   itemid = itemid.substring(5);
   var url = $.uri_for('/your/list_tickets/'+itemid);
   $.get(url,function(data){
      myWindow=window.open('','MyNewWindow','width=600,height=600,left=200,top=200');
      myWindow.document.write(data);
       myWindow.document.close();
   });
}
);

/* End of handling show tickets when user Click on ti icon*/



// Albums.
// Pagination Needs to settled slightly
$('.my-cont .al').click(function(e) {
        e.preventDefault();
        e.stopPropagation();

        var target = e.target;

        $(target.parentNode.parentNode.parentNode).find('.info').remove();
        $(target.parentNode.parentNode.parentNode).find('.saved').remove();
        $(target).parents('tbody').find('.clicked').removeClass('clicked')
        $(target).parents('tr').addClass('clicked');
        var itemid = $(target.parentNode).attr('id');
        itemid = itemid.substring(5); 
        $('#blank').css('display', 'block');
        var url = $.uri_for('/your/test_data/'+itemid);


        // When Clicked on select all this is what will happen
        var select_all_click = function( e ) {
          e.preventDefault();
          e.stopPropagation();
          if($(this).parents('tr').parents('#add_to_album').length > 0){
            $('#add_to_album').find('input[name=tracks_selected]').attr('checked', true);
          } else {
            $('#delete_from_album').find('input[name=tracks_selected]').attr('checked', true);
          }
          return false;
        };


        // Event Handler for Deselect All
        var deselect_all_click = function( e ) {
          e.preventDefault();
          e.stopPropagation();
          var disabledCheckboxes;
          if($(this).parents('tr').parents('#add_to_album').length > 0){
            disabledCheckboxes = $('#add_to_album').find('input[name=tracks_selected]').filter(':disabled');
            $('#add_to_album').find('input[name=tracks_selected]').attr('checked', false);
            disabledCheckboxes.attr('checked', true);
          } else {
            disabledCheckboxes = $('#delete_from_album').find('input[name=tracks_selected]').filter(':disabled');
            $('#delete_from_album').find('input[name=tracks_selected]').attr('checked', false);
            disabledCheckboxes.attr('checked', true);
          }
          return false;
        };


        var add_to_album_click = function( e ){
          if($('#add_to_album').find('input[name=tracks_selected]').filter(':enabled').filter(':checked').length == 0){
            alert(localize.search.one_track);return false;
          } 
        };


        var delete_from_album_click = function( e ) {
          if($('#delete_from_album').find('input[name=tracks_selected]').filter(':enabled').filter(':checked').length == 0){
            alert(localize.search.one_track);return false;
          } 
        };


        var add_to_album_submit = function( e ) {
          e.preventDefault();
          var form = $('#add_to_album');
          var params = form.formToArray(1);
          // Should i move this out as well??
          $.get(form.attr('action'), params, function(data){
            var selectedCheckboxes = $('#add_to_album').find('input[name=tracks_selected]').filter(':enabled').filter(':checked');
            selectedCheckboxes.each(function(){
              var parent_tr = $(this).parents('tr');
              var value = $(this).attr('value');
              if($('#delete_from_album').find('tbody').length > 0){
                $('#delete_from_album').find('tbody').prepend(parent_tr.clone().attr('checked',false));
              } else {
                var clone = $('#add_to_album table').clone();
                clone.find('input[name=tracks_selected]').attr('checked',false);
                $('#delete_from_album').append($('#add_to_album table').clone());
                $('#delete_from_album').find('tbody').find('tr').not('tr:last').not('tr:last').remove('tr');
                $('#delete_from_album').find('tbody').prepend(parent_tr.clone().attr('checked',false));
                $('#delete_from_album').find("input[type='submit']").attr('value','Delete from Album');

                // Reset The Event Handlers
                $('.select_all').click( select_all_click );
                $('.deselect_all').click( deselect_all_click );
                $('#delete_from_album').find('input[type=submit]').click(delete_from_album_click);
                $('.album_status').hide();
              }

              if($(this).parents('#add_to_album').length > 0) {
                $(this).attr('disabled',true);
                $('#add_to_album').find('[value='+value+']').attr("disabled", true);
                $('#delete_from_album').find('[value='+value+']').attr("checked", false);
              }
            });

            alert( localize.search.album_add_success );
            return false;
          });
        };


        var delete_from_album_submit = function( e ) {
          e.preventDefault();
          var form = $('#delete_from_album');
          var params = form.formToArray(1);
          $.get(form.attr('action'), params, function(data){
            var selectedCheckboxes = $('#delete_from_album').find('input[name=tracks_selected]').filter(':enabled').filter(':checked');
            // Should this move on its own??
            selectedCheckboxes.each(function(){
              var parent_tr = $(this).parents('tr');
              var value = $(this).attr('value');
              if($('#add_to_album').find('tbody').length > 0){
                $('#add_to_album').find('[value='+value+']').attr('disabled',false).attr('checked',false);
                $('#delete_from_album').find('[value='+value+']').parents('tr').remove();
              }

              if($('#delete_from_album').find('input[name=tracks_selected]').filter(':enabled').length <= 0){
                $('#delete_from_album').find('table').remove();
                $('.album_status').show();
              }
            });

            alert( localize.search.album_delete_success );
            return false;
          });
        };


        var tab_click = function( e ) {
          e.preventDefault();
          e.stopPropagation();
          var target = e.target;
          if( target.tagName == 'A') {
            var match = $(target).attr('href').match(/\/?([a-z\-_0-9]+)$/);
            var href = match[1];
            if( $(target.parentNode).attr('class') != 'on') {
              var sib = target.parentNode
              var sib_match = $(sib.parentNode).find('.on').find('a').attr('href').match(/\/?([a-z\-_0-9]+)$/);
              $('#edit_album').find('.' + href).css('display', 'block');
              $('#edit_album').find('.' +  sib_match[1]).css('display', 'none');

              $( sib ).parents('ul').find('.on').attr('class', '')
              $( sib ).attr( 'class', 'on' );
              if( href == 'my-cont-bizmo') {
                $('#edit_album').find('.slider-p').css('display', 'none');
                $('#edit_album').find('#cick_me').css('display', 'none');
              } else {
                $('#edit_album').find('.slider-p').css('display', 'block');
                $('#edit_album').find('#cick_me').css('display', 'block');
              }
            }
          }
        };


        var pagination_click = function( e ) {
          var target = e.target;
          var match =  $(target).attr("href").match(/(\?[a-zA-Z\=0-9_\-]+)$/);
          var query = match[1];

          var url = $.uri_for('/your/test_data/'+ itemid+ query);
          $.get(url,function(data) {
            document.getElementById('al_container').innerHTML = data;
            setup_event_handlers();
          });
          return false;
        };

        var setup_event_handlers = function() {
          // All Event Handlers are set up at one place here
          // Select All Event Handler
          $('.select_all').click( select_all_click );

          // Deselect All Event Handler
          $('.deselect_all').click( deselect_all_click );

          // When Clicked on Add to Album
          $('#add_to_album').find('input[type=submit]').click( add_to_album_click );

          // When Clicked on delete from album
          $('#delete_from_album').find('input[type=submit]').click( delete_from_album_click );

          // Add to Album submit
          $('#add_to_album').submit( add_to_album_submit ); 

          // Delete from album submit 
          $('#delete_from_album').submit( delete_from_album_submit );

          // Pagination: Here's the problem
          $("#edit_album .slider-p .page_no_mid a").bind("click", pagination_click );

          // Click on Tabs
          $("#edit_album #myc-tab a").bind("click", tab_click );
        };


        $.get(url,function(data){
          $('#edit_album').css( 'top', '1%');
          document.getElementById('al_container').innerHTML = data;

          // Setup Events
          setup_event_handlers(); 
          $.Bizmo.setup_dnd.album_tracks();
        });

        // Some fuck up, navigates to a new page  ge_no_mid
        return false;

  });






            $('#edit_album_close').click( function(e) {
                e.preventDefault();
                e.stopPropagation();
                $('#edit_album').animate(
                    {
                        top: '-300%'
                    }, 1500
                );
                var my_frm_pr = $('#edit_album').find('.tab_content').html("");
                //if(my_frm_pr.length > 0) {
                    //my_frm_pr.remove();
                //} else {
                    //nothing to do
                //}
                $('#blank').css('display', 'none');
              }
            );






        $('.edit_icon').click(
            function (e) {
                e.preventDefault();
                e.stopPropagation();
                var target = e.target;
                $(target.parentNode.parentNode.parentNode).find('.info').remove();
                $(target.parentNode.parentNode.parentNode).find('.saved').remove();
                $(target.parentNode.parentNode.parentNode).find('.clicked').removeClass('clicked');
                $(target.parentNode.parentNode).addClass('clicked');
                if( target.tagName == 'A'){
                            $('#player').remove();
                            $('#blank').css('display', 'block');
                            $('.edit_cover_image').remove();
                            $.get($(this).attr('href'),function(data){
                            var my_frm_pr = $('#edit_content').find('.data_coll'); 
                            if(my_frm_pr.length > 0) {
                               my_frm_pr.remove();
                            } else {
                              //nothing to do
                            }
                            $('#edit_content').find('.tab_content').append(data);
                            if($('#edit_track').length > 0) {
                               $(hideorshow_edit_default());
                               //$(hideorshow_default());
                               //$(hideorshow_default());
                               $('#edit_track').submit( $.Bizmo.submitValidateEditTrack );
                               $('#preview_type_1').change(hideshow_radio);
                               $('#preview_type_2').change(hideshow_radio);
                               $('#streaming_only :checkbox').change(hideshow_radio_sellbyothers);
                               $('#sellbyothers :input').change(hideshow_streamingonly);

                               var m_names = new Array("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec");
                               var selDate = new Date();
                               selDate.setTime(selDate.getTime()+86400000*30);
                               var curr_date = selDate.getDate();
                               var curr_month = selDate.getMonth();
                               var curr_year = selDate.getFullYear();
                               // Date Picker event handler goes here
                               // Here !!!
                               //var six_months = new Date();
                               //six_months = six_months.toTime() + ( 180 * 24 * 60 * 60 * 1000 );
                               var start_date = new Date();
                               var end_date   = new Date( 3600 * 24 * 180 * 1000  + start_date.getTime() ); 
                              // var endDate = new Date(endtime);
                               $(function(){ $('#edit_content .date-pick').datePicker({startDate: start_date.toString(), endDate: end_date.toString(), clickInput:true})});
                               //$('#date1').val(curr_date + "-" + m_names[curr_month] + "-" + curr_year);

                               $('#date1').keydown( function( e ) {
                                          //var chr = String.fromCharCode( e.which ); 
                                    e.preventDefault(); });
                            }else{
                               //nothing to do
                            }
                            if ($('.data_coll').find('#sales_download').length > 0) {
                            $('#sales_download').click(function(e){
                               //Make ajax call to download the sales list
                               var action = $('#edit_track').attr('action');
                               var elem = action.split("/");
                               var sales_url = $.uri_for('/your/download_sales/'+ elem[elem.length - 1]); 
                               document.location.href = sales_url;
                               return true;
                            });
                            }
                            });

                            $('#edit_content').animate({top: '1%'}, 1500);
                }
           }
        );
            $('#edit_content_close').click( function(e) {
                e.preventDefault();
                e.stopPropagation();
                $('#edit_content').animate(
                    {
                        top: '-300%'
                    }, 1500
                );
                var my_frm_pr = $('#edit_content').find('.data_coll');
                if(my_frm_pr.length > 0) {
                    my_frm_pr.remove();
                } else {
                    //nothing to do
                }
                $('#blank').css('display', 'none');
              }
            );

$('.add_icon').click(function(e){
                     var target = e.target;
                     $(target.parentNode.parentNode.parentNode).find('.clicked').removeClass('clicked');
                     $(target.parentNode.parentNode).addClass('clicked');
});
/*
$('.remove_icon').click(function(e){
                     var target = e.target;
                     $(target.parentNode.parentNode.parentNode).find('.clicked').removeClass('clicked');
                     $(target.parentNode.parentNode).addClass('clicked');
});
*/
$('.del_icon').click(function(e){
                     var target = e.target;
                     $(target.parentNode.parentNode.parentNode).find('.clicked').removeClass('clicked');
                     $(target.parentNode.parentNode).addClass('clicked');
});
$('#sc_import').click(function(e){
    var target = e.target;
    if($('#soundcloud_form').find('input[name=tracks_selected]').filter(':enabled').filter(':checked').length == 0){
        alert(localize.search.one_track);return false;
    }
});

    if( $('#search')[0] ) {
       $.Search._setup();
    }


        $('.my-cont table tr').dblclick( function( e ) {
              var tokens = new Array();
              var target = e.target;
              var parent_tr = $(target).parents('tr');
              $('.bob_nest').css('display','none');
              var baloon_info = $(parent_tr).attr("__data");
              var list = baloon_info.split('||_');
              var ele;
              var metadata = {};
              $('.bob_nest').find('li').remove();
              for (ele in list){
                      var info = list[ele].split(";");
                      if(info.length == 2) {
                          info[0] = info[0].replace(/^\s+|\s+$/g,"");
                          info[1] = info[1].replace(/^\s+|\s+$/g,"");
                          if(info[0] != "") {
                             metadata[info[0]] = info[1];
                          }
                      }
              }

              if( $(e.target).parents('tr').find('.play_icon')[0] ) { 
                  tokens = $(e.target).parents('tr').find('.play_icon').attr('href').split(':');
                var off = 0;
                var media_array = new Array();
                var orig_media_id = metadata.media_id;
                var encode_status = metadata.encode_status;
                var type = tokens[0] == 'tr' ? 'track' : tokens[0] == 'ri' ? 'ringtone' : 'video';
                if (encode_status != 'active'){
                   // alert("Your "+type+ "  is being encoded. please try again in a few minutes");
                      alert( localize.search.encoding_progress[ type ] );
                } else {
                var media_id = orig_media_id + '';
                var pad_str = '0000000000';

                media_id = (media_id.length < 10) ? ( pad_str.substr( 0, 10-media_id.length ) + media_id )  : media_id;
                while( off < 10 ) { media_array.push( media_id.substr( off, 2) ); off+=2; }
                var media_dir = media_array.join("/");
               
                  if( tokens[0] == 'tr' || tokens[0] == 'ri') {
                         //var source = $.uri_for_cache('/' + media_dir + '/' + media_id + '.mp3');
                         // The above way of getting song from cache is done by making catalyst controller call and which will redirect it to the above url again. This is becuse we need to track how many time a song is played.
                         var source = $.uri_for('/your/cache/' + orig_media_id);
                         $.Bizmo.pob.sendEvent("LOAD", source + "/.mp3");//$.uri_for('your/get_media/') + tokens[1] + '/.mp3');
                         $.Bizmo.pob.sendEvent("PLAY", true);
                         $(e.target).parents('tbody').find('.pause_icon').removeClass('pause_icon').addClass('play_icon');
                         $(e.target).parents('tr').find('.play_icon').removeClass('play_icon').addClass('pause_icon');
                  } else if( tokens[0] == 'vi' ) {
                         var source = $.uri_for_cache('/' + media_dir + '/' + media_id + '.mp4');
                         $.Bizmo.pob.sendEvent("LOAD", source);//$.uri_for('your/get_media/') + tokens[1] + '/.mp4');
                         //var source = $.uri_for_cache('/' + media_dir + '/' + media_id + '.mp4');
                         // The above way of getting song from cache is done by making catalyst controller call and which will redirect it to the above url again. This is becuse we need to track how many time a song is played.
                         var source = $.uri_for('/your/cache/' + orig_media_id);
                         $.Bizmo.pob.sendEvent("LOAD", source + "/.mp4");//$.uri_for('your/get_media/') + tokens[1] + '/.mp4');
                         $.Bizmo.pob.sendEvent("PLAY", true);
                         //$('#play_this').css('visibility', 'visible');
                         $('#play_this').css('visibility', 'visible');
                         $('#blank').css('display', 'block');
                         //$('#play_this').css('width', '650px'); $('#play_this').css('height', '450px');
                         //$('#play_this embed').attr('width', '500'); $('#play_this embed').attr('height', '300');
                         $(target).parents('tr').find('.pause_icon').removeClass('pause_icon').addClass('play_icon');
                  }
                  //increase the plays count once user clicks on play
                  //$.post($.uri_for('your/increase_plays_count'), {media_id : orig_media_id});
                }
              } else if( $(e.target).parents('tr').find('.pause_icon')) {
                  tokens = $(e.target).parents('tr').find('.pause_icon').attr('href').split(':');
                  if( tokens[0] == 'tr' || tokens[0] == 'ri') {
                      $.Bizmo.pob.sendEvent("STOP", true);
                      $(e.target).parents('tr').find('.pause_icon').removeClass('pause_icon').addClass('play_icon');
                  } else if( tokens[0] == 'vi') {
                         $.Bizmo.pob.sendEvent("STOP", true);
                         $('#blank').css('display', 'none');
                         $('#play_this').css('width', '0px'); $('#play_this').css('height', '0px');
                         $('#play_this embed').attr('width', '1'); $('#play_this embed').attr('height', '1');
                  }
           }
              
        });
//opop 



/*           if ('.my-cont-main'){

                 $('.my-cont-bizmo').find('.play_icon').attr('class', 'pause_icon');
            }       */  
 
        $('.my-cont table tr').click ( function(e) {
               var target = e.target;
               $(target).parents('tbody').find('.clicked').removeClass('clicked');
               $(target).parents('tr').addClass('clicked'); 
          // A Hack to to Get things to work
          if( $( target ).hasClass('let_me_go'))  {
            return true;
          }


          var parent_tr = $(target).parents('tr');
          $('.bob_nest').css('display','none');
          var baloon_info = $(parent_tr).attr("__data");
          if(baloon_info) {
          var list = baloon_info.split('||_');
          var ele;
          var metadata = {};
          $('.bob_nest').find('li').remove();
          for (ele in list){
                  var info = list[ele].split(";");
                  if(info.length == 2) {
                      info[0] = info[0].replace(/^\s+|\s+$/g,"");
                      info[1] = info[1].replace(/^\s+|\s+$/g,"");
                      if(info[0] != "") {
                          metadata[info[0]] = ( info[1].length > 18 && info[0] != 'thumbnail' && info[0] != 'front_design' && info[0] != 'back_design' && info[0] != 'front_image' && info[0] != 'back_image')? info[1].substr(0,18) + '...' : info[1];
                      }
                  }
          }
        if( target.tagName != 'A') {
          $('.bob_nest').css('display','block');
          var prod_map= { 'tr':'track',
                          'ti':'ticket',
                          'eb':'ebook',
                          'ri':'ringtone',
                          'vi':'video',
                          'al':'album',
                          'im':'image',
                          'ts':'tshirt',
                          'cd':'cd'
                        };
          var bob_class = 'bob_' + prod_map[metadata.type];
          if (metadata.type == 'ts') {metadata.thumbnail = metadata.front_design; }
          if (metadata.type == 'cd') {metadata.thumbnail = metadata.front_cover;} 
          if(metadata.thumbnail) {
                var off = 0;
                var media_array = new Array();
                var orig_media_id = metadata.media_id;
                var media_id = metadata.media_id + '';
                var pad_str = '0000000000';

                $('.bob_thumb_cont').removeClass("bob_*");
                media_id = (media_id.length < 10) ? ( pad_str.substr( 0, 10-media_id.length ) + media_id )  : media_id; 
                while( off < 10 ) { media_array.push( media_id.substr( off, 2) ); off+=2; }
                var media_dir = media_array.join("/");
                var file = ( metadata.type == 'ts' || metadata.type == 'cd' ) ? media_id + "_front" : media_id;
                // Another Hack!!!
                // orig_media_id = media_id;
                var source = $.uri_for_cache('/' + media_dir + '/' + file + '_100x100.jpg');
                //var source = $.uri_for('/your/cache_image/'+ metadata.media_id + '/100x100');
                $.fileExists(source,function() {
                                       $('.bob_thumb_cont').html("<img src="+source+ " alt=" + metadata.name+"/>");
                                    },
                                    function(){
                                       var url = $.uri_for("add/create_thumbnails/"+ metadata.media_id + "/" + metadata.thumbnail);
                                       $.get(url,function(data){$('.bob_thumb_cont').html("<img src="+source+ " alt=" + metadata.name+"/>");});
                                       //increase the plays count once user clicks on play
                                       //$.post($.uri_for('your/increase_plays_count'), {media_id : orig_media_id});
                                    }
                );
          }else{
              $('.bob_thumb_cont').removeClass("bob_*").addClass(bob_class);
              $('.bob_thumb_cont').html(""); 
          }
          if(metadata.type == 'ti') {
              //verifying all the properties
              var properties = ["event","venue_name","sell_by_others","event_epoch","price","owner_id"];
              for (prop in properties){if (metadata[properties[prop]]) {}else{metadata[properties[prop]] = "NA"}}
              // If tickets print all ticket related info in list elements
              $('.bob_nest').find('ul').append(
                       "<li>" + localize.search.event_name + ": <span>" + metadata.event + "</span></li>" + 
                       "<li>" + localize.search.no_of_tickets + ": <span>" + metadata.amount + "</span></li>" + 
                       "<li>" + localize.search.owner_name +": <span>" + metadata.owner_id + "</span></li>" + 
                       "<li>" + localize.search.venue_details + ": <span>" + metadata.venue_name +","+metadata.venue_address+","+metadata.venue_city + "</span></li>" + 
                       "<li>" + localize.search.sell_by_others +": <span>" + metadata.sell_by_others + "</span></li>" + 
                       "<li>" + localize.search.event_date +": <span>" + metadata.event_epoch + "</span></li>" +
                       "<li>" + localize.search.event_time +":<span>" + metadata.time + "</span></li>" +
                       "<li>" + localize.search.price + ": <span>" + metadata.price +"</span></li>"
              );
          } else if(metadata.type == 'tr') {
              var properties = ["name","artist","song_writer","composer","preview_start","preview_length","sell_by_others","preview_type","price","currency","owner_id"];
              for (prop in properties){if (metadata[properties[prop]]) {}else{metadata[properties[prop]] = "NA"}}
             $('.bob_nest').find('ul').append(
                       // METAHERE
                       "<li>" + localize.search.title +": <span>" + metadata.name + "</span></li>" + 
                       "<li>" + localize.search.owner_name +": <span>" + metadata.owner_id + "</span></li>" +  
                       "<li>" + localize.search.artist +":<span>" + metadata.artist + "</span></li>" + 
                       "<li>" + localize.search.composer +":<span>" + metadata.composer  +"</span></li>" + 
                       "<li>" + localize.search.sell_by_others +": <span>" + metadata.sell_by_others + "</span></li>" + 
                       "<li>" + localize.search.price + ": <span>" + metadata.price +"</span></li>" 
             );
          } else if(metadata.type == 'ri'){
              var properties = ["name","artist","song_writer","preview_start","preview_length","price","currency","owner_id"];
              for (prop in properties){if (metadata[properties[prop]]) {}else{metadata[properties[prop]] = "NA"}}
             $('.bob_nest').find('ul').append(
                       "<li>" + localize.search.title + ":<span>" + metadata.name + "</span></li>" + 
                       "<li>" + localize.search.artist +": <span>" + metadata.artist + "</span></li>" + 
                       "<li>" + localize.search.owner_name +": <span>" + metadata.owner_id + "</span></li>" +
                       "<li>" + localize.search.price +": <span>" +  metadata.price + "</span></li>"+ 
                       "<li>" + localize.search.sell_by_others +":<span>" + metadata.sell_by_others + "</span></li>"
             );
          }else if(metadata.type == 'al') {
              var properties = ["name","artist","song_writer","release_epoch","price","owner_id"];
              for (prop in properties){if (metadata[properties[prop]]) {}else{metadata[properties[prop]] = "NA"}}
             $('.bob_nest').find('ul').append(
                       "<li>" + localize.search.title + ": <span>" + metadata.name + "</span></li>" + 
                       "<li>" + localize.search.artist + ": <span>" + metadata.artist + "</span></li>" + 
                       "<li>" + localize.search.owner_name +": <span>" + metadata.owner_id + "</span></li>" +
                      // "<li>Release Date: <span>" + metadata.release_epoch + "</span></li>" +
                       "<li>" + localize.search.sell_by_others + ": <span>" + metadata.sell_by_others + "</span></li>" +
                       "<li>" + localize.search.price + ": <span>" + metadata.price + "</span></li>"
             );
          }else if(metadata.type == 'im') {
              var properties = ["name","sell_by_others","price"];
              for (prop in properties){if (metadata[properties[prop]]) {}else{metadata[properties[prop]] = "NA"}}
              // Ignoreing it, no images for france anyway
             $('.bob_nest').find('ul').append(
                       "<li>Title: <span>" + metadata.name + "</span></li>" +
                       "<li>Sell by others: <span>" + metadata.sell_by_others +"</span></li>" +
                       "<li>" + localize.search.owner_name +": <span>" + metadata.owner_id + "</span></li>" +
                       "<li>price: <span>" + metadata.price + "</span></li>"
             );
          }else if(metadata.type == 'vi') {
              var properties = ["name","artist","producer","preview_start","preview_length","preview_type",];
              for (prop in properties){if (metadata[properties[prop]]) {}else{metadata[properties[prop]] = "NA"}}
            $('.bob_nest').find('ul').append(
                       "<li>" + localize.search.title + ": <span>" + metadata.name + "</span></li>" +
                       "<li>" + localize.search.artist + ": <span>" + metadata.artist + "</span></li>" +
                       "<li>" + localize.search.price + ": <span>" + metadata.price + "</span></li>" + 
                       "<li>" + localize.search.owner_name +": <span>" + metadata.owner_id + "</span></li>" +
                       "<li>" + localize.search.sell_by_others + ": <span>" + metadata.sell_by_others + "</span></li>"
             );
          }else if(metadata.type == 'eb'){
              var properties = ["name","author","sell_by_others","isbn","amount","currency","price","description"];
              for (prop in properties){if (metadata[properties[prop]]) {}else{metadata[properties[prop]] = "NA"}}
            $('.bob_nest').find('ul').append(
                       "<li>" + localize.search.title +": <span>" + metadata.name + "</span></li>" +
                       "<li>" + localize.search.author + ": <span>" + metadata.author + "</span></li>" +
                       "<li>" + localize.search.sell_by_others + ": <span>" + metadata.sell_by_others +"</span></li>" +
                       "<li>" + localize.search.owner_name +": <span>" + metadata.owner_id + "</span></li>" +
                       "<li>" + localize.search.price + ": <span>" + metadata.price + "</span></li>" +
                       "<li>" + localize.search.description + ": <span>" + metadata.description + "</span></li>"
              );
          } else if( metadata.type == 'ts') {
               var properties=["currency","sell_by_others","category","name"];
                  for (prop in properties){if (metadata[properties[prop]]) {}else{metadata[properties[prop]] = "NA"}}
         
            $('.bob_nest').find('ul').append(
                       "<li>" + localize.search.title +": <span>" + metadata.name+ "</span></li>" +
                       "<li>" + localize.search.category +": <span>" + metadata.category+"</span></li>" +
                       "<li>" + localize.search.sell_by_others + ": <span>" + metadata.sell_by_others +"</span></li>" + 
                       "<li>" + localize.search.owner_name +": <span>" + metadata.owner_id + "</span></li>" +
                       "<li>" + localize.search.price + ": <span>" + metadata.price +  "</span></li>" 
            );
          }else if ( metadata.type == 'cd' ) {
               var properties=["currency","name"];
                  for (prop in properties){if (metadata[properties[prop]]) {}else{metadata[properties[prop]] = "NA"}}

            $('.bob_nest').find('ul').append(
                       "<li>Title: <span>" + metadata.name+ "</span></li>" +
                       "<li>" + localize.search.owner_name +": <span>" + metadata.owner_id + "</span></li>" +
                       "<li>Price: <span>" + metadata.price +"</span></li>"
            );
          }

          var inner_height = window.innerHeight -30;
          var inner_width = window.innerWidth - 30;
          var clientx = e.clientX;
          var clienty = e.clientY;
          var ele_width = $('.bob_nest').width();
          var ele_height = $('.bob_nest').height();
          var offset = 20;
          var pos_x = (ele_width + clientx + offset) > inner_width ? (clientx - ele_width - offset) : (clientx + offset);
          var pos_y = (ele_height + clienty) > inner_height ? (clienty - ele_height) : clienty;
          $('.bob_nest').css("position",'absolute');
          $('.bob_nest').css("left", pos_x);
          $('.bob_nest').css("top", pos_y);
          $('.bob_nest').show({ height: '40px'}, 700);
          }
          }
               
               if( target.tagName == 'A') {
                   var tclass = $(target).attr('class');
                   var href = $( target ).attr('href');
                   var tokens = href.split(':');
                var off = 0;
                var media_array = new Array();
                var orig_media_id = metadata.media_id;
                var media_id = orig_media_id + '';
                var pad_str = '0000000000';


                media_id = (media_id.length < 10) ? ( pad_str.substr( 0, 10-media_id.length ) + media_id )  : media_id;
                while( off < 10 ) { media_array.push( media_id.substr( off, 2) ); off+=2; }
                var media_dir = media_array.join("/");

                   switch( tclass ) {
                       case 'play_icon':
                         e.preventDefault();
                         try {
                             var encode_status = metadata.encode_status;
                             var type = tokens[0] == 'tr' ? 'track' : tokens[0] == 'ri' ? 'ringtone' : 'video';
                             if (encode_status != 'active'){
                                 //alert("Your "+type+ "  is being encoded. please try again in a few minutes");
                                 alert( localize.search.encoding_progress[ type ] );
                             } else {
                             if( tokens[0] == 'tr' || tokens[0] == 'ri') {
                                 var source = $.uri_for_cache('/' + media_dir + '/' + media_id + '.mp3');
                                 $.Bizmo.pob.sendEvent("LOAD", source);//$.uri_for('your/get_media/') + tokens[1] + '/.mp3');
                                 $.Bizmo.pob.sendEvent("LOAD", source);//$.uri_for('your/get_media/') + tokens[1] + '/.mp3');
                                // var source = $.uri_for_cache('/' + media_dir + '/' + media_id + '.mp3');
                                // The above way of getting song from cache is done by making catalyst controller call and which will redirect it to the above url again. This is becuse we need to track how many time a song is played.
                                 var source = $.uri_for('/your/cache/' + orig_media_id);
                                 $.Bizmo.pob.sendEvent("LOAD", source + "/.mp3");
                                 $.Bizmo.pob.sendEvent("PLAY", true);
                             } else if ( tokens[0] == 'vi') {
                                 //var source = $.uri_for_cache('/' + media_dir + '/' + media_id + '.mp4');
                                 // The above way of getting song from cache is done by making catalyst controller call and which will redirect it to the above url again. This is becuse we need to track how many time a song is played.
                                 var source = $.uri_for('/your/cache/' + orig_media_id);
                                 $.Bizmo.pob.sendEvent("LOAD", source + "/.mp4");
                                 $.Bizmo.pob.sendEvent("PLAY", true);
                                 $('#blank').css('display', 'block');
                                 $('#play_this').css('visibility', 'visible');
                                 // $('#play_this').css('width', '650px'); $('#play_this').css('height', '450px');
                                 // $('#play_this embed').attr('width', '500'); $('#play_this embed').attr('height', '300');
                               }
                               //increase the plays count once user clicks on play
                               //$.post($.uri_for('your/increase_plays_count'), {media_id : orig_media_id});

                               $(target).parents('tbody').find('.pause_icon').removeClass('pause_icon').addClass('play_icon');
                               $(target).attr('class', 'pause_icon');
                             }
                         } catch (e) {
                              //console.log('The Error is: ' + e );
                         }
                       break;

                       case 'pause_icon':
                         $(target).attr('class', 'play_icon');
                         e.preventDefault();
                         try {
                             if( tokens[0] == 'tr' || tokens[0] == 'ri') {
                                 $.Bizmo.pob.sendEvent("STOP", true);
                             } else if( tokens[0] == 'vi') {
                                 $('#blank').css('display', 'none');
                                 $('#play_this').css('width', '0px'); $('#play_this').css('height', '0px');
                                 $('#play_this embed').attr('width', '1'); $('#play_this embed').attr('height', '1');
                             }
                         } catch (e) {
                         }
                       break;

                       case 'remove_icon':
                         e.stopPropagation();
                         //e.preventDefault();
                         var target = e.target;
                         // verify any sales for this item recently
                         var href_val = $(target).attr('href'); 
                         var elem = href_val.split("/");
                         var prod_id = elem[elem.length - 1];
                         var url_address = $.uri_for('your/verify_recent_orders/' + prod_id);
                         // 0 = not exists, 1 = exists in recent orders,
                         var orders_exists = $.ajax({type: 'GET', async: false, url: url_address}).responseText;
                         if (orders_exists == 2) {
                             alert(localize.active_orders_exists_confirm);
                             return false;
                         } else if (orders_exists == 1) {
                             if ( confirm(localize.product_exists_in_album_confirm) ) {
                                // User says ok. means this product will be deleted from albums as it exists in albums
                             } else {
                                return false;
                             }
                         }
                         if( confirm( localize.delete_item_confirm) ) {
                             $('#blank').css('display', 'block');
                             $('#loader').css('display', 'block');
                             $(target.parentNode.parentNode.parentNode).find('.clicked').removeClass('clicked');
                             $(target.parentNode.parentNode).addClass('clicked');
                         }else{
                             return false;
                         }
                       break;

                       case 'del_icon':
                         e.stopPropagation();
                         var target = e.target;
                         $(target.parentNode.parentNode.parentNode).find('.clicked').removeClass('clicked');
                         $(target.parentNode.parentNode).addClass('clicked');
                         return true;
                         break;

                       default:
                       break;
                   }
               }
        },function(){$('.bob_nest').hide({height: '0px'}, 700);}
        );
        $('.my-cont table tr').mouseout(function(){$('.bob_nest').hide({height: '0px'}, 700);});
    if( $('#close_vid') ) {
         $('#close_vid').click( function (e ) {
             e.preventDefault();
             e.stopPropagation();
             $('#blank').css('display', 'none');
             $('#play_this').css('visibility', 'hidden');
             $('.my-cont-main').find('.pause_icon').attr('class', 'play_icon');
             $('.my-cont-bizmo').find('.pause_icon').attr('class', 'play_icon');
             $.Bizmo.pob.sendEvent('STOP');
         });
    }

    if( $('.to_clipboard') && $('#embed_code') ) {
        $('.to_clipboard').click( function(e) {
            // IE Only 
            if( window.clipboardData && window.clipboardData.setData ) {
                window.clipboardData.setData( 'Text', $('#embed_code').attr('value') );
            } 

            return false;
            }
        );
    }

    // FIXME: Hack
    var dnd_tables = { 
      playlist: {
        selector: '#playlist',
        post_url_selector: '#sort_url'
      },

      album_tracks: {
        selector: '.album_tracks',
        post_url_selector: '.album_track_sort_url'
      }
    };

    if( ! $.Bizmo.setup_dnd ) {
      $.Bizmo.setup_dnd = { };
    }

    for( var x in dnd_tables ) {

    ( function() {
      var y = x;
      $.Bizmo.setup_dnd[ y ] = function( ) {
        var sel = dnd_tables[y].selector;
        

      
        $( sel ).click( function( e ) {
          var target = e.target;
          var allow = [ 'move_up', 'move_down'];
          var key = null;

          if( $( target ).hasClass('let_me_go') ) return true;

          // FIXME: Hack let go of check boxes
          $( target ).parents( 'tr' ).parents( 'table' ).find( 'tr' ).removeClass( 'clicked' );
          if( target.tagName == 'INPUT' ) return true;

          e.preventDefault();
          e.stopPropagation();

          if( $( target ).attr( 'href' ) && $( target ).attr('href').match(/^http/)) {
            key = $( target ).attr('href').match(/[^\/]+$/);
            key = key[0];
          } else {
            key = $( target ).attr('href');
          }

          if( target.tagName == 'A') {
            if( $.inArray( key, allow) != -1) {
              // Cracked IE shit makes me go mad!!!!
              var dummy = function() {
                var ctr = $(target).parents('tr');
                var ptr = ctr.prev('tr');
                var ntr =  ctr.next('tr');
                var ctr_clone =  ctr.clone(true)
                var elem = null; 
                             
                elem = ( key == 'move_up') ? ptr : ( key == 'move_down') ? ntr : null;
                if( key=='move_up' && $( sel ).find('tr:first').attr('id')==$(target).parents('tr').attr('id')) return false;
                if( key=='move_down' && $( sel ).find('tr:last').attr('id')==$(target).parents('tr').attr('id')) return false;
                if( ctr.hasClass('even') ) {
                  ctr_clone.removeClass('even');
                  elem.addClass('even');
                } else if( elem.hasClass('even') ) {
                  ctr_clone.addClass('even');
                  elem.removeClass('even');
                }

                ctr.remove();
                ( key == 'move_up' )? ctr_clone.insertBefore( elem ) : ( key == 'move_down') ? ctr_clone.insertAfter(elem) : null ;
                $( sel ).find('.clicked').removeClass('clicked');
                ctr_clone.addClass('clicked');
                $.ajax( {
                  url: $( dnd_tables[y].post_url_selector ).attr('href'),
                  data: $.Bizmo.serializeTable( document.getElementById( y ))
                });
              }

              try {
                dummy();
              } catch (e) {
                dummy();
              }
            }
          }
        });

        // More Event Handler need to come here
        var movable = false;
        var moved   = null;
        var clone = null;
        var act_clone = null;

        if( ! $( sel ).hasClass('ie')) {
          $( sel ).mousedown( function( e ) {
            // Reset it now
            moved = null;
            clone ? clone.remove() : '' ;

            var target = e.target;
            // If target is not an anchor
            // We're ready to drag it
            if( target.tagName != 'A' && target.tagName != 'INPUT'  ) {
              // Is it draggable
              movable = true;
              // What should be dragged
              moved = $( target ).parents('tr');

              // Create a clone of the item that needs to b
              clone = moved.clone(true);
              act_clone = $( sel ).append( clone );
              clone.css( { 
                'display': 'block',
                'position': 'absolute',
                'top': e.clientY,
                'left': e.clientX
              });
                
         
              return false;
             } 
           });

           $( sel ).mousemove( function( e )  {
             if( movable ) {
               clone.css('top', e.clientY+10 );
               clone.css('left', e.clientX+10 );
             }
           });

           $( sel ).mouseup( function ( e) {
             var target = e.target;
             var tr = $( target).parents('tr');

             if( movable  && ( tr.attr('id') != moved.attr('id') )) {
               var nuclone = tr.clone( true );
               tr.replaceWith( moved );
               // Now put the nuclone back
               moved.after( nuclone );
               // Make the Request
               $.ajax( {
                 url: $( dnd_tables[y].post_url_selector ).attr('href'),
                 data: $.Bizmo.serializeTable( document.getElementById( y ))
               });

               $( sel + ' .clicked').removeClass('clicked');
               moved.addClass('clicked');
             } else { 
                
               tr.addClass('clicked');
             } 

             movable = false;
             clone ? clone.remove() : '';
           });
 
           $( sel ).mouseout( function (e ) {
             // If i get out of playlist
           });
         }
      }
    })();
    }

    $.Bizmo.setup_dnd.playlist();

  });



// Extend the Bizmo
$.fileExists = function ( url, success, failure ) {
    $.ajax( {
        type : 'HEAD',
        url  : url,
        complete: function( req, stat ) {
            if( parseInt(req.status) == 200 ) {
                success();
            } else { 
                failure();
            }
        }
    });
}

// Extend the Bizmo

function clear_ajax() {
     $('.info').remove();
}

/*
  TODO/NOTE create a single contentbox for upload of track or cover use the same box update using html+css.  
*/
function __playerState__( os, ns) {
     if( os.newstate == 'COMPLETED') {
         $('.my-cont table tr').find('.pause_icon').removeClass('pause_icon').addClass('play_icon');
     }
}

function playerReady( p ) {
     $.Bizmo.pob = document.getElementById('mpl');
     $.Bizmo.pob.addModelListener('ERROR', function ( errstr ) {  } );
     $.Bizmo.pob.addModelListener('STATE', '__playerState__'); 
     // Motherfucing IE
     $('#play_this').css('visibility','hidden');
     $('#play_this').css('top','15%');

}

