jQuery(document).ready(function(){ 
    jQuery.validator.addMethod("noselect", function (value, element) {
           if (value != 0) return !this.optional(element);
            },
            "Please select a category"
    );
   
});

var altCounter = 0;
var removedAlt = new Array();


function validateNewNewsForm() {
       var validator = jQuery("#add_new_news").validate({
        rules: {
            news_title : { required: true,
                             special:true,
                             minlength: 3},
            news_comment : {required: true},
            news_url : {url: true},
            news_summary : {required: true},
            news_keywords : {required: true}
            /*news_category : {required: true, noselect:true}*/
            
                        
        },
        
        messages: {
            news_title: { 
                            required: "Please enter News title",
                            minlength: "Please enter at least 3 characters."
                        },
            news_comment: { 
                             required: "Please explain about your News"
                          }, 
            news_url: { 
                             url: "Please Enter valid URL (Example : http://example.com)"
                          },
                             
            news_summary: { 
                             required: "Please explain about your News Summary"
                          },
                                
            news_keywords: { 
                              required: "Please enter tag(s) for your News"
                            }
                            
          
                    
        }, 
        // the errorPlacement has to take the table layout into account 
        errorPlacement: function(error, element) {
                error.appendTo (element.next().next()); 
        }, 
        // specifying a submitHandler prevents the default submit, good for the demo 
        submitHandler: function() {
            
            formatUrl('news_url');
             jQuery("#add_new_news").ajaxStart(function(){
                                           jQuery("#loading_add_news").show();
                                           jQuery("#loading_txt").show();
                                           jQuery("#submit_add_news").hide(); 
                                          
                                            });
                                            
            jQuery("#add_new_news").ajaxComplete(function(request, settings){
                                                  
                                             jQuery("#loading_add_news").hide();
                                             jQuery("#loading_txt").hide();
                                             jQuery("#submit_add_news").show(); 
                                            
                                                 }); 
            
                
                
                var queryString = jQuery('#add_new_news').formSerialize();
                      
                var options = {
                                url :  baseUrlForJs+'/news/news/add',
                                target : '#response',
                                type    : 'POST',
                                data :  queryString,
                                 success: function (msg) {
                                var chunks = msg.split('|');
                                setTimeout("successPopNews(\""+chunks[2]+"\")", 200);
                                    }
                                };
                jQuery.ajax(options);
            
        }, 
        // set this class to error-labels to indicate valid fields 
        success: function(label) { 
            // set   as text for IE 
            label.html(" ").addClass("checked"); 
        }
    }); 

}

function successPopNews(result)
{
jQuery.blockUI({ 
message: '<div class="pop_div pop_div_form">'+result+'<br /><div class="link"><img src="'+baseUrlForJs+'/images/pop_bulet.png" width="10" height="10" align="absmiddle"/><a href="'+baseUrlForJs+'" > Go To Home Page</a></div><div class="link"><img src="'+baseUrlForJs+'/images/pop_bulet.png" width="10" height="10" align="absmiddle"/><a href="'+baseUrlForJs+'/'+NEWS_URL+'"> Go To News </a><div class="link"><img src="'+baseUrlForJs+'/images/pop_bulet.png" width="10" height="10" align="absmiddle"/><a href="'+baseUrlForJs+'/'+NEWS_URL+'/add"> Add Another News</a></div></div>'});
jQuery("#loading_add_news").hide();
jQuery("#loading_txt").hide();
jQuery("#submit_add_news").hide(); 
}


function newsUploadListener(type) {


new Ajax_upload('#news_'+type, {
                        
                        action: baseUrlForJs+'/news/news/handle/type/'+type, 
                        name: 'file',
                         onSubmit: function(file, extension) {
                                    jQuery("#news_"+type+"_error").html("");
                                    jQuery("#loading_"+type).show();
                                    jQuery('#news_'+type).hide();
                                    jQuery('#submit_add_news').hide();  
                                },
                        onComplete : function(data,response){
                       
                            jQuery("#news_"+type+"_error").html("");
                            jQuery("#loading_"+type).hide();
                            jQuery('#news_'+type).show(); 
                            jQuery('#submit_add_news').show(); 
                            //split the string
                            var result = response.split('|');
                           
                            
                            var otherInc=parseInt(result[3])+1;
                            
                             if(jQuery.trim(result[0]) == "FAILED") {
                                jQuery("#news_"+type+"_error").show();
                                
                                jQuery("#news_"+type+"_error").html(result[1]);
                                  
                                
                             }
                             else {
                             
                             altCounter=altCounter+1;
                             
                             if(removedAlt.length > 0) { //user removed some pics
                                
                                removedAlt.sort();
                                
                                var emptyAltCounter = removedAlt.pop();
                                 jQuery('#uploaded_alt_'+emptyAltCounter).val(jQuery.trim(result[1]));

                                var str = '<li class="uploaded_img_preview" id="li_'+emptyAltCounter+'"><img id="'+emptyAltCounter+'_preview" width="50" src="'+baseUrlForJs+'/temp/thumb_image/'+result[1]+'" /><br /><span class="change"><a href="javascript:void(0)" onclick="removeImage(\''+emptyAltCounter+'\')">(Remove)</a></span></li>';
                             }
                             else {
                                 jQuery('#uploaded_alt_'+altCounter).val(jQuery.trim(result[1]));
                                var str = '<li class="uploaded_img_preview" id="li_'+altCounter+'"><img id="'+altCounter+'_preview" width="50" src="'+baseUrlForJs+'/temp/thumb_image/'+result[1]+'" /><br /><span class="change"><a href="javascript:void(0)" onclick="removeImage(\''+altCounter+'\')">(Remove)</a></span></li>';
                               
                             
                             }
                             
                            jQuery('#upload_pic').before(str);
                            if(altCounter == 10) {
                               jQuery('#upload_pic').hide(); 
                            }
                            
                             }
                            
                        }    
}); 

}
function removeImage(counter)
{
                                removedAlt.push(counter);
                                                            
                                jQuery('#li_'+counter).remove();
                                jQuery('#uploaded_alt_'+counter).val('');
                                
                                altCounter=altCounter-1;
                                
                                if(altCounter < 10) {
                                  jQuery('#upload_pic').show();   
                                }                                   
                             
                          
}
function validateNewsPostForm() {
   var validator = jQuery("#new_post_form").validate({
    
    
       rules : {news_you_tub : {you_tube_link : true}},
       messages :{news_you_tub: {you_tube_link : 'Enter valide you tub link'}},
       errorPlacement: function(error, element) {
                jQuery("#news_you_tub_error").html('');
                error.appendTo (element.next()); 
        },
       submitHandler: function(data) {/*
            
             
             jQuery("#new_post_form").ajaxStart(function(){
                                           jQuery("#loading_news_post").show();
                                           jQuery("#loading_txt").show();
                                           jQuery("#submit_news_post").hide(); 
                                          
                                            });
                                            
            jQuery("#new_post_form").ajaxComplete(function(request, settings){                    
                                             jQuery("#loading_news_post").hide();
                                             jQuery("#loading_txt").hide();
                                             jQuery("#submit_news_post").show(); 
                                             
                                                 }); */
             if(altCounter > 0 || jQuery('#news_post').val() != '' || jQuery('#news_you_tub').val() != ''){
            var queryString = jQuery('#new_post_form').formSerialize();
                  
            var options = {
                            url :  baseUrlForJs+'/news/news/handlenewspost/id/'+jQuery('#news_id').val(),
                            target : '#response',
                            type    : 'POST',
                            data :  queryString,
                            beforeSend:function(XMLhttpRequest){
                                    jQuery('#news_alt_1_error').html('');
                                   jQuery("#loading_news_post").show();
                                   jQuery("#loading_txt").show();
                                   jQuery("#submit_news_post").hide(); 
                                        },
                            success: function (msg) {
                                jQuery("#loading_news_post").hide();
                                 jQuery("#loading_txt").hide();
                                 jQuery("#submit_news_post").show(); 
                                 if(jQuery.trim(msg) != 'False'){
                                 
                                 if(jQuery('#has_news_comment').val() == 'no'){
                                      jQuery('#news_comment_png').show();
                                    }
                                 
                                jQuery('#response').prepend(jQuery.trim(msg));
                                jQuery('#news_post').html('');
                                jQuery('#news_you_tub').val('');
                                jQuery("iframe").contents().find("body").empty();
                                
                                altCounter = 0;
                                        for(var blogCounter = 1; blogCounter <= 10; blogCounter++)
                                        {
                                            jQuery('#li_'+blogCounter).remove();
                                            jQuery('#uploaded_alt_'+blogCounter).val('');
                                            
                                        }
                                        
                                        for(var i=0 ; i < removedAlt.length ; i++ ){
                                            removedAlt.splice(i, 1);
                                        }
                                       jQuery('#upload_pic').show(); 
                                
                                var ele = jQuery('#has_news_comments');
                                if(ele && jQuery('#has_news_comments').val() == 'no') {
                                    jQuery('#news_comments_png').show();
                                    }
                                
                                 }else{
                                     jQuery.blockUI({ 
                                        message: jQuery('#login_div'), 
                                        css: { width: '375px' }
                                                    });
                                 }
                                
                            }
                            };
            jQuery.ajax(options);
             }else{
               jQuery('#news_you_tub_error').show();
                jQuery('#news_you_tub_error').html('<div class="error">You must either comment, youtube link or upload at least one image file</div>');
             }
       }, 
        // set this class to error-labels to indicate valid fields 
        success: function(label) { 
            // set   as text for IE 
            label.html(" ").addClass("checked"); 
        }
    });
}
function newsRating(members_id)
{
    jQuery.ajax({
        type : 'POST',
        url : baseUrlForJs+'/news/news/handleaddrating',
        data : 'members_id='+members_id+'&news_id='+news_id,
        success: function(msg){
            var chunks = msg.split('|');    
            
            if(chunks[1] == 'SUCCESS') {
               jQuery('#total_rated_news'+chunks[4]).html(chunks[3]);  
               jQuery('#rated_news'+chunks[4]).html(chunks[3]);  
              jQuery.blockUI({ message: '<div class="pop_div"><div class="close_btn"><img src="'+baseUrlForJs+'/images/close_btn.png" width="12" height="12" onclick="javascript:closeLoginPop()" /></div>'+chunks[2]+'</div>'});
              
              setTimeout(jQuery.unblockUI, 6000);
             
             // jQuery('#rated_by').html(chunks[2]);
              //jQuery('#vote_thankyou').html('hello');
              
              
            }
        }
    }); 
}

function showNewsByCategory() {
    var catId = jQuery('#choose_category').val();
    var url = baseUrlForJs+'/news/'+catId;
    jQuery('#show_cat').attr('action',url).attr('method','POST').submit();
}

function newsUploadBlogFile(type) {


new Ajax_upload('#news_'+type, {
                        //action: 'upload.php',
                        action: baseUrlForJs+'/news/news/handleblogfile/type/'+type, 
                        name: 'file',
                        onSubmit: function(file, extension) {
                                     jQuery("#news_"+type+"_error").html("");
                                    jQuery("#loading_news_post").show();
                                    jQuery('#news_'+type).hide(); 
                                    jQuery('#submit_news_post').hide(); 
                                    jQuery('#news_you_tub_error').html('');
                                    
                                },

                        onComplete : function(data,response){
                       
                            jQuery("#news_"+type+"_error").html("");
                            jQuery("#loading_news_post").hide();
                            jQuery('#news_'+type).show();
                            jQuery('#submit_news_post').show();  
                            //split the string
                              var result = response.split('|');
                           
                            
                            var otherInc=parseInt(result[3])+1;
                            
                             if(jQuery.trim(result[0]) == "FAILED") {
                                jQuery("#news_"+type+"_error").show();
                                
                                jQuery("#news_"+type+"_error").html(result[1]);
                                  
                                
                             }
                             else {
                             
                             altCounter=altCounter+1;
                             
                             var ext = result[4];
                             
                             
                             if(removedAlt.length > 0) { //user removed some pics
                                
                                removedAlt.sort();
                                
                                var emptyAltCounter = removedAlt.pop();
                                
                                 jQuery('#uploaded_alt_'+emptyAltCounter).val(jQuery.trim(result[1]));
                                var str = formatNewsImageStr(emptyAltCounter,result[1], result[4]);
                             }
                             else {
                                 jQuery('#uploaded_alt_'+altCounter).val(jQuery.trim(result[1]));
                                var str = formatNewsImageStr(altCounter,result[1], result[4]);
                               
                             
                             }
                             
                            jQuery('#upload_pic').before(str);
                            if(altCounter == 10) {
                               jQuery('#upload_pic').hide(); 
                            }
                            
                             }
                              
                        }    
}); 

}

function formatNewsImageStr(counter, result, ext) {
    if(ext != "null") {
        return '<li class="uploaded_img_preview" id="li_'+counter+'"><img id="'+counter+'_preview" width="50" src="'+baseUrlForJs+'/images/icons/'+ext+'.gif" /><br />'+result+'<br /><span class="change"><a href="javascript:void(0)" onclick="removeImage(\''+counter+'\')">(Remove)</a></span></li>';
    }
    else {
        return '<li class="uploaded_img_preview" id="li_'+counter+'"><img id="'+counter+'_preview" width="50" src="'+baseUrlForJs+'/temp/thumb_image/'+result+'" /><br /><span class="change"><a href="javascript:void(0)" onclick="removeImage(\''+counter+'\')">(Remove)</a></span></li>';
    }
    
}

function checkSearchNews() {
    jQuery('#loading_search').show();
    jQuery('#search_submit_name').hide();
    jQuery('#search_submit_img').hide();
       jQuery('#search_error_span').html('');  
    /*var validator = jQuery("#search_form").validate({
        rules : {keywords : 
                    {required : true}},
        messages :{keywords: 
                    {required : 'Please enter proper keywords to search'}},
        errorPlacement: function(error, element) {
                */
               
               // alert(jQuery('#keywords').val());
                if(jQuery('#keywords').val() == ''){
					
                jQuery('#search_error_span').html('<div class="error">Please enter proper keywords to search </div>'); 
					
                jQuery('#loading_search').hide();
                jQuery('#search_submit_name').show();
                jQuery('#search_submit_img').show();
                    }else{
                
      //  },
       /* success: function(label) {             
            label.html(" ").addClass("checked"); 
        },
         submitHandler: function(form) {*/
			// alert(encodeURIComponent(jQuery('#keywords').val()));
           location.replace(baseUrlForJs+'/news/search/'+encodeURIComponent(jQuery('#keywords').val()));
		   //return false;
		 //form.submit();
         }
  //  });
    
                
    
}

