/*
* submit question search
*/

function submitQuestionSearch()
{
	// get my query
	myquery = $('#searchKeyword').attr('value');
	

	// call ajax to get the url
	$.ajax({
	type: "POST",
	url: 'forum/_fw',
	data: {
		      "query":myquery,
		      'sq1': $('#sq1').attr('checked'),
		      'sq2': $('#sq2').attr('checked')
		    },
	success: function(msg)
	          {

				     window.location = msg;
			      }
	});
	
	return false;
}

/*
* ajax load question pager
*/

function loadQuestions(ajaxlink)
{
  $('#questions_ajax_loader').load(ajaxlink);
}

function loadAnswers(ajaxlink)
{
  $('#answers_ajax_loader').load(ajaxlink);
}

/*
* edit post ajax form 
*/

$(document).ready(function(){
		var options = 
		{
				beforeSubmit: function() 
				{
					  displayMsg('processing...');
				    return true;
				},
		    success: function(response) 
		    {
		    	if (response == 'OK')
		    	{
		    		 window.location.reload();
		    	}
		    	else if (response == 'SHORT')
		    	{
		    		displayMsg('Your comment is too short, please enter atleast 10 characters');
		    	}
		    }
		}; 

		// pass options to ajaxForm 
		$('.editpost_ajaxform').ajaxForm(options);
});

/*
* ajax show editforms to edit post
*/

var replaced = Array()

function showeditform(postid)
{
	$('#after_' + postid).css({'display' : 'none'});
	$('#before_' + postid).css({'display' : 'block'});
	
	if (replaced[postid] != true)
	{
		CKEDITOR.replace('CONTENT_CK_' +  postid, {
		height:"150",
		width:"98%",
	  toolbar :
	  [
	    ['Bold','Italic','Underline','Strike'],
	    ['NumberedList','BulletedList','-'],
	    ['JustifyLeft','JustifyCenter','JustifyRight','JustifyBlock'],
	    ['Link'],
	    ['TextColor','BGColor']
	  ]
		});
		
	 replaced[postid] = true;
 }
}

function hideeditform(postid)
{
	$('#after_' + postid).css({'display' : 'block'});
	$('#before_' + postid).css({'display' : 'none'});
}


/*
* quicksearch tags (onkeypress)
*/
function do_qsearch_tags(obj)
{
	// get keyword
	keyword = $(obj).attr('value');
	
	$.ajax({
	type: 'POST',
	url: 'forum/_qsearch_tag',
	data: {'string' : keyword
	      },
	success: function(msg)
	          {
              if (msg != 'NONE')
              {
              	$('#tags_search_loader').css({'display' : 'block'});
              	$('#tags_search_loader').html(msg);
              }
              else
              {
              	$('#tags_search_loader').css({'display' : 'none'});
              	$('#tags_search_loader').html('');
              }
			      }
	});	
}



function appendToTagInput(mytext)
{
	// get input and explode input
	dkm = $('#tags_input').attr('value');
	
	dkm_arr = explode(' ', dkm);
	
	// delete the last element
	delete dkm_arr[dkm_arr.length - 1];
	
	dkm = '';
	
	// implode the array
	for (var i in dkm_arr)
	{
		if (i == 0) var space = ''; else var space = ' ';
		
	  dkm = dkm + space + dkm_arr[i];
	}
	
	// put result
	if (dkm != '')
	{
	  dkm = dkm + ' ' + mytext;
	}
	else dkm = mytext;
	
	$('#tags_input').attr({'value' : dkm});
	$('#tags_search_loader').css({'display' : 'none'});
}


function explode (delimiter, string, limit) 
{
     var emptyArray = { 0: '' };
    
    // third argument is not required
    if ( arguments.length < 2 ||
        typeof arguments[0] == 'undefined' ||        typeof arguments[1] == 'undefined' ) {
        return null;
    }
 
    if ( delimiter === '' ||        delimiter === false ||
        delimiter === null ) {
        return false;
    }
     if ( typeof delimiter == 'function' ||
        typeof delimiter == 'object' ||
        typeof string == 'function' ||
        typeof string == 'object' ) {
        return emptyArray;    }
 
    if ( delimiter === true ) {
        delimiter = '1';
    }    
    if (!limit) {
        return string.toString().split(delimiter.toString());
    } else {
        // support for limit argument        var splitted = string.toString().split(delimiter.toString());
        var partA = splitted.splice(0, limit - 1);
        var partB = splitted.join(delimiter.toString());
        partA.push(partB);
        return partA;    }
}

/*
* quicksearch topic (onkeypress)
*/
function do_qsearch_topic(obj)
{
	// get keyword
	keyword = $(obj).attr('value');
	
	// submit search via ajax
	$.ajax({
	type: 'POST',
	url: 'forum/_qsearch_topic',
	data: {'string' : keyword
	      },
	success: function(msg)
	          {
              if (msg != 'NONE')
              {
              	$('#qsearch_topic_loader').html(msg);
              }
              else
              {
              	$('#qsearch_topic_loader').html('');
              }
			      }
	});
}

/*
*  quickcomment submit script
*/

$(document).ready(function(){
	  //createProductForm
		var options = 
		{
				beforeSubmit: function() 
				{
					  displayMsg('processing...');
				    return true;
				},
		    success: function(response) 
		    {
		    	if (response == 'OK')
		    	{
		    		 window.location.reload();
		    	}
		    	else if (response == 'SHORT')
		    	{
		    		displayMsg('Your answer is too short, please enter atleast 10 characters');
		    	}
		    	else if (response == 'ERROR2')
		    	{
		    		displayMsg('You can\'t answer for your own post');
		    	}
		    	else
		    	{
		    		displayMsg('you\'ll need a Downloadhotfile username in order to submit an answer. <br/> <br/> <a href="home/register">Click here</a> to create a username.');
		    	}
		    }
		}; 

		// pass options to ajaxForm 
		$('#quick_comment').ajaxForm(options);
});






/*
* cast vote script
*/
$(document).ready(function(){
  $('.vote').click(function(){
  	postid = $(this).attr('postid');
  	voted  = $(this).attr('voted');
  	
  	$('#displayvote_' + postid).html('...');
  	
  	// hiliit;
  	$('.postvote_' + postid).removeClass('casted');
  	$(this).addClass('casted');

    // call ajax
	  $.ajax({
		type: "POST",
		url: 'forum/_castvote',
		data: {"postid" : postid,
		       "voted" : voted
		      },
		success: function(msg)
		          {
                if (msg == 'OK')
                {
                	
                }
                else
                {
		          	  displayMsg(msg);
		          	  $('.postvote_' + postid).removeClass('casted');		          		
		            }
		            
		            $('#displayvote_' + postid).load('forum/_getvote/postid/' + postid);
				      }
		});         	
  });
});


/*
* click function for tags
*/

$(document).ready(function(){
  $('.tags').click(function(){
    window.location = BASE_DIR + $(this).attr('link');
  });
});

/*
* vote hover script, post_detail_content hover script
*/
$(document).ready(function(){
  $('.vote').mouseenter(function(){
    // $(this).css({'background-position' : '0 -24px'});
    $(this).addClass('gohover');
  });
  
  $('.post_detail_content').mouseenter(function(){
    $(this).css({'border-left' : '5px solid gray'});
  });  
  
  $('.vote').mouseleave(function(){
    // $(this).css({'background-position' : '0 0'});
    $(this).removeClass('gohover');
  });  
  
  $('.post_detail_content').mouseleave(function(){
    $(this).css({'border-left' : '5px solid #DFDFDF'});
  });    
});


/*
* ask question page hint script
*/


$(document).ready(function(){
  $('.ask_tags input').focus(function(){
    $('#ask_tip_2').slideDown('fast');
    $('#ask_tip_1').slideUp('fast');
  });
  
  $('.ask_tags input').blur(function(){
    $('#ask_tip_1').slideDown('fast');
    $('#ask_tip_2').slideUp('fast');
  });  
});



/*
* forum button hover scripts (hover for tags buttons)
*/

$(document).ready(function(){
	$('.tags').mouseenter(function(){
		$(this).addClass('tags2');
	});
	
	$('.tags').mouseleave(function(){
		$(this).removeClass('tags2');
  });
});


$('<img />').attr('src', 'images/tag_m2.png').load(function(){});
$('<img />').attr('src', 'images/tag_r2.png').load(function(){});
$('<img />').attr('src', 'images/tag_l2.png').load(function(){});



/*
* forum button hover scripts (hover for main 4 buttons)
*/
$(document).ready(function(){
	$('.btn_hover').mouseenter(function(){
		$(this).addClass('frm_buttons2');
	});
	
	$('.btn_hover').mouseleave(function(){
		$(this).removeClass('frm_buttons2');
  });
});


$('<img />').attr('src', 'images/2frm_fr.png').load(function(){});
$('<img />').attr('src', 'images/2frm_mdl.png').load(function(){});
$('<img />').attr('src', 'images/2frm_fl.png').load(function(){});


/*
* default hint value for input
*/
$(document).ready(function(){
	// first set default to empty input that has default attribute
  $('input').each(function(){
     mydefault = $(this).attr('default');
     
     if (mydefault) 
     {
       myValue = $(this).attr('value');
       if (myValue == '')
       {
       	 $(this).attr({'value' : mydefault});
       	 $(this).css({'color' : 'gray'});
       }
     }
  });
  
	$('input').focus(function(){
	   mydefault = $(this).attr('default');
	   if (mydefault) 
	   {
       myValue = $(this).attr('value');
       if (myValue == mydefault)
       {
       	 $(this).attr({'value' : ''});
       	 $(this).css({'color' : 'black'});
       }
	   }   
	});
  
  $('input').blur(function(){
     mydefault = $(this).attr('default');
     
     if (mydefault) 
     {
       myValue = $(this).attr('value');
       if (myValue == '')
       {
       	 $(this).attr({'value' : mydefault});
       	 $(this).css({'color' : 'gray'});
       }
     }
  });
});

/*
* chat onkeypress
*/
$(document).ready(function(){
	$('#chatContent').keyup(function(e){
		
		var chatContent = $('#chatContent').attr('value');
		
	  mkeyCode = e.keyCode;
	 
	  if (mkeyCode.toString() == '13')
	  {
	  	if (chatContent.length > 2)
	  	{
	  	  submitchat();
	    }
	    else $('#chatContent').attr({'value' : ''});
	  }
	});
});

function nl2br(str) { return str.replace(/\n/g, '<br />'); }

/*
* submit update product form
*/
$(document).ready(function(){
	  //createProductForm
		var options = 
		{
				beforeSubmit: function() 
				{ 
				    displayMsg('Processing...');
				    return true;
				},
		    success: function(response) 
		    {
		    	if (response == 'OK')
		    	{
		    		window.location = BASE_DIR + 'account/shopproducts';
		    	}
		      else displayMsg(response);
		    }
		}; 

		// pass options to ajaxForm 
		$('#updateProductForm').ajaxForm(options);
});


/*
* submit create product form
*/
$(document).ready(function(){
	  //createProductForm
		var options = 
		{
				beforeSubmit: function() 
				{ 
				    displayMsg('Processing...');
				    return true;
				},
		    success: function(response) 
		    {
		    	if (response == 'OK')
		    	{
		    		window.location = BASE_DIR + 'account/shopproducts';
		    	}
		      else displayMsg(response);
		    }
		}; 

		// pass options to ajaxForm 
		$('#createProductForm').ajaxForm(options);
});

/*
* edit product onclick
*/
$(document).ready(function(){
  $('.catslt').click(function(){
    $('.catslt').css({'background-color' : 'white'});
    $(this).css({'background-color' : 'cyan'});
    var CATID = $(this).attr('catid');
    $('#CAT_ID').attr({'value' : CATID });
    var CATNAME = $(this).html();
    $('#CAT_NAME').html(CATNAME);
  });
});


/*
* show username when compose message
*/
var nowSendTo = '';

function insertValue(what)
{
	valueToInsert = $(what).attr('insertvalue');
	$('#sento').attr({'value' : valueToInsert});
	$('#quicktip').css({'display' : 'none'});
}

$(document).ready(function(){
  $('#sento').keyup(function(){
    var userinput = $(this).attr('value');
    if (userinput != '')
    {
    	// call ajax
			$.ajax({
				type: "POST",
				url: "account/_quicksearchuser",
				data: {
					      'userinput' : userinput
				      },
				success: function(response)
				          {
					        	$('#quicktip').css({'display' : 'block'});
					        	$('#quicktip').html(response);
						      }
				});

    }
    else
    {
    	$('#quicktip').css({'display' : 'none'});
    }
  });

  $('#sento').blur(function(){
   	setTimeout(function(){ $('#quicktip').css({'display' : 'none'}) } , 500);
  });

  $('#sento').focus(function(){
  	if ($('#sento').attr('value') == 'Type a name here to search...')
  	{
  	  $('#sento').attr({'value' : ''});
    }
  });
});

/*
* user control panel - message check / uncheck
*/
$(document).ready(function(){
  $('<img />').attr('src', 'images/yellow.gif').load(function(){});

  $('#checkboxArea input[type=checkbox]').click(function(){
    if ($(this).attr('checked'))
    {
    	$(this).parents('tr').children('td').css({'background-image' :'url(images/yellow.gif)'});
    }
    else
    {
    	$(this).parents('tr').children('td').css({'background-image' :'none'});
    }
  });
});

function checkAll()
{
  $('#checkboxArea input[type=checkbox]').attr({'checked' : true});
  $('#checkboxArea .checktr td').css({'background-image' : 'url(images/yellow.gif)'});
}

function uncheckAll()
{
  $('#checkboxArea input[type=checkbox]').attr({'checked' : false});
  $('#checkboxArea .checktr td').css({'background-image' : 'none'});
}

function deleteSelected(PROCESS_SCRIPT)
{
	displayMsg('<div style="margin-bottom:20px;">Delete all selected items? </div> <div style="text-align:center;"> <input class="nice_buttons" type="submit" value="Delete" style="margin-right:10px;" onclick="deleteSelectedTrue(\''+PROCESS_SCRIPT+'\');"/> <input class="nice_buttons" type="submit" onClick="closeMsg();" value="Cancel"/> </div>');
}

function deleteSelectedTrue(PROCESS_SCRIPT)
{
	var myOutput = '';

	$('#checkboxArea').find('input[type=checkbox]').each(function(){
	  if ($(this).attr('checked') == true)
	  {
	  	myOutput = myOutput + $(this).attr('id');
	  }
	});


	// ajax
	$.ajax({
		type: "POST",
		url: PROCESS_SCRIPT,
		data: {
			       'deleteString' : myOutput
		      },
		success: function(msg)
		          {
					       window.location.reload();
				      }
		});
}

/*
* FUNCTION CONFIRM GOLINK
*/
function confirmLink(myLINK , myTEXT)
{
	 displayMsg('<div style="margin-bottom:20px;">' + myTEXT + '</div> <div style="text-align:center;"> <input class="nice_buttons" type="submit" value="Yes" style="margin-right:10px;" onclick="window.location=\'' + myLINK + '\';"/> <input class="nice_buttons" type="submit" onClick="closeMsg();" value="Cancel"/> </div>');
}

/*
* AJAX LOAD PAGING
*/

function ajaxload(PAGELINK)
{
	// get current div height
	var currentHeight = $('#content_loader').height();

  // fix the hieght
	$('#content_loader').css({'height' : currentHeight + 'px'});

	// load content
	$('#content_loader').html('loading...');

	$('#content_loader').load(PAGELINK , function(){
	  // unfix the hegiht
	  $('#content_loader').css({'height' : 'auto'});
	});
}

function ajaxload2(PAGELINK)
{
	// get current div height
	var currentHeight = $('#content_loader2').height();

  // fix the hieght
	$('#content_loader2').css({'height' : currentHeight + 'px'});

	// load content
	$('#content_loader2').html('loading...');

	$('#content_loader2').load(PAGELINK , function(){
	  // unfix the hegiht
	  $('#content_loader2').css({'height' : 'auto'});
	});
}

/*
* filter in shop list page
*/
function submitShopFilter(BASEDIR)
{
	var dn = 0;
	var displayChecker = $('#displayChecker').attr('checked');
	if (displayChecker) dn = 1; else dn = 0;

	var r = $('#reverse').attr('checked');
	if (r) r = 'DESC'; else r = 'ASC';

	var o = $('#orderSelector').attr('value');

	window.location = BASEDIR + '/dn/' + dn + '/r/' + r + '/o/' + o;
}

/*
* comment function
*/
function confirmDeleteComment(COMMENT_ID)
{
	displayMsg('Delete this comment?  &nbsp; &nbsp; <a href="product/_deleteMyComment/cmid/' + COMMENT_ID + '">YES</a> &nbsp; &nbsp; <a onClick="closeMsg();">CANCEL</a>');
}

function addComment(PRODUCT_ID)
{
	displayMsg('Processing...');

	var commentContent = $('#made_comment').attr('value');

	$.ajax({
		type: "POST",
		url: "product/_submitComment/",
		data: {
			       "pid" : PRODUCT_ID,
			       "content"    : commentContent
		      },
		success: function(response)
		         {
		           if (response == 'ERROR')
		           {
		           	  displayMsg('you\'ll need a Downloadhotfile username in order to submit a comment. <br/>  <br/> <a href="home/register">Click here</a> to create a username.');
		           }
		           else if (response == 'ERROR2')
		           {
		           	 displayMsg('Your comment is to short. Please enter at least 10 charactors');
		           }
		           else
		           {
		           	  $('#comment_table tr:first').before(response);
		           	  $('#nofeedback_tr').remove();
		           	  $('#made_comment').attr({'disabled' : 'disabled'});
		           	  $('#comment_button').css({'color' : 'black'});
		           	  $('#comment_button').attr({'onClick' : ''});

		           	  /* move user to #made_comment */
		           	  vitri = $('#newadded').offset();
		           	  vitri_top = vitri.top - 50;
		           	  $(document).scrollTop(vitri_top);

		           	  /* close msg */
		           	  closeMsg();
		           }
				     }
		});
}

/*
* submit search function
*/

function submitSearch(BASEDIR)
{
	myKeyword = $('#searchKeyword').attr('value');

	if (myKeyword.length <= 1)
	{
		displayMsg('Please enter at least 2 characters');
	}
	else
	{
		mycbx1    = $('#sc1').attr('checked');
		mycbx2    = $('#sc2').attr('checked');
		mycbx3    = $('#sc3').attr('checked');

		mycurrentFS = 0;

		if (mycbx1 &&  !mycbx2) mycurrentFS = 1;
		if (!mycbx1 && mycbx2) mycurrentFS = 2;

		if (mycbx3) mycurrentTOP = 1;
		else mycurrentTOP = 0;

		displayMsg('Processing...');

		/* encode the keyword */
		$.ajax({
			type: "POST",
			url: "search/_createNewSearch/",
			data: {
				       "myKeyword" : myKeyword,
				       "myType"    : currentSearchType,
				       "myCat"     : currentSearchCatid,
				       "myFS"      : mycurrentFS,
				       "myTOP"     : mycurrentTOP
			      },
			success: function(sid)
			         {
						     window.location = BASEDIR + 'search/result/sid/' + sid;
					     }
			});
	}
}


/*
* when user click on filter products
*/
function resortOrder(BASE_DIR)
{
	myorder = $('#order').attr('value');
  myfreeware = $('#freeware').attr('checked');
  myshareware = $('#shareware').attr('checked');
  myreverse = $('#reverse').attr('checked');

	myuri = '/o/' + myorder + '/f/' + myfreeware + '/s/' + myshareware + '/r/' + myreverse;

	window.location = BASE_DIR + myuri;
}

/*
* load user profile on the top of the page
*/
calledIntervalFunction = false;
$(document).ready(function(){
  $('#user_area').load('components/_page_userInfos');
});


/*
* Support CSS hover effect
*/
$(document).ready(function(){
  $('.nice_buttons').mouseenter(function(){
    $(this).css({'background-image' : 'none'});
  });

  $('.nice_buttons').mouseleave(function(){
    $(this).css({'background-image' : 'url(images/search_1.gif)'});
  });

  $('.hv').focus(function(){
    $(this).css({'background-color' : 'yellow'});
  });

  $('.hv').blur(function(){
    $(this).css({'background' : 'white'});
  });
});

/*
* selectbox's scripts
*/

options_is_shown = false;

$(document).ready(function(){
	/* search option onclick */
  $('#search_options div a').click(function() {

  	$('#search_options').slideUp();

  	$('#search_select').css({'background-position' : '130px 8px'});

  	var myselected = $(this).html();

  	var myselectedId = $(this).attr('id');

  	currentSearchCatid = myselectedId.replace("searchCat_" , "");

    $('#search_select').html(myselected);

	  options_is_shown = false;
  });
});


function search_select_onclick()
{
	if (options_is_shown)
	{
		$('#search_select').css({'background-position' : '130px 8px'});
	  $('#search_options').slideUp();
	  options_is_shown = false;
	}
	else
	{
		$('#search_select').css({'background-position' : '130px -40px'});
	  $('#search_options').slideDown();
	  options_is_shown = true;
	}
}

/*
* END selectbox's script
***********************/

/**
* chuyen background cua search tab
*/
$(document).ready(function(){
  $('.search_tab').click(function(){
    $('.search_tab').css({'background-image' : 'url(images/search_p2.jpg)'});
    $(this).css({'background-image' : 'url(images/search_p1.jpg)'});
    var myCurrentId = $(this).attr('id');
    currentSearchType = myCurrentId.replace("search_p" , "");
  });
});


/*
* function show publisher's quick action
*/
$(document).ready(function(){

  quickActionIsShown = false;

  $('.userlink').click(function(){
    DIV_ID = $(this).attr('divid');

		$('.userQuickAction').css({'display' : 'none'});

		if(quickActionIsShown)
		{
		  $('#userQuickAction_' + DIV_ID).css({'display' : 'none'});

	    quickActionIsShown = false;
		}
		else
		{
			/* show it in the right place */
			var myoffset = $(this).offset();
			var myleft   = myoffset.left + 10;
			var mytop  = myoffset.top  + $(this).height() + 10;
			$('#userQuickAction_' + DIV_ID).css({'top' : mytop + 'px', 'left' : myleft + 'px'});
		  $('#userQuickAction_' + DIV_ID).show('fast');
	    quickActionIsShown = true;
		}
  });

  $('.closelink').click(function(){
    DIV_ID = $(this).attr('divid');
  	$('#userQuickAction_' + DIV_ID).css({'display' : 'none'});
	  quickActionIsShown = false;
  });
});

/*
* bold, italic, color on click
*/


$(document).ready(function(){
  $('#boldpick').click(function(){
    if (onBold)
    {
    	$('#boldpick').css({'background-position' : '0 0'});
    	onBold = false;
    }
    else
    {
    	$('#boldpick').css({'background-position' : '0 -20px'});
    	onBold = true;
    }
  });

  $('#italicpick').click(function(){
    if (onItalic)
    {
    	$('#italicpick').css({'background-position' : '0 0'});
    	onItalic = false;
    }
    else
    {
    	$('#italicpick').css({'background-position' : '0 -20px'});
    	onItalic = true;
    }
  });

  $('#colorpick').click(function(){
    if (colorIsShown)
    {
    	$('#colortable').css({'display' : 'none'});
    	colorIsShown = false;
    }
    else
    {
    	$('#colortable').css({'display' : 'inline'});
    	colorIsShown = true;
    }
  });

  $('.colorcell').click(function(){
    var myColor = $(this).css('background-color');
  	$('#colortable').css({'display' : 'none'});
  	colorIsShown = false;
  	$('#colorpick').css({'background-color' : myColor});
  });
});
