示例#1
0
 public static function generateUniqueName($title, $year)
 {
     $name_base = str_replace(array_keys(self::$TRANSLITERATABLE_CHARACTERS), array_values(self::$TRANSLITERATABLE_CHARACTERS), $title);
     $name_base = strtolower($name_base);
     $name_base = preg_replace("/[']/", '', $name_base);
     $name_base = preg_replace("/[^a-z0-9]/", '_', $name_base);
     $name_base = preg_replace('/_+/', '_', $name_base);
     if (strlen($year) > 4) {
         $year = date_parse($year);
         $year = $year["year"];
     }
     $approved = false;
     $try = 0;
     while (!$approved) {
         $number_length = 0;
         if ($try > 0) {
             $number_length = strlen($try) + 1;
         }
         $name = substr($name_base, 0, 254 - strlen($year) - $number_length);
         $name .= '_' . $year;
         if ($try > 0) {
             $name .= '_' . $try;
         }
         $result = null;
         $query = new GameQuery();
         $result = $query->findOneByName($name);
         if ($result != null) {
             $try++;
         } else {
             return $name;
         }
     }
 }
示例#2
0
<?php

require "res/include.php";
if (!array_key_exists("name", $_GET)) {
    header("Location: /");
    /* Redirect browser */
    exit;
} else {
    $query = new GameQuery();
    $game = $query->findOneByName($_GET["name"]);
    if ($game == null) {
        header("Location: /");
        /* Redirect browser */
        exit;
    }
}
if (!array_key_exists("platform", $_GET)) {
    $platform = "windows";
} else {
    $platform = $_GET["platform"];
}
$query = new PlatformQuery();
$platform = $query->findOneByName($platform);
if ($platform == null) {
    throw new Exception("Invalid platform specified");
}
// Getting the rating queries the database each time, so we do it once here:
$header = $game->getRatingHeaderForPlatform($platform);
$rating = $game->getRatingForPlatform($platform);
$user = Auth::getCurrentUser();
if (Auth::checkIfAuthenticated() && array_key_exists("submit_game_review", $_POST) && array_key_exists("submit_game_rating", $_POST)) {