
var tips=["suggestions should end up being at least vaguely reminiscent of the key words you suggest","95% may make no sense at all, but a rare few will be really good.","this thing will only suggest names it thinks are currently freely available","this thing was trained on a database of business names, so they may work better",]
function cycle_quote(){var chosen_tip;var target=$('#tip');if($.trim($('#tip').html())==""){chosen_tip='<em>tip:</em> '+tips[0];target.html(chosen_tip);return;}else{var randkey=Math.floor(Math.random()*tips.length);chosen_tip='tip: '+tips[randkey];}
target.animate({'opacity':0},function(){target.html(chosen_tip).animate({'opacity':1});});}
function save_me(e){e.preventDefault();var found=false;var links=$('#cart > div > a.save_link');for(var i=0;i<links.length;i++){if(links.eq(i).data('name')==$(this).data('name')){found=true;break;}}
if(found){return;}
var clone=$(this).parent().clone();clone.hide();clone.appendTo('#cart').children('a.save_link').unbind('click').click(function(e){e.preventDefault();});if($(this).data('key')){clone.children('a.save_link').data('key',$(this).data('key'))}
if($(this).data('name')){clone.children('a.save_link').data('name',$(this).data('name'))}
clone.show(300);$(this).parent().addClass('added');$('#cart textarea').get()[0].value+=$(this).data()['name']+"\n";if($(this).data('key')){$.post('/click',{'key':$(this).data()['key'],'name':$(this).data()['name']});if(mpmetrics!==undefined){mpmetrics.track("clicked");}
if(_gaq!==undefined){_gaq.push(['_trackEvent','actions','clicked_name']);}}
check_cart();return false;}
function check_cart(){if($('#cart > div.suggestion').length==0){$('#cart_area').addClass('isempty');}else{$('#cart_area').removeClass('isempty');}}
function textarea_click_handler(){var lines=$(this).val().split("\n")
var links=$('#cart > div > a.save_link').get();for(var j=0;j<links.length;j++){var found=false;for(var i=0;i<lines.length;i++){if($(links[j]).data()['name']==lines[i]){found=true;break;}}
if(!found){var name=$(links[j]).data()['name'];$(links[j]).parent().remove();var other_links=$('#suggestions > div > a.save_link').get();for(var k=0;k<other_links.length;k++){if($(other_links[k]).data()['name']==name){$(other_links[k]).parent().removeClass('added');}}}}
check_cart();}
function content_area_empty(){return($.trim($('#content_area').val())=="");}
function content_area_value(){return $.trim($('#content_area').val());}
function content_area_value_normalized(){return $.trim($('#content_area').val()).toLowerCase();}
function make_a_name(name,key,avail,attach_to){var el=$(document.createElement('div')).addClass('suggestion');var label=$(document.createElement('span')).addClass('label');if(avail){el.addClass('available');var link=$(document.createElement('a')).attr('class','save_link').attr('href','#').html(name).click(save_me);if(key){link.data('key',key);}
if(name){link.data('name',name);}
el.append(link);var goal_url='/register?name='+name+'&key='+key;var register=$(document.createElement('a')).attr('href',goal_url).attr('class','register_link').html('<nobr>register \u00BB</nobr>').click(function(){try{if(_gaq!==undefined){_gaq.push(['_trackEvent','actions','registered']);_gaq.push(['_trackPageView','/virtual/register']);}
window.setTimeout(function(){document.location=goal_url;},100);return false;}catch(e){return true;}});el.append(register);label.html('available');}else{label.html('not available');}
el.append(label).appendTo(attach_to);}
$(document).ready(function(){$('#suggest_form').submit(function(){if(content_area_empty()){return false;}
var defaultval=$('#content_area')[0].defaultValue;var actualval=$('#content_area').val();if(defaultval!=''&&actualval!=defaultval&&document.location.pathname!='/'){createCookie('newcontent',escape(actualval));document.location.href='/';return false;}
var this_form=this;$.ajax({url:'/suggest',data:$(this).serialize(),type:'POST',dataType:'json',beforeSend:function(xhr){$('#suggestions').hide();$('#calling > div').hide();$('#calling').show();$('#calling #progress').show();$('#submit_btn').attr('disabled','disabled');cycle_quote();},error:function(xhr,status,errMsg){if(xhr.status==401){activate_recaptcha(this_form);}else{$('#calling #progress').hide();$('#calling #err').show();$('#submit_btn').removeAttr('disabled');if(mpmetrics!==undefined){mpmetrics.track("search error2");}}},success:function(data){if(data['status']=='ok'){$('#about_txt').hide();$('#calling').hide();$('#suggestions').empty();for(var i=0;i<data['names'].length;i++){make_a_name(data['names'][i]+'.com',data['key'],true,$('#suggestions'));}
$('#suggestions').show();}else{console.log('err');if(mpmetrics!==undefined){mpmetrics.track("search error1");}}
$('#submit_btn').removeAttr('disabled').val('Try again');$('#retweet_btn').data('key',data['key']);}});if(mpmetrics!==undefined){var word_count=content_area_value().split(' ').length;mpmetrics.track("searched names",{'word_count':word_count});}
if(_gaq!==undefined){_gaq.push(['_trackEvent','actions','searched']);}
return false;});$('#textify').click(function(){var newval='';$('#cart textarea').val('');$('#cart > div.suggestion > a.save_link').each(function(){newval+=$(this).html()+"\n";});$('#cart textarea').val(newval);$('#cart').toggleClass('textified');if($('#cart').hasClass('textified')){$('#textify').val('list version');}else{$('#textify').val('text version');}
if(mpmetrics!==undefined){mpmetrics.track("clicked textify");}
if(_gaq!==undefined){_gaq.push(['_trackEvent','actions','textified']);}});$('#cart textarea').change(textarea_click_handler);function content_area_change(){var enableable=$('#submit_btn, #retweet_btn, #permalink_btn, #kwtools');if(!content_area_empty()){enableable.removeAttr('disabled');}else{enableable.attr('disabled','disabled');}
$('#submit_btn').val('submit');check_permalink();}
$('#content_area').change(content_area_change).keypress(content_area_change);content_area_change();function do_retweet(){$.post('/tweet',{'sskey':$(this).data('key')});function callback(permalink){var tweet="checking out domain keywords: "+content_area_value()+" "+permalink;window.setTimeout(function(){var href='http://twitter.com/share?url='+escape(permalink)+'&text='+escape("checking out domain keywords: "+content_area_value())+'"';document.location=href;},50);}
get_permalink(callback);if(mpmetrics!==undefined){mpmetrics.track("clicked retweet");}
if(_gaq!==undefined){_gaq.push(['_trackEvent','actions','retweeted']);}}
$('#retweet_btn').click(do_retweet);var permalink_cache=null;function check_permalink(){var input=content_area_value_normalized()
if(permalink_cache!=null&&permalink_cache[0]!=input){$('#permalink_btn').show();$('#permalink_txt').val('');$('#permalink_shown').hide();}}
function permalink_from_short_code(code){return'http://'+site_addr+'/-'+code;}
function get_permalink(callback){if(content_area_empty()){return;}
function handle_new_permalink(url){$('#permalink_btn').hide();$('#permalink_shown').css('display','inline');$('#permalink_txt').val(url).select();}
var input=content_area_value_normalized()
if(permalink_cache!=null&&permalink_cache[0]==input){var url=permalink_from_short_code(permalink_cache[1]);handle_new_permalink(url);if(callback!=undefined&&typeof callback=="function"){callback(url);}
return url;}else{$.post('/permalink','words='+escape(input),function(data){var url=permalink_from_short_code(data['shortcode']);permalink_cache=[input,data['shortcode']];handle_new_permalink(url);if(callback!=undefined&&typeof callback=="function"){callback(url);}},'json');}}
$('#permalink_btn').click(function(){get_permalink();if(mpmetrics!==undefined){mpmetrics.track("got a permalink");}
if(_gaq!==undefined){_gaq.push(['_trackEvent','actions','permalinked']);}});function recall_permalink(permalink){console.log("fetching "+permalink);$('#content_area').attr('readonly','readonly').val('');$('#submit_btn').attr('disabled','disabled');$.getJSON('/permalink',{'code':permalink},function(data){$('#content_area').removeAttr('readonly');$('#submit_btn').removeAttr('disabled');if(data){$('#content_area').val(data['words']);content_area_change();$('#suggest_form').submit();}
window.location.hash='';});}
function check_hash(){if(window.location.hash&&window.location.hash.match(/^\#[0-9a-zA-Z]+$/)){recall_permalink(window.location.hash.substring(1));}}
$('#lookup_form').submit(function(){if(!$.trim($(this.q).val())){return false;}
$('#lookup_progress').show();$('#lookup_form input[type=submit]').attr('disabled','disabled');$.post('/lookup',$(this).serialize(),function(data){if(!data){$('#lookup_result').html('error');}else{$('#lookup_result').empty();console.log(data);console.log(data['name']);make_a_name(data['name'],null,data['available'],$('#lookup_result'));}
$('#lookup_progress').hide();$('#lookup_form input[type=submit]').removeAttr('disabled');},'json');if(mpmetrics!==undefined){mpmetrics.track("did a lookup");}
if(_gaq!==undefined){_gaq.push(['_trackEvent','actions','lookup']);}
return false;});$('#helpful_links a:link').click(function(ev){if(mpmetrics!==undefined){mpmetrics.track("ad click");}
if(_gaq!==undefined){_gaq.push(['_trackEvent','actions','ad click']);}
if($(this).attr('href')){var href=$(this).attr('href');window.setTimeout(function(){document.location=href;},100);return false;}else{return true;}});$('#about_link').click(function(){var body_offset=$('body').offset();var body_height=$('body').height();var desired_offset=80;var final_offset=body_offset.top+body_height-desired_offset;$('#about_txt').css('top',final_offset+'px');$('#about_txt').slideToggle();return false;});if(document.location.pathname=='/'){var oldcookie=readCookie('newcontent');if(oldcookie){$('#content_area').val(unescape(oldcookie));$('#suggest_form').submit();eraseCookie('newcontent');content_area_change();}}
check_hash();check_cart();cycle_quote();});function activate_recaptcha(replay_request){Recaptcha.create(rc_key,"rc_placeholder",{theme:"red",callback:function(){$('#rc_space').offset($(replay_request).offset());$('#overscreen').fadeIn();Recaptcha.focus_response_field();$('#rc_space form').submit(function(){$.ajax({url:'/recaptcha',data:{'recaptcha_challenge':Recaptcha.get_challenge(),'recaptcha_response':Recaptcha.get_response()},type:'POST',dataType:'json',error:function(xhr){$("#rc_status").html("error");Recaptcha.reload();if(mpmetrics!==undefined){mpmetrics.track("recaptcha fail");}
if(_gaq!==undefined){_gaq.push(['_trackEvent','recaptcha','fail']);}},success:function(){$('input[type=hidden][name=recaptcha_challenge]').val(Recaptcha.get_challenge());$('input[type=hidden][name=recaptcha_response]').val(Recaptcha.get_response());$('#overscreen').fadeOut();$(replay_request).submit();Recaptcha.destroy();if(mpmetrics!==undefined){mpmetrics.track("recaptcha success");}
if(_gaq!==undefined){_gaq.push(['_trackEvent','recaptcha','ok']);}}});return false;});}});if(mpmetrics!==undefined){mpmetrics.track("shown recaptcha");}
if(_gaq!==undefined){_gaq.push(['_trackEvent','recaptcha','shown']);}}
function createCookie(name,value,days){if(days){var date=new Date();date.setTime(date.getTime()+(days*24*60*60*1000));var expires="; expires="+date.toGMTString();}
else var expires="";document.cookie=name+"="+value+expires+"; path=/";}
function readCookie(name){var nameEQ=name+"=";var ca=document.cookie.split(';');for(var i=0;i<ca.length;i++){var c=ca[i];while(c.charAt(0)==' ')c=c.substring(1,c.length);if(c.indexOf(nameEQ)==0)return c.substring(nameEQ.length,c.length);}
return null;}
function eraseCookie(name){createCookie(name,"",-1);}
