3 /***************************************************************************\
4 * SPIP, Systeme de publication pour l'internet *
6 * Copyright (c) 2001-2014 *
7 * Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
9 * Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
10 * Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne. *
11 \***************************************************************************/
13 if (!defined('_ECRIRE_INC_VERSION')) return;
14 include_spip('maj/vieille_base/10000/serial');
15 include_spip('maj/vieille_base/10000/auxiliaires');
16 include_spip('maj/vieille_base/10000/typedoc');
18 // http://doc.spip.org/@creer_base
19 function maj_vieille_base_10000_create($server='') {
20 global $tables_principales, $tables_auxiliaires, $tables_images, $tables_sequences, $tables_documents, $tables_mime;
22 // Note: les mises à jour reexecutent ce code pour s'assurer
23 // de la conformite de la base
24 // pas de panique sur "already exists" et "duplicate entry" donc.
26 $fcreate = sql_serveur('create', $server);
27 $freplace = sql_serveur('replace', $server);
28 $fupdate = sql_serveur('update', $server);
29 foreach($tables_principales as $k => $v)
30 $fcreate($k, $v['field'], $v['key'], true);
32 foreach($tables_auxiliaires as $k => $v)
33 $fcreate($k, $v['field'], $v['key'], false);
36 // Init ou Re-init ==> replace pas insert
37 $desc = $tables_principales['spip_types_documents'];
38 foreach($tables_images as $k => $v) {
39 $freplace('spip_types_documents',
40 array('extension' => $k,
46 foreach($tables_sequences as $k => $v)
47 $freplace('spip_types_documents',
48 array('extension' => $k,
53 foreach($tables_documents as $k => $v)
54 $freplace('spip_types_documents',
55 array('extension' => $k,
60 foreach ($tables_mime as $extension => $type_mime)
61 $freplace('spip_types_documents',
62 array("mime_type" => $type_mime,
63 "extension" => $extension),
67 // http://doc.spip.org/@stripslashes_base
69 function stripslashes_base($table, $champs) {
72 while (list(, $champ) = each($champs)) {
73 $modifs[] = $champ . '=REPLACE(REPLACE(' .$champ. ',"\\\\\'", "\'"), \'\\\\"\', \'"\')';
75 spip_query("UPDATE $table SET ".join(',', $modifs));