@Tex
This was a error in thinking from my side 
@1April
In ezStats, I will use this method: A user can start a update from adminpanel, and a POST-parameter is sent via AJAX. The update visitors or a cronjob can start, comes without POST-parameter:
PHP Code:
$type = $_POST['request'] == "admin" ? "direct" : "cronjob";
### player was pushed ###
if ($array['pushed'] == "1") {
$result = $player->update($array['id'], $array['name'], $array['platform']);
}
### player is not in bf3stats-DB yet ###
else if ($array['checkstate'] == "0" OR $array['checkstate'] == "notfound") {
$result = $player->push_sync($array['name'], $array['platform'], "direct");
}
### Last update dates back more than X hours ###
else if (($time - $array['date_check']) > $synctime) {
$result = $player->push_sync($array['name'], $array['platform'], $type);
}
### Stats update ###
else {
$result = $player->update($array['id'], $array['name'], $array['platform']);
}
public function update($playerid, $name, $platform) {
$postdata = Array(
'player' => $name,
'opt' => 'clear,all'
);
{ ... }
}
public function push_sync($name, $platform, $type) {
$data = Array(
'ident' => $this->settings->get('ident'),
'time' => time(),
'type' => $type,
'player' => $name
);
$syncdata = $this->getAPIDataSigned('playerupdate', $platform, $data);
{ ... }
}
Bookmarks