var isSpanish = false;

function AllRolloverImages(){
var allRollovers = $('.rollover')

var PreloadImages = new Array();
		for (var i = 0; i < allRollovers.length; i++) {
			var rollover = allRollovers[i];
			if (rollover.className && (' ' + rollover.className + ' ').indexOf(' rollover ') != -1) {
				if (rollover.src !== 'undefined'){
					PreloadImages[i] = new Image(); 
					PreloadImages[i].src = rollover.src;
					rollover.onmouseover = function(){
						this.src = this.src.replace(/OVER(\.[^.]+)$/, '$1');
						 // reaply the img
						this.src = this.src.replace(/(\.[^.]+)$/, 'OVER$1');
						};//rollover.onmouseover
					rollover.onmouseout = function(){
						this.src = this.src.replace(/OVER(\.[^.]+)$/, '$1');
					};//rollover.onmouseout
				 };//if (rollover.src !== 'undefined')
			};//if (rollover.className && (' ' + rollover.className + ' ').indexOf(' rollover ') != -1)
		};	//for (var i = 0; i < allRollovers.length; i++) {
	};//End Function
	

      
		
		var pageToGet = 0;
		var TypeView = '';
		var TypeSort = '';
		
 
var forumsFunctions = {
	init: function(){
		
		
		$('#Italic').click(function(){
				addPTag($('.PostText'),'i')
				 return false;
			})
			
			$('#Bold').click(function(){
				addPTag($('.PostText'),'b')
				return false;
			})
			
			$('#Underline').click(function(){
				addPTag($('.PostText'),'u')
				return false;
			})
			
	       $('#ctl00_ContentPlaceHolder1_BoardsPostControl1_Post').spellcheck({ events: null });
	        $('#checkspelling').click( function() {
				$('#ctl00_ContentPlaceHolder1_BoardsPostControl1_Post').checkspelling();
		        return false;
	        });
		
	}
}
  
 var boards = {	
	init: function(){
	 /*Check that we are at the boards section. Get the Body ID to verify*/
		//$('.BoardPostForm')
			
			$('#Italic').click(function(){
				addPTag($('#CommentField'),'i')
				 return false;
			})
			
			$('#Bold').click(function(){
				addPTag($('#CommentField'),'b')
				return false;
			})
			
			$('#Underline').click(function(){
				addPTag($('#CommentField'),'u')
				return false;
			})
			
	        //$('#test1').spellcheck({ events: null });
	        $('#CommentField').spellcheck({ events: null });
	        $('#checkspelling').click( function() {
		        $('#CommentField').checkspelling();
		        //this.blur();
		        return false;
	        });
			
			
	        
	        $('.previewButton').click(function(){
	            $("#CommentField").css("display","none");
	            $("#CommentFieldPreview").css("display","block");
	            $(".previewButton").css("display","none");
	            $(".editButton").css("display","block");
	            var commentHTML = $("#CommentField").val();
	            commentHTML = commentHTML.replace("[b]","<b>");
	            commentHTML = commentHTML.replace("[/b]","</b>");
	            commentHTML = commentHTML.replace("[i]","<i>");
	            commentHTML = commentHTML.replace("[/i]","</i>");
	            commentHTML = commentHTML.replace("[u]","<u>");
	            commentHTML = commentHTML.replace("[/u]","</u>");
	            $("#CommentFieldPreview").html(commentHTML);
	            return false;
	        });
	        
	        
	         $('.editButton').click(function(){
	            $("#CommentField").css("display","block");
	            $("#CommentFieldPreview").css("display","none");
	            $(".previewButton").css("display","block");
	            $(".editButton").css("display","none");
	            var commentHTML = $("#CommentFieldPreview").html();
	            commentHTML = commentHTML.replace("<b>","[b]");
	            commentHTML = commentHTML.replace("</b>","[/b]");
	            commentHTML = commentHTML.replace("<i>","[i]");
	            commentHTML = commentHTML.replace("</i>","[/i]");
	            commentHTML = commentHTML.replace("<u>","[u]");
	            commentHTML = commentHTML.replace("</u>","[/u]");
	            $("#CommentField").val(commentHTML);
	            return false;
	         });
	           
	          
	         
	          $('#ctl00_ContentPlaceHolder1_BoardsPostControl1_btnPreview').click(function(){
	            $("#ctl00_ContentPlaceHolder1_BoardsPostControl1_Post").css("display","none");
	            $("#CommentFieldPreview").css("display","block");
	            $("#ctl00_ContentPlaceHolder1_BoardsPostControl1_btnPreview").css("display","none");
	            $("#ctl00_ContentPlaceHolder1_BoardsPostControl1_btnEdit").css("display","block");
	            var commentHTML = $("#ctl00_ContentPlaceHolder1_BoardsPostControl1_Post").val();
	            commentHTML = commentHTML.replace("[b]","<b>");
	            commentHTML = commentHTML.replace("[/b]","</b>");
	            commentHTML = commentHTML.replace("[i]","<i>");
	            commentHTML = commentHTML.replace("[/i]","</i>");
	            commentHTML = commentHTML.replace("[u]","<u>");
	            commentHTML = commentHTML.replace("[/u]","</u>");
	            $("#CommentFieldPreview").html(commentHTML);
	            return false;
	        });
	        
	        $('#ctl00_ContentPlaceHolder1_BoardsPostControl1_btnEdit').click(function(){
	            $("#ctl00_ContentPlaceHolder1_BoardsPostControl1_Post").css("display","block");
	            $("#CommentFieldPreview").css("display","none");
	            $("#ctl00_ContentPlaceHolder1_BoardsPostControl1_btnPreview").css("display","block");
	            $("#ctl00_ContentPlaceHolder1_BoardsPostControl1_btnEdit").css("display","none");
	            var commentHTML = $("#CommentFieldPreview").html();
	             commentHTML = commentHTML.replace("<b>","[b]");
	            commentHTML = commentHTML.replace("</b>","[/b]");
	            commentHTML = commentHTML.replace("<i>","[i]");
	            commentHTML = commentHTML.replace("</i>","[/i]");
	            commentHTML = commentHTML.replace("<u>","[u]");
	            commentHTML = commentHTML.replace("</u>","[/u]");
	            $("#ctl00_ContentPlaceHolder1_BoardsPostControl1_Post").val(commentHTML);
	            return false;
	        });
	         
	},
	formPage: function(ev){
		
	}
 }
 
 
function getSelection(ta)
  { var bits = [ta.value,'','','']; 
    if(document.selection)
      { var vs = '#$%^%$#';
        var tr=document.selection.createRange()
        if(tr.parentElement()!=ta) return null;
        bits[2] = tr.text;
        tr.text = vs;
        fb = ta.value.split(vs);
        tr.moveStart('character',-vs.length);
        tr.text = bits[2];
        bits[1] = fb[0];
        bits[3] = fb[1];
      }
    else
      { if(ta.selectionStart == ta.selectionEnd) return null;
        bits=(new RegExp('([\x00-\xff]{'+ta.selectionStart+'})([\x00-\xff]{'+(ta.selectionEnd - ta.selectionStart)+'})([\x00-\xff]*)')).exec(ta.value);
      }
     return bits;
  }

function matchPTags(str)
  { str = ' ' + str + ' ';
    ot = str.split(/\[[b|u|i].*?\]/i);
    ct = str.split(/\[\/[b|u|i].*?\]/i);
    return ot.length==ct.length;
  }

function addPTag(ta,pTag)
  { 
  
  	bits = getSelection(ta[0]);
	//alert(bits)
    if(bits)
      { if(!matchPTags(bits[2]))
          { $('#ErrorMsg').html('Invalid Selection: Contains unmatched opening or closing tags.');
            return;
          }
          $('#ErrorMsg').html('');
        ta.val(bits[1] + '[' + pTag + ']' + bits[2] + '[/' + pTag + ']' + bits[3]);
      }
  }
		////////////////////////////////////////////////////////////////
		///////////  DOC READY
		///////////////////////////////////////////////////////////////
  $(document).ready(function () {




      /*$(".spritely").live("mouseover", function(){
				     
      if(!$(this).hasClass("activeSprite")){
      $(this).sprite({fps: 1, no_of_frames: 4});
      $(this).addClass("activeSprite");
						
						
      }
					
      });*/


      $('.spritely').live('mouseover mouseout', function (event) {
          if (event.type == 'mouseover') {
              if (!$(this).hasClass("activeSprite")) {
                  $(this).addClass("activeSprite");
                  $(this).sprite({ fps: 2, no_of_frames: 4 });
                  //console.log('attach');
              } else {
                  $(this).spStart();
                  $(this).fps(2);
                  //console.log('spstart');
              }
          } else {
              $(this).spStop(true);
              //console.log('spStop');
              //$(this).removeClass("activeSprite");
          }
      });

      //$(function(){ $("select").uniform(); });
      $(document).pngFix();
      AllRolloverImages();

      $right_column = $('#right_column');
      $center_column = $('#center_column');
      $left_column = $('#left_column');


      if ($.browser.msie && parseInt($.browser.version) == 7) {
          $('#OpenMenu').css('zIndex', 100000);
      }





      if ($('#messageBoard').hasClass('BoardsHome')) {
          /*We are at the Message boards
          * 
          * Check that we are at the POST form
          */

          forumsFunctions.init();

      }

      if ($('body').hasClass('home')) {

          var searchData = "";
          var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
          for (var i = 0; i < hashes.length; i++) {
              var hash = hashes[i].split('=');
              searchData += "," + hash[1];
          }
          if (searchData == ",undefined") {
              searchData = "date";
          } else {
              searchData = "search" + searchData;
          }


          if ($('body').hasClass('mobileSite') || GetQueryString("view") == "list")
              CamelFunctions.getContent(searchData, 'list', '');
          else
              CamelFunctions.getContent(searchData, '', '');

          /*if(GetQueryString("p") != ""){
          CamelFunctions.getContent(GetQueryString("p"), '', '');
          }*/




          $(window).scroll(function () {
              if ($(document).scrollTop() + $(window).height() == $(document).height()) {
                  CamelFunctions.getContent(TypeSort, TypeView, 1);
              }
          });

      };
      if ($("#OCCommentWrapper").length > 0 && typeof (GetQueryString("c")) != "undefined") {
          CamelFunctionsOC.loadArticleComments();
          boardsOC.init();
      } else if ($("#OCCommentWrapper").length > 0 || $("#ctl00_ContentPlaceHolder1_BoardsPostControl1_btnPreview").length > 0) {
          CamelFunctions.loadArticleComments();
          boards.init();
      }



      //Cufon.replace('#articleStatBar .lNumber',{hover: {color: '#777777'}});
      //  Cufon.replace('#articleStatBar .likeIt', { hover: { color: '#777777'} });
      // Cufon.replace('#articleStatBar .bookmarksIt', { hover: { color: '#777777'} });

      Cufon.replace('.bfgDin');
      Cufon.replace('.bfgDinWhite', { color: '#ffffff' });

      Cufon.replace('.FRbfgDin', {
          hover: {
              color: '#046399'
          }
      })

      //Cufon.replace('.StoryWrapper .StoryMenu a');
      //Cufon.replace('.StoryMenu a');

      //if($("#WIcomment").length == 0)
      $(" input:checkbox, input:radio").uniform();



      /*Open Help popups on Rollover*/

      $(".HelpPopup").hover(
			  function () {

			      $(this).stop().animate({ width: "220px" }, 1000);
			      $(this).addClass('open');
			  },
			  function () {

			      $(this).stop().animate({ width: "60px" }, 1000);
			  }
			);

      $("#closeTip").click(function (event) {


          $('.HomeTip').addClass("remove");

          $.ajax({
              type: "GET",
              url: '/CAM/ajax/firstTimeReset.aspx',
              cache: false
          });

          event.preventDefault();

      });

      $("#OpenMenu").click(function (event) {

          event.preventDefault();
          $('#flashMenu')[0].toggleDash();


      });

      $("#OpenMenu").hover(
			  function () {

			      $(this).addClass('open');
			  },
			  function () {
			      $(this).removeClass('open');
			  }
			);

      /*Home page JS*/

      $("a.bookmarksIt").live('click', function (event) {

          event.preventDefault();
          CamelFunctions.AddBookmark($(this));

      });

      $("a.likeIt").live('click', function (event) {

          event.preventDefault();
          CamelFunctions.AddIlikeThis($(this));


      });

      /*UBBS Load */
      if ($('body').hasClass('TopicArticle')) {
          //CamelFunctions.loadArticleComments();
          CamelFunctions.initCommentForm();


      };

      /* END UBBS Load */


      /* dissolvables questionnaire*/
      if ($('.questionaireOverlay').length > 0) {
          $('.questionaireOverlay').modal(
                                   {
                                       opacity: 80,
                                       position: ['50px', ],
                                       closeClass: "questionnaireClose",
                                       closeHTML: "<a href='#'></a>",
                                       onClose: function (dialog) {
                                           $.modal.close(); // must call this!

                                           var id = $(".questionaireOverlay").attr("id")
                                           $.ajax({
                                               url: "/CAM/ajax/Survey.aspx",
                                               data: "type=close&i=" + id,
                                               success: function (html) {
                                                   //alert(html);
                                               }
                                           });
                                       }
                                   }
            );

          $("#maybeLater").click(function () {
              $.modal.close();
          });
      }
      /* end dissolvables questionnaire*/


  });          /*End Document.ready*/

	function resizeMenu(h,t,isOpen) {
	
	if ( !t ) {
		t = .5;
	}
	if(isOpen =="open"){
		
		$("#OpenMenu").addClass('close');
		$("#FlashMenuWrapper").animate({ height:h }, t*1000);
		
	}else{
		$('#OpenMenu').removeClass('close');
		$("#FlashMenuWrapper").animate({ height:115 },  t*1000);
	}
}

/*Endless Scroll Functions*/
	

	function appendItmsToColumn(Itm,WhatView){
			
			
			var $left_column, $center_column, $right_column;
			$right_column = $('#right_column');
            $center_column = $('#center_column');
            $left_column = $('#left_column');
			
			var StoryWrapper = "";
			var HtmlItm;
            var $shortest_column;
            var userBookedThis,TopicID,NavBGColor,ServercurrentIndex,ListHoverBGColor
			var GridIFrameURL,GridImageURL,PostTitle,SPPostTitle,SPBlurbImageURL,SPBlurbFullURL,SPGridImageURL,Triggers;
			var CommentCountOC,openCircleEntryID,brcLink,GridImageHeight,spriteClass;
			spriteClass =""
			ServercurrentIndex = 0;
			userLikedThis =  Itm.userLikedThis;
			userBookedThis =  Itm.userBookedThis;
			views  = Itm.views;
			likes  = Itm.likes;
			comments  = Itm.comments;
			TopicID  = Itm.TopicID;
			NavBGColor  = Itm.NavBGColor;
			ListHoverBGColor  = Itm.ListHoverBGColor;
			GridImageURL  = Itm.GridImageURL;
			PostTitle  = Itm.PostTitle;
			SPPostTitle  = Itm.SPPostTitle;
			SPBlurbImageURL  = Itm.SPBlurbImageURL;
			SPBlurbFullURL  = Itm.SPBlurbFullURL;
			SPGridImageURL  = Itm.SPGridImageURL;
			Triggers  = Itm.Triggers;
			ServercurrentIndex = Itm.currentIndex;
			CommentCountOC = Itm.CommentCountOC;
			openCircleEntryID = Itm.openCircleEntryID;
			brcLink = Itm.brcLink;
			GridIFrameURL = Itm.GridIFrameURL;
			isSpanish = Itm.IsSpanish;
			imageHeight = 0;
			
			
			if(GridImageURL.indexOf("sprite-")>=0){
				//console.log('found sprite');
				spriteClass=" class=\"spritely\"";
				var img = new Image();
				img.src = GridImageURL; 
				imageHeight = img.height;
			}
			
			
			var likesTitle,bookmarkTitle,viewsTitle,commentsTitle;
			if(isSpanish == "true"){
			    likesTitle = "Me gusta";
			    bookmarkTitle = "Marcalo";
			    viewsTitle = "Vistas";
			    commentsTitle = "Comentarios";
			}else{
			    likesTitle = "Like";
			    bookmarkTitle = "Bookmark";
			    viewsTitle = "Views";
			    commentsTitle = "Comments";
			}
			
			if(openCircleEntryID!= '0'){
				
				comments = CommentCountOC;
			}
			
			
			if (views ==""){
				views = 0
			}
			
			if (likes ==""){
				likes = 0
			}
			
			if (comments ==""){
				comments = 0
			}
			
			var textToInsert = [];
			
			textToInsert[0]  = '';

			var i = 0;
			var messageBoardHide = "";
			if (PostTitle == "Message Boards")
			    messageBoardHide = ' style="display:none;"';

            textToInsert[i++]  = '        <h1 class="H1bfgDin"><a href="'+brcLink+'">'+PostTitle+'</a></h1>'
            
			if(spriteClass!=''){
				textToInsert[i++]  = '        <a href="'+brcLink+'" '+ spriteClass +' style="background: transparent url(' + GridImageURL + ') 0 0 no-repeat;width:285px;display:block; "><img src="'+GridImageURL+'" style="width:auto;"/></a>'
            
			}else{
                if (GridIFrameURL != "")
                    textToInsert[i++] = '        <a href="' + brcLink + '"><iframe allowTransparency="true" style="height: 100px;" id="gvID_' + TopicID + '" frameborder="0" scrolling="no" width="285" src="' + GridIFrameURL + '?iframe=gvID_' + TopicID + '"></iframe></a>';
                else               
                    textToInsert[i++]  = '        <a href="'+brcLink+'"><img src="'+GridImageURL+'" /></a>';
            
				
			}
			
			
			textToInsert[i++]  = '        <div class="StoryMenu" style="background-color: #'+NavBGColor+';">'
            textToInsert[i++] = '            <div ' + messageBoardHide + ' class="views" title="' + viewsTitle + '"><span></span>' + views + '</div>'
            textToInsert[i++] = '            <div ' + messageBoardHide + ' class="comments" title="' + commentsTitle + '"><span></span>' + comments + '</div>'
			
			if(userLikedThis=='1'){
			    textToInsert[i++] = '<div ' + messageBoardHide + ' class="likeIt success" title="' + likesTitle + '"><span class="bgicon"></span><span class="lNumber">' + likes + '</span></div>';
				}else{
			    textToInsert[i++] = '            <a ' + messageBoardHide + ' href="" class="likeIt" id="lTopicID-' + TopicID + '" title="' + likesTitle + '"><span class="bgicon"></span><span class="lNumber">' + likes + '</span><div class="ilikethispopup"></div></a>'
			}
            
			
			if(userBookedThis =='1'){
			    textToInsert[i++] = '<div ' + messageBoardHide + ' class="bookmarksIt success" title="' + bookmarkTitle + '"><span></span></div>'
				
			}else{
			    textToInsert[i++] = '            <a ' + messageBoardHide + ' href="" class="bookmarksIt" id="bTopicID-' + TopicID + '" title="' + bookmarkTitle + '"><span class="bgicon"></span><div class="iBookedItpopup"></div></a>'
			}

			//textToInsert[i++] = '            <a href="' + brcLink + '" class="viewArticle"><span></span></a>'
			if (GridIFrameURL == "" || GridIFrameURL == null) {
			    textToInsert[i++] = '            <a href="' + brcLink + '" class="viewArticle"><span></span></a>'
			}

            textToInsert[i++]  = '       </div>'
			
			StoryWrapper = $("<div>").attr("class", "StoryWrapper")
			
			if(WhatView == 'list'){
				
			
				$(StoryWrapper).hover(
					function(){
						$(this).attr('style','background-color: #'+ListHoverBGColor);
					}
				,
					function(){
						$(this).attr('style','background-color: #929089');
					}
				);
				
			}
			
			
			StoryWrapper = $(StoryWrapper).html(textToInsert.join(''));
			var SpriteImage;
			switch(WhatView){
				case 'box':
					$('body').removeClass('list');
					$('body').addClass('box');
					
					 if($right_column.height() < $left_column.height()) {
               			 $shortest_column = $right_column;        
			            } else {
			                $shortest_column = $left_column;
			            }
			            
			            if($shortest_column.height() > $center_column.height()){
			                $shortest_column = $center_column;
			            }

						StoryWrapper.appendTo($shortest_column);
						
						
						
		
						//$(".spritely").sprite({fps: 7, no_of_frames: 10});
						
						
					break;
				case 'list':
						$('body').removeClass('box');
						$('body').addClass('list');
						StoryWrapper.appendTo('#AjaxContent');
						Cufon.replace('.H1bfgDin',{
							hover: {
								color: '#fff'
							}
						})
				break;
				default:
				$('body').removeClass('list');
					$('body').addClass('box');
					
					 if($right_column.height() < $left_column.height()) {
               			 $shortest_column = $right_column;        
			            } else {
			                $shortest_column = $left_column;
			            }
			            
			            if($shortest_column.height() > $center_column.height()){
			                $shortest_column = $center_column;
			            }

						StoryWrapper.appendTo($shortest_column);
						
						
		
						//$(".spritely").sprite({fps: 7, no_of_frames: 10});
				break;
			}


           
			
			
			
			       
            //$shortest_column.append(HtmlItm);
        }
/* END Endless Scroll Functions*/

/*Common fuinctions*/
        var CamelFunctions = function () {

            return {
                /*
                * Add Bookmark
                * 
                * */
                setView: function (viewType) {

                    /*Only box and list are allowed*/
                    switch (viewType) {
                        case 'box':
                            $('body').removeClass('list');
                            $('body').addClass('box');
                            break;
                        case 'list':

                            $('body').removeClass('box');
                            $('body').addClass('list');
                            break;

                        default: /*Default view is box*/
                            $('body').removeClass('list');
                            $('body').addClass('box');
                            break;
                    }

                },


                AddBookmark: function (obj) {
                    var TopicID = obj.attr('id');

                    TopicID = TopicID.replace(/bTopicID-/, '');

                    /*Do the Ajax call to bookmark the Article.*/
                    $.ajax({
                        type: "GET",
                        url: '/CAM/ajax/Bookmarks.aspx?a=a&i=' + TopicID,
                        cache: false,
                        beforeSend: function () {

                            /*
                            * disable second click to prevent multi submissions
                            * 
                            */
                            $(obj).click(function (event) {

                                return false;
                            })

                        }, /*Success sending the request, Check data to see if errors are present*/
                        success: function (html) {
                            // show popup

                            switch (html) {
                                case 'success':
                                    var BookmarkIMG = "/CAM/images/article_detail/bookmarked.png";

                                    if ($('body').hasClass('spanish')) {
                                        var BookmarkIMG = "/CAM/images/article_detail/bookmarkedSP.png";
                                    }
                                    $('#bTopicID-' + TopicID + ' .iBookedItpopup').fadeIn("slow");
                                    setTimeout(
                                        function () {
                                            $('#bTopicID-' + TopicID + ' .iBookedItpopup').fadeOut("slow",
                                            function () {
                                                //On article detail page, replace text and re-cufon it
                                                if ($("#articlebookmarks").length > 0) {
                                                    $("#articlebookmarks").html('<div class="bookmarksIt success"><span class="bgicon"></span><span class="bookmarkText" title="Bookmark It">Bookmarked</span></div>');
                                                    $(obj).replaceWith('<div class="bookmarksIt success"><span></span></div>');
                                                } else {
                                                    $(obj).replaceWith('<div class="bookmarksIt success"><span></span></div>');
                                                }
                                            })
                                        }, 2000);

                                    try {
                                        //$('#flashMenu').reloadXML();
                                        var flashmenu = document.getElementById('flashMenu');
                                        flashmenu.reloadXML();
                                        //alert('done');
                                    } catch (err) {
                                        //alert(err);
                                    }


                                    break;
                                case 'error':
                                    //alert("error");
                                    break;
                                default:


                                    break;
                            }

                        }, /*We are done with the ajax*/
                        complete: function () {

                        }
                    });
                },
                /*
                * Delete BookMark
                */
                DeleteBookmark: function (topic_id) {

                    var TopicID = topic_id;

                    //TopicID = TopicID.replace(/lTopicID-/, '');  

                    /*Do the Ajax call to bookmark the Article.*/
                    $.ajax({
                        type: "GET",
                        url: '/CAM/ajax/Bookmarks.aspx?a=d&i=' + TopicID,
                        /*Success sending the request, Check data to see if errors are present*/
                        success: function (html) {

                            switch (html) {
                                case 'success':
                                    //alert('removed');
                                    break;
                                case 'error':
                                    //alert('error');
                                    break;
                                default:
                                    //alert(html);
                                    break;
                            }

                        }, /*We are done with the ajax*/
                        complete: function () {

                        }
                    });

                },
                /*Add I like Click
                * 
                */
                AddIlikeThis: function (obj) {

                    var TopicID = obj.attr('id');

                    TopicID = TopicID.replace(/lTopicID-/, '');

                    /*Do the Ajax call to bookmark the Article.*/
                    $.ajax({
                        type: "GET",
                        url: '/CAM/ajax/articleLikeThis.aspx?i=' + TopicID,
                        cache: false,
                        beforeSend: function () {


                            /*
                            * disable second click to prevent multi submissions
                            * 
                            */
                            $(obj).click(function (event) {

                                return false;
                            })

                        }, /*Success sending the request, Check data to see if errors are present*/
                        success: function (html) {

                            switch (html) {
                                case 'success':

                                    var likes = "LiKeS";
                                    if ($("body").hasClass("spanish"))
                                        likes = "me gusta";

                                    $('#lTopicID-' + TopicID + ' .ilikethispopup').fadeIn("slow");
                                    setTimeout(function () {
                                        $('#lTopicID-' + TopicID + ' .ilikethispopup').fadeOut("slow", function () {

                                            //number is cufon'ed on article detail page - handle grabbing and displaying the number differently
                                            if ($(".likeText").length > 0) {
                                                var IlikeNumber = parseInt($('#lTopicID-' + TopicID + ' .lNumber').html());
                                                IlikeNumber = IlikeNumber + 1;
                                                $(obj).replaceWith('<div class="likeIt success"><span class="bgicon"></span> &nbsp;<span class="lNumber">' + IlikeNumber + '</span> <span class="likeText">' + likes + '</span><img src=\"/CAM/images/article_detail/divider.png\" alt=\"Divider\" class=\"divider ajax\"/></div>');
                                            } else {
                                                var IlikeNumber = parseInt($('#lTopicID-' + TopicID + ' .lNumber').html());
                                                IlikeNumber = IlikeNumber + 1;
                                                $(obj).replaceWith('<div class="likeIt success"><span class="bgicon"></span><span class="lNumber">' + IlikeNumber + '</span></div>');
                                            }



                                        })
                                    }, 2000);
                                    break;
                                case 'error':

                                    break;
                                default:

                                    break;
                            }
                        }, /*We are done with the ajax*/
                        complete: function () {

                        }
                    });
                },
                getContent: function (sort, view, fromjs) {

                    var sortData = sort.split(",");
                    var SlicedSortData = sortData.slice(1, sortData.length);

                    $("#bodyContent").removeClass('ErrorPages');

                    if (fromjs == 1) {
                        pageToGet++;
                    } else {
                        pageToGet = 1;
                        /*Clear Page reset it to normal*/

                        $("#AjaxContent").html('<div id="left_column" class="column"> </div><div id="center_column" class="column"></div><div id="right_column" class="column"></div>');

                    }



                    /*Make sure we got some type data
                    * toLowerCase
                    * 
                    * 
                    */

                    switch (view) {

                        case 'grid':
                            TypeView = "box";
                            break;
                        case 'list':
                            TypeView = "list";
                            break;
                        default:
                            TypeView = "box";
                            break;
                    }
                    /*Get the first Part of view , This contains the menu actions we require to do.*/

                    var callback = "";
                    var CallBackResponseTxt = "";
                    var currentSite = "";
                    if ($('body').hasClass('snus')) {
                        currentSite = "snus";
                    }
                    else if ($('body').hasClass('camel')) {
                        currentSite = "camel";
                    } else if ($('body').hasClass('dissolvables')) {
                        currentSite = "dissolvables";
                    } else { currentSite = "camel"; }

                    //console.log(currentSite);
                    switch (sortData[0]) {

                        case 'search':

                            TypeSort = sort;


                            $.ajax({
                                url: '/CAM/ajax/getHomepageArticles.aspx?&tq=s&sK=' + SlicedSortData + '&sT=search&action=getDivsJson&p=' + pageToGet + '&site=' + currentSite,
                                dataType: 'json',
                                success: function (data) {

                                    $("#bodyContent").attr('style', '');

                                    $.each(data.items, function (i, item) {
                                        appendItmsToColumn(item, TypeView);
                                    });

                                }, error: function (e) {

                                    if (pageToGet == 1 && fromjs != 1) {

                                        $("#bodyContent").attr('style', 'background-image: none');
                                        $("#bodyContent").addClass('ErrorPages');

                                        $("#AjaxContent").html('<div class="BoxedContent"><div id="NoSearch"></div></div><div id="left_column" class="column"> </div><div id="center_column" class="column"></div><div id="right_column" class="column"></div>');

                                    }


                                }
                            });




                            break;
                        case 'dateSearch':
                            TypeSort = sort;




                            $.ajax({
                                url: '/CAM/ajax/getHomepageArticles.aspx?&tq=s&sK=' + SlicedSortData + '&sT=' + sortData[0] + '&action=getDivsJson&p=' + pageToGet + '&site=' + currentSite,
                                dataType: 'json',
                                success: function (data) {

                                    $("#bodyContent").attr('style', '');

                                    $.each(data.items, function (i, item) {
                                        appendItmsToColumn(item, TypeView);
                                    });

                                }, error: function (e) {

                                    if (pageToGet == 1 && fromjs != 1) {

                                        $("#bodyContent").attr('style', 'background-image: none');
                                        $("#bodyContent").addClass('ErrorPages');

                                        $("#AjaxContent").html('<div class="BoxedContent"><div id="NoSearch"></div></div><div id="left_column" class="column"> </div><div id="center_column" class="column"></div><div id="right_column" class="column"></div>');

                                    }


                                }
                            });








                            break;
                        case 'tags':
                        case 'products':
                        case 'date':
                        case 'popularity':
                            /*Tags are selected search for tags*/


                            TypeSort = sort;

                            /*Split tags to add to the search*/
                            /*Remove the first sortData[0] from sortData[0]*/


                            $.ajax({
                                url: '/CAM/ajax/getHomepageArticles.aspx?&tq=s&sK=' + SlicedSortData + '&sT=' + sortData[0] + '&action=getDivsJson&p=' + pageToGet + '&site=' + currentSite,
                                dataType: 'json',
                                success: function (data) {

                                    $("#bodyContent").attr('style', '');

                                    $.each(data.items, function (i, item) {
                                        appendItmsToColumn(item, TypeView);
                                    });

                                }, error: function (e) {

                                    if (pageToGet == 1 && fromjs != 1) {

                                        $("#bodyContent").attr('style', 'background-image: none');
                                        $("#bodyContent").addClass('ErrorPages');

                                        $("#AjaxContent").html('<div class="BoxedContent"><div id="NoSearch"></div></div><div id="left_column" class="column"> </div><div id="center_column" class="column"></div><div id="right_column" class="column"></div>');

                                    }


                                }
                            });




                            break;


                        default: /*If nothing do default functions*/

                            $.getJSON('/CAM/ajax/getHomepageArticles.aspx?action=getDivsJson&p=' + pageToGet + '&site=' + currentSite,

							function (data) {

							    $.each(data.items, function (i, item) {
							        appendItmsToColumn(item, TypeView);

							    });


							});

                            //start spritely

                            break;
                    }


                },
                loadArticleComments: function () {

                    var OParticleID = GetQueryString("i");
                    var CurrentPage = GetQueryString("p");
                    var OPStart = GetQueryString("s");
                    var OPEnd = GetQueryString("e");

                    if (OPStart == '' || OPStart == null) { OPStart = 1; }
                    if (OPEnd == '' || OPEnd == null) { OPEnd = 10; }
                    if (OParticleID == '' || OParticleID == null) { OParticleID = 0; }
                    if (CurrentPage == '' || CurrentPage == null) { CurrentPage = 1; }

                    /*Load articles*/
                    $.ajax({
                        type: "GET",
                        url: '/CAM/ajax/GetUBBSComments.aspx?s=' + OPStart + '&e=' + OPEnd + '&p=' + CurrentPage + '&i=' + OParticleID,
                        success: function (html) {
                            $("#OCCommentWrapper").html(html);

                            CamelFunctions.dopaging();
                            AllRolloverImages();
                            CamelFunctions.initReportComment();
                            CamelFunctions.initReplyComment();
                            CamelFunctions.initLikeComment();
                            Cufon.replace('.bfgDin');
                            Cufon.replace('.bfgDinWhite', { color: '#ffffff' });
                        }
                    });
                },
                dopaging: function () {
                    $(".PPreviousLnk").click(function (event) {
                        CamelFunctions.CallPage(event);
                        return false;
                    });

                    $(".PNextLnk").click(function (event) {
                        CamelFunctions.CallPage(event);
                        return false;
                    });

                    $(".OpenCirclePageLink").click(function (event) {
                        CamelFunctions.CallPage(event);
                        return false;
                    });
                },
                CallPage: function (event) {
                    var contentid = '';

                    var OpenCircleHome = $(".OpenCircleHome");
                    if (OpenCircleHome.length == 1) {
                        contentid = 'OCAjaxContent';
                    }

                    var el = $(event.currentTarget);
                    var OpenCircleArticle = $(".OpenCircleArticle");
                    if (OpenCircleArticle.length == 1 || $("#OCComments").length > 0) {
                        contentid = 'OCCommentWrapper';
                    }

                    //$(event.preventDefault());
                    if (!$(event.currentTarget).hasClass('PrevDisabled') && ($(event.currentTarget).hasClass('PPreviousLnk') || $(event.currentTarget).hasClass('OpenCirclePageLink'))) {
                        CamelFunctions.loadPostContainer($(event.currentTarget).attr("href"), contentid);
                        var targetOffset = $('#' + contentid).offset().top;
                        $('html,body').animate({ scrollTop: targetOffset }, 300);
                        return;
                    } else if ($(event.currentTarget).hasClass('PPreviousLnk')) {
                        $(event.preventDefault());
                        return;
                    }

                    if (!$(event.currentTarget).hasClass('NextDisabled') && ($(event.currentTarget).hasClass('PNextLnk') || $(event.currentTarget).hasClass('OpenCirclePageLink'))) {
                        CamelFunctions.loadPostContainer($(event.currentTarget).attr("href"), contentid);
                        var targetOffset = $('#' + contentid).offset().top;
                        $('html,body').animate({ scrollTop: targetOffset }, 300);
                        return;
                    } else if ($(event.currentTarget).hasClass('PNextLnk')) {
                        $(event.preventDefault());
                        return;
                    }
                },
                loadPostContainer: function (URL, EleID) {
                    // $("#" + EleID).html("<div id=\"AjaxLoad\">Loading...</div>");

                    $.ajax({
                        type: "GET",
                        url: URL,
                        cache: false,
                        success: function (html) {
                            $("#" + EleID).html(html);
                            window.scrollTo(0, 0);

                            //Call Function to Find Paging
                            CamelFunctions.dopaging();
                            AllRolloverImages();
                            CamelFunctions.initReportComment();
                            CamelFunctions.initReplyComment();
                            CamelFunctions.initCommentLikes();
                            Cufon.replace('.bfgDin');
                            Cufon.replace('.bfgDinWhite', { color: '#ffffff' });

                            //RegisterILikeThis();
                            //registerLatestCommentsAccordion();
                        },
                        error: function () {
                            $(EleID).html("Error loading content.");
                        }
                    });
                },

                PostArticleComment: function (CommentFieldID, postCommentURL) {


                    if (typeof CommentFieldID == "undefined") {

                        CommentFieldID = "#CommentField";

                    }

                    if (typeof postCommentURL == "undefined") {

                        postCommentURL = "/CAM/ajax/doReplyPost.aspx";

                    }


                    var CommentField = $(CommentFieldID).val();
                    var OPID = $('#articleID').val();
                    var parentID = $('#parentID').val();
                    var language = '';
                    if ($('#site_language').length > 0)
                        language = $('#site_language').val();

                    var CommentResponse = $('#CommentResponse');

                    if ((CommentField != '' && CommentField != null) && (OPID != null && OPID != '')) {
                        $.ajax({
                            type: "POST",
                            url: postCommentURL,
                            data: "topic=" + OPID + "&reply=" + CommentField + "&parent=" + parentID + "&c=" + GetQueryString("c") + "&language=" + language,
                            success: function (html) {
                                if (typeof (GetQueryString("c")) != "undefined")
                                    CamelFunctionsOC.loadArticleComments();
                                else
                                    CamelFunctions.loadArticleComments();
                                $('#CommentResponse').attr("display", "none");
                                $('#CommentField').val("");
                                $('#CommentFieldPreview').html("");
                                $('#CommentFieldPreview').css("display", "none");
                                $('.previewButton').css("display", "block");
                                $('.editButton').css("display", "none");
                                $('#CommentField').css("display", "block");
                                $('#parentID').val(0);

                                var numberComments = $('#articlecomments .commented').attr("numberComments");
                                numberComments++;
                                $('#articlecomments .commented').html("<span>" + numberComments + " comments</span>");

                            },
                            error: function () {
                                $("#CommentResponse").removeClass("alertBox");
                                $("#CommentResponse").html("There has been an error posting your comment. Please try again. If you continue to see this error please contact us.");
                                $("#CommentResponse").attr("display", "block");

                                //fade(CommentResponse, 3);
                            }
                        });

                    } else {
                        $("#CommentResponse").attr("display", "block");
                        //fade(CommentResponse, 3)
                        $("#CommentResponse").html("Please enter a comment.");
                    }

                },
                initCommentForm: function () {
                    if ($('#CommentForm').length > 0) {
                        /*Find the Form element and assing a Event listener*/

                        $("#FormComment").submit(function () {
                            CamelFunctions.PostArticleComment();
                        });
                    }
                },
                initReportComment: function () {
                    $(".report").click(function () {
                        if (!$(this).hasClass("disabled")) {
                            var id = $(this).attr("id").replace("report_", "");
                            if (typeof (GetQueryString("c")) != "undefined") {
                                $.ajax({
                                    type: "POST",
                                    url: '/CAM/ajax/reportCommentOC.aspx',
                                    data: 'i=' + id,
                                    success: function (html) {
                                        $("#report_" + id).addClass("disabled");
                                    }
                                });
                            }
                            else {
                                $.ajax({
                                    type: "POST",
                                    url: '/CAM/ajax/reportComment.aspx',
                                    data: 'i=' + id,
                                    success: function (html) {
                                        $("#report_" + id).addClass("disabled");
                                    }
                                });
                            }
                        }
                        return false;
                    });
                },
                initReplyComment: function () {
                    $(".reply").click(function () {
                        var id = $(this).attr("id").replace("reply_", "");
                        $("#parentID").val(id);
                        $("#CommentField").val("");
                        $("#CommentField").focus();
                        var targetOffset = $(".leaveacomment").offset().top;
                        $('html,body').animate({ scrollTop: targetOffset }, 1000);
                        return false;
                    });
                },
                initLikeComment: function () {
                    $(".replyLikeIt").click(function () {
                        var id = $(this).attr("id").replace("like_comment_", "");

                        $.ajax({
                            type: "POST",
                            url: '/CAM/ajax/addUBBSCommentLike.aspx',
                            data: 'i=' + id,
                            success: function (html) {
                                $("#like_count_" + id).html(html);
                                $("#like_comment_" + id).addClass("likedIt");
                                $(this).parent().addClass("likedIt");
                            }
                        });

                        return false;
                    });
                }
            }
        } ();

/*Wrapper For menu Calls*/

function getContent(view,sort){
    CamelFunctions.getContent(view,sort);
}

function deleteBookmark(id)
{
    //var obj = {};
    //obj.id = id;
    CamelFunctions.DeleteBookmark(id);
}


function GetQueryString(val) {
    var i, arr, querystring; 
            querystring = window.location.search.substring(1);
            arr = querystring.split("&");
            for (i=0;i<arr.length;i++) {
                ft = arr[i].split("=");
                if (ft[0] == val) {
                    return ft[1];
                }
            }
       }	
