public function UpdateAward($request) { $mundane_id = Ork3::$Lib->authorization->IsAuthorized($request['Token']); $awards = new yapo($this->db, DB_PREFIX . 'awards'); $awards->clear(); $awards->awards_id = $request['AwardsId']; if (valid_id($request['AwardsId']) && $awards->find()) { $mundane = $this->player_info($awards->mundane_id); if (valid_id($mundane_id) && Ork3::$Lib->authorization->HasAuthority($mundane_id, AUTH_PARK, $mundane['ParkId'], AUTH_EDIT)) { if (valid_id($request['ParkId'])) { $Park = new Park(); $info = $Park->GetParkShortInfo(array('ParkId' => $request['ParkId'])); if ($info['Status']['Status'] != 0) { return InvalidParameter(); } } $awards->rank = $request['Rank']; $awards->date = $request['Date']; $awards->given_by_id = $request['GivenById']; $awards->note = $request['Note']; // If no event, then go Park! $awards->park_id = !valid_id($request['EventId']) ? $request['ParkId'] : 0; // If no event and valid parkid, go Park! Otherwise, go Kingdom. Unless it's an event. Then go ... ZERO! $awards->kingdom_id = !valid_id($request['EventId']) ? valid_id($request['ParkId']) ? $info['ParkInfo']['KingdomId'] : $request['KingdomId'] : 0; // Events are awesome. $awards->event_id = valid_id($request['EventId']) ? $request['EventId'] : 0; $awards->save(); return Success($awards->awards_id); } else { return InvalidParamter(); } } else { return NoAuthorization(); } }
public function SetKingdomParkTitles($request) { $response = []; if (($mundane_id = Ork3::$Lib->authorization->IsAuthorized($request['Token'])) > 0 && Ork3::$Lib->authorization->HasAuthority($mundane_id, AUTH_KINGDOM, $request['KingdomId'], AUTH_EDIT)) { $this->log->Write('Kingdom', $mundane_id, LOG_EDIT, $request); if (is_array($request['ParkTitles'])) { $parktitle = new yapo($this->db, DB_PREFIX . 'parktitle'); foreach ($request['ParkTitles'] as $k => $title) { switch ($title['Action']) { case CFG_REMOVE: $parktitle->clear(); $parktitle->parktitle_id = $title['ParkTitleId']; if (valid_id($title['ParkTitleId']) && $parktitle->find()) { if ($parktitle->kingdom_id != $request['KingdomId']) { $response['Status'] = NoAuthorization('You cannot edit the park titles of another kingdom.'); return $response; } $parktitle->delete(); } break; case CFG_EDIT: $parktitle->clear(); $parktitle->parktitle_id = $title['ParkTitleId']; if (valid_id($title['ParkTitleId']) && $parktitle->find()) { if ($parktitle->kingdom_id != $request['KingdomId']) { $response['Status'] = NoAuthorization('You cannot edit the park titles of another kingdom.'); return $response; } $parktitle->title = strlen($title['Title']) ? $title['Title'] : $parktitle->title; $parktitle->class = strlen($title['Class']) ? $title['Class'] : $parktitle->class; $parktitle->minimumattendance = strlen($title['MinimumAttendance']) ? $title['MinimumAttendance'] : $parktitle->minimumattendance; $parktitle->minimumcutoff = strlen($title['MinimumCutoff']) ? $title['MinimumCutoff'] : $parktitle->minimumcutoff; $parktitle->period = strlen($title['Period']) ? $title['Period'] : $parktitle->period; $parktitle->period_length = strlen($title['PeriodLength']) ? $title['PeriodLength'] : $parktitle->period_length; $parktitle->save(); } break; case CFG_ADD: $parktitle->clear(); $parktitle->kingdom_id = $request['KingdomId']; $parktitle->title = $title['Title']; $parktitle->class = $title['Class']; $parktitle->minimumattendance = $title['MinimumAttendance']; $parktitle->minimumcutoff = $title['MinimumCutoff']; $parktitle->period = $title['Period']; $parktitle->period_length = $title['PeriodLength']; $parktitle->save(); break; } } } $response = Success(); } else { $response = NoAuthorization(null, $mundane_id); } return $response; }
public function CreateUnit($request) { logtrace("CreateUnit()", $request); if (($mundane_id = Ork3::$Lib->authorization->IsAuthorized($request['Token'])) > 0) { $this->unit->clear(); $this->unit->name = $request['Name']; $this->unit->type = $request['Type']; $this->unit->description = strip_tags($request['Description'], "<p><br><ul><li><b><i>"); $this->unit->history = strip_tags($request['History'], "<p><br><ul><li><b><i>"); $this->unit->url = $request['Url']; $this->unit->modified = date("Y-m-d H:i:s"); $this->unit->save(); $request['UnitId'] = $this->unit->unit_id; if (strlen($request['Heraldry']) > 0) { logtrace("CreateUnit() :2", $request); Ork3::$Lib->heraldry->SetUnitHeraldry($request); } if ($request['Anonymous'] && Ork3::$Lib->authorization->HasAuthority($mundane_id, AUTH_ADMIN, 0, AUTH_CREATE)) { return Success($request['UnitId']); } if ($this->unit->type == 'Company') { $mundane = new yapo($this->db, DB_PREFIX . 'mundane'); $mundane->mundane_id = $mundane_id; $mundane->find(); $mundane->company_id = $this->unit->unit_id; $mundane->save(); } Ork3::$Lib->authorization->add_auth_h(['MundaneId' => $mundane_id, 'Type' => AUTH_UNIT, 'Id' => $this->unit->unit_id, 'Role' => AUTH_EDIT]); $request['MundaneId'] = $mundane_id; switch ($this->unit->type) { case 'Company': $request['Role'] = 'captain'; break; case 'Household': $request['Role'] = 'lord'; break; case 'Event': $request['Role'] = 'organizer'; break; } $request['Title'] = 'Founder'; $request['Active'] = 1; $this->add_member_h($request); return Success($request['UnitId']); } else { return NoAuthorization(); } }
<?php die; $DONOTWEBSERVICE = true; include_once 'PlayerService.php'; global $DB; $p = new yapo($DB, DB_PREFIX . 'mundane'); $p->given_name = 'admin'; if ($p->find()) { $p->mundane_id = null; $p->other_name = 'admin.p'; $p->save(); }