Overview
Comment:Fix bug on session when upgrading, bump to beta1
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | dev | 1.1.0-beta1
Files: files | file ages | folders
SHA3-256: 1eada423870858e003b29aaf114982a16925a3959feffa6dbc2d32230776aafa
User & Date: bohwaz on 2021-03-30 22:12:34
Other Links: branch diff | manifest | tags
Context
2021-03-30
23:03
Skip errors check-in: 839b90357c user: bohwaz tags: dev
22:12
Fix bug on session when upgrading, bump to beta1 check-in: 1eada42387 user: bohwaz tags: dev, 1.1.0-beta1
21:58
Cache quota as it may make things slow check-in: c0f86221c0 user: bohwaz tags: dev
Changes

Modified src/VERSION from [d101261bd0] to [1ee05564ba].

1
1.1.0-alpha10
|
1
1.1.0-beta1

Modified src/include/lib/Garradin/Membres/Session.php from [3fd3cc7631] to [08959104e6].

157
158
159
160
161
162
163
164
165
166
167
168
169
170
171

	protected function deleteAllRememberMeSelectors($user_id)
	{
		return $this->db->delete('membres_sessions', $this->db->where('id_membre', $user_id));
	}

	// Ajout de la gestion de LOCAL_LOGIN
	public function isLogged($disable_local_login = false)
	{
		$logged = parent::isLogged();

		if (!$disable_local_login && defined('\Garradin\LOCAL_LOGIN'))
		{
			$login_id = \Garradin\LOCAL_LOGIN;








|







157
158
159
160
161
162
163
164
165
166
167
168
169
170
171

	protected function deleteAllRememberMeSelectors($user_id)
	{
		return $this->db->delete('membres_sessions', $this->db->where('id_membre', $user_id));
	}

	// Ajout de la gestion de LOCAL_LOGIN
	public function isLogged(bool $disable_local_login = false)
	{
		$logged = parent::isLogged();

		if (!$disable_local_login && defined('\Garradin\LOCAL_LOGIN'))
		{
			$login_id = \Garradin\LOCAL_LOGIN;

Modified src/include/lib/Garradin/Upgrade.php from [c4f3076366] to [28add53a2b].

31
32
33
34
35
36
37




38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
..
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
...
177
178
179
180
181
182
183




184
185
186
187
188
189
190
		{
			$path = Static_Cache::getPath('upgrade');
			throw new UserException('Une mise à jour est déjà en cours.'
				. PHP_EOL . 'Si celle-ci a échouée et que vous voulez ré-essayer, supprimez le fichier suivant:'
				. PHP_EOL . $path);
		}





		return true;
	}

	static public function upgrade()
	{
		$db = DB::getInstance();
		$v = $db->version();

		$session = Session::getInstance();
		$user_is_logged = $session->isLogged(true);

		Static_Cache::store('upgrade', 'Mise à jour en cours.');

		// Créer une sauvegarde automatique
		$backup_name = (new Sauvegarde)->create(false, 'pre-upgrade-' . garradin_version());

		try {
			if (version_compare($v, '1.0.1', '<'))
................................................................................
			{
				// Missing trigger
				$db->begin();
				$db->import(ROOT . '/include/data/1.0.6_migration.sql');
				$db->commit();
			}

			if (version_compare($v, '1.1.0', '<='))
			{
				// Missing trigger
				$db->beginSchemaUpdate();

				$attachments = $db->getAssoc('SELECT id, id || \'_\' || nom FROM fichiers;');

				// Update Skriv content for attachments
................................................................................
			$s = new Sauvegarde;
			$s->restoreFromLocal($backup_name);
			$s->remove($backup_name);
			Static_Cache::remove('upgrade');
			throw $e;
		}





		// Forcer à rafraîchir les données de la session si elle existe
		if ($user_is_logged)
		{
			$session->refresh();
		}
	}








>
>
>
>








<
<
<







 







|







 







>
>
>
>







31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49



50
51
52
53
54
55
56
..
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
...
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
		{
			$path = Static_Cache::getPath('upgrade');
			throw new UserException('Une mise à jour est déjà en cours.'
				. PHP_EOL . 'Si celle-ci a échouée et que vous voulez ré-essayer, supprimez le fichier suivant:'
				. PHP_EOL . $path);
		}

		// Voir si l'utilisateur est loggé, on le fait ici pour le cas où
		// il y aurait déjà eu des entêtes envoyés au navigateur plus bas
		$session = Session::getInstance();
		$session->start();
		return true;
	}

	static public function upgrade()
	{
		$db = DB::getInstance();
		$v = $db->version();




		Static_Cache::store('upgrade', 'Mise à jour en cours.');

		// Créer une sauvegarde automatique
		$backup_name = (new Sauvegarde)->create(false, 'pre-upgrade-' . garradin_version());

		try {
			if (version_compare($v, '1.0.1', '<'))
................................................................................
			{
				// Missing trigger
				$db->begin();
				$db->import(ROOT . '/include/data/1.0.6_migration.sql');
				$db->commit();
			}

			if (version_compare($v, '1.1.0-beta1', '<='))
			{
				// Missing trigger
				$db->beginSchemaUpdate();

				$attachments = $db->getAssoc('SELECT id, id || \'_\' || nom FROM fichiers;');

				// Update Skriv content for attachments
................................................................................
			$s = new Sauvegarde;
			$s->restoreFromLocal($backup_name);
			$s->remove($backup_name);
			Static_Cache::remove('upgrade');
			throw $e;
		}


		$session = Session::getInstance();
		$user_is_logged = $session->isLogged(true);

		// Forcer à rafraîchir les données de la session si elle existe
		if ($user_is_logged)
		{
			$session->refresh();
		}
	}