#!/usr/bin/php5 -q
<?php
/***************************************************************************
- * Copyright (C) 2003-2008 Polytechnique.org *
+ * Copyright (C) 2003-2009 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
/* Validite des flags de transmission */
check("SELECT u.user_id, nom, prenom, promo,
- profile_mobile_pub, emails_alias_pub, profile_web_pub, profile_freetext_pub, profile_medals_pub
+ emails_alias_pub, profile_freetext_pub, profile_medals_pub
FROM auth_user_md5 AS u
INNER JOIN auth_user_quick AS q USING(user_id)
- WHERE (profile_mobile_pub != 'private' AND profile_mobile_pub != 'ax' AND profile_mobile_pub != 'public')
- OR (emails_alias_pub != 'private' AND emails_alias_pub != 'public')
- OR (profile_web_pub != 'private' AND profile_web_pub != 'public')
+ WHERE (emails_alias_pub != 'private' AND emails_alias_pub != 'public')
OR (profile_freetext_pub != 'private' AND profile_freetext_pub != 'public')
OR (profile_medals_pub != 'private' AND profile_medals_pub != 'public')",
"Utilisateur n'ayant pas de flag de publicite pour leurs donnees de profil");
check("select uid from adresses where pub != 'private' and pub !='ax' and pub != 'public'", "Utiliseur n'ayant pas de flag de publicite pour une adresse");
-check("select uid from tels where tel_pub != 'private' and tel_pub !='ax' and tel_pub != 'public'", "Utiliseur n'ayant pas de flag de publicite pour un numero de telephone");
+check("select uid from profile_phones where pub != 'private' and pub != 'ax' and pub != 'public'", "Utiliseur n'ayant pas de flag de publicite pour un numero de téléphone");
+check("select uid from profile_networking where pub != 'private' and pub != 'public'", "Utiliseur n'ayant pas de flag de publicité pour une adresse de networking");
+
+/* validite des hruid */
+check("SELECT user_id, nom, prenom, promo FROM auth_user_md5 WHERE hruid IS NULL OR hruid = ''",
+ "Utilisateur n'ayant pas de hruid.");
/* validite de aliases */
check("SELECT a.*
LEFT JOIN auth_user_md5 AS u ON u.user_id=a.id
WHERE (a.type='alias' OR a.type='a_vie') AND u.prenom is null");
-/* validite de applis_ins */
-check("select a.* from applis_ins as a left join auth_user_md5 as u on u.user_id=a.uid where u.prenom is null");
-check("select a.* from applis_ins as a left join applis_def as ad on ad.id=a.aid where ad.text is null");
+/* validite de profile_education */
+check("select a.* from profile_education as a left join auth_user_md5 as u on u.user_id=a.uid where u.prenom is null");
+check("select a.* from profile_education as a left join profile_education_enum as ad on ad.id=a.eduid where ad.name is null");
/* validite de binet_users */
check("select b.* from binets_ins as b left join auth_user_md5 as u on u.user_id=b.user_id where u.prenom is null");
/* validite de photo */
check("select p.* from photo as p left join auth_user_md5 as u on u.user_id=p.uid where u.prenom is null");
+/* validite des formats téléphoniques */
+check("SELECT DISTINCT g.phoneprf from geoloc_pays AS g
+ WHERE EXISTS (SELECT h.phoneprf
+ FROM geoloc_pays AS h
+ WHERE h.phoneprf = g.phoneprf AND h.phoneformat != (SELECT i.phoneformat
+ FROM geoloc_pays AS i
+ WHERE i.phoneprf = g.phoneprf
+ LIMIT 1))",
+ "Préfixes téléphoniques qui ont des formats de numéros de téléphones différents selon les pays");
+
/* validite des champ pays et region */
check("SELECT a.uid, a.country FROM adresses AS a LEFT JOIN geoloc_pays AS gp ON a.country = gp.a2 WHERE gp.pays IS NULL","donne la liste des pays dans les profils qui n'ont pas d'entree correspondante dans geoloc_pays");
/* les régions ne sont valides que dans les adresses pros */