User:World Sar

From OpenSimulator

(Difference between revisions)
Jump to: navigation, search
m (My profile)
 
(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 =
  
&nbsp;&lt;?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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "avatarclassifiedsrequest");
+
AppDomainLoading = true<br>
 
+
AsyncLLCommandLoopms = 50<br>
function avatarclassifiedsrequest($method_name, $params, $app_data)<br>{<br>&nbsp;&nbsp;&nbsp; $req&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = $params[0];
+
WriteScriptSourceToDebugFile = true<br>
 
+
DefaultCompileLanguage = lsl<br>
&nbsp;&nbsp;&nbsp; $uuid&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = $req['uuid'];
+
AllowedCompilers=lsl,cs<br>
 
+
CompileWithDebugInformation = true<br>
<br>&nbsp;&nbsp;&nbsp; $result = mysql_query("SELECT * FROM profile_classifieds WHERE ".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "creatoruuid = '". mysql_escape_string($uuid) ."'");
+
AllowLightShareFunctions = true<br>
 
+
SaveInterval = 120<br>
&nbsp;&nbsp;&nbsp; $data = array();
+
MaintenanceInterval = 10<br>
 
+
EventLimit = 30<br>
&nbsp;&nbsp;&nbsp; while (($row = mysql_fetch_assoc($result)))<br>&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $data[] = array(<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "classifiedid" =&gt; $row["classifieduuid"],<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "name" =&gt; $row["name"]);<br>&nbsp;&nbsp;&nbsp; }
+
KillTimedOutScripts = false<br>
 
+
ScriptDelayFactor = 1.0<br>
&nbsp;&nbsp;&nbsp; $response_xml = xmlrpc_encode(array(<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 'success' =&gt; True,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 'data' =&gt; $data<br>&nbsp;&nbsp;&nbsp; ));
+
ScriptDistanceLimitFactor = 1.0<br>
 
+
NotecardLineReadCharsMax = 1255<br>
&nbsp;&nbsp;&nbsp; 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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "classified_update");
+
 
+
function classified_update($method_name, $params, $app_data)<br>{<br>&nbsp;&nbsp;&nbsp; global $zeroUUID;
+
 
+
&nbsp;&nbsp;&nbsp; $req&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = $params[0];
+
 
+
&nbsp;&nbsp;&nbsp; $classifieduuid = $req['classifiedUUID'];<br>&nbsp;&nbsp;&nbsp; $creator&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = $req['creatorUUID'];<br>&nbsp;&nbsp;&nbsp; $category&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = $req['category'];<br>&nbsp;&nbsp;&nbsp; $name&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = $req['name'];<br>&nbsp;&nbsp;&nbsp; $description&nbsp;&nbsp;&nbsp; = $req['description'];<br>&nbsp;&nbsp;&nbsp; $parceluuid&nbsp;&nbsp;&nbsp;&nbsp; = $req['parcelUUID'];<br>&nbsp;&nbsp;&nbsp; $parentestate&nbsp;&nbsp; = $req['parentestate'];<br>&nbsp;&nbsp;&nbsp; $snapshotuuid&nbsp;&nbsp; = $req['snapshotUUID'];<br>&nbsp;&nbsp;&nbsp; $simname&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = $req['sim_name'];<br>&nbsp;&nbsp;&nbsp; $globalpos&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = $req['globalpos'];<br>&nbsp;&nbsp;&nbsp; $parcelname&nbsp;&nbsp;&nbsp;&nbsp; = $req['parcelname'];<br>&nbsp;&nbsp;&nbsp; $classifiedflag = $req['classifiedFlags'];<br>&nbsp;&nbsp;&nbsp; $priceforlist&nbsp;&nbsp; = $req['classifiedPrice'];
+
 
+
&nbsp;&nbsp;&nbsp; // Check if we already have this one in the database<br>&nbsp;&nbsp;&nbsp; $check = mysql_query("SELECT COUNT(*) FROM profile_classifieds WHERE ".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "classifieduuid = '". mysql_escape_string($classifieduuid) ."'");
+
 
+
&nbsp;&nbsp;&nbsp; while ($row = mysql_fetch_row($check))<br>&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $ready = $row[0];<br>&nbsp;&nbsp;&nbsp; }
+
 
+
&nbsp;&nbsp;&nbsp; if ($ready == 0)<br>&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // Doing some late checking<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // Should be done by the module but let's see what happens when<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // I do it here
+
 
+
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if($parcelname == "")<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $parcelname = "Unknown";
+
 
+
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if($parceluuid == "")<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $parceluuid = $zeroUUID;
+
 
+
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if($description == "")<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $description = "No Description";
+
 
+
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if($classifiedflag == 2)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $creationdate = time();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $expirationdate = time() + (7 * 24 * 60 * 60);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; else<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $creationdate = time();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $expirationdate = time() + (365 * 24 * 60 * 60);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }
+
 
+
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $insertquery = "INSERT INTO profile_classifieds VALUES ".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "('". mysql_escape_string($classifieduuid) ."',".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "'". mysql_escape_string($creator) ."',".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "". mysql_escape_string($creationdate) .",".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "". mysql_escape_string($expirationdate) .",".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "'". mysql_escape_string($category) ."',".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "'". mysql_escape_string($name) ."',".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "'". mysql_escape_string($description) ."',".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "'". mysql_escape_string($parceluuid) ."',".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "". mysql_escape_string($parentestate) .",".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "'". mysql_escape_string($snapshotuuid) ."',".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "'". mysql_escape_string($simname) ."',".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "'". mysql_escape_string($globalpos) ."',".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "'". mysql_escape_string($parcelname) ."',".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "". mysql_escape_string($classifiedflag) .",".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "". mysql_escape_string($priceforlist) .")";
+
 
+
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // Create a new record for this classified<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $result = mysql_query($insertquery);<br>&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; else<br>&nbsp;&nbsp;&nbsp; {
+
 
+
&nbsp;&nbsp;&nbsp; }
+
 
+
&nbsp;&nbsp;&nbsp; $response_xml = xmlrpc_encode(array(<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 'success' =&gt; True,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 'data' =&gt; $data<br>&nbsp;&nbsp;&nbsp; ));
+
 
+
&nbsp;&nbsp;&nbsp; print $response_xml;<br>}
+
 
+
# Classifieds Delete
+
 
+
xmlrpc_server_register_method($xmlrpc_server, "classified_delete",<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "classified_delete");
+
 
+
function classified_delete($method_name, $params, $app_data)<br>{<br>&nbsp;&nbsp;&nbsp; $req&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = $params[0];
+
 
+
&nbsp;&nbsp;&nbsp; $classifieduuid = $req['classifiedID'];
+
 
+
&nbsp;&nbsp;&nbsp; $result = mysql_query("DELETE FROM profile_classifieds WHERE ".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "classifieduuid = '".mysql_escape_string($classifieduuid) ."'");
+
 
+
&nbsp;&nbsp;&nbsp; $response_xml = xmlrpc_encode(array(<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 'success' =&gt; True,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 'data' =&gt; $data<br>&nbsp;&nbsp;&nbsp; ));
+
 
+
&nbsp;&nbsp;&nbsp; print $response_xml;<br>}
+
 
+
#<br># Picks<br>#
+
 
+
# Avatar Picks Request
+
 
+
xmlrpc_server_register_method($xmlrpc_server, "avatarpicksrequest",<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "avatarpicksrequest");
+
 
+
function avatarpicksrequest($method_name, $params, $app_data)<br>{<br>&nbsp;&nbsp;&nbsp; $req&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = $params[0];
+
 
+
&nbsp;&nbsp;&nbsp; $uuid&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = $req['uuid'];
+
 
+
&nbsp;&nbsp;&nbsp; $data = array();
+
 
+
&nbsp;&nbsp;&nbsp; $result = mysql_query("SELECT `pickuuid`,`name` FROM profile_picks WHERE ".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "creatoruuid = '". mysql_escape_string($uuid) ."'");
+
 
+
&nbsp;&nbsp;&nbsp; while (($row = mysql_fetch_assoc($result)))<br>&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $data[] = array(<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "pickid" =&gt; $row["pickuuid"],<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "name" =&gt; $row["name"]);<br>&nbsp;&nbsp;&nbsp; }
+
 
+
&nbsp;&nbsp;&nbsp; $response_xml = xmlrpc_encode(array(<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 'success' =&gt; True,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 'data' =&gt; $data<br>&nbsp;&nbsp;&nbsp; ));
+
 
+
&nbsp;&nbsp;&nbsp; print $response_xml;<br>}
+
 
+
# Request Picks for User
+
 
+
xmlrpc_server_register_method($xmlrpc_server, "pickinforequest",<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "pickinforequest");
+
 
+
function pickinforequest($method_name, $params, $app_data)<br>{<br>&nbsp;&nbsp;&nbsp; $req&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = $params[0];
+
 
+
&nbsp;&nbsp;&nbsp; $uuid&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = $req['avatar_id'];<br>&nbsp;&nbsp;&nbsp; $pick&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = $req['pick_id'];
+
 
+
&nbsp;&nbsp;&nbsp; $data = array();
+
 
+
&nbsp;&nbsp;&nbsp; $result = mysql_query("SELECT * FROM profile_picks WHERE ".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "creatoruuid = '". mysql_escape_string($uuid) ."' AND ".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "pickuuid = '". mysql_escape_string($pick) ."'");
+
 
+
&nbsp;&nbsp;&nbsp; $row = mysql_fetch_assoc($result);<br>&nbsp;&nbsp;&nbsp; if ($row != False)<br>&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if ($row["description"] == null || $row["description"] == "")<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $row["description"] = "No description given";
+
 
+
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $data[] = array(<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "pickuuid" =&gt; $row["pickuuid"],<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "creatoruuid" =&gt; $row["creatoruuid"],<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "toppick" =&gt; $row["toppick"],<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "parceluuid" =&gt; $row["parceluuid"],<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "name" =&gt; $row["name"],<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "description" =&gt; $row["description"],<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "snapshotuuid" =&gt; $row["snapshotuuid"],<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "user" =&gt; $row["user"],<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "originalname" =&gt; $row["originalname"],<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "simname" =&gt; $row["simname"],<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "posglobal" =&gt; $row["posglobal"],<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "sortorder"=&gt; $row["sortorder"],<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "enabled" =&gt; $row["enabled"]);<br>&nbsp;&nbsp;&nbsp; }
+
 
+
&nbsp;&nbsp;&nbsp; $response_xml = xmlrpc_encode(array(<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 'success' =&gt; True,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 'data' =&gt; $data<br>&nbsp;&nbsp;&nbsp; ));
+
 
+
&nbsp;&nbsp;&nbsp; print $response_xml;<br>}
+
 
+
# Picks Update
+
 
+
xmlrpc_server_register_method($xmlrpc_server, "picks_update",<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "picks_update");
+
 
+
function picks_update($method_name, $params, $app_data)<br>{<br>&nbsp;&nbsp;&nbsp; global $zeroUUID;
+
 
+
&nbsp;&nbsp;&nbsp; $req&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = $params[0];
+
 
+
&nbsp;&nbsp;&nbsp; $pickuuid&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = $req['pick_id'];<br>&nbsp;&nbsp;&nbsp; $creator&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = $req['creator_id'];<br>&nbsp;&nbsp;&nbsp; $toppick&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = $req['top_pick'];<br>&nbsp;&nbsp;&nbsp; $name&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = $req['name'];<br>&nbsp;&nbsp;&nbsp; $description&nbsp;&nbsp;&nbsp; = $req['desc'];<br>&nbsp;&nbsp;&nbsp; $parceluuid&nbsp;&nbsp;&nbsp;&nbsp; = $req['parcel_uuid'];<br>&nbsp;&nbsp;&nbsp; $snapshotuuid&nbsp;&nbsp; = $req['snapshot_id'];<br>&nbsp;&nbsp;&nbsp; $user&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = $req['user'];<br>&nbsp;&nbsp;&nbsp; $simname&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = $req['sim_name'];<br>&nbsp;&nbsp;&nbsp; $posglobal&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = $req['pos_global'];<br>&nbsp;&nbsp;&nbsp; $sortorder&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = $req['sort_order'];<br>&nbsp;&nbsp;&nbsp; $enabled&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = $req['enabled'];
+
 
+
&nbsp;&nbsp;&nbsp; if($parceluuid == "")<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $parceluuid = $zeroUUID;
+
 
+
&nbsp;&nbsp;&nbsp; if($description == "")<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $description = "No Description";
+
 
+
&nbsp;&nbsp;&nbsp; // Check if we already have this one in the database<br>&nbsp;&nbsp;&nbsp; $check = mysql_query("SELECT COUNT(*) FROM profile_picks WHERE ".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "pickuuid = '". mysql_escape_string($pickuuid) ."'");
+
 
+
&nbsp;&nbsp;&nbsp; $row = mysql_fetch_row($check);
+
 
+
&nbsp;&nbsp;&nbsp; if ($row[0] == 0)<br>&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if($user == null || $user == "")<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $user = "Unknown";
+
 
+
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //The original parcel name is the same as the name of the<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //profile pick when a new profile pick is being created.<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $original = $name;
+
 
+
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $query = "INSERT INTO profile_picks VALUES ".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "('". mysql_escape_string($pickuuid) ."',".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "'". mysql_escape_string($creator) ."',".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "'". mysql_escape_string($toppick) ."',".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "'". mysql_escape_string($parceluuid) ."',".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "'". mysql_escape_string($name) ."',".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "'". mysql_escape_string($description) ."',".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "'". mysql_escape_string($snapshotuuid) ."',".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "'". mysql_escape_string($user) ."',".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "'". mysql_escape_string($original) ."',".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "'". mysql_escape_string($simname) ."',".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "'". mysql_escape_string($posglobal) ."',".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "'". mysql_escape_string($sortorder) ."',".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "'". mysql_escape_string($enabled) ."')";<br>&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; else<br>&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $query = "UPDATE profile_picks SET " .<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "parceluuid = '". mysql_escape_string($parceluuid) . "', " .<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "name = '". mysql_escape_string($name) . "', " .<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "description = '". mysql_escape_string($description) . "', " .<br> "snapshotuuid = '". mysql_escape_string($snapshotuuid) . "' WHERE ".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "pickuuid = '". mysql_escape_string($pickuuid) ."'";<br>&nbsp;&nbsp;&nbsp; }
+
 
+
&nbsp;&nbsp;&nbsp; $result = mysql_query($query);<br>&nbsp;&nbsp;&nbsp; if ($result != False)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $result = True;
+
 
+
&nbsp;&nbsp;&nbsp; $response_xml = xmlrpc_encode(array(<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 'success' =&gt; $result,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 'errorMessage' =&gt; mysql_error()<br>&nbsp;&nbsp;&nbsp; ));
+
 
+
&nbsp;&nbsp;&nbsp; print $response_xml;<br>}
+
 
+
# Picks Delete
+
 
+
xmlrpc_server_register_method($xmlrpc_server, "picks_delete",<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "picks_delete");
+
 
+
function picks_delete($method_name, $params, $app_data)<br>{<br>&nbsp;&nbsp;&nbsp; $req&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = $params[0];
+
 
+
&nbsp;&nbsp;&nbsp; $pickuuid&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = $req['pick_id'];
+
 
+
&nbsp;&nbsp;&nbsp; $result = mysql_query("DELETE FROM profile_picks WHERE ".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "pickuuid = '".mysql_escape_string($pickuuid) ."'");
+
 
+
&nbsp;&nbsp;&nbsp; if ($result != False)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $result = True;
+
 
+
&nbsp;&nbsp;&nbsp; $response_xml = xmlrpc_encode(array(<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 'success' =&gt; $result,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 'errorMessage' =&gt; mysql_error()<br>&nbsp;&nbsp;&nbsp; ));
+
 
+
&nbsp;&nbsp;&nbsp; print $response_xml;<br>}
+
 
+
#<br># Notes<br>#
+
 
+
# Avatar Notes Request
+
 
+
<br>xmlrpc_server_register_method($xmlrpc_server, "avatarnotesrequest",<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "avatarnotesrequest");
+
 
+
function avatarnotesrequest($method_name, $params, $app_data)<br>{<br>&nbsp;&nbsp;&nbsp; $req&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = $params[0];
+
 
+
&nbsp;&nbsp;&nbsp; $uuid&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = $req['avatar_id'];<br>&nbsp;&nbsp;&nbsp; $targetuuid&nbsp;&nbsp;&nbsp;&nbsp; = $req['uuid'];
+
 
+
&nbsp;&nbsp;&nbsp; $result = mysql_query("SELECT notes FROM profile_notes WHERE ".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "useruuid = '". mysql_escape_string($uuid) ."' AND ".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "targetuuid = '". mysql_escape_string($targetuuid) ."'");
+
 
+
&nbsp;&nbsp;&nbsp; $row = mysql_fetch_row($result);<br>&nbsp;&nbsp;&nbsp; if ($row == False)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $notes = "";<br>&nbsp;&nbsp;&nbsp; else<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $notes = $row[0];
+
 
+
&nbsp;&nbsp;&nbsp; $data[] = array(<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "targetid" =&gt; $targetuuid,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "notes" =&gt; $notes);
+
 
+
&nbsp;&nbsp;&nbsp; $response_xml = xmlrpc_encode(array(<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 'success' =&gt; True,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 'data' =&gt; $data<br>&nbsp;&nbsp;&nbsp; ));
+
 
+
&nbsp;&nbsp;&nbsp; print $response_xml;<br>}
+
 
+
# Avatar Notes Update
+
 
+
xmlrpc_server_register_method($xmlrpc_server, "avatar_notes_update",<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "avatar_notes_update");
+
 
+
function avatar_notes_update($method_name, $params, $app_data)<br>{<br>&nbsp;&nbsp;&nbsp; $req&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = $params[0];
+
 
+
&nbsp;&nbsp;&nbsp; $uuid&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = $req['avatar_id'];<br>&nbsp;&nbsp;&nbsp; $targetuuid&nbsp;&nbsp;&nbsp;&nbsp; = $req['target_id'];<br>&nbsp;&nbsp;&nbsp; $notes&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = $req['notes'];
+
 
+
&nbsp;&nbsp;&nbsp; // Check if we already have this one in the database
+
 
+
&nbsp;&nbsp;&nbsp; $check = mysql_query("SELECT COUNT(*) FROM profile_notes WHERE ".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "useruuid = '". mysql_escape_string($uuid) ."' AND ".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "targetuuid = '". mysql_escape_string($targetuuid) ."'");
+
 
+
&nbsp;&nbsp;&nbsp; $row = mysql_fetch_row($check);
+
 
+
&nbsp;&nbsp;&nbsp; if ($row[0] == 0)<br>&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // Create a new record for this avatar note<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $result = mysql_query("INSERT INTO profile_notes VALUES ".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "('". mysql_escape_string($uuid) ."',".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "'". mysql_escape_string($targetuuid) ."',".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "'". mysql_escape_string($notes) ."')");<br>&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; else if ($notes == "")<br>&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // Delete the record for this avatar note<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $result = mysql_query("DELETE FROM profile_notes WHERE ".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "useruuid = '". mysql_escape_string($uuid) ."' AND ".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "targetuuid = '". mysql_escape_string($targetuuid) ."'");<br>&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; else<br>&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // Update the existing record<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $result = mysql_query("UPDATE profile_notes SET ".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "notes = '". mysql_escape_string($notes) ."' WHERE ".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "useruuid = '". mysql_escape_string($uuid) ."' AND ".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "targetuuid = '". mysql_escape_string($targetuuid) ."'");<br>&nbsp;&nbsp;&nbsp; }
+
 
+
&nbsp;&nbsp;&nbsp; $response_xml = xmlrpc_encode(array(<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 'success' =&gt; $result,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 'errorMessage' =&gt; mysql_error()<br>&nbsp;&nbsp;&nbsp; ));
+
 
+
&nbsp;&nbsp;&nbsp; print $response_xml;<br>}
+
 
+
# Profile bits
+
 
+
xmlrpc_server_register_method($xmlrpc_server, "avatar_properties_request",<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "avatar_properties_request");
+
 
+
function avatar_properties_request($method_name, $params, $app_data)<br>{<br>&nbsp;&nbsp;&nbsp; global $zeroUUID;
+
 
+
&nbsp;&nbsp;&nbsp; $req&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = $params[0];
+
 
+
&nbsp;&nbsp;&nbsp; $uuid&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = $req['avatar_id'];
+
 
+
&nbsp;&nbsp;&nbsp; $result = mysql_query("SELECT * FROM profile WHERE ".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "useruuid = '". mysql_escape_string($uuid) ."'");<br>&nbsp;&nbsp;&nbsp; $row = mysql_fetch_assoc($result);
+
 
+
&nbsp;&nbsp;&nbsp; if ($row != False)<br>&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $data[] = array(<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "ProfileUrl" =&gt; $row["profileURL"],<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "Image" =&gt; $row["profileImage"],<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "AboutText" =&gt; $row["profileAboutText"],<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "FirstLifeImage" =&gt; $row["profileFirstImage"],<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "FirstLifeAboutText" =&gt; $row["profileFirstText"],<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "Partner" =&gt; $row["profilePartner"],
+
 
+
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //Return interest data along with avatar properties<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "wantmask"&nbsp;&nbsp; =&gt; $row["profileWantToMask"],<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "wanttext"&nbsp;&nbsp; =&gt; $row["profileWantToText"],<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "skillsmask" =&gt; $row["profileSkillsMask"],<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "skillstext" =&gt; $row["profileSkillsText"],<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "languages"&nbsp; =&gt; $row["profileLanguages"]);<br>&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; else<br>&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //Insert empty record for avatar.<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //FIXME: Should this only be done when asking for ones own profile?<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $sql = "INSERT INTO profile VALUES ( ".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "'". mysql_escape_string($uuid) ."', ".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "'$zeroUUID', 0, 0, '', 0, '', 0, '', '', ".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "'$zeroUUID', '', '$zeroUUID', '')";<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $result = mysql_query($sql);
+
 
+
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $data[] = array(<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "ProfileUrl" =&gt; "",<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "Image" =&gt; $zeroUUID,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "AboutText" =&gt; "",<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "FirstLifeImage" =&gt; $zeroUUID,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "FirstLifeAboutText" =&gt; "",<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "Partner" =&gt; $zeroUUID,
+
 
+
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "wantmask"&nbsp;&nbsp; =&gt; 0,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "wanttext"&nbsp;&nbsp; =&gt; "",<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "skillsmask" =&gt; 0,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "skillstext" =&gt; "",<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "languages"&nbsp; =&gt; "");<br>&nbsp;&nbsp;&nbsp; }
+
 
+
&nbsp;&nbsp;&nbsp; $response_xml = xmlrpc_encode(array(<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 'success' =&gt; True,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 'data' =&gt; $data<br>&nbsp;&nbsp;&nbsp; ));
+
 
+
&nbsp;&nbsp;&nbsp; print $response_xml;<br>}
+
 
+
xmlrpc_server_register_method($xmlrpc_server, "avatar_properties_update",<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "avatar_properties_update");
+
 
+
function avatar_properties_update($method_name, $params, $app_data)<br>{<br>&nbsp;&nbsp;&nbsp; $req&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = $params[0];
+
 
+
&nbsp;&nbsp;&nbsp; $uuid&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = $req['avatar_id'];<br>&nbsp;&nbsp;&nbsp; $profileURL&nbsp;&nbsp;&nbsp;&nbsp; = $req['ProfileUrl'];<br>&nbsp;&nbsp;&nbsp; $image&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = $req['Image'];<br>&nbsp;&nbsp;&nbsp; $abouttext&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = $req['AboutText'];<br>&nbsp;&nbsp;&nbsp; $firstlifeimage = $req['FirstLifeImage'];<br>&nbsp;&nbsp;&nbsp; $firstlifetext&nbsp; = $req['FirstLifeAboutText'];
+
 
+
&nbsp;&nbsp;&nbsp; $result=mysql_query("UPDATE profile SET ".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "profileURL='". mysql_escape_string($profileURL) ."', ".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "profileImage='". mysql_escape_string($image) ."', ".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "profileAboutText='". mysql_escape_string($abouttext) ."', ".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "profileFirstImage='". mysql_escape_string($firstlifeimage) ."', ".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "profileFirstText='". mysql_escape_string($firstlifetext) ."' ".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "WHERE useruuid='". mysql_escape_string($uuid) ."'"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; );
+
 
+
&nbsp;&nbsp;&nbsp; $response_xml = xmlrpc_encode(array(<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 'success' =&gt; $result,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 'errorMessage' =&gt; mysql_error()<br>&nbsp;&nbsp;&nbsp; ));
+
 
+
&nbsp;&nbsp;&nbsp; print $response_xml;<br>}
+
 
+
<br>// Profile Interests
+
 
+
xmlrpc_server_register_method($xmlrpc_server, "avatar_interests_update",<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "avatar_interests_update");
+
 
+
function avatar_interests_update($method_name, $params, $app_data)<br>{<br>&nbsp;&nbsp;&nbsp; $req&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = $params[0];
+
 
+
&nbsp;&nbsp;&nbsp; $uuid&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = $req['avatar_id'];<br>&nbsp;&nbsp;&nbsp; $wanttext&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = $req['wanttext'];<br>&nbsp;&nbsp;&nbsp; $wantmask&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = $req['wantmask'];<br>&nbsp;&nbsp;&nbsp; $skillstext&nbsp;&nbsp;&nbsp;&nbsp; = $req['skillstext'];<br>&nbsp;&nbsp;&nbsp; $skillsmask&nbsp;&nbsp;&nbsp;&nbsp; = $req['skillsmask'];<br>&nbsp;&nbsp;&nbsp; $languages&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = $req['languages'];
+
 
+
&nbsp;&nbsp;&nbsp; $result = mysql_query("UPDATE profile SET ".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "profileWantToMask = ". mysql_escape_string($wantmask) .",".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "profileWantToText = '". mysql_escape_string($wanttext) ."',".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "profileSkillsMask = ". mysql_escape_string($skillsmask) .",".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "profileSkillsText = '". mysql_escape_string($skillstext) ."',".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "profileLanguages = '". mysql_escape_string($languages) ."' ".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "WHERE useruuid = '". mysql_escape_string($uuid) ."'"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; );
+
 
+
&nbsp;&nbsp;&nbsp; $response_xml = xmlrpc_encode(array(<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 'success' =&gt; True<br>&nbsp;&nbsp;&nbsp; ));
+
 
+
&nbsp;&nbsp;&nbsp; print $response_xml;<br>}
+
 
+
// User Preferences
+
 
+
xmlrpc_server_register_method($xmlrpc_server, "user_preferences_request",<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "user_preferences_request");
+
 
+
function user_preferences_request($method_name, $params, $app_data)<br>{<br>&nbsp;&nbsp;&nbsp; $req&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = $params[0];
+
 
+
&nbsp;&nbsp;&nbsp; $uuid&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = $req['avatar_id'];
+
 
+
&nbsp;&nbsp;&nbsp; $result = mysql_query("SELECT imviaemail,visible,email FROM profile_settings WHERE ".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "useruuid = '". mysql_escape_string($uuid) ."'");
+
 
+
&nbsp;&nbsp;&nbsp; $row = mysql_fetch_assoc($result);
+
 
+
&nbsp;&nbsp;&nbsp; if ($row != False)<br>&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $data[] = array(<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "imviaemail" =&gt; $row["imviaemail"],<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "visible" =&gt; $row["visible"],<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "email" =&gt; $row["email"]);<br>&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; else<br>&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //Insert empty record for avatar.<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //NOTE: The 'false' values here are enums defined in database<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $sql = "INSERT INTO profile_settings VALUES ".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "('". mysql_escape_string($uuid) ."', ".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "'false', 'false', '')";<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $result = mysql_query($sql);
+
 
+
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $data[] = array(<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "imviaemail" =&gt; False,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "visible" =&gt; False,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "email" =&gt; "");<br>&nbsp;&nbsp;&nbsp; }
+
 
+
&nbsp;&nbsp;&nbsp; $response_xml = xmlrpc_encode(array(<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 'success' =&gt; True,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 'data' =&gt; $data<br>&nbsp;&nbsp;&nbsp; ));
+
 
+
&nbsp;&nbsp;&nbsp; print $response_xml;<br>}
+
 
+
xmlrpc_server_register_method($xmlrpc_server, "user_preferences_update",<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "user_preferences_update");
+
 
+
function user_preferences_update($method_name, $params, $app_data)<br>{
+
 
+
&nbsp;&nbsp;&nbsp; $req&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = $params[0];
+
 
+
&nbsp;&nbsp;&nbsp; $uuid&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = $req['avatar_id'];<br>&nbsp;&nbsp;&nbsp; $wantim&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = $req['imViaEmail'];<br>&nbsp;&nbsp;&nbsp; $directory&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = $req['visible'];
+
 
+
&nbsp;&nbsp;&nbsp; $result = mysql_query("UPDATE profile_settings SET ".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "imviaemail = '".mysql_escape_string($wantim) ."', ".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "visible = '".mysql_escape_string($directory) ."' WHERE ".<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "useruuid = '". mysql_escape_string($uuid) ."'");
+
 
+
&nbsp;&nbsp;&nbsp; $response_xml = xmlrpc_encode(array(<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 'success' =&gt; True,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 'data' =&gt; $data<br>&nbsp;&nbsp;&nbsp; ));
+
 
+
&nbsp;&nbsp;&nbsp; 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>?&gt;
+

Latest revision as of 13:22, 18 July 2019

OpenSim Since 2008

Contents

[edit] Inworld contact

OSgrid user: World Star

[edit] RL Contact

E-Mail: astralgrid@gmail.com"


[edit] Caching INI

[Startup]
crash_dir = ./Simulator-Cache/Crashes
DecodedSculptMapPath = ./Simulator-Cache/Sculpt-Map
[AssetCache]
CacheDirectory = ./Simulator-Cache/Asset-Cache
[XEngine]
ScriptEnginesPath = ./Simulator-Cache/Script-Engines-Cache
[DataSnapshot]
snapshot_cache_directory = ./Simulator-Cache/Data-Snapshot-Cache


[edit] Xengine INI

[XEngine]
Enabled = true
MinThreads = 2
MaxThreads = 100
IdleTimeout = 60
Priority = "Normal"
MaxScriptEventQueue = 300
ThreadStackSize = 262144
AppDomainLoading = true
AsyncLLCommandLoopms = 50
WriteScriptSourceToDebugFile = true
DefaultCompileLanguage = lsl
AllowedCompilers=lsl,cs
CompileWithDebugInformation = true
AllowLightShareFunctions = true
SaveInterval = 120
MaintenanceInterval = 10
EventLimit = 30
KillTimedOutScripts = false
ScriptDelayFactor = 1.0
ScriptDistanceLimitFactor = 1.0
NotecardLineReadCharsMax = 1255
SensorMaxRange = 96.0
SensorMaxResults = 16
AutomaticLinkPermission = false
DisableUndergroundMovement = true

Personal tools
General
About This Wiki