/** * ログ出力(browse,update) */ function log_write($kind, $page) { global $log; if (!$log[$kind]['use']) { return ''; } $rc = log_common_check($kind, $page, ''); if (empty($rc)) { return ''; } $filename = log::set_filename($kind, $page); // ログファイル名 if (!empty($log[$kind]['updtkey'])) { $mustkey = isset($log[$kind]['mustkey']) ? $log[$kind]['mustkey'] : 0; log_update($kind, $filename, $log[$kind]['updtkey'], $mustkey, $rc); } else { $data = log::array2table($rc); log_put($filename, $data); } // 見做しユーザ if ($kind == 'update' && $log['guess_user']['use']) { log_put_guess($rc); } }
function update_record($id, $data) { $old = load_record($id); $omit = array('lat', 'lon', 'fullname', 'id', 'updated', 'created', 'ts'); foreach ($old as $k => $v) { if (in_array($k, $omit)) { continue; } if (@$data[$k] != $v) { @log_update($id, $k, $v, $data[$k]); } } $data = _prepare_data($data); if (!isset($data['firstname'])) { $data['firstname'] = ''; } if (!isset($data['lastname'])) { $data['lastname'] = ''; } if (!isset($data['fullname'])) { $data['fullname'] = ''; } if (!isset($data['age'])) { $data['age'] = ''; } if (!isset($data['gender'])) { $data['gender'] = ''; } if (!isset($data['city'])) { $data['city'] = ''; } if (!isset($data['department'])) { $data['department'] = ''; } if (!isset($data['status'])) { $data['status'] = ''; } if (!isset($data['current_location'])) { $data['current_location'] = ''; } if (!isset($data['address'])) { $data['address'] = ''; } if (!isset($data['lat'])) { $data['lat'] = ''; } if (!isset($data['lon'])) { $data['lon'] = ''; } if (!isset($data['current_contact_information'])) { $data['current_contact_information'] = ''; } if (!isset($data['aid_type'])) { $data['aid_type'] = ''; } if (!isset($data['notes'])) { $data['notes'] = ''; } if (!isset($data['url_link_back'])) { $data['url_link_back'] = ''; } if (!isset($data['fromsms'])) { $data['fromsms'] = ''; } mysql_query(sprintf("UPDATE person SET firstname = '%s', lastname = '%s', fullname = '%s', age = %d, gender = '%s', city = '%s', department = '%s',\n\t\t\tstatus = '%s', current_location = '%s', address = '%s', lat = %d, lon = %d, current_contact_information = '%s', \n\t\t\tupdated = %d, aid_type = '%s', notes = '%s'\n\t\t\tWHERE id = %d", $data['firstname'], $data['lastname'], $data['fullname'], $data['age'], $data['gender'], $data['city'], $data['department'], $data['status'], $data['current_location'], $data['address'], $data['lat'], $data['lon'], $data['current_contact_information'], time(), mysql_real_escape_string($id), $data['aid_type'], $data['notes'])); broadcast_raw($data, $id); if (!empty($data['my_phone'])) { handle_searcher($id, $data); } }
function checkForUpdates() { global $UPDATES_PATH, $dbh; // Check for update scripts $content = file_get_contents("{$UPDATES_PATH}/modules.json"); $jsonModules = json_decode($content, true); foreach ($jsonModules as $name => $version) { $installedVersion = getVersionForModule($dbh, $name); if ($installedVersion < $version) { log_update("Module {$name}: latest version is {$version}, current version is {$installedVersion}"); for ($i = $installedVersion + 1; $i <= $version; $i++) { runUpdate($name, $i); } flagInstalled($name, $version); } else { log_update("Module {$name}: latest version already installed ({$installedVersion})"); } } }