|
|
(67 intermediate revisions by one user not shown) |
Line 1: |
Line 1: |
− | World Star (Windows 7 64 bit) | + | '''OpenSim Since 2008'''<br> |
| + | = Inworld contact = |
| + | OSgrid user: World Star |
| + | <br> |
| + | = RL Contact = |
| + | E-Mail: astralgrid@gmail.com"<br> |
| | | |
− | Open Profile Projects
| |
| | | |
− | - php
| + | = Caching INI = |
| | | |
− | - sql | + | [Startup]<br> |
| + | crash_dir = ./Simulator-Cache/Crashes<br> |
| + | DecodedSculptMapPath = ./Simulator-Cache/Sculpt-Map<br> |
| + | [AssetCache]<br> |
| + | CacheDirectory = ./Simulator-Cache/Asset-Cache<br> |
| + | [XEngine]<br> |
| + | ScriptEnginesPath = ./Simulator-Cache/Script-Engines-Cache<br> |
| + | [DataSnapshot]<br> |
| + | snapshot_cache_directory = ./Simulator-Cache/Data-Snapshot-Cache<br> |
| | | |
| | | |
| + | = Xengine INI = |
| | | |
− | <?PHP
| + | [XEngine]<br> |
− | | + | Enabled = true<br> |
− | | + | MinThreads = 2<br> |
− | | + | MaxThreads = 100<br> |
− | $DB_HOST = "localhost";<br>$DB_USER = "root";<br>$DB_PASSWORD = "";<br>$DB_NAME = "profile";
| + | IdleTimeout = 60<br> |
− | | + | Priority = "Normal"<br> |
− | | + | MaxScriptEventQueue = 300<br> |
− | | + | ThreadStackSize = 262144<br> |
− | <br>mysql_connect ($DB_HOST, $DB_USER, $DB_PASSWORD);<br>mysql_select_db ($DB_NAME);<br>$zeroUUID = "00000000-0000-0000-0000-000000000000";<br>$xmlrpc_server = xmlrpc_server_create();<br>xmlrpc_server_register_method($xmlrpc_server, "avatarclassifiedsrequest",<br> "avatarclassifiedsrequest");
| + | AppDomainLoading = true<br> |
− | | + | AsyncLLCommandLoopms = 50<br> |
− | function avatarclassifiedsrequest($method_name, $params, $app_data)<br>{<br> $req = $params[0];
| + | WriteScriptSourceToDebugFile = true<br> |
− | | + | DefaultCompileLanguage = lsl<br> |
− | $uuid = $req['uuid'];
| + | AllowedCompilers=lsl,cs<br> |
− | | + | CompileWithDebugInformation = true<br> |
− | <br> $result = mysql_query("SELECT * FROM profile_classifieds WHERE ".<br> "creatoruuid = '". mysql_escape_string($uuid) ."'"); | + | AllowLightShareFunctions = true<br> |
− | | + | SaveInterval = 120<br> |
− | $data = array();
| + | MaintenanceInterval = 10<br> |
− | | + | EventLimit = 30<br> |
− | while (($row = mysql_fetch_assoc($result)))<br> {<br> $data[] = array(<br> "classifiedid" => $row["classifieduuid"],<br> "name" => $row["name"]);<br> }
| + | KillTimedOutScripts = false<br> |
− | | + | ScriptDelayFactor = 1.0<br> |
− | $response_xml = xmlrpc_encode(array(<br> 'success' => True,<br> 'data' => $data<br> ));
| + | ScriptDistanceLimitFactor = 1.0<br> |
− | | + | NotecardLineReadCharsMax = 1255<br> |
− | print $response_xml;<br>}
| + | SensorMaxRange = 96.0<br> |
− | | + | SensorMaxResults = 16<br> |
− | # Classifieds Update
| + | AutomaticLinkPermission = false<br> |
− | | + | DisableUndergroundMovement = true<br> |
− | xmlrpc_server_register_method($xmlrpc_server, "classified_update",<br> "classified_update");
| + | |
− | | + | |
− | function classified_update($method_name, $params, $app_data)<br>{<br> global $zeroUUID;
| + | |
− | | + | |
− | $req = $params[0];
| + | |
− | | + | |
− | $classifieduuid = $req['classifiedUUID'];<br> $creator = $req['creatorUUID'];<br> $category = $req['category'];<br> $name = $req['name'];<br> $description = $req['description'];<br> $parceluuid = $req['parcelUUID'];<br> $parentestate = $req['parentestate'];<br> $snapshotuuid = $req['snapshotUUID'];<br> $simname = $req['sim_name'];<br> $globalpos = $req['globalpos'];<br> $parcelname = $req['parcelname'];<br> $classifiedflag = $req['classifiedFlags'];<br> $priceforlist = $req['classifiedPrice'];
| + | |
− | | + | |
− | // Check if we already have this one in the database<br> $check = mysql_query("SELECT COUNT(*) FROM profile_classifieds WHERE ".<br> "classifieduuid = '". mysql_escape_string($classifieduuid) ."'");
| + | |
− | | + | |
− | while ($row = mysql_fetch_row($check))<br> {<br> $ready = $row[0];<br> }
| + | |
− | | + | |
− | if ($ready == 0)<br> {<br> // Doing some late checking<br> // Should be done by the module but let's see what happens when<br> // I do it here
| + | |
− | | + | |
− | if($parcelname == "")<br> $parcelname = "Unknown";
| + | |
− | | + | |
− | if($parceluuid == "")<br> $parceluuid = $zeroUUID;
| + | |
− | | + | |
− | if($description == "")<br> $description = "No Description";
| + | |
− | | + | |
− | if($classifiedflag == 2)<br> {<br> $creationdate = time();<br> $expirationdate = time() + (7 * 24 * 60 * 60);<br> }<br> else<br> {<br> $creationdate = time();<br> $expirationdate = time() + (365 * 24 * 60 * 60);<br> }
| + | |
− | | + | |
− | $insertquery = "INSERT INTO profile_classifieds VALUES ".<br> "('". mysql_escape_string($classifieduuid) ."',".<br> "'". mysql_escape_string($creator) ."',".<br> "". mysql_escape_string($creationdate) .",".<br> "". mysql_escape_string($expirationdate) .",".<br> "'". mysql_escape_string($category) ."',".<br> "'". mysql_escape_string($name) ."',".<br> "'". mysql_escape_string($description) ."',".<br> "'". mysql_escape_string($parceluuid) ."',".<br> "". mysql_escape_string($parentestate) .",".<br> "'". mysql_escape_string($snapshotuuid) ."',".<br> "'". mysql_escape_string($simname) ."',".<br> "'". mysql_escape_string($globalpos) ."',".<br> "'". mysql_escape_string($parcelname) ."',".<br> "". mysql_escape_string($classifiedflag) .",".<br> "". mysql_escape_string($priceforlist) .")";
| + | |
− | | + | |
− | // Create a new record for this classified<br> $result = mysql_query($insertquery);<br> }<br> else<br> {
| + | |
− | | + | |
− | }
| + | |
− | | + | |
− | $response_xml = xmlrpc_encode(array(<br> 'success' => True,<br> 'data' => $data<br> ));
| + | |
− | | + | |
− | print $response_xml;<br>}
| + | |
− | | + | |
− | # Classifieds Delete
| + | |
− | | + | |
− | xmlrpc_server_register_method($xmlrpc_server, "classified_delete",<br> "classified_delete");
| + | |
− | | + | |
− | function classified_delete($method_name, $params, $app_data)<br>{<br> $req = $params[0];
| + | |
− | | + | |
− | $classifieduuid = $req['classifiedID'];
| + | |
− | | + | |
− | $result = mysql_query("DELETE FROM profile_classifieds WHERE ".<br> "classifieduuid = '".mysql_escape_string($classifieduuid) ."'");
| + | |
− | | + | |
− | $response_xml = xmlrpc_encode(array(<br> 'success' => True,<br> 'data' => $data<br> ));
| + | |
− | | + | |
− | print $response_xml;<br>}
| + | |
− | | + | |
− | #<br># Picks<br>#
| + | |
− | | + | |
− | # Avatar Picks Request
| + | |
− | | + | |
− | xmlrpc_server_register_method($xmlrpc_server, "avatarpicksrequest",<br> "avatarpicksrequest");
| + | |
− | | + | |
− | function avatarpicksrequest($method_name, $params, $app_data)<br>{<br> $req = $params[0];
| + | |
− | | + | |
− | $uuid = $req['uuid'];
| + | |
− | | + | |
− | $data = array();
| + | |
− | | + | |
− | $result = mysql_query("SELECT `pickuuid`,`name` FROM profile_picks WHERE ".<br> "creatoruuid = '". mysql_escape_string($uuid) ."'");
| + | |
− | | + | |
− | while (($row = mysql_fetch_assoc($result)))<br> {<br> $data[] = array(<br> "pickid" => $row["pickuuid"],<br> "name" => $row["name"]);<br> }
| + | |
− | | + | |
− | $response_xml = xmlrpc_encode(array(<br> 'success' => True,<br> 'data' => $data<br> ));
| + | |
− | | + | |
− | print $response_xml;<br>}
| + | |
− | | + | |
− | # Request Picks for User
| + | |
− | | + | |
− | xmlrpc_server_register_method($xmlrpc_server, "pickinforequest",<br> "pickinforequest");
| + | |
− | | + | |
− | function pickinforequest($method_name, $params, $app_data)<br>{<br> $req = $params[0];
| + | |
− | | + | |
− | $uuid = $req['avatar_id'];<br> $pick = $req['pick_id'];
| + | |
− | | + | |
− | $data = array();
| + | |
− | | + | |
− | $result = mysql_query("SELECT * FROM profile_picks WHERE ".<br> "creatoruuid = '". mysql_escape_string($uuid) ."' AND ".<br> "pickuuid = '". mysql_escape_string($pick) ."'");
| + | |
− | | + | |
− | $row = mysql_fetch_assoc($result);<br> if ($row != False)<br> {<br> if ($row["description"] == null || $row["description"] == "")<br> $row["description"] = "No description given";
| + | |
− | | + | |
− | $data[] = array(<br> "pickuuid" => $row["pickuuid"],<br> "creatoruuid" => $row["creatoruuid"],<br> "toppick" => $row["toppick"],<br> "parceluuid" => $row["parceluuid"],<br> "name" => $row["name"],<br> "description" => $row["description"],<br> "snapshotuuid" => $row["snapshotuuid"],<br> "user" => $row["user"],<br> "originalname" => $row["originalname"],<br> "simname" => $row["simname"],<br> "posglobal" => $row["posglobal"],<br> "sortorder"=> $row["sortorder"],<br> "enabled" => $row["enabled"]);<br> }
| + | |
− | | + | |
− | $response_xml = xmlrpc_encode(array(<br> 'success' => True,<br> 'data' => $data<br> ));
| + | |
− | | + | |
− | print $response_xml;<br>}
| + | |
− | | + | |
− | # Picks Update
| + | |
− | | + | |
− | xmlrpc_server_register_method($xmlrpc_server, "picks_update",<br> "picks_update");
| + | |
− | | + | |
− | function picks_update($method_name, $params, $app_data)<br>{<br> global $zeroUUID;
| + | |
− | | + | |
− | $req = $params[0];
| + | |
− | | + | |
− | $pickuuid = $req['pick_id'];<br> $creator = $req['creator_id'];<br> $toppick = $req['top_pick'];<br> $name = $req['name'];<br> $description = $req['desc'];<br> $parceluuid = $req['parcel_uuid'];<br> $snapshotuuid = $req['snapshot_id'];<br> $user = $req['user'];<br> $simname = $req['sim_name'];<br> $posglobal = $req['pos_global'];<br> $sortorder = $req['sort_order'];<br> $enabled = $req['enabled'];
| + | |
− | | + | |
− | if($parceluuid == "")<br> $parceluuid = $zeroUUID;
| + | |
− | | + | |
− | if($description == "")<br> $description = "No Description";
| + | |
− | | + | |
− | // Check if we already have this one in the database<br> $check = mysql_query("SELECT COUNT(*) FROM profile_picks WHERE ".<br> "pickuuid = '". mysql_escape_string($pickuuid) ."'");
| + | |
− | | + | |
− | $row = mysql_fetch_row($check);
| + | |
− | | + | |
− | if ($row[0] == 0)<br> {<br> if($user == null || $user == "")<br> $user = "Unknown";
| + | |
− | | + | |
− | //The original parcel name is the same as the name of the<br> //profile pick when a new profile pick is being created.<br> $original = $name;
| + | |
− | | + | |
− | $query = "INSERT INTO profile_picks VALUES ".<br> "('". mysql_escape_string($pickuuid) ."',".<br> "'". mysql_escape_string($creator) ."',".<br> "'". mysql_escape_string($toppick) ."',".<br> "'". mysql_escape_string($parceluuid) ."',".<br> "'". mysql_escape_string($name) ."',".<br> "'". mysql_escape_string($description) ."',".<br> "'". mysql_escape_string($snapshotuuid) ."',".<br> "'". mysql_escape_string($user) ."',".<br> "'". mysql_escape_string($original) ."',".<br> "'". mysql_escape_string($simname) ."',".<br> "'". mysql_escape_string($posglobal) ."',".<br> "'". mysql_escape_string($sortorder) ."',".<br> "'". mysql_escape_string($enabled) ."')";<br> }<br> else<br> {<br> $query = "UPDATE profile_picks SET " .<br> "parceluuid = '". mysql_escape_string($parceluuid) . "', " .<br> "name = '". mysql_escape_string($name) . "', " .<br> "description = '". mysql_escape_string($description) . "', " .<br> "snapshotuuid = '". mysql_escape_string($snapshotuuid) . "' WHERE ".<br> "pickuuid = '". mysql_escape_string($pickuuid) ."'";<br> }
| + | |
− | | + | |
− | $result = mysql_query($query);<br> if ($result != False)<br> $result = True;
| + | |
− | | + | |
− | $response_xml = xmlrpc_encode(array(<br> 'success' => $result,<br> 'errorMessage' => mysql_error()<br> ));
| + | |
− | | + | |
− | print $response_xml;<br>}
| + | |
− | | + | |
− | # Picks Delete
| + | |
− | | + | |
− | xmlrpc_server_register_method($xmlrpc_server, "picks_delete",<br> "picks_delete");
| + | |
− | | + | |
− | function picks_delete($method_name, $params, $app_data)<br>{<br> $req = $params[0];
| + | |
− | | + | |
− | $pickuuid = $req['pick_id'];
| + | |
− | | + | |
− | $result = mysql_query("DELETE FROM profile_picks WHERE ".<br> "pickuuid = '".mysql_escape_string($pickuuid) ."'");
| + | |
− | | + | |
− | if ($result != False)<br> $result = True;
| + | |
− | | + | |
− | $response_xml = xmlrpc_encode(array(<br> 'success' => $result,<br> 'errorMessage' => mysql_error()<br> ));
| + | |
− | | + | |
− | print $response_xml;<br>}
| + | |
− | | + | |
− | #<br># Notes<br>#
| + | |
− | | + | |
− | # Avatar Notes Request
| + | |
− | | + | |
− | <br>xmlrpc_server_register_method($xmlrpc_server, "avatarnotesrequest",<br> "avatarnotesrequest");
| + | |
− | | + | |
− | function avatarnotesrequest($method_name, $params, $app_data)<br>{<br> $req = $params[0];
| + | |
− | | + | |
− | $uuid = $req['avatar_id'];<br> $targetuuid = $req['uuid'];
| + | |
− | | + | |
− | $result = mysql_query("SELECT notes FROM profile_notes WHERE ".<br> "useruuid = '". mysql_escape_string($uuid) ."' AND ".<br> "targetuuid = '". mysql_escape_string($targetuuid) ."'");
| + | |
− | | + | |
− | $row = mysql_fetch_row($result);<br> if ($row == False)<br> $notes = "";<br> else<br> $notes = $row[0];
| + | |
− | | + | |
− | $data[] = array(<br> "targetid" => $targetuuid,<br> "notes" => $notes);
| + | |
− | | + | |
− | $response_xml = xmlrpc_encode(array(<br> 'success' => True,<br> 'data' => $data<br> ));
| + | |
− | | + | |
− | print $response_xml;<br>}
| + | |
− | | + | |
− | # Avatar Notes Update
| + | |
− | | + | |
− | xmlrpc_server_register_method($xmlrpc_server, "avatar_notes_update",<br> "avatar_notes_update");
| + | |
− | | + | |
− | function avatar_notes_update($method_name, $params, $app_data)<br>{<br> $req = $params[0];
| + | |
− | | + | |
− | $uuid = $req['avatar_id'];<br> $targetuuid = $req['target_id'];<br> $notes = $req['notes'];
| + | |
− | | + | |
− | // Check if we already have this one in the database
| + | |
− | | + | |
− | $check = mysql_query("SELECT COUNT(*) FROM profile_notes WHERE ".<br> "useruuid = '". mysql_escape_string($uuid) ."' AND ".<br> "targetuuid = '". mysql_escape_string($targetuuid) ."'");
| + | |
− | | + | |
− | $row = mysql_fetch_row($check);
| + | |
− | | + | |
− | if ($row[0] == 0)<br> {<br> // Create a new record for this avatar note<br> $result = mysql_query("INSERT INTO profile_notes VALUES ".<br> "('". mysql_escape_string($uuid) ."',".<br> "'". mysql_escape_string($targetuuid) ."',".<br> "'". mysql_escape_string($notes) ."')");<br> }<br> else if ($notes == "")<br> {<br> // Delete the record for this avatar note<br> $result = mysql_query("DELETE FROM profile_notes WHERE ".<br> "useruuid = '". mysql_escape_string($uuid) ."' AND ".<br> "targetuuid = '". mysql_escape_string($targetuuid) ."'");<br> }<br> else<br> {<br> // Update the existing record<br> $result = mysql_query("UPDATE profile_notes SET ".<br> "notes = '". mysql_escape_string($notes) ."' WHERE ".<br> "useruuid = '". mysql_escape_string($uuid) ."' AND ".<br> "targetuuid = '". mysql_escape_string($targetuuid) ."'");<br> }
| + | |
− | | + | |
− | $response_xml = xmlrpc_encode(array(<br> 'success' => $result,<br> 'errorMessage' => mysql_error()<br> ));
| + | |
− | | + | |
− | print $response_xml;<br>}
| + | |
− | | + | |
− | # Profile bits
| + | |
− | | + | |
− | xmlrpc_server_register_method($xmlrpc_server, "avatar_properties_request",<br> "avatar_properties_request");
| + | |
− | | + | |
− | function avatar_properties_request($method_name, $params, $app_data)<br>{<br> global $zeroUUID;
| + | |
− | | + | |
− | $req = $params[0];
| + | |
− | | + | |
− | $uuid = $req['avatar_id'];
| + | |
− | | + | |
− | $result = mysql_query("SELECT * FROM profile WHERE ".<br> "useruuid = '". mysql_escape_string($uuid) ."'");<br> $row = mysql_fetch_assoc($result);
| + | |
− | | + | |
− | if ($row != False)<br> {<br> $data[] = array(<br> "ProfileUrl" => $row["profileURL"],<br> "Image" => $row["profileImage"],<br> "AboutText" => $row["profileAboutText"],<br> "FirstLifeImage" => $row["profileFirstImage"],<br> "FirstLifeAboutText" => $row["profileFirstText"],<br> "Partner" => $row["profilePartner"],
| + | |
− | | + | |
− | //Return interest data along with avatar properties<br> "wantmask" => $row["profileWantToMask"],<br> "wanttext" => $row["profileWantToText"],<br> "skillsmask" => $row["profileSkillsMask"],<br> "skillstext" => $row["profileSkillsText"],<br> "languages" => $row["profileLanguages"]);<br> }<br> else<br> {<br> //Insert empty record for avatar.<br> //FIXME: Should this only be done when asking for ones own profile?<br> $sql = "INSERT INTO profile VALUES ( ".<br> "'". mysql_escape_string($uuid) ."', ".<br> "'$zeroUUID', 0, 0, '', 0, '', 0, '', '', ".<br> "'$zeroUUID', '', '$zeroUUID', '')";<br> $result = mysql_query($sql);
| + | |
− | | + | |
− | $data[] = array(<br> "ProfileUrl" => "",<br> "Image" => $zeroUUID,<br> "AboutText" => "",<br> "FirstLifeImage" => $zeroUUID,<br> "FirstLifeAboutText" => "",<br> "Partner" => $zeroUUID,
| + | |
− | | + | |
− | "wantmask" => 0,<br> "wanttext" => "",<br> "skillsmask" => 0,<br> "skillstext" => "",<br> "languages" => "");<br> }
| + | |
− | | + | |
− | $response_xml = xmlrpc_encode(array(<br> 'success' => True,<br> 'data' => $data<br> ));
| + | |
− | | + | |
− | print $response_xml;<br>}
| + | |
− | | + | |
− | xmlrpc_server_register_method($xmlrpc_server, "avatar_properties_update",<br> "avatar_properties_update");
| + | |
− | | + | |
− | function avatar_properties_update($method_name, $params, $app_data)<br>{<br> $req = $params[0];
| + | |
− | | + | |
− | $uuid = $req['avatar_id'];<br> $profileURL = $req['ProfileUrl'];<br> $image = $req['Image'];<br> $abouttext = $req['AboutText'];<br> $firstlifeimage = $req['FirstLifeImage'];<br> $firstlifetext = $req['FirstLifeAboutText'];
| + | |
− | | + | |
− | $result=mysql_query("UPDATE profile SET ".<br> "profileURL='". mysql_escape_string($profileURL) ."', ".<br> "profileImage='". mysql_escape_string($image) ."', ".<br> "profileAboutText='". mysql_escape_string($abouttext) ."', ".<br> "profileFirstImage='". mysql_escape_string($firstlifeimage) ."', ".<br> "profileFirstText='". mysql_escape_string($firstlifetext) ."' ".<br> "WHERE useruuid='". mysql_escape_string($uuid) ."'"<br> );
| + | |
− | | + | |
− | $response_xml = xmlrpc_encode(array(<br> 'success' => $result,<br> 'errorMessage' => mysql_error()<br> ));
| + | |
− | | + | |
− | print $response_xml;<br>}
| + | |
− | | + | |
− | <br>// Profile Interests
| + | |
− | | + | |
− | xmlrpc_server_register_method($xmlrpc_server, "avatar_interests_update",<br> "avatar_interests_update");
| + | |
− | | + | |
− | function avatar_interests_update($method_name, $params, $app_data)<br>{<br> $req = $params[0];
| + | |
− | | + | |
− | $uuid = $req['avatar_id'];<br> $wanttext = $req['wanttext'];<br> $wantmask = $req['wantmask'];<br> $skillstext = $req['skillstext'];<br> $skillsmask = $req['skillsmask'];<br> $languages = $req['languages'];
| + | |
− | | + | |
− | $result = mysql_query("UPDATE profile SET ".<br> "profileWantToMask = ". mysql_escape_string($wantmask) .",".<br> "profileWantToText = '". mysql_escape_string($wanttext) ."',".<br> "profileSkillsMask = ". mysql_escape_string($skillsmask) .",".<br> "profileSkillsText = '". mysql_escape_string($skillstext) ."',".<br> "profileLanguages = '". mysql_escape_string($languages) ."' ".<br> "WHERE useruuid = '". mysql_escape_string($uuid) ."'"<br> );
| + | |
− | | + | |
− | $response_xml = xmlrpc_encode(array(<br> 'success' => True<br> ));
| + | |
− | | + | |
− | print $response_xml;<br>}
| + | |
− | | + | |
− | // User Preferences
| + | |
− | | + | |
− | xmlrpc_server_register_method($xmlrpc_server, "user_preferences_request",<br> "user_preferences_request");
| + | |
− | | + | |
− | function user_preferences_request($method_name, $params, $app_data)<br>{<br> $req = $params[0];
| + | |
− | | + | |
− | $uuid = $req['avatar_id'];
| + | |
− | | + | |
− | $result = mysql_query("SELECT imviaemail,visible,email FROM profile_settings WHERE ".<br> "useruuid = '". mysql_escape_string($uuid) ."'");
| + | |
− | | + | |
− | $row = mysql_fetch_assoc($result);
| + | |
− | | + | |
− | if ($row != False)<br> {<br> $data[] = array(<br> "imviaemail" => $row["imviaemail"],<br> "visible" => $row["visible"],<br> "email" => $row["email"]);<br> }<br> else<br> {<br> //Insert empty record for avatar.<br> //NOTE: The 'false' values here are enums defined in database<br> $sql = "INSERT INTO profile_settings VALUES ".<br> "('". mysql_escape_string($uuid) ."', ".<br> "'false', 'false', '')";<br> $result = mysql_query($sql);
| + | |
− | | + | |
− | $data[] = array(<br> "imviaemail" => False,<br> "visible" => False,<br> "email" => "");<br> }
| + | |
− | | + | |
− | $response_xml = xmlrpc_encode(array(<br> 'success' => True,<br> 'data' => $data<br> ));
| + | |
− | | + | |
− | print $response_xml;<br>}
| + | |
− | | + | |
− | xmlrpc_server_register_method($xmlrpc_server, "user_preferences_update",<br> "user_preferences_update");
| + | |
− | | + | |
− | function user_preferences_update($method_name, $params, $app_data)<br>{
| + | |
− | | + | |
− | $req = $params[0];
| + | |
− | | + | |
− | $uuid = $req['avatar_id'];<br> $wantim = $req['imViaEmail'];<br> $directory = $req['visible'];
| + | |
− | | + | |
− | $result = mysql_query("UPDATE profile_settings SET ".<br> "imviaemail = '".mysql_escape_string($wantim) ."', ".<br> "visible = '".mysql_escape_string($directory) ."' WHERE ".<br> "useruuid = '". mysql_escape_string($uuid) ."'");
| + | |
− | | + | |
− | $response_xml = xmlrpc_encode(array(<br> 'success' => True,<br> 'data' => $data<br> ));
| + | |
− | | + | |
− | print $response_xml;<br>}
| + | |
− | | + | |
− | #<br># Process the request<br>#
| + | |
− | | + | |
− | $request_xml = $HTTP_RAW_POST_DATA;<br>xmlrpc_server_call_method($xmlrpc_server, $request_xml, '');<br>xmlrpc_server_destroy($xmlrpc_server);<br>?>
| + | |