function IsNumeric(input)
{
	return (input - 0) == input && input.length > 0;
}
function getWhatever(strUrl)
{
 var strReturn = "";

 jQuery.ajax({
  url:strUrl ,
   success:function(html){strReturn = html;}, 
   error:function(strUrl) { alert("Failed to load " + strUrl);},
   async:false
 });
 return strReturn;
}
function startUpload(v1){
        if($("#fupfup").val() == "" ) { alert("No file chosen");return;}
	document.getElementById('f1_upload_process').style.visibility = 'visible';
	//document.getElementById('f1_upload_form').style.visibility = 'hidden';
	// document.upload_form.arg.value=z1;

	document.forms["upload_form"].submit();
	return true;
}

// reload preview after reloading image list
function rpreview(a,b,c)
{
	imagePreview();
}

function stopUpload(success,url){
	var result = '';

	if (success == 1){
		result = '<span class="msg">The file was uploaded successfully!<\/span><br/><br/>';
		if(document.getElementById('img_list')) {
			$("#img_list").load(url,"",rpreview);
		}
	}
	else {
		result = '<span class="emsg">There was an error during file upload!<\/span><br/><br/>';
	}
	document.getElementById('f1_upload_process').style.visibility = 'hidden';
	document.getElementById('f1_upload_msg').innerHTML = result ;
	document.getElementById('f1_upload_form').style.visibility = 'visible';
	$('.MultiFile-remove').click();
	return true;
}


function delImage(url)
{
	url += "/";
	if(document.show_images_by_date) {
		i = document.show_images_by_date.from_days.selectedIndex;
		days = document.show_images_by_date.from_days[i].value;
		url += "i:1::f:" + days;
	}
	if(document.getElementById('edit_mce'))
		url += "::e:1";
       if(document.getElementById('product_id'))
		url += "::p:" + $("#product_id").val();

	if(document.getElementById('img_list')) {
		$("#img_list").load(url,"",rpreview);
	}
}

function setDefImage(url)
{
	url += "/";
	if(document.show_images_by_date) {
		i = document.show_images_by_date.from_days.selectedIndex;
		days = document.show_images_by_date.from_days[i].value;
		url += "i:1::f:" + days;
	}
	if(document.getElementById('edit_mce'))
		url += "::e:1";
       if(document.getElementById('product_id'))
		url += "::p:" + $("#product_id").val();

	if(document.getElementById('img_list')) {
		$("#img_list").load(url,"",rpreview);
	}
}



function from_days_func(url)
{

	i = document.show_images_by_date.from_days.selectedIndex;
	days = document.show_images_by_date.from_days[i].value;
	addon = "";
	if(document.getElementById('edit_mce')) addon = "::e:1";
	if(document.upload_form) {
		document.upload_form.arg.value = "i:1::f:" + days + addon;
	}
	if(document.getElementById('img_list')) {
		$("#img_list").load(url + "i:1::f:" + days + addon,"",rpreview);
	}
}

// this is article view
// not sure it belongs here but bla bla
function view_article(url,id,hash)
{
	hash = Math.random();
	$("#article_view").load(url + "articles/view/index/" + id + "/1/" + hash);
}

function reditor(a,b,c)
{

	tinyMCE.init({
			// General options
mode : "exact",
elements: "edit_mce",
theme : "advanced",
plugins : "safari,spellchecker,pagebreak,style,layer,table,save,advhr,advimage,advlink,emotions,iespell,inlinepopups,insertdatetime,preview,media,searchreplace,print,contextmenu,paste,directionality,fullscreen,noneditable,visualchars,nonbreaking",
// Theme options
relative_urls: false,
//elements: 'nourlconvert',
remove_script_host : false,
theme_advanced_buttons1 : "bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,|,styleselect,formatselect,fontselect,fontsizeselect",
theme_advanced_buttons2 : "cut,copy,paste,pastetext,pasteword,|,search,replace,|,bullist,numlist,|,outdent,indent,blockquote,|,undo,redo,|,link,unlink,anchor,image,cleanup,help,code,|,insertdate,inserttime,preview,|,forecolor,backcolor",
theme_advanced_buttons3 : "tablecontrols,|,hr,removeformat,visualaid,|,sub,sup,|,charmap,emotions,iespell,media,advhr,|,print,|,ltr,rtl,|,fullscreen",
theme_advanced_buttons4 : "insertlayer,moveforward,movebackward,absolute,|,styleprops,spellchecker,|,cite,abbr,acronym,del,ins,attribs,|,visualchars,nonbreaking,template,blockquote,pagebreak,|,insertfile,insertimage",
theme_advanced_toolbar_location : "top",
theme_advanced_toolbar_align : "left",
theme_advanced_statusbar_location : "bottom",
theme_advanced_resizing : true

// Example content CSS (should be your site CSS)
// Drop lists for link/image/media/template dialogs
// Replace values for the template plugin
	});



	$("input[type=file].multi").MultiFile();
	imagePreview();
}
var SAVED_HTML;

function edit_article(url,id,hash)
{
	SAVED_HTML = $("#article_edit").html();
	hash = Math.random();
	$("#article_edit").load(url + "articles/view/edit/" + id + "/" + hash,'',reditor);

}

function new_article(url,id,hash)
{
	SAVED_HTML = $("#article_edit").html();
	hash = Math.random();
	$("#article_edit").load(url + "articles/view/add/"  + hash,'',reditor);
}


//////////////////////////////////////////////////////////////////
//comments stuff
function delComment(id,url)
{
	confirmed = window.confirm("Delete the comment?");
	if(!confirmed) return;
	if(document.getElementById('comm')) {
		$("#comments").load(url+id);
	}
}


function preview_article()
{
	document.forms.article_form.preview.value = 1;
	document.forms.article_form.target="_blank";
	document.forms.article_form.submit();
}
var ggo_there;
function save_done(a,b,c) 
{
	window.location = ggo_there;
}

function save_article(go_there)
{
	document.forms.article_form.preview.value = 0;
	ggo_there = go_there;
	document.forms.article_form.target= "save_output";
	if($("#article_form").length != 0 ) {
		tinyMCE.triggerSave();
		tinyMCE.execCommand( 'mceRemoveControl', true, 'ModelField');
		url = $("#article_form").attr('action');
		data = $("#article_form").serialize();
		jQuery.post(url,data,save_done) ;
	}
	//document.forms.article_form.submit();
	//alert("am salvat");
	//window.location = go_there;
}

function close_article(go_there) 
{
	if (tinyMCE.activeEditor.isDirty())
		if(!confirm("There is unsaved data in the editor.\nClose anyway ?.")) return false;
	if(document.forms.article_form.isnew.value == "1") {
		if(!confirm("Do you want to keep this article")) {
			document.forms.article_form.isnew.value = "100";

			document.forms.article_form.preview.value = 0;
			document.forms.article_form.target= "save_output";
			document.forms.article_form.submit();
			window.location = go_there;
			return false;
		}
	}
	window.location = go_there;
}

function edit_user_text(url) 
{

	user_id = $("#user_id").val();
	SAVED_HTML = $("#user_text_edit").html();
	ret = "/cpanel/index/users/" + Math.random();
	$("#user_text_edit").load(url + "cpanel/index/user_page/" + user_id + "/" + Math.random() + ret,reditor);
}


function edit_user_co_text(url)
{

	user_id = $("#user_id").val();
	SAVED_HTML = $("#user_text_edit").html();
	ret = "/cpanel/index/users/" + Math.random();
	$("#user_text_edit").load(url + "cpanel/index/user_co_page/" + user_id + "/" + Math.random() + ret,reditor);
//alert(url + "cpanel/index/user_co_page/" + user_id + "/" + Math.random() + ret,reditor);
}



function close_user_text(url)
{
	$("#user_text_edit").html(SAVED_HTML);
}

function preview_user_text()
{
	document.forms.article_form.preview.value = 1;
	document.forms.article_form.target="_blank";
	document.forms.article_form.submit();
}

function save_user_done(a,b,c)
{
	close_user_text("aaa");
}

function save_user_text(go_there)
{
	document.forms.article_form.preview.value = 0;
	ggo_there = go_there;
	document.forms.article_form.target= "save_output";
	if($("#article_form").length != 0 ) {
		tinyMCE.triggerSave();
		tinyMCE.execCommand( 'mceRemoveControl', true, 'ModelField');
		url = $("#article_form").attr('action');
		data = $("#article_form").serialize();
		jQuery.post(url,data,save_user_done) ;
	}
}
function save_user_co_text(go_there)
{
	document.forms.article_form.preview.value = 0;
	ggo_there = go_there;
	document.forms.article_form.target= "save_output";
	if($("#article_form").length != 0 ) {
		tinyMCE.triggerSave();
		tinyMCE.execCommand( 'mceRemoveControl', true, 'ModelField');
		url = $("#article_form").attr('action');
		data = $("#article_form").serialize();
		jQuery.post(url,data,save_user_done) ;
	}
}

function killSimpleUpload(url) 
{
	$('#simple_upload').remove();
	window.location = url;
}

function killCSP() 
{
	$('#category_sponsor').remove();
}


function xlogin(e,url )
{
	var evt = e || window.event;
	pageX = evt.clientX;
	pageY =  evt.clientY;
	$("body").append("<div id='simple_login'></div>");
	$("#simple_login")
		.css("top",(pageY - 10) + "px")
		.css("left",(pageX - 250) + "px")
		.fadeIn("fast");

	$("#simple_login").load(url);
}

function do_login()
{
	if($("input[name='email']").val() == "" || $("input[name='password']").val() == "") {
		$("#login_message").html("<b>Email and password are required</b>");
               return;
	}
	document.forms.login.submit();

}

function forgot_password(url)
{

	var emailRegEx = /^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$/i;
	ema =  $("input[name$='email']").val();

	if(ema.search(emailRegEx)  == -1 ) {
		$("#login_message").html("<b>Type in your VALID email first ... </b>");
		return;
	}

	var ne = "";
	for(i=0;i<ema.length;i++) {
		ne += ema.charCodeAt(i).toString(16);
	}
	$("#login_message").load(url + "cpanel/newuser/fp/" + ne + "/" + Math.random());
}

function category_sponsor(e) {
	var evt = e || window.event;
	pageX = evt.clientX;
	pageY =  evt.clientY;
	url = $("#base_url").val();
	category_id = $("#category_id").val();	
	$("body").append("<div id='category_sponsor'></div>");
	$("#category_sponsor")
		.css("top",(pageY - 10) + "px")
		.css("left",(pageX - 10) + "px")
		.fadeIn("fast");
	url += "cpanel/index/csponsor";
	$("#category_sponsor").load(url + "/" + category_id + "/" + Math.random());
}

function mk_modal_frame(id) {
	var div = "<div id='modal_" + 
		id + "'>\n" + 
		"<div id='mask'></div>\n" +
		"<div id='" + id + "'>" + 
		"</div>\n</div>\n";
	return div;
}

function set_mask_attr() {
	var maskHeight = $(document).height();  
	var maskWidth = $(window).width();  

	//Set height and width to mask to fill up the whole screen  
	$('#mask').css({'width':maskWidth,'height':maskHeight});  

	//transition effect       
	$('#mask').fadeTo("fast",0.3);    

	//Get the window height and width  
	var winH = $(window).height();  
	var winW = $(window).width();  
}

function biz_categ(e,user_id,url)
{
	var evt = e || window.event;
	if(url == '')
		url = $("#base_url").val();
	if(user_id == 0)
		user_id = $("#user_id").val();
	url += "cpanel/index/ebiz";
	pageX = evt.clientX;
	pageY =  evt.clientY;
	$("body").append(mk_modal_frame('u2b_container'));
	$("#u2b_container")
		.css("top",(10) + "px")
		.css("left",(10) + "px")
		.fadeIn("fast");

	set_mask_attr();

	$(document).keyup(function(e) {
			if (e.keyCode == 27) { 
			$("#modal_u2b_container").remove();
			}                
			});                                                                               
	$("#u2b_container").load(url + "/" + user_id + "/" + "internal" + Math.random(),biz_loaded);
}

function biz_loaded(a,b,c)
{
	if($("#biz_var").val() == "none") return;
	$(".cb_biz").attr("checked",false);
	var sir = $("#biz_var").val().split(",");	
	for(var i=0;i<sir.length;i++) {
		$("#biz_" + sir[i]).attr("checked",true);
	}
}

function showHideBiz(row)
{
	del=400;
	n = 0;
	$('#visible_biz_row').val(row);
	for(i=0;i<400;i++) {
		if(i >= row*3 && i < row * 3 + 3) continue; 
		zid = "#slist_" + i;
		if($(zid).length)  
			if($(zid).css('display') != 'none') {
				$(zid).slideToggle(400);
				//   $(zid).css('display','none');
				n++;
			}
		if(n==4) break; 
	}
	for(i=row * 3;i < row * 3 + 3;i++) {
		zid = "#slist_" + i;
		if($(zid).length)  
			if($(zid).css('display') == 'none') {
				$(zid).slideToggle(del);
				//    $(zid).css('display','block');
			}
			else  {
				$(zid).slideToggle(del);
				//  $(zid).css('display','none');
			}
		del-=20;
	}
}

function bizClick(biz_id,categ,biz_name) 
{
	var b =$('.cb_biz:checked');
	var i;
	var th="";
	var comma="";
	for (i=0;i<b.length;i++) {
		th += comma+$(b[i]).attr("id").replace("biz_","");
		comma=","
			// th +=i;
	}
	$("#biz_var").val(th);
	//alert(th);
}
/////////////////////////////////////////////
// products
function add_product(base_url)
{
var url = base_url + "cpanel/index/add_product/" + Math.random();
var dlg = "";
dlg = getWhatever(url);
if(dlg == "") {
 alert("Error loading interface");
 return;
 }
add_product_boxy = new Boxy(dlg,
       {
//	afterHide:function() {add_product_boxy.unload();},
        afterShow:function() {
         var self=this;

         // internet explorer does not honor onclick
         var bbb = $("#product_save").attr("onclick");
	 var ccc = new Function('',bbb);
         $("#product_save").bind('click',ccc);

         var bbbb = $("#product_cancel").attr("onclick");
	 var cccc = new Function('',bbbb);
         $("#product_cancel").bind('click',cccc);

         $("#product_name").focus();
	 $("#product_price").numeric();
	$("#product_price").val(0);
	 $('#product_image').MultiFile({
		afterFileRemove: function(element, value, master_element){
		del_def_file(value);                                       
		},
		afterFileAppend: function(element, value, master_element){
		add_def_file(value);
		}}); 

         },
        modal: true});
}
function add_def_file(value)
{
  $("#R_def_image").show();
 var l = $("#def_image").children().length;
 var v = value.replace(/\\/g,"/");
 $("#def_image").append("<option v='" + v + "' value='" + l + "'>" + value + "</option>");
}
function del_def_file(value)
{
value = value.replace(/\\/g,"/");
$("#def_image option[v='"+value+"']").remove();
var l = $("#def_image").children().length;
if(!l) $("#R_def_image").hide();
}
function add_product_submit()
{
if($("#product_name").val().length < 6) {
 alert("Product name is too short.");
 return false;
 }
if($("#product_price").val().length < 1 || $("#product_price").val() == 0) {
 alert("Product price is 0 or null.");
 return false;
 }
$("#add_product").submit();
}

function edit_product_submit()
{
if($("#product_name").val().length < 6) {
 alert("Product name is too short.");
 return false;
 }
if($("#product_price").val().length < 1 || $("#product_price").val() == 0) {
 alert("Product price is 0 or null.");
 return false;
 }
$("#edit_product").submit();
}

function del_product(url,id)
{
var dur = url + "cpanel/index/del_product/" + id + "/" + Math.random();
 confirmed = window.confirm("Delete the product ?");
 if(!confirmed) return;
window.location = dur;
//alert(dur);
}

function edit_product(base_url,id)
{
var url = base_url + "cpanel/index/edit_product/" +id + "/" + Math.random();
var dlg = "";
dlg = getWhatever(url);
if(dlg == "") {
 alert("Error loading interface");
 return;
 }
edit_product_boxy = new Boxy(dlg,
       {
//	afterHide:function() {edit_product_boxy.unload();},
        afterShow:function() {
         var self=this;
         // internet explorer does not honor onclick
         var bbb = $("#product_save").attr("onclick");
	 var ccc = new Function('',bbb);
         $("#product_save").bind('click',ccc);

         var bbbb = $("#product_cancel").attr("onclick");
	 var cccc = new Function('',bbbb);
         $("#product_cancel").bind('click',cccc);

         $("#product_name").focus();
	 $("#product_price").numeric();
	 $('#fupfup').MultiFile();
         imagePreview();

         },
        modal: true});
}
function jqalert(message,jeg)
{
var ww = 'auto';
//if(isIE6) ww = 350;
if(! $("#jqalert").length) {
 $("body").append("<div title='GLM' id='jqalert'></div>");
 }
$("#jqalert").html(message);
$("#jqalert").dialog({height:'auto',width:ww,modal:true,buttons: {"Ok": function() {if(jeg) eval(jeg);$(this).dialog("close");}}});
}


function get_ul_link()
{
if($("#uploadTitle").val().length < 4) {
 $("#video-msg").text("Please add a longer video title");
 return false;
 }
if($("#uploadFile").val().search(/\.avi$|\.mov$|\.flv$|\.mp4$|\.wmv$|\.mpg$/i) ==  -1) {
 $("#video-msg").text("Please add a valid video file (.mpg | .mp4 | .mov | .flv | .avi)");
 return false;
 }
var url = $("#base_url").val() + "cpanel/index/vlink";
var t= "t=" +  $("#uploadTitle").val() + "&tt=" + $("#uploadDesc").val();
 data = encodeURI(t);
 jQuery.post(url,data,function(msg,code,obj) {

var cd=msg.split("|");
if(cd[0] == "0") {
 var hisurl = cd[1];
 var token = hisurl.replace(/.*&token=/,"");
 $("#uploadToken").val(token);
 $("#uploadForm").attr("action",hisurl);
 $("#uploadForm").submit();
 } else {
  var error = cd[1];
  jqalert(error);
  }
});
}

function load_video(key)
{

var title = $("img[key='" + key + "']").attr("title"); 
var desc = $("div[key='" + key + "']").html();
if($("#cur_key").length) {
 $("#img-title").val(title);
 $("#image_desc").val(desc);
 $("#cur_key").val(key);
 $("#pvdesc").html(desc);
 } else {
$("#img-title").text(title); 
}
var video = 'http://content.bitsontherun.com/videos/' + key + ".mp4";
var image = 'http://content.bitsontherun.com/thumbs/' + key + "-480.jpg";
var o = [{title:title, image:image, file:video}];
jwplayer().load(o);
$("#galleria-v h2").html(title);
}

function delete_video()
{
var url=$("#base_url").val() + "cpanel/index/delete_video/" + $("#cur_key").val() + "/" + Math.random();
if(confirm("Delete video " + $("#img-title").val())) {
  sget(url);
  location.reload(true); 
  }
}

function save_vorder()
{
var cons = $(".vthmb");
var p="";
for(var i=0;i<cons.length;i++) {
 if(p.length) p += ";";
 p +=  $(cons[i]).attr("key") ;
 }
$("#the_order").val(p);
var data = $("#sort_order").serialize();
var url = $("#base_url").val() + "cpanel/index/save_vorder";
$("#jaful").addClass("op2");
 $("#ssort").hide();  
$("body").css("cursor","wait");
jQuery.post(url,data,function(msg,code,obj) {
$("body").css("cursor","default");
$("#jaful").removeClass("op2");

 });
}

function sget(strUrl)
{
    var strReturn = "";

    jQuery.ajax({
        url:strUrl ,
        success:function(html){
            strReturn = html;
        },
        error:function(jqxhr) {
            alert("Failed to load " + strUrl +'\n' + jqxhr.responseText);
        },
        async:false
    });
    return strReturn;
}
function aget(strUrl)
{
    var strReturn = "";

    jQuery.ajax({
        url:strUrl ,
        success:function(html){
            strReturn = html;
        },
        error:function(strUrl) {
            alert("Failed to load " + strUrl);
        },
        async:true
    });
    return strReturn;
}

