public static function reset_sbasDatas(appbox $appbox) { self::$_sbas_names = self::$_sbas_labels = self::$_sbas_params = self::$_bas2sbas = null; $appbox->delete_data_from_cache([self::CACHE_SBAS_NAMES, self::CACHE_SBAS_LABELS, self::CACHE_SBAS_FROM_BAS, self::CACHE_SBAS_PARAMS]); return; }
public static function create(Application $app, databox $databox, appbox $appbox, $name, User $user = null) { $sbas_id = $databox->get_sbas_id(); $connbas = $databox->get_connection(); $conn = $appbox->get_connection(); $new_bas = false; $prefs = '<?xml version="1.0" encoding="UTF-8"?> <baseprefs> <status>0</status> <sugestedValues> </sugestedValues> </baseprefs>'; $sql = "INSERT INTO coll (coll_id, asciiname, prefs, logo)\n VALUES (null, :name, :prefs, '')"; $params = [':name' => $name, 'prefs' => $prefs]; $stmt = $connbas->prepare($sql); $stmt->execute($params); $stmt->closeCursor(); $new_id = (int) $connbas->lastInsertId(); $sql = "INSERT INTO bas (base_id, active, ord, server_coll_id, sbas_id, aliases)\n VALUES\n (null, 1, :ord, :server_coll_id, :sbas_id, '')"; $stmt = $conn->prepare($sql); $stmt->execute([':server_coll_id' => $new_id, ':sbas_id' => $sbas_id, ':ord' => self::getNewOrder($conn, $sbas_id)]); $stmt->closeCursor(); $new_bas = $conn->lastInsertId(); $databox->delete_data_from_cache(databox::CACHE_COLLECTIONS); $appbox->delete_data_from_cache(appbox::CACHE_LIST_BASES); cache_databox::update($app, $sbas_id, 'structure'); phrasea::reset_baseDatas($appbox); $collection = self::get_from_coll_id($app, $databox, $new_id); if (null !== $user) { $collection->set_admin($new_bas, $user); } return $collection; }