/*
 * Modo Javascript Library
 *
**/

// session vars
var grp_viewed = 0;
var tag_viewed = 0;
var clr = '';

var doc_viewer = 'DOC_ID';
var doc_viewer_orig = 'ORIGINAL_DOC';
 
// env vars
var newest_post = 0;
var fls = false;
var palette = 0;
var tag_box = 0;
var usr = 0;
var usr_nm = '';
var tmp_pst_lst_li = '';
var search_mode = false;
var more_posts = 1;
var	live_post_updates = 0;
var pst_poll_added = 0;
var rip_active = 0;

// send to vars
var tmp_sendto_in = '';
var sendto_sel = 0;

var add_event = false; // ?

// reply vars
var reply_mode = 1;

// constants
var EDMODO_BLUE = '#3265B0';

$().click(function (e) {
  more_doc_click(e);
  if ($('#sendto').length > 0) {
    sendto_doc_click(e);
  }
	if ($('#clr_plt').length > 0) {
	  clr_plt_switch();
	}
	if ($('#tag_box').length > 0) {
    tag_box_switch();
	}
});


function load_home(grp, tag) {

	$().click(function (e) {
	    if (typeof(window['new_post_int']) != "undefined") {
	      clearInterval(new_post_int);
	      document.title = 'Edmodo - Home';
	    }	
	    if (typeof(window['new_reply_int']) != "undefined") {
	      clearInterval(new_reply_int);
	      document.title = 'Edmodo - Home';
	    }		    
	});

    grp_viewed = grp;
  	if (window.grp_viewed === undefined) {
  	    grp_viewed = 0;
  	}
  	
    tag_viewed = tag;
  	if (window.tag_viewed === undefined) {
  	    tag_viewed = 0;
  	}  	
  	
  	live_post_updates = 0;
  	
	$('#pst_frm textarea').autogrow();  	
  	
	/* posts panel */
	var shw = $('#pst_fltrs_typs').val();
					
	/* alert 140 character counter */
	setMaxLength();
	
	/* applesearch */
	if ($('#applesearch').length > 0) {
	  $("#applesearch").keypress(function (e) {
  	    if (e.which == 13) pst_pnl_load_search(); 
	  });	
	}
	
    $('.post').hover(function(){$('#' + $(this).attr('id') + ' .popout_btn').css('display', 'inline')},
					 function(){$('#' + $(this).attr('id') + ' .popout_btn').css('display', 'none')});	
	
	/* send to */
	if ($('#sendto_in').length > 0) {	
		$("#sendto_in").keydown(function(event){
		  tmp_sendto_in = $('#sendto_in').val();  
      if (event.keyCode == 9 && $('#sendto_in').val() == '') {
		    $('#pst_send').focus();
		    hide_sendto();
		    return false;
		  } else if ((event.keyCode == 9 || event.keyCode == 13)) {
		    if ($('#st_i_' + sendto_sel).val()) {
		      var tmp = $('#st_i_' + sendto_sel).val();
		      var ars = tmp.split("_");
		      add_sendto(ars[0], ars[1], ars[2]);  
		      return false;   							    
		    }
		  }
		});
		$("#sendto_in").keyup(function(event){
		  sendto_key(event.keyCode);			
		});	
	}			
	set_upid()
	setInterval("live_post_update()", 30000);		
	setInterval("live_reply_update()", 40000);		
	setTimeout("msg_hider()", 5000);		  
}
function msg_hider() {
  if ($('#s_msg').length > 0) {
    $('#s_msg').fadeOut('slow');
  }
  if ($('#e_msg').length > 0) {
    $('#e_msg').fadeOut('slow');
  }
}
function live_post_update() {
  $.get('/method/live_post_update.php', {random: Math.floor(Math.random()*99999)}, function(rsp) {
    if (rsp != 0) {
    	var btm = '';
    	if (live_post_updates > 0) {
    		btm = 'margin-bottom:15px;';
    	}
		$('#psts_pnl_wrp').prepend('<div style="display:none;'+btm+'" class="live_post_update" id="live_post_update_' + live_post_updates + '">'+rsp+'</div>');
		if (BrowserDetect.browser == 'Safari') {
    		$('#live_post_update_' + live_post_updates).css('display','block');		
		} else {
    		$('#live_post_update_' + live_post_updates).slideDown('slow');		
		}
	    $('#live_post_update_' + live_post_updates + ' .post').hover(function(){$('#' + $(this).attr('id') + ' .popout_btn').css('display', 'inline');}, function(){$('#' + $(this).attr('id') + ' .popout_btn').css('display', 'none');});
    	tb_init('#live_post_update_' + live_post_updates + ' a.thickbox'); //pass where to apply thickbox		
		live_post_updates++;
    }
  });
}
function live_reply_update() {
  $.get('/method/live_reply_update.php', {random: Math.floor(Math.random()*99999)}, function(rsp) {
    if (rsp != 0) {
		$('#psts_pnl_wrp').append(rsp);
    }
  });
}
function reset_filters() {
  $("#pst_fltrs_typs").selectOptions("0");
}

// post type
function set_pst_typ(typ) {
  $('#post_type').val(typ);
  more_hide();
  var show_tab = '';
  $('#pst_typ td a').removeClass('ctyp');
  if (typ == 'msg' || typ == 'lnk' || typ == 'fl') {
    $('#' + typ + '_typ a').addClass('ctyp');
    $('#more_typ').html('');
    switch (typ) {
      case 'msg':
        show_tab = "pst_bbl_message"; 
      break;
      case 'lnk':
        show_tab = "pst_bbl_link"; 
      break;
      case 'fl':
        show_tab = "pst_bbl_file"; 
      break;
    }    
  } else {
    var txt = '';
    var img = '';
    switch (typ) {
      case 'alrt':
        txt = "alert"; 
        img = "alrt"; 
        show_tab = "pst_bbl_alert"; 
      break;
      case 'assgnmnt':
        txt = "assignment"; 
        img = "hw";         
        show_tab = "pst_bbl_assignment"; 
      break;
      case 'evnt':
        txt = "event"; 
        img = "evnt";         
        show_tab = "pst_bbl_event"; 
      break;
      case 'pll':
        txt = "poll"; 
        img = "poll";         
        show_tab = "pst_bbl_poll"; 
      break;            
      case 'chlk':
        txt = "chalk"; 
        img = "chalk";         
        show_tab = "pst_bbl_chalk"; 
      break;            
    }
    $('#more_typ').html("<a href=\"javascript:;\" class=\"ctyp\"><img src=\"http://media.edmodo.com/2/img/"+img+".png\" />" + txt + "</a>");      
  }
  $('#pst_bbl_tabs div').css('display', 'none');
  $('#' + show_tab).css('display', 'block');  
  if (typ == 'evnt') {
	Date.firstDayOfWeek = 7;
	Date.format = 'mm/dd/yyyy';  
    $('#pst_evnt_date').datePicker({startDate:'01/01/1996'}).val(new Date().asString()).trigger('change');
  } else if (typ == 'assgnmnt') {
	Date.firstDayOfWeek = 7;
	Date.format = 'mm/dd/yyyy';  
    $('#pst_assgnmnt_due_date').datePicker({startDate:'01/01/1996'}).val(new Date().asString()).trigger('change');
    $('#pst_assgnmnt_pth_wrap').css('display', 'block');  
    $('#pst_assgnmnt_pth_wrap_labels div').css('display', 'block');      
  } else if (typ == 'fl') {
    $('#pst_fl_pth_wrap').css('display', 'block');  
    $('#pst_fl_pth_wrap_labels div').css('display', 'block');  
  }
}

// more menu
function more_switch() {
  if ($('#more_menu').css('display') == 'none') {
    init_more_menu();  
    setTimeout('$(\'#more_menu\').css({\'display\':\'block\'});', 100);
  } else {
    more_hide();
  }
}
function more_hide() {
  if ($('#more_menu').length > 0)
    $('#more_menu').css('display','none');
}
function init_more_menu() {
  if ($('#more_menu').length > 0) {
    var pos = $('#pst_typ').position();
    $('#more_menu').css('position', 'absolute');
    $('#more_menu').css('left', (pos.left + 487) + 'px');
    $('#more_menu').css('top', (pos.top + 27) + 'px');
  }
}
function more_doc_click(e) {
  if ($(e.target).attr('id') != 'more_menu')
    more_hide();
}

// tag add/remove/box functions (post interactions)
function load_tags(pst_id, grp_id) {
  if (tag_box) {
    tag_box_switch();
  } else {
    var url = '/method/render_tag_box.php';
	  $.get(url, {p: pst_id, g: grp_id, random: Math.floor(Math.random()*99999)},function(rsp) {show_tags(pst_id);$('#tag_wrp').html(rsp)});
  }
}
function show_tags(pst_id) {
  var pos = $('#tags_a_' + pst_id).position();
  $('#tag_wrp').css('position', 'absolute');
  $('#tag_wrp').css('left', pos.left);
  if(BrowserDetect.browser == 'Firefox') {
    $('#tag_wrp').css('top', pos.top + 14);  
  } else {  
    $('#tag_wrp').css('top', pos.top + 13);
  }
  $('#tag_wrp').css('display', 'block');
  tag_box = 1;
}
function tag(pst_id, tag_id, tag_txt) {
  var url = '/method/tag.php';
  $.get(url, {p: pst_id, tag: tag_id}, function(rsp) {tag_list_add(pst_id, tag_id, tag_txt);});    
}
function add_tag(pid) {
  tb_show('New Tag', "/method/new_tag_box.php?post=" + pid + "&TB_iframe=true&height=45&width=390", false);  
}
function edit_tag(tid) {
  tb_show('Edit Tag', "/tags/edit.php?t=" + tid + "&TB_iframe=true&height=45&width=390", false);  
}
function refresh_tags() {
  var url = '/method/render_user_tags.php';
  $.get(url, {}, function(rsp) {$('#sb_tags').html(rsp)});
}
function new_tag(pst_id, new_tag) {
  var url = '/method/new_tag.php';
  $.get(url, {p: pst_id, tag: new_tag}, function(rsp) {
    tag_list_add(pst_id, rsp, new_tag);
    tb_remove();  
  });
}
function child_new_tag(pid) {
  window.parent.new_tag(pid, $('#new_tag').val());
}
function tag_list_add(pst_id, tag_id, tag_txt) {
  var tags = $('#tags_' + pst_id).html();
  if (tag_id != '') {
    $('#tags_' + pst_id).html(tags + "<strong id=\"tag_" + pst_id + "_" + tag_id + "\">" + tag_txt + " <a class=\"rm_tag\" href=\"javascript:;\" onclick=\"rm_tag(" + pst_id + ", " + tag_id + ")\">x</a></strong>");
  } else {
    $('#tags_' + pst_id).html(tags + "<strong>" + tag_txt + "</strong>");
  }
  refresh_tags();
}
function del_tag(tag_id) {
  if (confirm("Delete the tag?")) {
      window.location = '/method/del_tag.php?t=' + tag_id;
  }
}
function rm_tag(pst_id, tag_id) {
  $('#tag_' + pst_id + '_' + tag_id).css('display', 'none');
  $.get('/method/rm_tag.php', {t: tag_id, p: pst_id}, function(rsp) {});            
  refresh_tags();
}
function tag_box_switch() {
  if (tag_box) {
    $('#tag_wrp').css('display', 'none');
    $('#tag_wrp').html('');      
    tag_box = 0;
  }
}

// feed functions
function add_feed(gid) {
  tb_show('Subscribe to Feed', "/feeds/add.php?g="+gid+"&TB_iframe=true&height=45&width=530", false);  
}
function un_feed(fid, gid) {
  if (confirm("Unsubscribe from feed?")) {
      window.location = '/method/un_feed.php?g='+gid+'&f='+fid;  
  }
}

// color palette functions
function load_plt(grp_id) {
  if (palette) {
    clr_plt_switch();
  } else {
    $.get('/method/render_grp_menu.php', {g: grp_id, random: Math.floor(Math.random()*99999)}, function(rsp) {$('#clr_plt_wrp').html(rsp);show_plt(grp_id, '');});            
  }
}
function load_plt_on(grp_id) {
  if (palette) {
    clr_plt_switch();
  } else {
    $.get('/method/render_grp_menu.php', {g: grp_id, random: Math.floor(Math.random()*99999)}, function(rsp) {$('#clr_plt_wrp').html(rsp);show_plt(grp_id, 'on');});            
  }
}
function show_plt(grp_id, mode) {
  var pos = $('#clr_grp_' + grp_id).position();
  $('#clr_plt_wrp').css('position', 'absolute');
  if (mode == 'on') {
	if(BrowserDetect.browser == 'Explorer') {
	  $('#clr_plt_wrp').css('left', (pos.left - 3) + 'px');
	  $('#clr_plt_wrp').css('top', (pos.top - 3) + 'px');  	
	} else {
	  $('#clr_plt_wrp').css('left', (pos.left + 5) + 'px');
	  $('#clr_plt_wrp').css('top', (pos.top + 2) + 'px');  	
	}
  } else {
	  $('#clr_plt_wrp').css('left', (pos.left - 3) + 'px');
	  $('#clr_plt_wrp').css('top', (pos.top + 4) + 'px');  
  }
  $('#clr_plt_wrp').css('display', 'block');
  palette = 1;
}
function clr_plt_switch() {
  if (palette) {
    $('#clr_plt_wrp').css('display', 'none');
    $('#clr_plt_wrp').html('');
    palette = 0;
  }
}

// group navigation
function set_grp_color(grp_id, hex_clr) {
  clr = hex_clr;
  var h;
  $.get('/method/set_grp_color.php', {g: grp_id, color: hex_clr}, 
    function(rsp) {
	  $('#clr_grp_' + grp_id).css('background', hex_clr);
	  if ($('#a_grp_' + grp_id).length > 0) {
		$('#a_grp_' + grp_id).css('color', hex_clr);
      } else if ($('s_grp_' + grp_id).length > 0) {
	    $('#s_grp_' + grp_id).css('background-color', hex_clr);
	  } 
	  h = grp_hash['g' + grp_id];
      $('#grp_' + grp_id).html($('#grp_' + grp_id).html().replace(grp_clrs[h], hex_clr));
      grp_clrs[h] = hex_clr;  	   
      refresh(); 
    });              
}
function get_grp_ttl(grp_id) {
  var h = grp_hash['g' + grp_id];
  $('#pg_ttl').html(grp_ttls[h]);
}
function pgnv_load_grp(grp, old) {
  if (!($('#no_pgnv').length > 0)) {
    load_grpnv(grp, old);
  }
}
function pgnv_load_everything(old) {
  if (!($('#no_pgnv').length > 0)) {
    load_grpnv(0, old);
  }
}
function load_grpnv(gid, old) {
  if (old != 0) {
	$('#grp_' + old).removeClass('gcur');
    var h = grp_hash['g' + old]; 
    $('#grp_' + old).html("<a style=\"color:"+grp_clrs[h]+";\" href=\"javascript:;\" onclick=\"show_grp("+old+", '"+grp_clrs[h]+"');\" title=\""+grp_ttls[h]+"\" id=\"a_grp_"+gid+"\">"+grp_ttls[h]+"</a><a class=\"clr_plt_wrp\" onclick=\"this.blur();load_plt("+old+");\" href=\"javascript:;\" title=\"manage "+grp_ttls[h]+"\"><img id=\"clr_grp_"+old+"\" class=\"clr_slctr\" style=\"background:"+grp_clrs[h]+";\" width=\"12\" height=\"12\" alt=\"manage "+grp_ttls[h]+"\" src=\"http://media.edmodo.com/2/img/edit.png\"/></a>");	     
  }
  if (gid == 0) {
    $('#snv_ovr').html("<h3><strong onclick=\"show_grp(0,'');\">everything</strong></h3>");  
	$('#snv_lckr').html("<h3><a href=\"javascript:;\" onclick=\"show_grp('l', '');\" title=\"direct\">direct</a></h3>");   
	$('#snv_lckr').css('margin-top', '0');	 	         
  } else {
    $('#snv_ovr').html("<h3><a href=\"javascript:;\" onclick=\"show_grp(0,'');\" title=\"everything\">everything</a></h3>");  
	$('#grp_' + gid).addClass('gcur');
    var h = grp_hash['g' + gid];  		
    $('#grp_' + gid).html("<a class=\"clr_plt_wrp\" onclick=\"this.blur();load_plt_on("+gid+");\" href=\"javascript:;\" title=\"manage "+grp_ttls[h]+"\"><img id=\"clr_grp_"+gid+"\" class=\"clr_slctr\" style=\"background:"+grp_clrs[h]+";\" width=\"12\" height=\"12\" alt=\"manage "+grp_ttls[h]+"\" src=\"http://media.edmodo.com/2/img/edit.png\"/></a><strong id=\"s_grp_"+gid+"\" style=\"background-color:"+grp_clrs[h]+";\">"+grp_ttls[h]+"</strong>");
	if (gid != 'l') {
	  $('#snv_lckr').html("<h3><a href=\"javascript:;\" onclick=\"show_grp('l', '');\" title=\"direct\">direct</a></h3>");
	  $('#snv_lckr').css('margin-top', '-4px');	          
	} else {
      $('#snv_lckr').html("<h3><strong>direct</strong></h3>");    	  
	}      
  }
}
function reload_grpnv(gid) {
  var url = '/method/render_grpnv.php';
  $.get(url, {g: gid, random: Math.floor(Math.random()*99999)},function(rsp) {$('#pgnv_wrp').html(rsp)});	
}
function join_grp_box() {
  tb_show('Join Group', "/home/join.php?TB_iframe=true&height=45&width=190", false);  
}
function create_grp_box() {
/*  tb_show('Create Group', "/home/create.php?TB_iframe=true&height=45&width=400", false);  */
  tb_show('Create Group', "/home/edit_grp2.php?TB_iframe=true&height=340&width=380", false);    
}
function chg_pwd_box(uid, gid) {
  tb_show('Change Password', "/members/pwd.php?u="+uid+"&g="+gid+"&TB_iframe=true&height=45&width=370", false);  
}

// validation functions
function pst_vldt() {
  var pst_msg = '';
  switch ($('#post_type').val()) {
      case 'msg':
          if ($('#pst_msg').val() == '' || $('#pst_msg').val() == 'type your note here...') {
              alert('You didn\'t enter a message.');
              $('#pst_msg').focus();
              return false;
          }
          pst_msg = "Sending your note...";
          reset_pst_bbl('note');
          break;
      case 'lnk':
          if ($('#pst_lnk_url').val() == '' || $('#pst_lnk_url').val() == 'http:// or <embed> code') {
              alert('You didn\'t enter a url.');
              $('#pst_lnk_url').focus();
              return false;
          }
          if ($('#pst_lnk_dsc').val() == '' || $('#pst_lnk_dsc').val() == 'short description of the webpage') {
              alert('You didn\'t enter a description.');
              $('#pst_lnk_dsc').focus();
              return false;
          }
          if ($('#pst_lnk_url').val().indexOf('<script') !== -1) {
              alert('Edmodo does not currently support <script> embeds.');
              $('#pst_lnk_url').focus();
              $('#pst_lnk_url').select();
              return false;              
          }
          pst_msg = "Sending your link...";
          reset_pst_bbl('link');
          break;
      case 'fl':
          if (!(fls)) {
              alert('You didn\'t add any files.');
              $('#pst_fl_pth').focus();
              return false;
          }
          if ($('#pst_fl_dsc').val() == '' || $('#pst_fl_dsc').val() == 'short description of the file(s)') {
              alert('You didn\'t enter a description.');
              $('#pst_fl_dsc').focus();
              return false;
          }

/*          $('#pst_fl_pth_wrap input').each(function(){
			alert($(this).val());
	 	  });*/
	 	            
          pst_msg = "Sending your file...";
          $('#upload_progress').html('');
          up_intv = setInterval("update_upload_monitor()", 2000);
          reset_pst_bbl('file');
          break;
      case 'assgnmnt':
          $('#upload_progress').html('');
          up_intv = setInterval("update_upload_monitor()", 2000);      
          reset_pst_bbl('assign');
          break;
      case 'poll':
          reset_pst_bbl('poll');
          break;  
      case 'chalk':
          reset_pst_bbl('chalk');
          break;                              
  }

  // make sure that they have specified the recipient
  if ($('#pst_to_lst').length > 0 && ($('#pst_to_lst').val() == '.' || $('#pst_to_lst').val() == '')) {
    if ($('#pst_to_lst').val() == '') $('#pst_to_lst').val() = '.';
    alert('You didn\'t enter any recipients.');
    return false;
  } else {
    $('#pst_frm').submit();
    pst_bbl_sending(pst_msg);
    return true;
  }
}
function pst_edit() {
  var pst_msg = '';
  switch ($('#post_type').val()) {
      case 'msg':
          if ($('#pst_msg').val() == '' || $('#pst_msg').val() == 'type your note here...') {
              alert('You didn\'t enter a message.');
              $('#pst_msg').focus();
              return false;
          }
          pst_msg = "Sending your note...";
          reset_pst_bbl('note');
          break;
      case 'lnk':
          if ($('#pst_lnk_url').val() == '' || $('#pst_lnk_url').val() == 'http:// or <embed> code') {
              alert('You didn\'t enter a url.');
              $('#pst_lnk_url').focus();
              return false;
          }
          if ($('#pst_lnk_dsc').val() == '' || $('#pst_lnk_dsc').val() == 'short description of the webpage') {
              alert('You didn\'t enter a description.');
              $('#pst_lnk_dsc').focus();
              return false;
          }
          pst_msg = "Sending your link...";
          reset_pst_bbl('link');
          break;
      case 'fl':
          if ($('#pst_fl_dsc').val() == '' || $('#pst_fl_dsc').val() == 'short description of the file(s)') {
              alert('You didn\'t enter a description.');
              $('#pst_fl_dsc').focus();
              return false;
          }          
          pst_msg = "Sending your file...";
          $('#upload_progress').html('');
          up_intv = setInterval("update_upload_monitor()", 2000);
          reset_pst_bbl('file');
          break;
      case 'assgnmnt':
          $('#upload_progress').html('');
          up_intv = setInterval("update_upload_monitor()", 2000);      
          reset_pst_bbl('assign');
          break;
  }
  pst_bbl_sending(pst_msg);
  $('#pst_frm').submit();
  return true;
}
function set_fls(f) {
  fls = f;
}
function hide_pst_bbbl() {
  $('#pst_bbbl_wrp').hide();
  $('#pst_bbbl_show').css('display', 'block');  
}
function show_pst_bbbl() {
  $('#pst_bbbl_wrp').show();
  $('#pst_bbbl_show').css('display', 'none');  
}
function upt_pst_lnk_url() {
  if ($('#pst_lnk_url').val() == '') {
  	$('#pst_lnk_url').val('http:// or <embed> code');
  } else if ($('#pst_lnk_dsc').val() == 'short description of the webpage') {
	$.get('/method/url_title.php', {url: $('#pst_lnk_url').val()},function(rsp){$('#pst_lnk_dsc').val(rsp);});    
  }
}
function upt_edt_pst_lnk_url(pid) {
  if ($('#pst_lnk_url_'+pid).val() == '') {
  	$('#pst_lnk_url_'+pid).val('http:// or <embed> code');
  } else if ($('#pst_lnk_dsc_'+pid).val() == 'short description of the webpage') {
	$.get('/method/url_title.php', {url: $('#pst_lnk_url_'+pid).val()},function(rsp){$('#pst_lnk_dsc_'+pid).val(rsp);});    
  }
}
function pst_bbl_sending(msg) {
  if ($('#post_type').val() == 'fl' || $('#post_type').val() == 'assgnmnt') {
	  $('#pst_bbbl_wrp form').css('visibility','hidden');    
	  $('#pst_typ').css('visibility','hidden');
	  // detect edit post page (only works in ff)
	  if ($('#pid').length > 0) {
	    $('#pst_to_wrp').css('visibility','visible');
	  }    
  } else {
    if (!($('#pid').length > 0)) {
	  //$('#pst_bbbl_wrp form').fadeTo('fast','.1');    
	  //$('#pst_typ').fadeTo('fast','.1');    
	}
  }
  $('#pst_send').disabled(true);       	  
}
function reset_pst_bbl(except) {
  if (except != 'note') {
      if ($('#pst_msg')) $('#pst_msg').val('type your note here...');
  }
  if (except != 'link') {
      if ($('#pst_lnk_url')) $('#pst_lnk_url').val('http:// or <embed> code');
      if ($('#pst_lnk_dsc')) $('#pst_lnk_dsc').val('short description of the webpage');
  }
  if (except != 'file') {
      if ($('#pst_fl_dsc')) $('#pst_fl_dsc').val('short description of the file(s)');
      $('#pst_fl_pth_wrap_labels').html('');
      $('#pst_bbl_file .multi').val('');
  }
  if ($('#pst_alrt').length > 0) {
    if (except != 'alert') {
      if ($('#pst_alrt')) $('#pst_alrt').val('type your alert (140 character max)...');
    }
  }
  if ($('#pst_bbl_assignment').length > 0) {
    if (except != 'assign') {
      $('#pst_assgnmnt_title').val('assignment title');    
      $('#pst_assgnmnt_dsc').val('describe the assignment...');
      $('#pst_assgnmnt_due_date').val('');
      $('#pst_assgnmnt_pth_wrap_labels').html('');
      $('#pst_bbl_assignment .multi').val('');
    }
  }
  if ($('#pst_bbl_event').length > 0) {
    if (except != 'event') {  
      $('#pst_evnt_dsc').val('describe the event...');
      $('#pst_evnt_date').val('');
    }
  }
  if ($('#pst_bbl_poll').length > 0) {
    if (except != 'poll') {
      $('#additional_poll_reponses').html('');      
	  $('#pst_poll_q').val('question...');
	  $('#pst_poll_r_1').val('response #1');
	  $('#pst_poll_r_2').val('response #2');	  	  
    }
  }  
  if ($('#pst_bbl_chalk').length > 0) {
    if (except != 'chalk') {
	  $('#pst_chlk_title').val('chalk title...');
    }
  }    
  if (!except && BrowserDetect.browser == 'Explorer') {
      /* if (!($('#pnl_wrp_live').length > 0)) {  
	    if ($('#opst_id').length > 0) {
	      window.location.href=window.location.href; 
	    } else {
	      window.location.href='/home/';     
		   if ($('#pst_bbbl_wrp form').css('visibility') == 'hidden') {
			  $('#pst_bbbl_wrp form').css('visibility','visible');    
		 	  $('#pst_typ').css('visibility','visible');       
		    }
		    $('#pst_send').disabled(false);       	          

	      render_pst_bbbl();
          $('#pst_send').disabled(false);      	          	      
	    }
	  } else {*/
	  	render_pst_bbbl();
	 // }
  } else {
    set_upid();
    if ($('#pst_bbbl_wrp form').css('visibility') == 'hidden') {
	  $('#pst_bbbl_wrp form').css('visibility','visible');    
	  $('#pst_typ').css('visibility','visible');       
    }
    $('#pst_send').disabled(false);       	          
  }  
}
function clear_pst_bbbl() {
  reset_pst_bbl();
  $('#progress_wrp').css('display', 'none');
  $('#sendto_recps').html(""); 
  $('#pst_to_lst').val('.');
}
function render_pst_bbbl() {
  var url = '/method/render_pst_bbbl.php';
  $.get(url, {},function(rsp) {
  	$('#pst_bbbl_wrp').html(rsp);
  	set_upid();
  	init_sendto();
  	$('#pst_bbbl_wrp .multi').MultiFile();
    $('#pst_frm textarea').autogrow();  
  });      
}
function load_handler_frame() {  
  var content = $('#handler_frame').contents().find("body").html();
  if (content != '') {
    if (typeof(window['up_intv']) != "undefined") {
      clearInterval(up_intv);
    }
	$('#handler_frame').contents().find("body").html('');    
    clear_pst_bbbl();
    refresh();
  }
}
function load_reply_frame(opid) {
  var content = $('#handler_frame').contents().find("body").html();
  if (content != '') {
    //var url = '/method/render_pst_msg.php';
  	//$.get(url, {p: content, random: Math.floor(Math.random()*99999)},function(rsp) {});    
	if (typeof(window['up_intv']) != "undefined") {
	  clearInterval(up_intv);
	}
	$('#nm_rplys').html(parseInt($('#nm_rplys').html()) + 1);    
    clear_pst_bbbl();
  }
  reply_refresh(opid);
}

// progress bars
function update_upload_monitor() {
    url = '/method/upload_monitor.php';
  	$.get(url, {upid: $('#UPLOAD_IDENTIFIER').val(), random: Math.floor(Math.random()*99999)},function(rsp) {$('#upload_progress').html(rsp);update_bar();});    
}
function update_bar() {
  var content = $('#upload_progress').html();
  if (content != '') {
    $('#progress').css('width', Math.round(parseFloat(content) * 541) + 'px');
    $('#progress').css('display', 'block');
    $('#progress_wrp').css('display', 'block');
    $('#progress').html("<span>" + Math.round(parseFloat(content * 100)) + "%</span>");
    if (BrowserDetect.browser == 'Explorer' && !($('#turnin_bbbl').length > 0)) {
      $('#progress_wrp').css('margin-left', '-35px');  
    }    
  }
}
function init_progress() {
  if ($('#pst_bbbl_wrp').length > 0 && $('#progress_wrp').length > 0) {
    var pos = $('#pst_bbbl_wrp').position();
    $('#progress_wrp').css('position', 'absolute');
    $('#progress_wrp').css('left', (pos.left + 30) + 'px');    
    $('#progress_wrp').css('top', (pos.top + 180) + 'px');
  }
}

// posts panel
function loading_psts_pnl() {
  if ($('#psts_pnl_wrp').length > 0) {
	if(BrowserDetect.browser == 'Explorer') {
      $('#psts_pnl_wrp').html('<div style="height:1500px;text-align:center;padding-top:20px;"><img src="http://media.edmodo.com/2/img/ajax-loader.gif" /></div>');      
    } else {
      $('#psts_pnl_wrp').fadeTo('fast','.2');    
    }
  }
}

// refresh
function refresh() {
  //newer_posts(false);	
  load_spotlight();
  if (tag_viewed != 0) {
    load_posts_tagged(tag_viewed);
    pst_pnl_load_tag(tag_viewed);      	
  } else if (grp_viewed != 0) {
    load_grp(grp_viewed, '', false);
  } else {
    load_everything(false);
    pst_pnl_load_everything(false);    
  }
}
/*function reply_refresh(pid) {
  loading_psts_pnl();
  var url = '/method/render_rpls.php';
  $.get(url, {post: pid, ordered: $('#rply_ordr').val(), random: Math.floor(Math.random()*99999)},function(rsp) {$('#psts_pnl_wrp').html(rsp);load_pst_pnl();});    
}*/

// load post functions
function load_everything(now, old) {
  $('#pg_ttl').html('everything');
  loading_psts_pnl();
  $('#crmb_pg').html(usr_nm);
  if (!search_mode) load_typ_fltrs();
  $('#pst_fltrs_typs').css('display','block');
  $('#live_refresh').html('Refresh');
  $('#live_refresh').css('color', EDMODO_BLUE);    
  $('#live_refresh').css('background','none');       
  $('#top').css('background-color', EDMODO_BLUE);
  $('#pg_ttl').css('color', EDMODO_BLUE);  
}
function load_posts_tagged(tag_id, tag_name) {
  var old = grp_viewed;
  pgnv_load_grp(0, old);
  grp_viewed = 0;
  $('#pg_ttl').html(tag_name);
  loading_psts_pnl();
  pst_pnl_load_tag(tag_id);
  $('#crmb_pg').html(usr_nm);
  //hide type filters
  $('#pst_fltrs_typs').css('display','none');
  $('#live_refresh').html('Close Tag <strong style="color:#c00;">x</strong>');
  $('#live_refresh').css('color','#444');  
  $('#live_refresh').css('background-color','#eee');  
  $('#top').css('background-color', EDMODO_BLUE);
  $('#pg_ttl').css('color', '#444');  
}
function show_grp(grp, gclr) {
  if (grp == 0) $('#newer_msg').css('display', 'none');
  load_grp(grp, gclr, true);
}
function load_grp(grp, gclr, now) {
  var old = grp_viewed;
  pgnv_load_grp(grp, old);
  $('#pst_fltrs_typs').css('display','block');  
  $('#live_refresh').html('Refresh');
  $('#live_refresh').css('color', EDMODO_BLUE); 
  $('#live_refresh').css('background','none');       
  
  if ($('#pst_fltrs_typs').length > 0) {
    pst_pnl_load_grp(grp, now);
  }
  
  grp_viewed = grp;
  if (grp != 'l') {
	var clr = EDMODO_BLUE;
	if (gclr != '') {
	  clr = gclr;
	}
    if (grp != 0) {
        var h = grp_hash['g' + grp];
        if ($('#a_grp_' + grp)) $('#crmb_pg').html(grp_ttls[h]);
        clr = grp_clrs[h];
    } else {
        load_everything(now, old);
        return;
    }
    get_grp_ttl(grp);
    if (!search_mode) load_typ_fltrs();
	if (!($('#pnl_wrp_live').length > 0)) {
	  $('#fltrs').css('background-color', clr);  
	} else {
      $('#pg_ttl').css('color', clr);  	
	}   
    $('#top').css('background-color', clr);
  } else {
    $('#crmb_pg').html('direct');
    $('#pg_ttl').html('direct');
    if (!($('#pnl_wrp_live').length > 0)) {
      $('#fltrs').css('background-color', EDMODO_BLUE);  
    } else {
      $('#pg_ttl').css('color', EDMODO_BLUE);      
    }    
    $('#top').css('background-color',EDMODO_BLUE);
  }	  
  loading_psts_pnl();
}
function pst_pnl_load_grp(grp, now) {
  /*if (search_mode) {
    grp_viewed = 0;
    pgnv_load_grp(0, grp_viewed);    
    pst_pnl_load_search();
  } else {*/
	  var shw = $('#pst_fltrs_typs').val();
	  $.get('/method/render_psts.php', {group: grp, show: shw, random: Math.floor(Math.random()*99999)},function(rsp) {
	    $('#psts_pnl_wrp').html(rsp);
	    load_pst_pnl();
	  });	  
  //}
}
function pst_pnl_load_everything(now) {
  /*if (search_mode) {
    grp_viewed = 0;
    pgnv_load_grp(0, grp_viewed);    
    pst_pnl_load_search();
  } else {*/
	  var shw = $('#pst_fltrs_typs').val();
	  $.get('/method/render_psts.php', {group: 0, show: shw, random: Math.floor(Math.random()*99999)},function(rsp) {
	    $('#psts_pnl_wrp').html(rsp);
	    load_pst_pnl();
	  });	 	    
  //}
}
function pst_pnl_load_tag(tag_id) {
  $.get('/method/render_psts.php', {group: 0, tag: tag_id, random: Math.floor(Math.random()*99999)},function(rsp) {
    $('#psts_pnl_wrp').html(rsp);
    load_pst_pnl();
  });	 	    
}
function pst_pnl_load_search() {
  var searchq = $('#srch_fld').val();
  if (searchq != '') {
    pgnv_load_grp(0, grp_viewed);
    grp_viewed = 0;  	
    $('#top').css('background-color', EDMODO_BLUE);
	$('#pg_ttl').css('color', '#444');        
	$('#pg_ttl').html('Search: <strong>'+searchq+'</strong>');        
    loading_psts_pnl(); 
  	$.get('/method/render_psts.php', {group: grp_viewed, query: searchq, random: Math.floor(Math.random()*99999)},function(rsp) {
  	  $('#psts_pnl_wrp').html(rsp); 
  	  load_pst_pnl(); 
      $('#pst_fltrs_typs').css('display','none');
	  $('#live_refresh').html('Close Search <strong style="color:#c00;">x</strong>');
	  $('#live_refresh').css('color','#444');  
	  $('#live_refresh').css('background-color','#eee');  
//	  search_mode = true;  
	});
  }
}
function unload_search() {
//  $('#srch_rslts').css('display', 'none'); 
//  $('#clear_search').css('display', 'none'); 
  $('#pst_fltrs_typs_wrp').css('display', 'block');
//  $('#live_refresh').css('display', 'block');    
//  search_mode = false;   
}
function clear_search() {
  unload_search();
  $('#srch_fld').val('');
  refresh();
}
function load_pst_pnl() {
	if(!(BrowserDetect.browser == 'Explorer')) {
  	  $('#psts_pnl_wrp').fadeTo('fast', '1');	
    }
    $('.post').hover(function(){$('#' + $(this).attr('id') + ' .popout_btn').css('display', 'inline');},
					 function(){$('#' + $(this).attr('id') + ' .popout_btn').css('display', 'none');});
	tb_init('a.thickbox, area.thickbox, input.thickbox'); //pass where to apply thickbox
}

// delete post
function del_post(pst_id) {
  if (confirm("Delete the post?")) {
      $('#pst_' + pst_id + '_wrp').css('display','none');
      $.get('/method/del_post.php', {p: pst_id},function(rsp) {
      	if ($('#nm_rplys').length > 0) {
      	  	$('#nm_rplys').html(parseInt($('#nm_rplys').html()) - 1);    
      	  	if ($('#nm_rplys').html() == '') {
      	  	  $('#nm_rplys').html('0');
      	  	}      	
      	}
      });            
  }
}
function del_reply(opst_id, rpst_id, rply_num) {
  if (confirm("Delete the reply?")) {
      $('#pr' + opst_id + '_' + rply_num).css('display','none');
      $.get('/method/del_reply.php', {p: rpst_id},'');            
  }
}
function del_feed_item(pst_id) {
  if (confirm("Delete the post?")) {
      $('#pst_' + pst_id + '_wrp').css('display','none');  
      $.get('/method/del_feed_item.php', {p: pst_id},'');            
  }
}

// textarea max length
// http://www.quirksmode.org/dom/maxlength.html
function setMaxLength() {
    var x = document.getElementsByTagName('textarea');
    var counter = document.createElement('div');
    counter.className = 'counter';
    for (var i=0;i<x.length;i++) {
        if (x[i].getAttribute('maxlength')) {
            var counterClone = counter.cloneNode(true);
            counterClone.relatedElement = x[i];
            counterClone.innerHTML = '<span>0</span>/'+x[i].getAttribute('maxlength');
            x[i].parentNode.insertBefore(counterClone,x[i].nextSibling);
            x[i].relatedElement = counterClone.getElementsByTagName('span')[0];

            x[i].onkeyup = x[i].onchange = checkMaxLength;
            x[i].onkeyup();
        }
    }
}
function checkMaxLength() {
    var maxLength = this.getAttribute('maxlength');
    var currentLength = this.value.length;
    if (currentLength > maxLength) {
        currentLength = maxLength;
        this.relatedElement.className = 'toomuch';
        this.value = this.value.substring(0, maxLength);
    } else {
        this.relatedElement.className = '';
    }
    this.relatedElement.firstChild.nodeValue = currentLength;
    // not innerHTML
}
function limit_text(limitField, limitNum) {
  if (limitField.value.length > limitNum) limitField.value = limitField.value.substring(0, limitNum); 
}

// locker
function add_to_lckr(pid) {
  $.get('/method/add_to_lckr.php', {p: pid}, function(rsp) {
    $('#lckr_wrp_' + pid).html("In Locker <a href=\"javascript:;\" onclick=\"rm_from_lckr('" + pid + "')\" title=\"remove from locker\" class=\"rm_tag\">x</a>");
    $('#lckr_wrp_' + pid).addClass('lckr_wrp');
  });       
}
function rm_from_lckr(pid) {
  $.get('/method/rm_from_lckr.php', {p: pid}, function(rsp) {
    $('#lckr_wrp_' + pid).html("<a href=\"javascript:;\" onclick=\"add_to_lckr('" + pid + "')\" title=\"add to locker\">Locker</a>");
    $('#lckr_wrp_' + pid).removeClass('lckr_wrp');    
  });  
}

// public timeline
function add_to_pblc(pid) {  
  $.get('/method/add_to_pblc.php', {p: pid}, function(rsp) {
  	$('#pblc_wrp_' + pid).html("Public <a href=\"javascript:;\" onclick=\"rm_from_pblc('" + pid + "')\" title=\"Remove from Public Timeline\" class=\"rm_tag\">x</a>");  
    $('#pblc_wrp_' + pid).addClass('pblc_wrp');  
//    $('#show_embed_' + pid).css('display', 'inline');      	
  });            
}
function rm_from_pblc(pid) {
  $.get('/method/rm_from_pblc.php', {p: pid}, function(rsp) {
  	$('#pblc_wrp_' + pid).html("<a href=\"javascript:;\" title=\"Add to Public Timeline\" onclick=\"add_to_pblc('" + pid + "')\">Public</a>");
//    $('#show_embed_' + pid).css('display', 'none');      	
    $('#pblc_wrp_' + pid).removeClass('pblc_wrp');  	
  });  
}

// locker tag filters
function load_typ_fltrs() {
    // load tag filters
    if ($('#pst_fltrs_typs_wrp')) $('#pst_fltrs_typs_wrp').css('display', 'block');
}

// post popout
function popout(pid) {
  var h = $('#pst_' + pid).css('height');
  if ($('#tags_wrp_' + pid).length > 0 && $('#tags_wrp_' + pid).css('display') == 'block') {
    h = parseInt(h) - 50;
  } else {
    h = parseInt(h) + 50;
  }
  if (h < 160) {
    h = 160;
  }
  var pop = window.open('/home/popout.php?id=' + pid, 'popout' + pid, 'height=' + h + ',width=630,scrollbars=1,resizable=1');
  if (window.focus) {pop.focus()}
}

// post embed
function post_embed(pid) {
  tb_show('Embed Post', "/home/post_embed_code.php?p=" + pid + "&TB_iframe=true&height=150&width=340", false);  
}

// group management
function edit_grp(gid, gttl) {
  tb_show('Edit Group', "/home/edit_grp.php?g=" + gid + "&title=" + gttl + "&TB_iframe=true&height=50&width=390", false);  
}
function grp_nfo(gid) {
  tb_show('Code &amp; Info', "/home/grp_nfo.php?g=" + gid + "&TB_iframe=true&height=140&width=250", false);  
}
function arch_grp(gid, gttl) {
  if (confirm("Archive " + gttl + "? This cannot be undone.")) {
    window.location = "/method/arch_grp.php?g=" + gid;
  }
}
function drop_grp(gid, gttl) {
  if (confirm("Withdraw from " + gttl + "?")) {
    window.location = "/method/drop_grp.php?group=" + gid;      
  }
}
function settings_grp(gid) {
  tb_show('Group Settings', "/home/edit_grp2.php?g=" + gid + "&TB_iframe=true&height=360&width=380", false);  
}

function show_arch_groups() {
  $('#show_arch_groups').css('display','none');
  $('#arch_groups').css('display','block');    
}

// signup
function check_new_un() {
  var username = $('#username').val();
  if (username != '')
    $('#username_status').html("checking...");
  var url = '/method/check_username.php';
  $.get(url, {un:username},function(rsp) {$('#username_status').html(rsp)});
}
function load_signup() {
  TB_init();
}

// user management
function chg_pwd() {
  if ($('#new_pwd').val() != '') {
    if ($('#new_pwd').val() == $('#new_pwd_2').val()) {
      $('#usr_pwd').submit();      
    } else {
      alert('The passwords you entered do not match.');
      $('#new_pwd').focus();      
    }
  } else {
    alert('You didn\'t enter a new password.');
    $('#new_pwd').focus();      
  }
}
function rm_usr(uid, gid) {
  if (confirm("Remove user from group?")) {
    window.location = "/method/rm_usr.php?u=" + uid + "&g=" + gid;
  }
}

// settings
function ntfy_method_chg() {
  var m = $('#ntfy_method').val();
  if (m == 'twitter') {
      $('#usr_ntfy_twitter').css('display', 'block');
      $('#usr_ntfy_sms').css('display', 'none');  
  } else if (m == 'sms') {
      $('#usr_ntfy_twitter').css('display', 'none');
      $('#usr_ntfy_sms').css('display', 'block');  
  } else {
      $('#usr_ntfy_twitter').css('display', 'none');
      $('#usr_ntfy_sms').css('display', 'none');  
  }
}
function check_usr_photo() {
	fileName = $('#set_usr_pht').val();
	if (!fileName) return;
	
	fileTypes = new Array("jpeg","jpg","gif","png","JPG","PNG","JPEG","GIF");
	
	dots = fileName.split(".")
	//get the part AFTER the LAST period.
	fileType = "." + dots[dots.length-1];
	
	return (fileTypes.join(".").indexOf(fileType) != -1) ?
	$('#usr_img').submit() :
	alert("Please only upload files that end in types: \n\n" + (fileTypes.join(" .")));
}


// send to
var sendto_sel_indx = 0;

function clr_pst_li() {
  var grp = $('#tmp_pst_to_lst').html().split('^');
  $('#tmp_pst_to_lst').css('background', grp[1]);
  $('#tmp_pst_to_lst').html('');
  $('#pst_to_lst').val($('#pst_to_lst').val() + grp[0] + '.');
}
function rm_pst_li() {
  var grp = $('#tmp_pst_to_lst').html().split('^');
  $('#tmp_pst_to_lst').html('');
  $('#pst_to_lst').val($('#pst_to_lst').val().replace('.' + grp[0] + '.', '.'));
}
function init_sendto() {
	if ($('#sendto_in').length > 0) {	
		$("#sendto_in").keydown(function(event){
		  tmp_sendto_in = $('#sendto_in').val();  
      if (event.keyCode == 9 && $('#sendto_in').val() == '') {
		    $('#pst_send').focus();
		    hide_sendto();
		    return false;
		  } else if ((event.keyCode == 9 || event.keyCode == 13)) {
		    if ($('#st_i_' + sendto_sel).val()) {
		      var tmp = $('#st_i_' + sendto_sel).val();
		      var ars = tmp.split("_");
		      add_sendto(ars[0], ars[1], ars[2]);  
		      return false;   							    
		    }
		  }
		});
		$("#sendto_in").keyup(function(event){
		  sendto_key(event.keyCode);			
		});	
	}	
}
function load_sendto() {
  if ($('#sendto_in').val() == '') {
    if (grp_ttls.length + usr_nms.length < 10) {
      render_full_sendto_lst();    
    } else {
	  $('#sendto_lst').html("<li id=\"sendto_nfo\">" + $('#sendto_prompt').val() + "</li>");  
	  $('#sendto_lst').css('opacity', '.95');
	  $('#sendto_lst').css('display', 'block');      
    }
  } else {
    render_sendto_lst();
  }
}
function rm_sendto(type, id, n) {
  var rto = "";
  if (type == 'u') {
    rto = '.' + usr_pres[n] + id + '.';
  } else {
    rto = '.' + id + '.';  
  }
  $('#pst_to_lst').val($('#pst_to_lst').val().replace(rto, '.'));
  $('#to_' + type + '_' + id).css('display', 'none');
  $('#to_' + type + '_' + id).attr('id', '');  
}
function add_sendto(type, id, n) {
  if (type == 'u') {
    $('#pst_to_lst').val($('#pst_to_lst').val() + usr_pres[n] + id + '.');
  } else {
    $('#pst_to_lst').val($('#pst_to_lst').val() + id + '.');  
  }
  var atts = "";
  var content = ""  
  if (type == 'g') {
      atts = " id=\"to_g_" + id + "\" class=\"sendto_grp_recp\" style=\"background-color:" + grp_clrs[n] + ";\"";
      content = grp_ttls[n];
      tostr = "to_" + id;
  } else if (type == 'u') {
      atts = " id=\"to_u_" + id + "\" class=\"sendto_usr_recp\"";
      content = usr_nms[n];
      tostr = "to_" + usr_pres[n] + id;
  }
  $('#sendto_recps').html($('#sendto_recps').html() + "<span" + atts + ">" + content + "<a href=\"javascript:;\" onclick=\"rm_sendto('" + type + "', " + id + ", " + n + ")\">x</a><input type=\"hidden\" name=\"" + tostr + "\" id=\"" + tostr + "\" value=\"" + type + "_" + id + "_" + n + "\" /></span>");
  $('#sendto_in').val('');
  $('#sendto_in').blur();
  $('#sendto_in').focus();
}
function close_sendto() {
//  $('#sendto_lst').css('display', 'none');
}
function hide_sendto() {
  $('#sendto_lst').css('display', 'none');
}
function render_sendto_lst() {
  var to_lst = "";
  var val = $('#sendto_in').val();
  var pst_to_lst = $('#pst_to_lst').val();
  var c = 0;  

  // groups
  var len = grp_ttls.length;
  var n = 0; 
  while (n < len) {
    var ttl = grp_ttls[n];
    if ($('#pst_to_lst').val().indexOf("." + grp_ids[n] + ".") == -1 && ttl.toUpperCase().indexOf(val.toUpperCase()) != -1) {
      to_lst += "<li id=\"st_" + c + "\" class=\"sendto_lst_grp\" onclick=\"add_sendto('g', '" + grp_ids[n] + "', " + n + ");\" onmouseover=\"highlight_sendto(" + c + ");\"><span class=\"grp_clr_box\" style=\"background:" + grp_clrs[n] + "\"></span><span class=\"sendto_lst_txt\">" + ttl + "</span><input type=\"hidden\" name=\"st_i_" + c + "\" id=\"st_i_" + c + "\" value=\"g_" + grp_ids[n] + "_" + n + "\" /></li>";    
      c++;
    }
    n++;
  } 
  
  // users
  len = usr_nms.length;
  n = 0;  
  while (n < len) {
    var nm = usr_nms[n];
    var fixednm = val.toUpperCase().replace('MR. ', '');
    fixednm = fixednm.replace('MRS. ', '');
    fixednm = fixednm.replace('MS. ', '');            
    fixednm = fixednm.replace('DR. ', '');            
    if (pst_to_lst.indexOf("." + usr_pres[n] + usr_ids[n] + ".") == -1 && nm.toUpperCase().indexOf(fixednm) != -1) {
	  to_lst += "<li id=\"st_" + c + "\" onclick=\"add_sendto('u', '" + usr_ids[n] + "', " + n + ");\" onmouseover=\"highlight_sendto(" + c + ");\" class=\"sendto_lst_usr\">" + usr_imgs[n] + "<span class=\"sendto_lst_txt\">" + nm + "</span><input type=\"hidden\" name=\"st_i_" + c + "\" id=\"st_i_" + c + "\" value=\"u_" + usr_ids[n] + "_" + n + "\" /></li>"; 
	  c++;   
    }
    n++;
  }   
  
  if (c) {
    $('#sendto_lst').css('opacity', '1');
    $('#sendto_lst').css('display', 'block');     
    $('#sendto_lst').html(to_lst);
    sendto_sel = 0;
    highlight_sendto(0);     
  } else {
    $('#sendto_lst').html("");
    close_sendto();    
  }
}
function render_full_sendto_lst() {
  var to_lst = "";
  var pst_to_lst = $('#pst_to_lst').val();
  var c = 0;  

  // groups
  var len = grp_ttls.length;
  var n = 0; 
  while (n < len) {
    var ttl = grp_ttls[n];
    if ($('#pst_to_lst').val().indexOf("." + grp_ids[n] + ".") == -1) {
      to_lst += "<li id=\"st_" + c + "\" class=\"sendto_lst_grp\" onclick=\"add_sendto('g', '" + grp_ids[n] + "', " + n + ");\" onmouseover=\"highlight_sendto(" + c + ");\"><span class=\"grp_clr_box\" style=\"background:" + grp_clrs[n] + "\"></span><span class=\"sendto_lst_txt\">" + ttl + "</span><input type=\"hidden\" name=\"st_i_" + c + "\" id=\"st_i_" + c + "\" value=\"g_" + grp_ids[n] + "_" + n + "\" /></li>";    
      c++;
    }
    n++;
  } 
  
  // users
  len = usr_nms.length;
  n = 0;  
  while (n < len) {
    var nm = usr_nms[n];        
    if (pst_to_lst.indexOf("." + usr_pres[n] + usr_ids[n] + ".") == -1) {
	  to_lst += "<li id=\"st_" + c + "\" onclick=\"add_sendto('u', '" + usr_ids[n] + "', " + n + ");\" onmouseover=\"highlight_sendto(" + c + ");\" class=\"sendto_lst_usr\">" + usr_imgs[n] + "<span class=\"sendto_lst_txt\">" + nm + "</span><input type=\"hidden\" name=\"st_i_" + c + "\" id=\"st_i_" + c + "\" value=\"u_" + usr_ids[n] + "_" + n + "\" /></li>"; 
	  c++;   
    }
    n++;
  }   
  
  if (c) {
    $('#sendto_lst').css('opacity', '1');
    $('#sendto_lst').css('display', 'block');     
    $('#sendto_lst').html(to_lst);
    sendto_sel = 0;
    highlight_sendto(0);     
  } else {
    $('#sendto_lst').html("");
    close_sendto();    
  }
}
function sendto_doc_click(e) {
  if ($(e.target).attr('id') != 'sendto_lst' && $(e.target).attr('id') != 'sendto' && $(e.target).attr('id') != 'sendto_in')
    hide_sendto();
}
function sendto_key(key) {
  switch(key){
    case 40:
      highlight_sendto(sendto_sel + 1);
      break;
    case 38:
      highlight_sendto(sendto_sel - 1);
      break;  
    case 8:
      if (tmp_sendto_in == '') {
        var pst_to_lst = $('#pst_to_lst').val();
        if (pst_to_lst != '.') {
					var rcps = pst_to_lst.split(".");
					var k = 0;
					var j = 0;
					var real_rcps = [];
					while (k < rcps.length) {
					    if (rcps[k] != '') {
					        real_rcps[j] = rcps[k];
					        j++;
					    }
					    k++;
					}
					var last = "#to_" + real_rcps[real_rcps.length - 1];
					if ($(last).length > 0) {
						var ars = $(last).val();
						ars = ars.split("_");
						rm_sendto(ars[0], ars[1], ars[2]);        
					}        
        }
      }
      load_sendto();
      break;            
    default: 
      load_sendto();         
      break;
  }  
}
function highlight_sendto(id) {
  if ($('#st_' + id)) {
	  $('#st_' + sendto_sel).css('background', '#fff');
	  $('#st_' + sendto_sel).css('color', '#666');  
	  $('#st_' + id).css('background', '#187');
	  $('#st_' + id).css('color', '#fff');  
	  sendto_sel = id;  
  }
}

// show replies
function show_replies(pr) {
  $('#'+pr+' .post_reply').each(function(){
	  $(this).css('display', 'block');
	});
  $('#sm_'+pr).css('display', 'none');
}

// show more posts
function show_more_posts(search_query) {
  more_posts++;
  $('.pnl_tmfrm').each(function(){
	  $(this).html('<img style="display:block;margin-left:auto;margin-right:auto;margin-top:13px;" src="http://media.edmodo.com/2/img/ajax-loader.gif" />');
	});  
  var shw = $('#pst_fltrs_typs').val();
  $.get('/method/render_psts.php', {more: 1, group: grp_viewed, show: shw, tmfrm: more_posts, query: search_query, random: Math.floor(Math.random()*99999)},function(rsp) {
    $('.pnl_tmfrm').each(function(){
	    $(this).css('display','none');
	  });      
    $('#psts_pnl_wrp').append('<div id="more_posts_'+more_posts+'" class="more_posts_wrp">'+rsp+'</div>');
	  if(!(BrowserDetect.browser == 'Explorer')) {
  	  $('#psts_pnl_wrp').fadeTo('fast', '1');	
    }
  	tb_init('#more_posts_'+more_posts+' a.thickbox'); //pass where to apply thickbox
    $('#more_posts_'+more_posts+' .post').hover(function(){$('#' + $(this).attr('id') + ' .popout_btn').css('display', 'inline')},function(){$('#' + $(this).attr('id') + ' .popout_btn').css('display', 'none')});	
  });	  
}
function show_more_arch_posts(grp) {
  more_posts++;
  $('.pnl_tmfrm').each(function(){
	  $(this).html('<img style="display:block;margin-left:auto;margin-right:auto;margin-top:13px;" src="http://media.edmodo.com/2/img/ajax-loader.gif" />');
	});  
  $.get('/method/render_arch_psts.php', {more: 1, g: grp, random: Math.floor(Math.random()*99999)},function(rsp) {
    $('.pnl_tmfrm').each(function(){
	    $(this).css('display','none');
	  });      
    $('#psts_pnl_wrp').append('<div id="more_posts_'+more_posts+'" class="more_posts_wrp">'+rsp+'</div>');
	  if(!(BrowserDetect.browser == 'Explorer')) {
  	  $('#psts_pnl_wrp').fadeTo('fast', '1');	
    }
  	tb_init('#more_posts_'+more_posts+' a.thickbox'); //pass where to apply thickbox	
  });	  
}
function show_more_user_posts(usr) {
  more_posts++;
  $('.pnl_tmfrm').each(function(){
	  $(this).html('<img style="display:block;margin-left:auto;margin-right:auto;margin-top:13px;" src="http://media.edmodo.com/2/img/ajax-loader.gif" />');
	});  
  $.get('/method/render_user_psts.php', {more: 1, u: usr, random: Math.floor(Math.random()*99999)},function(rsp) {
    $('.pnl_tmfrm').each(function(){
	    $(this).css('display','none');
	  });      
    $('#psts_pnl_wrp').append('<div id="more_posts_'+more_posts+'" class="more_posts_wrp">'+rsp+'</div>');
	  if(!(BrowserDetect.browser == 'Explorer')) {
  	  $('#psts_pnl_wrp').fadeTo('fast', '1');	
    }
  	tb_init('#more_posts_'+more_posts+' a.thickbox'); //pass where to apply thickbox
    $('#more_posts_'+more_posts+' .post').hover(function(){$('#' + $(this).attr('id') + ' .popout_btn').css('display', 'inline')},function(){$('#' + $(this).attr('id') + ' .popout_btn').css('display', 'none')});	  		
  });	  
}
function show_more_pub_grp_posts(grp_id, max_post_to_id) {
  more_posts++;
  $('.pnl_tmfrm').each(function(){
	  $(this).html('<img style="display:block;margin-left:auto;margin-right:auto;margin-top:13px;" src="http://media.edmodo.com/2/img/ajax-loader.gif" />');
	});  
  $.get('/group2.php', {more: 1, group: grp_id, max: max_post_to_id, random: Math.floor(Math.random()*99999)},function(rsp) {
    $('.pnl_tmfrm').each(function(){
	    $(this).css('display','none');
	  });      
    $('#psts_pnl_wrp').append('<div id="more_posts_'+more_posts+'" class="more_posts_wrp">'+rsp+'</div>');
	  if(!(BrowserDetect.browser == 'Explorer')) {
  	  $('#psts_pnl_wrp').fadeTo('fast', '1');	
    }
  	tb_init('#more_posts_'+more_posts+' a.thickbox'); //pass where to apply thickbox
    $('#more_posts_'+more_posts+' .post').hover(function(){$('#' + $(this).attr('id') + ' .popout_btn').css('display', 'inline')},function(){$('#' + $(this).attr('id') + ' .popout_btn').css('display', 'none')});	  		
  });	  
}
function show_more_pub_posts(max_post_to_id) {
  more_posts++;
  $('.pnl_tmfrm').each(function(){
	  $(this).html('<img style="display:block;margin-left:auto;margin-right:auto;margin-top:13px;" src="http://media.edmodo.com/2/img/ajax-loader.gif" />');
	});  
  $.get('/kitchensink2.php', {more: 1, max: max_post_to_id, random: Math.floor(Math.random()*99999)},function(rsp) {
    $('.pnl_tmfrm').each(function(){
	    $(this).css('display','none');
	  });      
    $('#psts_pnl_wrp').append('<div id="more_posts_'+more_posts+'" class="more_posts_wrp">'+rsp+'</div>');
	  if(!(BrowserDetect.browser == 'Explorer')) {
  	  $('#psts_pnl_wrp').fadeTo('fast', '1');	
    }
  	tb_init('#more_posts_'+more_posts+' a.thickbox'); //pass where to apply thickbox
    $('#more_posts_'+more_posts+' .post').hover(function(){$('#' + $(this).attr('id') + ' .popout_btn').css('display', 'inline')},function(){$('#' + $(this).attr('id') + ' .popout_btn').css('display', 'none')});	  		
  });	  
}

// reply (in-place)
function rip(pid) {
  if (rip_active != pid) {
	  $('.rip_wrp').each(function(){
	    $(this).html('');
	  });  
	  $('#pr' +  pid + ' .highlighted_reply').each(function(){
	    var rpid = $(this).attr('id').split('_');
	  	$(this).removeClass('highlighted_reply');
	  });
	  $('#rip_wrp_' + pid).css('padding-top','9px');
	  $('#rip_wrp_' + pid).html('<img width="32" height="32" src="http://media.edmodo.com/2/img/ajax-loader.gif"/>');    
	  $.get('/home/reply.php', {p: pid},function(rsp) {
	    $('#rip_wrp_' + pid).html(rsp);
	    $('#rip_in_'+pid).autogrow().focus();
	    rip_active = pid;
	  });        
  } else {
	  $('#rip_in_'+pid).focus();
  }
}
function post_reply(pid) {
  // figure out reply number and pass to post_reply
  var rpnum = $('#pr'+pid+' div').size() + 1;
  $('#rip_submit_'+pid).html('<img width="32" height="32" src="http://media.edmodo.com/2/img/ajax-loader.gif"/>');
  $.post('/method/post_reply.php', {opst_id: pid, pst_msg: $('#rip_in_'+pid).val(), rnum: rpnum},function(rsp) {
    $('#pr' + pid).append(rsp);
    rip_cancel();
  });      
}
function rip_cancel() {
  $('.rip_wrp').each(function(){
    $(this).html('');
    $(this).css('padding-top','0');
  });  
  rip_active = 0;
}
function edit_reply(pid, rpid, rpnum) {
  $.get('/home/reply_edit.php', {p: pid, r: rpid, rnum: rpnum, random: Math.floor(Math.random()*99999)},function(rsp) {
    $('#pr'+pid+'_'+rpnum+' p').css('display', 'none');
    if ($('#erip_'+pid+'_'+rpnum).length > 0) {
	    $('#erip_'+pid+'_'+rpnum).html(rsp);
	    $('#erip_'+pid+'_'+rpnum).css('display','block');	    
	    $('#erip_in_'+pid+'_'+rpid).autogrow().focus();    
    } else {
	    $('#pr'+pid+'_'+rpnum).append('<div class="reply_ip" id="erip_'+pid+'_'+rpnum+'">'+rsp+'</div>');
	    $('#erip_in_'+pid+'_'+rpid).autogrow().focus();    
    }
  });      
}
function post_reply_edit(pid, rpid, rpnum) {
  $.post('/method/post_reply_edit.php', {opst_id: pid, rpost_id: rpid, pst_msg: $('#erip_in_'+pid+'_'+rpid).val(), rnum: rpnum},function(rsp) {
    $('#pr'+pid+'_'+rpnum+' p').html(rsp);  
    erip_cancel(pid, rpid, rpnum);
  });      
}
function erip_cancel(opid, rpid, rnum) {
  $('#erip_'+opid+'_'+rnum).css('display', 'none');
  $('#pr'+opid+'_'+rnum+' p').css('display', 'block');  
}

// edit
function edit_post(pid, ptyp) {
  var url = '/method/post_edit.php';
  $.get(url, {p: pid, type: ptyp},function(rsp) {
	  $('#pst_content_'+pid).html(rsp+'<div id="pst_edt_'+pid+'" class="pst_edt_wrp" style="display:none;">'+$('#pst_content_'+pid).html()+'</div>'); 
	  $('#pst_content_'+pid+' textarea').autogrow();  
	  if ($('#pst_assgnmnt_due_date_'+pid).length > 0) {
		Date.firstDayOfWeek = 7;
		Date.format = 'mm/dd/yyyy';  	  
        $('#pst_assgnmnt_due_date_'+pid).datePicker({startDate:'01/01/1996'}).trigger('change');	  		  
	  }
  });    
}
function edit_post_cancel(pid) {
  var pst_cnt = $('#pst_edt_'+pid).html();
  $('#pst_content_'+pid).html(pst_cnt);
}
function edit_post_save(pid) {
  $('#edt_pst_frm_'+pid).submit();   
}
function load_edit_frame(pid) {
  var pst_content = $('#edit_handler_frame_'+pid).contents().find("body").html();
  if (pst_content != '') {    
    $('#pst_content_'+pid).html(pst_content);
    tb_init('#pst_content_'+pid+' a.thickbox'); //pass where to apply thickbox		    
  }
}

function set_upid() {
  // upload identifier
  if ($('#UPLOAD_IDENTIFIER').length > 0) $('#UPLOAD_IDENTIFIER').val(Math.floor(Math.random()*99999) + 'e' + Math.floor(Math.random()*99999));
}

// spotlight
function load_spotlight() {
  $.post('/method/render_spotlight.php', '',function(rsp) {
    $('#sl_wrp').html(rsp);
  });      
}

function update_spotlight_replies(nm_new) {
  if ($('#sl_rply').length > 0) {
	var num_replies = $('#sl_rply a').html().charAt(0);
	var secondchar = $('#sl_rply a').html().charAt(1);
	if (is_numeric(secondchar)) {
	    num_replies = parseInt('' + num_replies + secondchar);
	} else {
	    num_replies = parseInt(num_replies);	
	}
	nm_new += num_replies;
	var pls = 'Reply';
	if (nm_new > 1) pls = 'Replies';
	$('#sl_rply').html('<a href="/apps/spotlight/?type=r">' + nm_new + ' New ' + pls + '</a>');
  } else {
  	if ($('#sl_nothing_new').length > 0) {
  		$('#sl_nothing_new').css('display','none');
  	}
	var pls = 'Reply';
	if (nm_new > 1) pls = 'Replies';
	$('#sl_wrp').prepend('<p id="sl_rply"><a href="/apps/spotlight/?type=r">' + nm_new + ' New ' + pls + '</a></p>');  
  }
}

function update_stream_replies(opid, rpid, rc) {
	var nm_other_rs = $('#pr'+opid+' div').length;
	var new_r_nm = nm_other_rs + 1;
  	$('#pr'+opid).append('<div id="pr'+opid+'_'+new_r_nm+'" class="post_reply"><div id="hl'+opid+'_'+new_r_nm+'_'+rpid+'" class="highlighted_reply"><img width="16" height="16" src="http://media.edmodo.com/2/img/comment.png"/><p>'+rc+'</p><div style="clear:both;height:1px;">&nbsp;</div></div>'); 
  	$('#hl'+opid+'_'+ new_r_nm +'_'+rpid).click(function(){$(this).removeClass('highlighted_reply')});
}

// assignments
function show_turnedin(pid) {
	$('#ati_'+pid).attr('src', '/apps/assignments/turnedin_panel.php?pid='+pid);
	$('#ati_'+pid).css('padding-top', '10px');	
	$('#ati_'+pid).css('display', 'block');		
}
function hide_turnedin(pid) {
	$('#ati_'+pid).css('padding-top', '0');	
	$('#ati_'+pid).css('display', 'none');		
}

// page title flashing
function new_post_alerter() {
	if (document.title != 'New Post') {
		document.title = 'New Post';
	} else {
		document.title = 'Edmodo - Home';
	}
}
function new_reply_alerter() {
	if (document.title != 'New Reply') {
		document.title = 'New Reply';
	} else {
		document.title = 'Edmodo - Home';
	}
}

function pst_poll_add() {
	$('#additional_poll_reponses').append("<span id=\"poll_response_"+pst_poll_added+"_wrp\" class=\"additional_poll_response\"><a style=\"float:right;font-size:15px;color:#c00;margin:5px 2px 0 0;\" href=\"javascript:;\" onclick=\"remove_poll_response("+pst_poll_added+","+pst_poll_added+");\">X</a><textarea style=\"margin-top:7px;font-size:12px;width:491px;min-height:32px;\" id=\"pst_poll_response_"+pst_poll_added+"\" wrap=\"soft\" onfocus=\"if (this.value == 'response...') this.value='';\" onblur=\"if (this.value == '') this.value='response...';\" rows=\"1\" name=\"pst_poll_r[]\">response...</textarea></span>");
	$('#pst_poll_response_'+pst_poll_added).autogrow();
	pst_poll_added++;
}
function remove_poll_response(response_id, nm) {
	$('#poll_response_'+nm+'_wrp').css('display', 'none');
	$('#pst_poll_response_'+nm).val('');
}
function poll_vote(poll_post_id) {
	var answer = $("input[name='poll_r_"+poll_post_id+"']:checked").val(); 
	if (answer) {
	  $.get('/method/vote.php', {a: answer}, function(rsp) {
	    if (rsp != 0) {
			$('#answers_wrp_'+poll_post_id).html(rsp);
	    }
	  });	
	} else {
		alert("You must select an answer to the poll.");	
	}
}
function update_poll(poll_post_id) {
  $.get('/method/render_poll.php', {p: poll_post_id}, function(rsp) {
    if (rsp) {
		$('#answers_wrp_'+poll_post_id).html(rsp);
    }
  });	
}

// post type filters
function close_filter() {
  reset_post_filters();
  $('#close_filter').css('display','none');       	
  $('#live_refresh').css('display','block');  
  $('#pst_fltrs_typs').val('jp'); 
  refresh();    	
}
function set_filter(filter) {
  var lbl = 'Filter';
  switch (filter) {
	case 'a':
		lbl = "Alerts";
	break;
	case 's':
		lbl = "Assignments";            		
	break;
	case 'r':
		lbl = "Feeds";
	break;
	case 'f':
		lbl = "Files";
	break;
	case 'l':
		lbl = "Links";
	break;  
	case 'p':
		lbl = "Polls";
	break;  
	case 'x':
		lbl = "Recent Replies";
	break;  
  }
  $('#close_filter').html('Close '+lbl+' <strong style=\"color:#c00;\">x</strong>');       	
  $('#close_filter').css('display','block'); 

  reset_post_filters();

  $('#filter_'+filter).css('color','#444');         	
  $('#filter_'+filter).css('font-weight','bold');         	
  $('#live_refresh').css('display','none');  
  $('#pst_fltrs_typs').val(filter);
  refresh();
}
function reset_post_filters() {
	$('#filter_a').css('color','#3265b0');
	$('#filter_a').css('font-weight','normal');
	$('#filter_s').css('color','#3265b0');
	$('#filter_s').css('font-weight','normal');
	$('#filter_r').css('color','#3265b0');
	$('#filter_r').css('font-weight','normal');
	$('#filter_f').css('color','#3265b0');
	$('#filter_f').css('font-weight','normal');
	$('#filter_l').css('color','#3265b0');
	$('#filter_l').css('font-weight','normal');
	$('#filter_p').css('color','#3265b0');
	$('#filter_p').css('font-weight','normal');
	$('#filter_x').css('color','#3265b0');
	$('#filter_x').css('font-weight','normal');
}

/* doc viewer */
function showViewer_original(doc_id, on_s3, orig) {
  var files_url = 'http://www.edmodo.com/files/userfiles/docs/';
  var s3_url = 'http://s3.amazonaws.com/edmodo/docs/';
  var s3_viewer = 'http://s3.amazonaws.com/edmodo/docs/modoviewer.swf';
  var local_viewer = '/viewer/ModoViewer.swf';
  var s3_lib = 'http://s3.amazonaws.com/edmodo/docs/fl_lib_1.swf';
  var local_lib = '/viewer/fl_lib_1.swf';
  $('#doc_viewer').html($('#doc_viewer').html().replace(doc_viewer, doc_id).replace(doc_viewer, doc_id));
  $('#doc_viewer').html($('#doc_viewer').html().replace(doc_viewer_orig, orig).replace(doc_viewer_orig, orig));
  if (on_s3 == '0') {
    $('#doc_viewer').html($('#doc_viewer').html().replace(s3_viewer, local_viewer).replace(s3_viewer, local_viewer));  
    $('#doc_viewer').html($('#doc_viewer').html().replace(s3_lib, local_lib).replace(s3_lib, local_lib));  
    $('#doc_viewer').html($('#doc_viewer').html().replace(s3_url, files_url).replace(s3_url, files_url));  
  } else if (on_s3 == '1') {
    $('#doc_viewer').html($('#doc_viewer').html().replace(local_viewer, s3_viewer).replace(local_viewer, s3_viewer));  
    $('#doc_viewer').html($('#doc_viewer').html().replace(local_lib, s3_lib).replace(local_lib, s3_lib));  
    $('#doc_viewer').html($('#doc_viewer').html().replace(files_url, s3_url).replace(files_url, s3_url));
  }
  doc_viewer = doc_id;
  doc_viewer_orig = orig;
  tb_show('', "#TB_inline?&height=438&width=571&modal=true&inlineId=doc_viewer", false);
  $('#TB_title').css('display','none');
  $('#TB_window').css('border-width','0');
  $('#TB_overlay').click(closeDocViewer);  
  $(document).mousewheel(disabledMouseWheel);
}
function showViewer(doc_id, on_s3, orig) {
  var files_url = 'http://www.edmodo.com/files/userfiles/docs/';
  var viewer_url = '/viewer/ModoViewer.swf';
  var lib_url = '/viewer/fl_lib_1.swf';
  if (on_s3 == '1') {
  	files_url = 'http://s3.amazonaws.com/edmodo/docs/';
  	viewer_url = 'http://s3.amazonaws.com/edmodo/docs/modoviewer2.swf';
  	lib_url = 'http://s3.amazonaws.com/edmodo/docs/fl_lib_1.swf';
  }
  var doc_viewer_content = "<object classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" codebase=\"http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0\" width=\"571\" height=\"438\" id=\"myMovieName\"><param name=\"movie\" value=\""+viewer_url+"\"/><param name=\"quality\" value=\"high\"/><param name=\"bgcolor\" value=\"#FFFFFF\"/><param name=\"flashvars\" value=\"doc_url="+files_url+doc_id+".swf&ext_lib="+lib_url+"&orig_doc="+orig+"\"/><param name=\"allowScriptAccess\" value=\"always\"/><param name=\"allowFullScreen\" value=\"true\"/><embed flashvars=\"doc_url="+files_url+doc_id+".swf&ext_lib="+lib_url+"&orig_doc="+orig+"\" src=\""+viewer_url+"\" allowScriptAccess=\"always\" allowFullScreen=\"true\" quality=\"high\" bgcolor=\"#FFFFFF\" width=\"571\" height=\"438\" name=\"myMovieName\" align=\"\" type=\"application/x-shockwave-flash\" pluginspage=\"http://www.macromedia.com/go/getflashplayer\"></embed></object>";  
  $('#doc_viewer').html(doc_viewer_content);
  tb_show('', "#TB_inline?&height=438&width=571&modal=true&inlineId=doc_viewer", false);
  $('#TB_title').css('display','none');
  $('#TB_window').css('border-width','0');
  $('#TB_overlay').click(closeDocViewer);  
  $(document).mousewheel(disabledMouseWheel);
}
function showViewer_test(doc_id, on_s3, orig) {
  var files_url = 'http://www.edmodo.com/files/userfiles/docs/';
  var viewer_url = '/viewer/ModoViewer.swf';
  var lib_url = '/viewer/fl_lib_1.swf';
  if (on_s3 == '1') {
  	files_url = 'http://s3.amazonaws.com/edmodo/docs/';
  	viewer_url = 'http://s3.amazonaws.com/edmodo/docs/modoviewer5.swf';
  	lib_url = 'http://s3.amazonaws.com/edmodo/docs/fl_lib_12.swf';
  }
  var doc_viewer_content = "<object classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" codebase=\"http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0\" width=\"571\" height=\"438\" id=\"myMovieName\"><param name=\"movie\" value=\""+viewer_url+"\"/><param name=\"quality\" value=\"high\"/><param name=\"bgcolor\" value=\"#FFFFFF\"/><param name=\"flashvars\" value=\"doc_url="+files_url+doc_id+".swf&ext_lib="+lib_url+"&orig_doc="+orig+"\"/><param name=\"allowScriptAccess\" value=\"always\"/><param name=\"allowFullScreen\" value=\"true\"/><embed flashvars=\"doc_url="+files_url+doc_id+".swf&ext_lib="+lib_url+"&orig_doc="+orig+"\" src=\""+viewer_url+"\" allowScriptAccess=\"always\" allowFullScreen=\"true\" quality=\"high\" bgcolor=\"#FFFFFF\" width=\"571\" height=\"438\" name=\"myMovieName\" align=\"\" type=\"application/x-shockwave-flash\" pluginspage=\"http://www.macromedia.com/go/getflashplayer\"></embed></object>";  
  $('#doc_viewer').html(doc_viewer_content);
  tb_show('', "#TB_inline?&height=438&width=571&modal=true&inlineId=doc_viewer", false);
  $('#TB_title').css('display','none');
  $('#TB_window').css('border-width','0');
  $('#TB_overlay').click(closeDocViewer);  
  $(document).mousewheel(disabledMouseWheel);
}
function showViewer_stream(doc_id, on_s3, orig) {
  var files_url = 'http://www.edmodo.com/files/userfiles/docs/';
  var viewer_url = '/viewer/ModoViewer.swf';
  var lib_url = '/viewer/fl_lib_1.swf';
  if (on_s3 == '1') {
  	files_url = 'http://s3.amazonaws.com/edmodo/docs/';
  	viewer_url = 'http://s3.amazonaws.com/edmodo/docs/modoviewer7.swf';
  	lib_url = 'http://s3.amazonaws.com/edmodo/docs/fl_lib_12.swf';
  }
  var doc_viewer_content = "<object classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" codebase=\"http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0\" width=\"505\" height=\"438\" id=\"myMovieName\"><param name=\"wmode\" value=\"transparent\"></param><param name=\"movie\" value=\""+viewer_url+"\"/><param name=\"quality\" value=\"high\"/><param name=\"bgcolor\" value=\"#FFFFFF\"/><param name=\"flashvars\" value=\"doc_url="+files_url+doc_id+".swf&ext_lib="+lib_url+"&orig_doc="+orig+"\"/><param name=\"allowScriptAccess\" value=\"always\"/><param name=\"allowFullScreen\" value=\"true\"/><embed wmode=\"transparent\" flashvars=\"doc_url="+files_url+doc_id+".swf&ext_lib="+lib_url+"&orig_doc="+orig+"\" src=\""+viewer_url+"\" allowScriptAccess=\"always\" allowFullScreen=\"true\" quality=\"high\" bgcolor=\"#FFFFFF\" width=\"505\" height=\"438\" name=\"myMovieName\" align=\"\" type=\"application/x-shockwave-flash\" pluginspage=\"http://www.macromedia.com/go/getflashplayer\"></embed></object>";  
  $('#doc_viewer_show_'+doc_id).html(doc_viewer_content);
  $('#doc_viewer_show_'+doc_id).css('display', 'block');
  $('#doc_viewer_show_'+doc_id).css('clear', 'both'); 
  $('#doc_viewer_show_'+doc_id).css('margin-top', '7px'); 
  $('#doc_viewer_show_'+doc_id).css('margin-left', '3px'); 
}
function disabledMouseWheel(){
    return false;
}
function closeDocViewer() {
	tb_remove();
    $(document).unmousewheel(disabledMouseWheel);
}
function check_doc(fid) {
  var url = '/method/check_doc.php';
  $.get(url, {file_id:fid},function(rsp) {if (rsp != '1') { $('#view_'+fid).html(rsp); }});
}
/*function show_viewer() {
  tb_show('', "#TB_inline?&height=438&width=571&inlineId=doc_viewer", false);
  $('#TB_title').css('display','none');
  $('#TB_window').css('border-width','0');
  $(document).mousewheel(disabled_mouse_wheel);
}
function disabled_mouse_wheel(){
    return false;
}
function hide_viewer() {
	tb_remove();
    $(document).unmousewheel(disabled_mouse_wheel);
}*/


function open_chalk(post_id, etherpad_code, token) {
		    $('#open_chalk_link_'+post_id).html("<a target=\"_blank\" href=\"http://chalk.edmodo.com/"+etherpad_code+"?token="+token+"\" style=\"color:#fff;\">Launch Chalk</a>");
		    $('#pst_content_'+post_id).append('<div id="lock_chalk_link_'+post_id+'" style="float:left;margin:13px 0 0 5px;">or <a href="javascript:;" onclick="lock_chalk('+post_id+',\''+token+'\')" style="font-weight:bold;">Lock</a></div>');
}

function lock_chalk(post_id, token) {
		$.get('/chalk/lock.php', {p: post_id}, function(etherpad_code) {
		  if (etherpad_code) {
			$('#open_chalk_link_'+post_id).html("<a target=\"_blank\" href=\"http://chalk.edmodo.com/ep/pad/view/"+etherpad_code+"/latest?token="+token+"\" style=\"color:#fff;\">View Chalk</a>");
		    $('#lock_chalk_link_'+post_id).html('or <a href="javascript:;" onclick="unlock_chalk('+post_id+',\''+token+'\')" style="font-weight:bold;">Unlock</a>');
		  }
		});		
}

function unlock_chalk(post_id, token) {
		$.get('/chalk/unlock.php', {p: post_id}, function(etherpad_code) {
		  if (etherpad_code) {
		    $('#open_chalk_link_'+post_id).html("<a target=\"_blank\" href=\"http://chalk.edmodo.com/"+etherpad_code+"?token="+token+"\" style=\"color:#fff;\">Launch Chalk</a>");
		    $('#lock_chalk_link_'+post_id).html('or <a href="javascript:;" onclick="lock_chalk('+post_id+',\''+token+'\')" style="font-weight:bold;">Lock</a>');
		  }
		});		
}

function load_new_chalk(post_id) {
    if ($('#new_chalk_'+post_id).attr('src') == "http://chalk.edmodo.com/ep/pad/newpad") {
		//$('#new_chalk_'+post_id).attr('src', "http://www.edmodo.com/chalk/null.php");
		$.get('/chalk/init.php', {p: post_id}, function(rsp) {
		  if (rsp) {
		    var codes = rsp.split('|');
		    /*$('#open_chalk_link_'+post_id).html("<a onclick=\"open_chalk("+post_id+",'"+codes[0]+"','"+codes[1]+"');\" target=\"_blank\" href=\"http://chalk.edmodo.com:9000/"+codes[0]+"?token="+codes[1]+"\" style=\"color:#fff;\">Open Chalk</a>");*/
		  }
		});		
	}
}


// http://snippets.dzone.com/posts/show/3381
function is_numeric(value) {
  if (value == null || !value.toString().match(/^[-]?\d*\.?\d*$/)) return false;
  return true;
}


// http://www.coldfusionjedi.com/index.cfm/2007/1/21/Setting-the-disabled-property-of-a-form-field-help-needed
jQuery.fn.extend({
filterDisabled : function(){ return this.filter(function(){return (typeof(this.disabled)!=undefined)})},
disabled: function(h) {
   if (h!=undefined) return this.filterDisabled().each(function(){this.disabled=h});
   this.filterDisabled().each(function() {h=((h||this.disabled)&&this.disabled)}); return h;
},
toggleDisabled: function() { return this.filterDisabled().each(function(){this.disabled=!this.disabled});}
});