<?php
//Version d'origine : 5.1.x
//Version cible : 5.2.0
//
//

//___________________________________________________________________
//
//Ajout champ type_id dans la table établissements
//___________________________________________________________________

if (!champ_dans_table("type_id","etablissements",$db)) 
	{
	print "<br>Ajout champ type_id dans la table etablissements pour les stats";
	query("ALTER TABLE `etablissements` ADD `type_id` TINYINT NOT NULL DEFAULT '2' AFTER etab_id");
	}

//___________________________________________________________________
//
//Ajout et remplissage table typetab
//___________________________________________________________________

query("DROP TABLE IF EXISTS typetab");
//print "<br>Ajout et remplissage table typetab";
query("CREATE TABLE typetab (type_id INTEGER NOT NULL AUTO_INCREMENT,
    type VARCHAR(10) NOT NULL,libelle VARCHAR(40),PRIMARY KEY (type_id))");	
query("INSERT INTO typetab VALUES (1, 'ECOLE', 'Ecole'),(2, 'CLG', 'Collège'),
			 (3, 'LP', 'Lycée professionnel'), (4, 'LYC', 'Lycée'), (5, 'EREA', 'EREA'), (6,'SEGPA','SEGPA')");


//___________________________________________________________________
//
//Ajout champs URL aide dans la table établissements
//___________________________________________________________________


if (!champ_dans_table("URL_aide_eleve","etablissements",$db)) 
	{
  print "<br>Ajout champs URL_aide élève dans la table etablissements pour chemin de l'aide en ligne";
  query("ALTER IGNORE TABLE `etablissements` ADD `URL_aide_eleve` VARCHAR( 100 ) NULL AFTER `menus_CSS` ");
  }
if (!champ_dans_table("pas_aide_eleve","etablissements",$db)) 
  query("ALTER IGNORE TABLE `etablissements` ADD `pas_aide_eleve` TINYINT NOT NULL DEFAULT '0' AFTER `menus_CSS` ");
   
if (!champ_dans_table("URL_aide_prof","etablissements",$db))  
 { 
  print "<br>Ajout champs URL_aide prof dans la table etablissements pour chemin de l'aide en ligne";
  query("ALTER IGNORE TABLE `etablissements` ADD `URL_aide_prof` VARCHAR( 100 ) NULL AFTER `URL_aide_eleve` ");
	}
if (!champ_dans_table("pas_aide_prof","etablissements",$db))  
  query("ALTER IGNORE TABLE `etablissements` ADD `pas_aide_prof` TINYINT NOT NULL DEFAULT '0' AFTER `pas_aide_eleve`");
		
if (!champ_dans_table("URL_aide_admin","etablissements",$db))    
  {
  print "<br>Ajout champs URL_aide admin dans la table etablissements pour chemin de l'aide en ligne";
  query("ALTER IGNORE TABLE `etablissements` ADD `URL_aide_admin` VARCHAR( 100 ) NULL AFTER `URL_aide_prof` "); 
  }	
if (!champ_dans_table("pas_aide_admin","etablissements",$db))    
  query("ALTER IGNORE TABLE `etablissements` ADD `pas_aide_admin` TINYINT NOT NULL DEFAULT '0' AFTER `pas_aide_prof`"); 


//___________________________________________________________________
//
//Ajout enregistrements aide dans la table _params_globaux
//___________________________________________________________________
$res=query("SELECT param_val FROM _params_globaux WHERE param_nom='URL_AIDE_ELEVE'");
if (mysql_num_rows($res)==0)
	query("INSERT INTO `_params_globaux` (`param_nom`, `param_type`, `param_val`, `param_desc`, `param_tag`) VALUES 
	  ('URL_AIDE_ELEVE', 's', 'http://wikigibii.ac-bordeaux.fr/index.php/Documentation_El%C3%A8ve', 'URL aide élève', 0)");

$res=query("SELECT param_val FROM _params_globaux WHERE param_nom='URL_AIDE_PROF'");
if (mysql_num_rows($res)==0)
	query("INSERT INTO `_params_globaux` (`param_nom`, `param_type`, `param_val`, `param_desc`, `param_tag`) VALUES 
	  ('URL_AIDE_PROF', 's', 'http://wikigibii.ac-bordeaux.fr/index.php/Documentation_Prof', 'URL aide professeur', 0)");	
	
$res=query("SELECT param_val FROM _params_globaux WHERE param_nom='URL_AIDE_ADMIN'");
if (mysql_num_rows($res)==0)
	query("INSERT INTO `_params_globaux` (`param_nom`, `param_type`, `param_val`, `param_desc`, `param_tag`) VALUES 
	  ('URL_AIDE_ADMIN', 's', 'http://wikigibii.ac-bordeaux.fr/index.php/Documentation_Admin', 'URL aide admin', 0)");


//ajout du nom du site dans les params globaux
//--------------------------------------------
$res=query("SELECT param_val FROM _params_globaux WHERE param_nom='SITE_GIBII'");
$site=time().'_'.rand(0,PHP_INT_MAX);
if (mysql_num_rows($res)==0) {
	query("INSERT INTO _params_globaux VALUES ('SITE_GIBII', 's', '$site', 'identificateur du site créé à l\'install', -1)");
	}
else {
	list($site)=mysql_fetch_array($res);
	if (empty($site)) 
		query("UPDATE _params_globaux SET param_val='$site' WHERE param_nom='SITE_GIBII'");
	}


//Pour création de tables MYISAM
$enginemysql=get_enginemysql();

//___________________________________________________________________

//    CHANGEMENT de politique pour les feuilles de position profs et disciplines !
//___________________________________________________________________
 
//   table des liens resultats-profs
if (!table_dans_base('lrp', $db)) {
    print "<br><b>Ajout de la table 'lrp'</b> pour stockage liens résultats - profs : ";
    $ok=query("CREATE TABLE lrp (
    resultat_id INTEGER NOT NULL,
    prof_id INTEGER NOT NULL,
    quand DATETIME,
    UNIQUE KEY ix_rt(resultat_id, prof_id)) $enginemysql ");
    if ($ok) print "OK<br />";
    
	//___________________________________________________________________
	//
	//   Remplissage de la table lrp par les réponses accordées
	//___________________________________________________________________    
	print "<br><b>Remplissage de la table 'lrp' </b>pour stockage disciplines validatrices : patience c'est un peu LONG .. <br />";
	superflush();
	query("INSERT IGNORE INTO lrp
				SELECT res.resultat_id, rep.prof_id, rep.quand
					FROM resultats as res
					INNER JOIN demandes as dem ON res.eleve_id=dem.eleve_id 
												AND res.item_id=dem.item_id 
												AND res.disc_id=dem.disc_id
					INNER JOIN reponses as rep ON dem.message_id=rep.message_id 
					WHERE dem.obtenue=1
					AND rep.accord=1
					AND TO_DAYS(NOW()) - TO_DAYS(res.quand) <= 365*".DELAI_PURGE_ELVPROF."
					ORDER BY rep.prof_id");
	} //Fin table lrp

//suppression des tables lrt et temoins après utilisation pour remplissage au mieux de lrp
//-------------------------------------
if (table_dans_base('temoins',$db)) {
	//version 5.1.x
	query("INSERT IGNORE INTO lrp 
					SELECT lrt.resultat_id, profs.prof_id, lrt.quand 
						FROM profs
						INNER JOIN temoins ON profs.temoin_id=temoins.temoin_id
						INNER JOIN lrt ON lrt.temoin_id=temoins.temoin_id
						AND profs.nom=temoins.nom
						AND profs.prenom=temoins.prenom
						AND profs.disc_id=temoins.disc_id
						AND profs.etab_id=temoins.etab_id
						ORDER BY prof_id");		//pour aider à l'indexation...
	query("DROP TABLE IF EXISTS lrt,temoins"); 
	}		
if (champ_dans_table('temoin_id','profs',$db)) query("ALTER TABLE profs DROP temoin_id;");


//modification des tables nn_conserves
//------------------------------------
$res=query("SELECT etab_id FROM etablissements");
while (list($etab_id)=mysql_fetch_array($res)) {
	$table=$etab_id."_conserves";
	if (table_dans_base($table,$db)) 
		query("ALTER TABLE ".$etab_id."_conserves CHANGE `dnaiss` `dnaiss` VARCHAR( 6 ) NOT NULL DEFAULT '31/02'");
	}
print "<br />Fin d'exécution de la mise à jour (".__FILE__.")";
?>