-
- // Array for available patches
- $PATCHES = array(
- 'fname' => array(),
- 'fsize' => array(),
- 'ctime' => array()
- );
-
- if (($response[3] != "[EOF]") && ($ONLINE['version'] == getConfig('FULL_VERSION'))) {
- // We have found new patches (newer than FULL_VERSION)
- $max = str_replace("\n", '', $response[count($response) - 2]); $totalSize = 0;
-
- // Maximum of available pacthes extracted (above). Now we can get all informations
- for ($idx = 0; $idx < $max; $idx++) {
- // List only newer patches
- $TEST = substr(str_replace("\n", '', $response[$idx * 5 + 2]), 0, strlen(getConfig('patch_level')));
-
- // I have removed the addional test for the stored timemark in database or you cannot find
- // new updates on my server when you haven't installed it before I upload a patch... :-(
- if (bigintval($TEST) > getConfig(('patch_level'))) {
- // Copy every data from the response array
- $PATCHES['fname'][] = str_replace("\n", '', $response[$idx * 5 + 2]);
- $PATCHES['fsize'][] = str_replace("\n", '', $response[$idx * 5 + 3]);
- $PATCHES['ctime'][] = str_replace("\n", '', $response[$idx * 5 + 4]);
- switch (getLanguage()) {
- case 'de': $PATCHES['descr'][] = str_replace("\n", '', $response[$idx * 5 + 5]); break; // Load german description
- default : $PATCHES['descr'][] = str_replace("\n", '', $response[$idx * 5 + 6]); break; // Load english description as default
- }
-
- // Add patch's size to total
- $totalSize += $PATCHES['fsize'][$idx];
- }
- }
-
- array_pk_sort($PATCHES, array("ctime", "fname"));
-
- // All done here!
- $ONLINE['code'] = "200 OK";
- }