version; global $current_user; get_currentuserinfo(); $force_login=get_option('ajaxchat_force_login'); switch($_GET['action']) { case "test": print_r($_SESSION); break; case "popout": if(empty($_GET['status'])) { die(); } $_SESSION['popOut']=$_GET['status']; break; case "sendCoord": $_SESSION['winCoord']="left: ".($_GET['left'] ? $_GET['left'] : 0).", top: ".($_GET['top'] ? $_GET['top'] : 0); break; case "open": if($_GET['val']==1) { $_SESSION['open']=1; } else { $_SESSION['open']=0; } break; case "updateName": if(empty($_GET['name'])) { die("Error: No name provided"); } if(strlen($_GET['name'])>15) { $name=substr($_GET['name'],0,15); } else { $name=$_GET['name']; } if($name==$_SESSION['myName']) { die("Error: Your name is already `".$name."`"); } $r=$wpdb->query($wpdb->prepare("UPDATE ajaxim_sess SET name='%s' WHERE sessid='%s'",$name,session_id())); if($r) { print "OK:".stripslashes($name); $_SESSION['myName']=$name; } else { print "Error: ".$wpdb->last_error; } break; case "online_list": if($current_user->ID=='' && $force_login) { die("Please login."); } $r=$wpdb->query("SELECT name,sessid FROM ajaxim_sess WHERE lasttime>=".(time()-35)." ORDER BY name"); /* Print number of rows and a delimiter We'll use this to send both the count and names at the same time and parse it out on the JavaScript side. */ print $r."::"; foreach($wpdb->last_result as $row) { print "