Code Duplication    Length = 30-31 lines in 2 locations

ecrire/req/pg.php 1 location

@@ 164-193 (lines=30) @@
161
 * stocke le resultat pour ne pas faire 
162
 * de requetes showtable intempestives
163
 */
164
function spip_pg_ajouter_champs_timestamp($table, $couples, $desc='', $serveur=''){
165
	static $tables = array();
166
	
167
	if (!isset($tables[$table])){
168
		
169
		if (!$desc){
170
			$f = charger_fonction('trouver_table', 'base');
171
			$desc = $f($table, $serveur);
172
			// si pas de description, on ne fait rien, ou on die() ?
173
			if (!$desc) return $couples;
174
		}
175
		
176
		// recherche des champs avec simplement 'TIMESTAMP'
177
		// cependant, il faudra peut etre etendre
178
		// avec la gestion de DEFAULT et ON UPDATE
179
		// mais ceux-ci ne sont pas utilises dans le core
180
		$tables[$table] = array();
181
		foreach ($desc['field'] as $k=>$v){
182
			if (strpos(strtolower(ltrim($v)), 'timestamp')===0)
183
			$tables[$table][] = $k;
184
		}
185
	}
186
	
187
	// ajout des champs type 'timestamp' absents
188
	foreach ($tables[$table] as $maj){
189
		if (!array_key_exists($maj, $couples))
190
			$couples[$maj] = "NOW()";	
191
	}
192
	return $couples;
193
}
194
 	
195
	
196
// Alter en PG ne traite pas les index

ecrire/req/sqlite_generique.php 1 location

@@ 1600-1630 (lines=31) @@
1597
 * de requetes showtable intempestives
1598
 */
1599
// http://doc.spip.org/@_sqlite_ajouter_champs_timestamp
1600
function _sqlite_ajouter_champs_timestamp($table, $couples, $desc='', $serveur=''){
1601
	static $tables = array();
1602
	
1603
	if (!isset($tables[$table])){
1604
		
1605
		if (!$desc){
1606
			$f = charger_fonction('trouver_table', 'base');
1607
			$desc = $f($table, $serveur);
1608
			// si pas de description, on ne fait rien, ou on die() ?
1609
			if (!$desc OR !$desc['field']) return $couples;
1610
		}
1611
		
1612
		// recherche des champs avec simplement 'TIMESTAMP'
1613
		// cependant, il faudra peut etre etendre
1614
		// avec la gestion de DEFAULT et ON UPDATE
1615
		// mais ceux-ci ne sont pas utilises dans le core
1616
		$tables[$table] = array();
1617
1618
		foreach ($desc['field'] as $k=>$v){
1619
			if (strpos(strtolower(ltrim($v)), 'timestamp')===0)
1620
			$tables[$table][] = $k;
1621
		}
1622
	}
1623
	
1624
	// ajout des champs type 'timestamp' absents
1625
	foreach ($tables[$table] as $maj){
1626
		if (!array_key_exists($maj, $couples))
1627
			$couples[$maj] = "datetime('now')";	
1628
	}
1629
	return $couples;
1630
}
1631
 	
1632
 	
1633