fix some mistakes
[mysocials] / www / index.html
index 6c88284..8c1915b 100644 (file)
@@ -7,6 +7,20 @@
 <link href="style.css" rel="stylesheet" type="text/css" />
 </head>
 
+<!--
+<script>
+function textToggle(textBlockId) {
+  textBlock = document.getElementById(textBlockId);
+  if (textBlock.style.display == 'none') { textBlock.style.display = 'block'; }
+  else { textBlock.style.display = 'none'; }
+}
+</script>
+<style>
+  .toggler { border-bottom:1px dashed #000000; cursor:pointer; }
+  .hidden-text { display:none; }
+</style>
+-->
+
 <body>
 <table width="779" border="0" align="center" cellpadding="0" cellspacing="0">
   <tr>
 <tr>
     <td bgcolor="#E2E2D2" class="border" height="40"><table width="85%" border="0" cellspacing="0" cellpadding="0">
       <tr align="center">
-       <td><a href="index.html" class="toplinks">MySocials API</a></td>
+       <td><a href="index.html" class="toplinks">About</a></td>
+       <td class="toplinks">|</td>
+        <td><a href="screenshots.html" class="toplinks">Screenshots</a></td>
+        <td class="toplinks">|</td>
+        <td><a href="api.html" class="toplinks">MySocials API</a></td>
         <td class="toplinks">|</td>
         <td><a href="privacy.html" class="toplinks">Privacy</a></td>
                <td class="toplinks">|</td>
       </tr>
       <tr>
         <td class="content">
-               <h1>MySocials API</h1>
-               <h2>MySocials driver API</h2>
-       <p> MySocials driver is provided as a shared library (libmsa&lt;service_name&gt;.so). Structure <b>msa_module *d</b> includes information about the driver (name, identifier, pointers to driver functions). This structure is filled during initialization of the driver.
-       </p>
-       <h3>Driver interface</h3>
-       <p>Driver interface is described in file interface.h and consists of 4 functions:
-       <ul>
-       <li><b>msa_module_init(struct msa_module* d)</b> — driver initialization;</li>
-       <li><b>msa_module_get_info(struct msa_module* d)</b> — getting information about driver;</li>
-       <li><b>msa_module->send(xmlDocPtr request, xmlDocPtr* response, const struct msa_module* info)</b> — request sending and response receiveing;</li>
-       <li><b>msa_module->shutdown(const struct msa_module*)</b> - driver shutdown.</li>
-       </ul>
-       
-       <h3>Driver initialization and shutting down</h3>
-       Driver initialization is performed by using <b>msa_module_init(struct msa_module* d)</b> function. Instance of structure which stores profile setting is created during initialization. Parameter d stores identifier of this instance. 
-       <br>
-       Function <b>msa_module->shutdown(const struct msa_module*)</b> is used during program termination. 
-
-       <h3>Interaction with driver</h3>
-
-       Fuction <b>msa_module->send(xmlDocPtr request, xmlDocPtr* response, const struct msa_module* info)</b> is used to perform requests to the driver. 
-Parameter <i>request</i> is a request in XML format. Description of structure of sending and receiveing data is described <a>here</a>.
-Parameter <i>response</i> contains driver response in XML format.
-Function <b>msa_module_get_info(struct msa_module* d)</b> is used to get information about driver (driver name and icon).
-</p>   
-
-       <h2>MySocials driver data structures</h2>
-
-       <p>Here you can see description of data structures which are used by MySocials driver. These structures are declared in <b>mysocials_driver.h</b> file which is available for other applications from mysocials-dev package.  
-
-       <h3>Enumerations</h3>
-       <h4>Error codes</h4>
-       <pre>enum error_type {
-       FAILURE, // Function finished with error
-       SUCCESS, // Function finished without error
-       ERROR_ALLOCATION_OF_MEMORY, // Allocation of memory
-       ERROR_NO_FUNCTION, // Defining function error
-       ERROR_INITIALIZATION_ALREADY_PASSED, // Re-initialization error
-       ERROR_IS_BUSY, // Module is busy
-       ERROR_SEND_DATA, // Data sending error
-       ERROR_PARSE_DATA // Data parsing error
-}
-       </pre>
-
-       <h3>Driver interface</h3>
-       <p>MySocials driver interface described in  <b>msa_module</b> structure. Some of the fields of this stucture are filled before initialization by application (marked with **), the rest of it is filled during initialization.</p>
-       <pre>
-       struct msa_module {
-       gchar *id;    // Identifier 
-       gchar *name;  // External driver name
-       gchar* driverName;       // Driver name for system purposes (equals driver identifier)
-       gchar *pic;   // Icon coded in base64
-       gchar *proxy;  // **Proxy server address or NULL
-       gint port; // **Proxy server port
-   
-       /* Pointer to function for processing requests.
-          Parameters:
-           xmlRequest — request in XML format
-           xmlResponse — response in XML format
-           info — structure with driver settings
-      
-          Function returns  SUCCESS in case without errors, otherwise FAILURE. 
-       */
-   
-       error_type (*send)(char* xmlRequest, char** xmlResponse, struct msa_module *info) 
-        
-       /* Pointer to function for driver shutting down.
-           Parameters:
-           info — structure with driver settings
-      
-          Function returns  SUCCESS in case without errors, otherwise FAILURE. 
-       */
-
-       error_type (*shutdown)(struct msa_module* info);
-}
-
-       </pre>
-
-       <h2>Format of XML requests and responses</h2>
-       <h3>Common format of driver request and response</h3>
-       <h4>Request format</h4>
-       <pre>
-       &lt;Request class="" function="" noAuthorize="true"&gt;
-               &lt;Params&gt;
-
-               &lt;/Params&gt;
-       &lt;/Request&gt;
-       </pre>
-
-       <ul>
-       <li><i>noAuthorize</i> - flag which forbids driver to call WebAuth (optional, set to false by default) </li>
-       <li><i>class</i> - class which includes called function</li>
-       <li><i>function</i> - name of the function</li>
-       <li><i>Params</i> - set of parameters, stricly defined for each function</li>
-       </ul>
-
-       <h4>Response format</h4>
-       <pre>
-       &lt;Response class="" function="" authorized="true" upload="..." download="..."&gt;
-               &lt;Params&gt;
-
-               &lt;/Params&gt;
-       &lt;/Response&gt;
-       </pre>
-       
-       <ul>
-       <li><i>authorized</i> - flag which indicates authorization during request performing (flag isn't set if error occures during request performing) </li>
-       <li><i>upload</i> - number of bytes sent to server</li>
-       <li><i>download</i> - number of bytes received from server</li>
-       </ul>
-
-       <p>Following classes are supported:
-       <ul>
-       <li><i>settings:</i> class for working with settings</li>
-       <li><i>profile:</i> class for receiving data about user's profile</li>
-       <li><i>friends:</i> class for receiving data about user's friends</li>
-       <li><i>messages:</i> class for receiving data about messages</li>
-       <li><i>photos:</i> class for working with photos</li>
-       <li><i>audio:</i> class for working with audio files</li>
-       <li><i>video:</i> class for working with video files</li>
-       <li><i>news:</i> class for working with news</li>
-       </ul>   
-       </p>
-
-       <h3>Settings</h3>
-       <h4>getSettings</h4>
-       <b>Request:</b>
-       <pre>
-       &lt;Request class="settings" function="getSettings"&gt;
-               &lt;Params/&gt;
-        &lt;/Request&gt;
-       </pre>
-
-       <b>Response:</b>
-       <pre>
-       &lt;Response class="settings" function="getSettings"&gt;
-               &lt;Params&gt;
-                       &lt;string name="mid"&gt; ... &lt;/string&gt;
-                       &lt;string name="sid"&gt; ... &lt;/string&gt;
-                       &lt;string name="secret"&gt; ... &lt;/string&gt;
-               &lt;/Params&gt;
-       &lt;/Response&gt;
-       </pre>
-       <p>Content of <i>Params</i> tag depends on the driver. It is recommended to save content of <i>Params</i> tag and send it to setup function without any changes.</p>
-
-       <h4>setSettings</h4>
-       <b>Request:</b>
-       <pre>
-       &lt;Request class="settings" function="setSettings"&gt;
-               &lt;Params&gt;
-                       &lt;string name="mid"&gt; ... &lt;/string&gt;
-                       &lt;string name="sid"&gt; ... &lt;/string&gt;
-                       &lt;string name="secret"&gt; ... &lt;/string&gt;
-               &lt;/Params&gt;
-       &lt;/Request&gt;
-       </pre>
-       <p><i>Params</i> tag must contain data received from driver during <i>getSettings</i> request.</p>
-       <b>Response:</b> info message or error message.
-
-       <h4>getListMethods</h4>
-       <b>Request:</b>
-       <pre>
-       &lt;Request class="settings" function="getListMethods"&gt;
-               &lt;Params/&gt;
-        &lt;/Request&gt;
-       </pre>
-       <b>Response:</b>
-       <pre>
-       &lt;Response class="settings" function="getListMethods"&gt;
-               &lt;Params&gt;
-                       &lt;string function="..." class="..."&gt; ... &lt;/string&gt;
-                       &lt;string function="..." class="..."&gt; ... &lt;/string&gt;
-                       ...
-               &lt;/Params&gt;
-       &lt;/Response&gt;
-       </pre>
+               <h1>MySocials App</h1>
                
-       <h4>testConnection</h4>
-       <b>Request:</b>
-       <pre>
-       &lt;Request class="settings" function="testConnection"&gt;
-               &lt;Params/&gt;
-        &lt;/Request&gt;
-       </pre>
-       <b>Response:</b> info message or error message.
-
-
-
-       <h3>Profile</h3>
-       <h4>getProfile</h4>
-       <b>Request:</b>
-       <pre>
-       &lt;Request class="profile" function="getProfile"&gt;
-               &lt;Params id="..."&gt;
-        &lt;/Request&gt;
-       </pre>
-       <p>Attribute <i>id</i> is an id of user whose profile is needed to be received (optional, equals id of owner of current account by default).</p>
-       <b>Response:</b>
-       <pre>
-       &lt;Response class="profile" function="getProfile"&gt;
-               &lt;Params id="..."&gt;
-                       &lt;string name="FirstName"&gt; ... &lt;/string&gt;
-                       &lt;string name="NickName"&gt; ... &lt;/string&gt;
-                       &lt;string name="LastName"&gt; ... &lt;/string&gt;
-                       &lt;string name="Gender"&gt; ... &lt;/string&gt;
-                       &lt;string name="Birthday"&gt; ... &lt;/string&gt;
-                       &lt;string name="MobilePhone"&gt; ... &lt;/string&gt;
-                       &lt;string name="HomePhone"&gt; ... &lt;/string&gt;
-                       &lt;img name="Img"&gt; ... &lt;/img&gt;
-                       &lt;string name="CityName"&gt; ... &lt;/string&gt;
-                       &lt;string name="CountryName"&gt; ... &lt;/string>
-               &lt;/Params&gt;
-       &lt;/Response&gt;
-       </pre>
-
-       <h4>getBaseProfile</h4>
-       <b>Request:</b>
-       <pre>
-       &lt;Request class="profile" function="getBaseProfile"&gt;
-               &lt;Params id="..."&gt;
-        &lt;/Request&gt;
-       </pre>
-       <p>Attribute <i>id</i> is an id of user whose profile is needed to be received (optional, equals id of owner of current account by default).</p>
-       <b>Response:</b>
-       <pre>
-       &lt;Response class="profile" function="getBaseProfile"&gt;
-               &lt;Params id="..."&gt;
-                       &lt;string name="FirstName"&gt; ... &lt;/string&gt;
-                       &lt;string name="NickName"&gt; ... &lt;/string&gt;
-                       &lt;string name="LastName"&gt; ... &lt;/string&gt;
-               &lt;/Params&gt;
-       &lt;/Response&gt;
-       </pre>
-
-
-
-       <h3>Friends</h3>
-       <h4>getListFriends</h4>
-       <b>Request:</b>
-       <pre>
-       &lt;Request class="friends" function="getListFriends"&gt;
-               &lt;Params id="..."&gt;
-                       &lt;number name="page"&gt; ... &lt;/number&gt;
-                       &lt;number name="pageSize"&gt; ... &lt;/number&gt;
-               &lt;/Params&gt;
-        &lt;/Request&gt;
-       </pre>
-       <ul>
-       <li><i>page</i> - number of page that is requested (optional, positive integer, equals 1 by default)</li>
-       <li><i>pageSize</i> - page size (optional, positive integer, equals 100 by default)</li>
-       <li><i>id</i> - user id (optional, equals id of owner of current account by default) </li>
-       </ul>
-       <b>Response:</b>
-       <pre>
-       &lt;Response class="friends" function="getListFriends"&gt;
-               &lt;Params id="..."&gt;
-                       &lt;array name="contactList" page="..." pageSize="..." quantity="..."&gt;
-                               &lt;struct name="contact" id="..."&gt;
-                                       &lt;string name="FirstName"&gt; ... &lt;/string&gt;
-                                       &lt;string name="NickName"&gt; ... &lt;/string&gt;
-                                       &lt;string name="LastName"&gt; ... &lt;/string&gt;
-                                       &lt;string name="FriendStatus"&gt; ... &lt;/string&gt;
-                                       &lt;img name="Img"&gt; ... &lt;/img&gt;
-                               &lt;/struct&gt;
-                       &lt;/array&gt;
-               &lt;/Params&gt;
-       &lt;/Response&gt;
-       </pre>
-
-       <h4>deleteFriend</h4>
-       <b>Request:</b>
-       <pre>
-       &lt;Request class="friends" function ="deleteFriend"&gt;
-               &lt;Params id="..."/&gt;
-        &lt;/Request&gt;
-       </pre>
-       <b>Response:</b> info message or error message.
-
-
-
-       <h3>Photos</h3>
-       <h4>createAlbum</h4>
-       <b>Request:</b>
-       <pre>
-       &lt;Request class="photos" function="createAlbum"&gt;
-               &lt;Params id="..."&gt;
-                       &lt;string name="name"&gt; ... &lt;/string&gt;
-                       &lt;string name="description"&gt; ... &lt;/string&gt;
-                       &lt;string name="privacy"&gt;PRIVACY&lt;/string&gt;
-               &lt;/Params&gt;
-        &lt;/Request&gt;
-       </pre>
-       PRIVACY can have following values: 
-       <ul>
-       <li>SELF - created album will be available only for its owner; </li>
-       <li>ALL_FRIENDS - created album will be available for owner's friends;</li>
-       <li>FRIENDS_OF_FRIENDS - created album will be available only for owner's friends and their friends; </li>
-       <li>EVERYONE - created album will be available only for every user.</li>
-       </ul>
-       <p>This set of values can be extended. If PRIVACY isn't set, driver use default setting for all new albums which are set by user.</p>
-       <ul>
-       <li><i>id</i> - optional, equals id of owner of current account by default </li>
-       <li><i>name</i> - optional, equals "no_name" by default</li>
-       <li><i>description</i> - optional </li>
-       </ul>
-       <b>Response:</b>
-       <pre>
-       &lt;Response class="photos" function="createAlbum"&gt;
-               &lt;Params id="..."&gt;
-                       &lt;string name="albumId"&gt; ... &lt;/string&gt;
-               &lt;/Params&gt;
-       &lt;/Response&gt;
-       </pre>
-
-       <h4>getListAlbums</h4>
-       <b>Request:</b>
-       <pre>
-       &lt;Request class="photos" function="getListAlbums"&gt;
-               &lt;Params id="..."/&gt;
-        &lt;/Request&gt;
-       </pre>
-       <p><i>id</i> - optional, equals id of owner of current account by default.</p>
-       <b>Response:</b>
-       <pre>
-       &lt;Response class="photos" function="getListAlbums"&gt;
-               &lt;Params&gt;
-                       &lt;array name="albumList" quantity="..." ownerId="..."&gt;
-                               &lt;struct name="album" id="..."&gt;
-                                       &lt;string name="title"&gt; ... &lt;/string&gt;
-                                       &lt;string name="description"&gt; ... &lt;/string&gt;
-                                       &lt;string name="thumbId"&gt; ... &lt;/string&gt;
-                                       &lt;img name="Img"&gt; ... &lt;/img&gt;
-                                       &lt;number name="created"&gt; ... &lt;/number&gt;
-                                       &lt;number name="updated"&gt; ... &lt;/number&gt;
-                                       &lt;number name="size"&gt; ... &lt;/number&gt;
-                                       &lt;number name="canUpload"&gt; ... &lt;/number&gt;
-                               &lt;/struct&gt;
-                       &lt;/array&gt;
-               &lt;/Params&gt;
-       &lt;/Response&gt;
-       </pre>
-       <p><i>canUpload</i> - optional, if this parameter isn't set, it means that album is available for current user.</p>
-
-       <h4>uploadPhoto</h4>
-       <b>Request:</b>
-       <pre>
-       &lt;Request class=&quot;photos&quot; function = &quot;uploadPhoto&quot;&gt;
-               &lt;Params&gt;
-                       &lt;string name=&quot;albumId&quot;&gt; ... &lt;/string&gt;
-                       &lt;string name=&quot;albumName&quot;&gt; ... &lt;/string&gt;
-                       &lt;string name=&quot;albumPrivacy&quot;&gt; ... &lt;/string&gt;
-                       &lt;string name=&quot;albumDescription&quot;&gt; ... &lt;/string&gt;
-                       &lt;string name=&quot;file&quot;&gt; ... &lt;/string&gt;
-                       &lt;string name=&quot;fileName&quot;&gt; ... &lt;/string&gt;
-                       &lt;string name=&quot;description&quot;&gt; ... &lt;/string&gt;
-                       &lt;string name=&quot;tags&quot;&gt; ... &lt;/string&gt;
-               &lt;/Params&gt;
-       &lt;/Request&gt;
-       </pre>
-       <ul>
-       <li>There have to be only one of parameters <i>albumName</i> or <i>albumId</i> in request.</li>
-       <li>If <i>albumId</i> is set, photo is uploaded to this album.</li>
-       <li>If <i>albumId</i> isn't specified, new album is created (with name <i>albumName</i>, description <i>albumDescription</i> and private settings <i>albumPrivacy</i>). </li>
-       <li>If both parameters <i>albumName</i> and <i>albumId</i> aren't specified, driver returns error message or photo is uploaded to common album, which is available in some services.</li>
-       <li>Parameter <i>tags</i> can not be supported by some services.</li>
-       <li>Parameter <i>file</i> contains full path to file for sending.</li>
-       <li>Parameter <i>fileName</i> contains name of file for upload.</li>
-       </ul>
-       <b>Response:</b>
-       <pre>
-       &lt;Response class=&quot;photos&quot; function = &quot;uploadPhoto&quot;&gt;
-               &lt;Params&gt;
-                       &lt;string name=&quot;albumId&quot;&gt; ... &lt;/string&gt;
-                       &lt;string name=&quot;photoId&quot;&gt; ... &lt;/string&gt;
-               &lt;/Params&gt;
-       &lt;/Response&gt;
-       </pre>
-
-       <h4>getListPhotos</h4>
-       <b>Request:</b>
-       <pre>
-       &lt;Request class=&quot;photos&quot; function = &quot;getListPhotos&quot;&gt;
-               &lt;Params id=&quot;...&quot;&gt;
-                       &lt;string name=&quot;albumId&quot;&gt; ... &lt;/string&gt;
-                       &lt;number name=&quot;page&quot;&gt; ... &lt;/number&gt;
-                       &lt;number name=&quot;pageSize&quot;&gt; ... &lt;/number&gt;
-               &lt;/Params&gt;
-       &lt;/Request&gt;
-       </pre>
-       <ul>
-       <li><i>page</i> - number of page that is requested (optional, positive integer, equals 1 by default)</li>
-       <li><i>pageSize</i> - page size (optional, positive integer, equals 100 by default)</li>
-       <li><i>id</i> - user id (optional, equals id of owner of current account by default) </li>
-       </ul>
-       <b>Response:</b>
-       <pre>
-       &lt;Response class=&quot;photos&quot; function=&quot;getListPhotos&quot;&gt;
-               &lt;Params&gt;
-                       &lt;array name=&quot;photosList&quot; page=&quot;...&quot; pageSize=&quot;...&quot; quantity=&quot;...&quot; ownerId=&quot;...&quot; albumId=&quot;...&quot;&gt;
-                               &lt;struct name=&quot;photo&quot; id=&quot;...&quot;/&gt;
-                                       &lt;string name=&quot;urlSmall&quot;&gt; ... &lt;/string&gt;
-                                               &lt;string name=&quot;urlBig&quot;&gt; ... &lt;/string&gt;
-                                       &lt;string name=&quot;urlOrig&quot;&gt; ... &lt;/string&gt;
-                                       &lt;string name=&quot;description&quot;&gt; ... &lt;/string&gt;
-                                       &lt;number name=&quot;created&quot;&gt; ... &lt;/number&gt;
-                               &lt;/struct&gt;
-                       &lt;/array&gt;
-               &lt;/Params&gt;
-       &lt;/Response&gt;
-       </pre>
-
-       <h4>getListUserPhotos</h4>
-       <b>Request:</b>
-       <pre>
-       &lt;Request class=&quot;photos&quot; function = &quot;getListUserPhotos&quot;&gt;
-               &lt;Params id=&quot;...&quot;&gt;
-                       &lt;number name=&quot;page&quot;&gt; ... &lt;/number&gt;
-                       &lt;number name=&quot;pageSize&quot;&gt; ... &lt;/number&gt;
-               &lt;/Params&gt;
-       &lt;/Request&gt;
-       </pre>
-       <ul>
-       <li><i>page</i> - number of page that is requested (optional, positive integer, equals 1 by default)</li>
-       <li><i>pageSize</i> - page size (optional, positive integer, equals 100 by default)</li>
-       <li><i>id</i> - user id (optional, equals id of owner of current account by default) </li>
-       </ul>
-       <b>Response:</b>
-       <pre>
-       &lt;Response class=&quot;photos&quot; function=&quot;getListUserPhotos&quot;&gt;
-               &lt;Params&gt;
-                       &lt;array name=&quot;photosList&quot; page=&quot;...&quot; pageSize=&quot;...&quot; quantity=&quot;...&quot;&gt;
-                               &lt;struct name=&quot;photo&quot; id=&quot;...&quot;/&gt;
-                                       &lt;string name=&quot;ownerId&quot;&gt; ... &lt;/string&gt;
-                                       &lt;string name=&quot;albumId&quot;&gt; ... &lt;/string&gt;
-                                       &lt;string name=&quot;urlSmall&quot;&gt; ... &lt;/string&gt;
-                                       &lt;string name=&quot;urlBig&quot;&gt; ... &lt;/string&gt;
-                                       &lt;string name=&quot;urlOrig&quot;&gt; ... &lt;/string&gt;
-                                       &lt;string name=&quot;description&quot;&gt; ... &lt;/string&gt;
-                                       &lt;number name=&quot;created&quot;&gt; ... &lt;/number&gt;
-                               &lt;/struct&gt;
-                       &lt;/array&gt;
-               &lt;/Params&gt;
-       &lt;/Response&gt;
-       </pre>
-
-       <h4>getListPhotoTags</h4>
-       <b>Request:</b>
-       <pre>
-       &lt;Request class=&quot;photos&quot; function = &quot;getListPhotoTags&quot;&gt;
-               &lt;Params&gt;
-                       &lt;string name=&quot;ownerId&quot;&gt; ... &lt;/string&gt;
-                       &lt;string name=&quot;albumId&quot;&gt; ... &lt;/string&gt;
-                       &lt;string name=&quot;photoId&quot;&gt; ... &lt;/string&gt;
-               &lt;/Params&gt;
-       &lt;/Request&gt;
-       </pre>
-       <b>Response:</b>
-       <pre>
-       &lt;Response class=&quot;photos&quot; function=&quot;getListPhotoTags&quot;&gt;
-               &lt;Params&gt;
-                       &lt;array name=&quot;tagsList&quot; quantity=&quot;...&quot; ownerId=&quot;...&quot; albumId=&quot;...&quot; photoId=&quot;...&quot;&gt;
-                               &lt;struct name=&quot;tag&quot; id=&quot;...&quot;/&gt;
-                                       &lt;string name=&quot;userId&quot;&gt; ... &lt;/string&gt;
-                                       &lt;string name=&quot;text&quot;&gt; ... &lt;/string&gt;
-                                       &lt;number name=&quot;created&quot;&gt; ... &lt;/number&gt;
-                               &lt;/struct&gt;
-                       &lt;/array&gt;
-               &lt;/Params&gt;
-       &lt;/Response&gt;
-       </pre>
-       <p>Parameter <i>userId</i> is an id of user which is marked on photo (optional).</p>
-
-       <h4>getListFavoritePhotos</h4>
-       <b>Request:</b>
-       <pre>
-       &lt;Request class=&quot;photos&quot; function = &quot;getListFavoritePhotos&quot;&gt;
-               &lt;Params id=&quot;...&quot;&gt;
-                       &lt;number name=&quot;page&quot;&gt; ... &lt;/number&gt;
-                       &lt;number name=&quot;pageSize&quot;&gt; ... &lt;/number&gt;
-               &lt;/Params&gt;
-       &lt;/Request&gt;
-       </pre>
-       <ul>
-       <li><i>page</i> - number of page that is requested (optional, positive integer, equals 1 by default)</li>
-       <li><i>pageSize</i> - page size (optional, positive integer, equals 100 by default)</li>
-       <li><i>id</i> - user id (optional, equals id of owner of current account by default) </li>
-       </ul>
-       <b>Response:</b>
-       <pre>
-       &lt;Response class=&quot;photos&quot; function=&quot;getListFavoritePhotos&quot;&gt;
-               &lt;Params&gt;
-                       &lt;array name=&quot;photosList&quot; page=&quot;...&quot; pageSize=&quot;...&quot; quantity=&quot;...&quot;&gt;
-                               &lt;struct name=&quot;photo&quot; id=&quot;...&quot;/&gt;
-                                       &lt;string name=&quot;ownerId&quot;&gt; ... &lt;/string&gt;
-                                       &lt;string name=&quot;albumId&quot;&gt; ... &lt;/string&gt;
-                                       &lt;string name=&quot;urlSmall&quot;&gt; ... &lt;/string&gt;
-                                       &lt;string name=&quot;urlBig&quot;&gt; ... &lt;/string&gt;
-                                       &lt;string name=&quot;urlOrig&quot;&gt; ... &lt;/string&gt;
-                                       &lt;string name=&quot;description&quot;&gt; ... &lt;/string&gt;
-                                       &lt;number name=&quot;created&quot;&gt; ... &lt;/number&gt;
-                               &lt;/struct&gt;
-                       &lt;/array&gt;
-               &lt;/Params&gt;
-       &lt;/Response&gt;
-       </pre>
-
-       <h4>getPhoto</h4>
-       <b>Request:</b>
-       <pre>
-       &lt;Request class=&quot;photos&quot; function = &quot;getPhoto&quot;&gt;
-               &lt;Params&gt;
-                       &lt;string name=&quot;url&quot;&gt; ... &lt;/string&gt;
-                       &lt;string name=&quot;path&quot;&gt; ... &lt;/string&gt;
-               &lt;/Params&gt;
-       &lt;/Request&gt;
-       </pre>
-       <b>Response:</b> info message or error message.
-
-       <h4>getListPhotoComments</h4>
-       <b>Request:</b>
-       <pre>
-       &lt;Request class=&quot;photos&quot; function = &quot;getListPhotoComments&quot;&gt;
-               &lt;Params&gt;
-                       &lt;string name=&quot;ownerId&quot;&gt; ... &lt;/string&gt;
-                               &lt;string name=&quot;albumId&quot;&gt; ... &lt;/string&gt;
-                       &lt;string name=&quot;photoId&quot;&gt; ... &lt;/string&gt;
-                       &lt;number name=&quot;page&quot;&gt; ... &lt;/number&gt;
-                       &lt;number name=&quot;pageSize&quot;&gt; ... &lt;/number&gt;
-               &lt;/Params&gt;
-       &lt;/Request&gt;
-       </pre>
-       <ul>
-       <li><i>page</i> - number of page that is requested (optional, positive integer, equals 1 by default)</li>
-       <li><i>pageSize</i> - page size (optional, positive integer, equals 100 by default)</li>
-       </ul>
-       <b>Response:</b>
-       <pre>
-       &lt;Response class=&quot;photos&quot; function=&quot;getListPhotoComments&quot;&gt;
-               &lt;Params&gt;
-                       &lt;array name=&quot;commentsList&quot; page=&quot;...&quot; pageSize=&quot;...&quot;  quantity=&quot;...&quot; ownerId=&quot;...&quot; albumId=&quot;...&quot; photoId=&quot;...&quot;&gt;
-                               &lt;struct name=&quot;comment&quot; id=&quot;...&quot;/&gt;
-                                       &lt;string name=&quot;ParentId&quot;&gt; ... &lt;/string&gt;
-                                       &lt;string name=&quot;SenderId&quot;&gt; ... &lt;/string&gt;
-                                       &lt;string name=&quot;SenderName&quot;&gt; ... &lt;/string&gt;
-                                       &lt;string name=&quot;Time&quot;&gt; ... &lt;/string&gt;
-                                       &lt;string name=&quot;Text&quot;&gt; ... &lt;/string&gt;
-                               &lt;/struct&gt;
-                       &lt;/array&gt;
-               &lt;/Params&gt;
-       &lt;/Response&gt;
-       </pre>
-       <p>Parameter <i>ParentId</i> is an id of previous comment, if there is such one  (optional).</p>
-
-       <h4>sendPhotoComment</h4>
-       <b>Request:</b>
-       <pre>
-       &lt;Request class=&quot;photos&quot; function=&quot;sendPhotoComment&quot;&gt;
-               &lt;Params&gt;
-                       &lt;string name=&quot;ownerId&quot;&gt; ... &lt;/string&gt;
-                       &lt;string name=&quot;albumId&quot;&gt; ... &lt;/string&gt;
-                       &lt;string name=&quot;photoId&quot;&gt; ... &lt;/string&gt;
-                       &lt;string name=&quot;text&quot;&gt; ... &lt;/string&gt;
-               &lt;/Params&gt;
-       &lt;/Request&gt;
-       </pre>
-       <b>Response:</b> info message or error message.
-       
-
-
-       <h3>Messages</h3>
-       <h4>getListOutboxMessages</h4>
-       <b>Request:</b>
-       <pre>
-       &lt;Request class=&quot;messages&quot; function=&quot;getListOutboxMessages&quot;&gt;
-               &lt;Params&gt;
-                       &lt;number name=&quot;page&quot;&gt; ... &lt;/number&gt;
-                       &lt;number name=&quot;pageSize&quot;&gt; ... &lt;/number&gt;
-                       &lt;number name=&quot;timeOffset&quot;&gt; ... &lt;/number&gt;
-               &lt;/Params&gt;
-       &lt;/Request&gt;
-       </pre>
-       <ul>
-       <li><i>page</i> - number of page that is requested (optional, positive integer, equals 1 by default)</li>
-       <li><i>pageSize</i> - page size (optional, positive integer, equals 100 by default)</li>
-       <li><i>timeOffset</i> - time offset for requested messages</li>
-       </ul>
-       <b>Response:</b>
-       <pre>
-       &lt;Response class=&quot;messages&quot; function = &quot;getListOutboxMessages&quot;&gt;              
-               &lt;Params&gt;
-                       &lt;array name=&quot;messageList&quot; page=&quot;...&quot; pageSize=&quot;...&quot; quantity=&quot;...&quot;&gt;
-                               &lt;struct name=&quot;message&quot; id=&quot;...&quot;&gt;             
-                                               &lt;string name=&quot;SenderId&quot;&gt; ... &lt;/string&gt;
-                                               &lt;string name=&quot;SenderName&quot;&gt; ... &lt;/string&gt;
-                                               &lt;array name=&quot;recipientList&quot; quantity=&quot;...&quot;&gt;
-                                               &lt;struct name=&quot;recipient&quot;&gt;
-                                                       &lt;string name=&quot;RecipientId&quot;&gt; ... &lt;/string&gt;
-                                                       &lt;string name=&quot;RecipientName&quot;&gt; ... &lt;/string&gt;
-                                               &lt;/struct&gt;
-                                               &lt;/array&gt;
-                                               &lt;string name=&quot;Time&quot;&gt; ... &lt;/string&gt;
-                                               &lt;string name=&quot;Title&quot;&gt; ... &lt;/string&gt;
-                                               &lt;string name=&quot;Text&quot;&gt; ... &lt;/string&gt;
-                                               &lt;string name=&quot;Status&quot;&gt; ... &lt;/string&gt;
-                                               &lt;attachment id=&quot;...&quot; ownerId=&quot;...&quot; type=&quot;...&quot;&gt;
-                                                ...
-                                               &lt;/attachment&gt;
-                               &lt;/struct&gt;
-                       &lt;/array&gt;
-                       &lt;/Params&gt;
-       &lt;/Response&gt;
-       </pre>
-       <p>Parameter <i>attachment</i> is optional, its content depends on attribute <i>type</i> and can have following values:</p>
-       <pre>
-       &lt;attachment id=&quot;...&quot; ownerId=&quot;...&quot; type=&quot;image&quot;&gt;
-               &lt;string name=&quot;name&quot;&gt; ... &lt;/string&gt;      
-               &lt;string name=&quot;albumId&quot;&gt; ... &lt;/string&gt;
-                &lt;string name=&quot;urlSmall&quot;&gt; ... &lt;/string&gt;
-                &lt;string name=&quot;urlBig&quot;&gt; ... &lt;/string&gt;
-        &lt;/attachment&gt;
-
-       &lt;attachment id=&quot;...&quot; ownerId=&quot;...&quot; type=&quot;video&quot;&gt;
-               &lt;string name=&quot;name&quot;&gt; ... &lt;/string&gt;
-               &lt;string name=&quot;url&quot;&gt; ... &lt;/string&gt;
-                &lt;number name=&quot;duration&quot;&gt; ... &lt;/number&gt;
-                &lt;string name=&quot;urlImage&quot;&gt; ... &lt;/string&gt;
-        &lt;/attachment&gt;
-
-       &lt;attachment id=&quot;...&quot; ownerId=&quot;...&quot; type=&quot;audio&quot;&gt;
-               &lt;string name=&quot;name&quot;&gt; ... &lt;/string&gt;
-               &lt;string name=&quot;url&quot;&gt; ... &lt;/string&gt;
-               &lt;number name=&quot;duration&quot;&gt; ... &lt;/number&gt;
-        &lt;/attachment&gt;
-
-       &lt;attachment id=&quot;...&quot; ownerId=&quot;...&quot; type=&quot;link&quot;&gt;
-                       &lt;string name=&quot;name&quot;&gt; ... &lt;/string&gt;
-                &lt;string name=&quot;url&quot;&gt; ... &lt;/string&gt;
-                &lt;string name=&quot;urlImage&quot;&gt; ... &lt;/string&gt;
-        &lt;/attachment&gt;
-
-       &lt;attachment id=&quot;...&quot; ownerId=&quot;...&quot; type=&quot;note&quot;&gt;
-               &lt;string name=&quot;name&quot;&gt; ... &lt;/string&gt;
-               &lt;string name=&quot;url&quot;&gt; ... &lt;/string&gt;
-       &lt;/attachment&gt;
-       </pre>
-
-
-
-
-
-       <h3>Audio</h3>
-       <h4>getListAudio</h4>
-       <b>Request:</b>
-       <pre>
-       &lt;Request class="audio" function="getListAudio"&gt;
-               &lt;Params id="..."&gt;
-               &lt;/Params&gt;
-        &lt;/Request&gt;
-       </pre>
-       <b>Response:</b>
-       <pre>
-       &lt;Response class="audio" function="getListAudio"&gt;
-               &lt;Params id="..."&gt;
-                       &lt;array name="audioList" quantity="..." ownerId="..."&gt;
-                               &lt;struct name="audio" id="..."&gt;
-                                       &lt;string name="title"&gt; ... &lt;/string&gt;
-                                       &lt;string name="artist"&gt; ... &lt;/string&gt;
-                                       &lt;number name="duration"&gt; ... &lt;/number&gt;
-                                       &lt;string name="audio"&gt; ...url... &lt;/string&gt;
-                               &lt;/struct&gt;
-                       &lt;/array&gt;
-               &lt;/Params&gt;
-       &lt;/Response&gt;
-       </pre>
-
-
-
-       <h3>Video</h3>
-       <h4>getListVideo</h4>
-       <b>Request:</b>
-       <pre>
-       &lt;Request class="video" function="getListVideo"&gt;
-               &lt;Params id="..."&gt;
-               &lt;/Params&gt;
-        &lt;/Request&gt;
-       </pre>
-       <b>Response:</b>
-       <pre>
-       &lt;Response class="video" function="getListVideo"&gt;
-               &lt;Params&gt;
-                       &lt;array name="videoList" quantity="..." ownerId="..."&gt;
-                               &lt;struct name="video" id="..."&gt;
-                                       &lt;string name="title"&gt; ... &lt;/string&gt;
-                                       &lt;string name="description"&gt; ... &lt;/string&gt;
-                                       &lt;number name="duration"&gt; ... &lt;/number&gt;
-                                       &lt;img name="Img"&gt; ...url... &lt;/img&gt;
-                                       &lt;string name="link"&gt; ...url... &lt;/string&gt;
-                                       &lt;string name="url"&gt; ...url to player... &lt;/string&gt;
-                               &lt;/struct&gt;
-                       &lt;/array&gt;
-               &lt;/Params&gt;
-       &lt;/Response&gt;
-       </pre>
-
-
-
-       <h3>News</h3>
-
-       <h3>Info and error messages</h3>
-       <h4>Error message format</h4>
-       <pre>
-       &lt;Response class="systemMessages" function = "errorMessage"&gt;              
-               &lt;Params&gt;
-                       &lt;string name="moduleName"&gt; ... &lt;/string&gt;
-                       &lt;string name="code"&gt; ... &lt;/string&gt;
-                       &lt;string name="text"&gt; ... &lt;/string&gt;
-                       &lt;string name="comment"&gt; ... &lt;/string&gt;
-                       &lt;string name="type"&gt;user/internal/service &lt;/string&gt;
-               &lt;/Params&gt;
-       &lt;/Response&gt;
-       </pre>
-
-       <h4>Info message format</h4>
-       <pre>
-       &lt;Response class="systemMessages" function = "infoMessage"&gt;              
-               &lt;Params&gt;
-                       &lt;string name="moduleName"&gt; ... &lt;/string&gt;
-               &lt;/Params&gt;
-       &lt;/Response&gt;
-       </pre>
-
-
+                <!-- <span style='' onclick=' textToggle("example") '>Это краткий текст</span>
+<div class='hidden-text' id='example'>
+  А это полный текст описания<br>А это полный текст описания<br>
+</div> -->
+               <ul class="list">
+                       <li>Simultaneous support of several social networks</li>
+                       <li>Album, Set, Collection and Image browsing and exchange</li>
+                       <li>Message browsing and exchange</li>
+                       <li>Audio and video browsing</li>
+                       <li>News feed</li>
+                       <li>Support of Harmattan and Maemo 5 platforms</li>
+                       <li>Support of mobile and desktop Linux</li>
+               </ul>
+               <p>
+               MySocials application is a client for different social networks. It allows to work with various objects including users' profiles, images, messages, audio files, etc. Using your accounts from social networks you are able to browse your friends profiles, work with messages, audio files, albums and images with comments and send your own comment to each image. Also you can download images from your device to social network using this app. MySocials supports interaction with such social networks as Vkontakte, Facebook, Flickr, MyWorld from Mail.Ru and Photobucket. 
+               </p>
+               <p>
+The main aim of MySocials app is to make your work with different services easier, so the app integrates all base functions of social networks such as opportunity to share your photos and video files, exchange messages with other people, browse your friends' profiles, etc. After you pass authorization in several social networks that MySocials supports, you are able to work with common list of your friends from these networks. To make navigation through this list more convenient you can use different filters. The list can be filtered by social network, by sex or by friend's status (online/offline). Also you can find a friend in the list using special field «Search».
+               </p>
+               <p align="center"><img src="images/Friends-Harmattan.png" width="240px" height="425px" alt="Harmattan version"/></p>
+               <p align="center">
+               <b>Browsing list of friends (Harmattan version)</b>
+               </p>
+               Using MySocials you are able to browse all important information about selected friend from social network such as friend's profile information, his/her albums with images and audio files, your messages that you send/get from this friend. 
+               <p>
+               Sharing photos and images is another important and popular service in social networks. MySocial allows you to browse you own and your friends' albums and images from different social networks, send your comment to each image and upload your images to the service by using simple form of our app.
+               </p>
+               <p align="center"><img src="images/albums-desktop.png" width="650px" height="470px" alt="desktop version"/></p>
+               <p align="center">
+               <b>Browsing list of friends and albums of selected friend (desktop version)</b>
+               </p>
+               <p align="center"><img src="images/images-maemo.png" width="660px" height="356px" alt="Maemo 5 version"/></p>
+               <p align="center">
+               <b>Browsing photos (Maemo 5 version)</b>
+               </p>
+               <p>
+               We have to point out that MySocials uses special application WebAuth to pass the authorization through web interface. That means that the app <i>doesn't store your logins and passwords from your accounts</i> that  make your work with MySocials safety. One more feature of this app is an opportunity to work  though proxy. 
+               </p>
+               <p>
+               MySocials is available for different platforms. More details are available in <a href="downloads.html">Downloads</a> page of our site.
+               </p>
+               <p>
+               Source code is available at <a href="https://gitorious.org/mysocials/">Gitorious</a>. You are welcome to send you comments and suggestions to our email <a href="mailto:maemo-mysocials@cs.karelia.ru">maemo-mysocials@cs.karelia.ru</a>.
+               </p>
+               <h2>Timetable of future releases</h2>
+               <h3>October 2011:</h3>
+               <ul class="list">
+                       <li>Separate package with Qt UI widgets</li>
+                       <li>News feed panel</li>
+                       <li>Account activation and deactivation</li>
+                       <li>Application optimization</li>
+                       <li>Harmattan version of application</li>
+               </ul>
+               <h3>February 2012:</h3>
+               <ul class="list">
+                       <li>Audio tracks browsing and exchange</li>
+                       <li>Video tracks browsing and exchange</li>
+                       <li>Support of browsing marked images</li>
+                       <li>Qt based drivers for social networks</li>
+               </ul>
       </td>
       </tr>
     </table></td>