[ Index ]

PHP Cross Reference of Unnamed Project

title

Body

[close]

/se3master/usr/share/se3/sbin/ -> modif_profil_mozilla_ff.sh (source)

   1  #!/bin/bash
   2  
   3  #
   4  ## $Id: modif_profil_mozilla_ff.sh 6654 2011-11-27 16:35:54Z dbo $ ##
   5  #
   6  ##### Script permettant de modfier la page de demarrage de mozilla FF #####
   7  # Franck.molle@ac-rouen.fr - juin 2005
   8  
   9  if [ "$1" = "--help" -o "$1" = "-h" ]
  10  then
  11      echo "Script permettant de modifier la page de demarrage de Mozilla FF"
  12      echo "Usage : aucune option"
  13      exit
  14  fi
  15  
  16  #Couleurs
  17  COLTITRE="\033[1;35m"    # Rose
  18  COLPARTIE="\033[1;34m"    # Bleu
  19  COLTXT="\033[0;37m"    # Gris
  20  COLCHOIX="\033[1;33m"    # Jaune
  21  COLDEFAUT="\033[0;33m"    # Brun-jaune
  22  COLSAISIE="\033[1;32m"    # Vert
  23  COLCMD="\033[1;37m"    # Blanc
  24  COLERREUR="\033[1;31m"    # Rouge
  25  COLINFO="\033[0;36m"    # Cyan
  26  
  27  ERREUR()
  28  {
  29      echo -e "$COLERREUR"
  30      echo "ERREUR!"
  31      echo -e "$1"
  32      echo -e "$COLTXT"
  33      exit 1
  34  }
  35  WWWPATH="/var/www"
  36  
  37  if [ $# -ne 3 -a $# -ne 2 ]; then
  38      echo -e "$COLERREUR\c"
  39      echo -e "$0 a besoin d'arguments pour fonctionner"
  40      echo -e "$COLINFO\c"
  41      echo "Passer en arguments dans l'ordre :"
  42      echo "- le nom du groupe ou de l'utilisateur dont vous voulez modifier la page de demarrafe de FireFox"
  43      echo "- l'url de la nouvelle page de demarrage"
  44      echo "- eventuellement ajouter create_homes en argument si vous voulez creer les homes non encore existant avant de modifier la page de demarrage"
  45      echo -e "$COLTXT"
  46      echo "ex1 : ./modif_profil_mozilla profs http://www.google.fr create_homes"
  47      echo "fixera la page de demarrage de mozilla firefox a google.fr pour tous les profs et creera les homes si besoin avant de le faire"
  48      echo ""
  49      echo "ex2 : ./modif_profil_mozilla eleves http://www.google.fr"
  50      echo "fixera la page de demarrage de mozilla firefox a google.fr pour tous les élèves et ignorera les homes non encore existant"
  51      exit 1
  52  fi
  53  
  54  NEW_PAGE_DEM="$2"
  55  OPTION="$3"
  56  
  57  ## recuperation des variables necessaires pour interoger mysql ###
  58  if [ -e $WWWPATH/se3/includes/config.inc.php ]; then
  59      dbhost=`cat $WWWPATH/se3/includes/config.inc.php | grep "dbhost=" | cut -d = -f2 | cut -d \" -f2`
  60      dbname=`cat $WWWPATH/se3/includes/config.inc.php | grep "dbname=" | cut    -d = -f 2 |cut -d \" -f 2`
  61       dbuser=`cat $WWWPATH/se3/includes/config.inc.php | grep "dbuser=" | cut -d = -f 2 | cut -d \" -f 2`
  62       dbpass=`cat $WWWPATH/se3/includes/config.inc.php | grep "dbpass=" | cut -d = -f 2 | cut -d \" -f 2`
  63  else
  64      ERREUR "Fichier de configuration inaccessible, le script ne peut se poursuivre."
  65      
  66  fi
  67  path2UserSkel=`echo "SELECT value FROM params WHERE name='path2UserSkel'" | mysql -h $dbhost $dbname -u $dbuser -p$dbpass -N`
  68  if [ -z "$path2UserSkel" ]; then
  69      path2UserSkel="/etc/skel/user"
  70  fi
  71  
  72  CHEMIN_FF_SOURCE="$path2UserSkel}/profil/appdata/Mozilla"
  73  
  74  
  75  if [ "$1" == ""skeluser ]; then
  76  echo "je change la page de demarrage pour le squelette en lui fixant $2"
  77              cat  $CHEMIN_FF_SOURCE}/Firefox/Profiles/default/prefs.js | sed -e "/(\"browser.startup.homepage\",/d" > $CHEMIN_FF_SOURCE}/Firefox/Profiles/default/prefs.js 
  78              echo "user_pref(\"browser.startup.homepage\", \"$2\");'" >> $CHEMIN_FF_SOURCE}/Firefox/Profiles/default/prefs.js 
  79              exit 0
  80  fi
  81  
  82  
  83      ### recuperation des parametres actuels de l'annuaire dans la base ####
  84      BASEDN=`echo "SELECT value FROM params WHERE name=\"ldap_base_dn\"" | mysql -h $dbhost $dbname -u $dbuser -p$dbpass -N`
  85      
  86      TST_GRP=$(ldapsearch -xLLL cn=$1 -b $BASEDN | grep member)
  87      
  88      if [ -z "$TST_GRP" ]; then
  89      TST_UID=$(ldapsearch -xLLL uid="$1")
  90          if [ -z "$TST_UID" ]; then
  91              ERREUR "Impossible de trouver le groupe ou l'utilisateur passé en paramètre dans l'annuaire Ldap"
  92          else
  93              if [ "$OPTION" == "create_homes" ]; then
  94              /usr/share/se3/sbin/mkhome.pl "$1"
  95              fi
  96              echo "je change la page de demarrage pour $1 en lui fixant $2"
  97              if [ -e /home/$1 ]; then
  98              cat  /home/$1/profil/appdata/Mozilla/Firefox/Profiles/default/prefs.js | sed -e "/(\"browser.startup.homepage\",/d" > /home/$1/profil/appdata/Mozilla/Firefox/Profiles/default/prefs.js
  99              echo "user_pref(\"browser.startup.homepage\", \"$2\");'" >> /home/$1/profil/appdata/Mozilla/Firefox/Profiles/default/prefs.js
 100              else
 101              echo "le home de l'utilisateur $1 n'existe pas et a été ignoré, relancer la script avec l'option create_homes en 3eme argument si vous voulez le créer"
 102              fi
 103              exit 0    
 104          fi
 105      fi
 106      TST_GRP_POSIX=$(ldapsearch -xLLL "cn=$1" | grep memberUid)
 107      if [ -z "$TST_GRP_POSIX" ]; then
 108          ldapsearch -x -LLL cn=$1 -b $BASEDN | grep uid | cut -d " " -f2 |  cut -d "=" -f2 | cut -d "," -f1 | while read A
 109          do
 110              if [ "$OPTION" == "create_homes" ]; then
 111              /usr/share/se3/sbin/mkhome.pl "$A"
 112              fi
 113              
 114              if [ -e /home/$A ]; then
 115              echo "je change la page de demarrage pour $A en lui fixant $2"
 116              cat  /home/$A/profil/appdata/Mozilla/Firefox/Profiles/default/prefs.js | sed -e "/(\"browser.startup.homepage\",/d" > /home/$A/profil/appdata/Mozilla/Firefox/Profiles/default/prefs.js
 117              echo "user_pref(\"browser.startup.homepage\", \"$2\");'" >> /home/$A/profil/appdata/Mozilla/Firefox/Profiles/default/prefs.js
 118              else
 119              echo "le home de l'utilisateur $A n'existe pas et a été ignoré, relancer la script avec l'option create_homes en 3eme argument si vous voulez le créer"
 120              fi
 121          done
 122      
 123      else
 124          
 125          ldapsearch -x -LLL "cn=$1" | grep memberUid | cut -d " " -f2 | while read A
 126          do 
 127              if [ "$OPTION" == "create_homes" ]; then
 128              /usr/share/se3/sbin/mkhome.pl "$A"
 129              fi
 130              
 131              if [ -e /home/$A ]; then
 132              echo "je change la page de demarrage pour $A en lui fixant $2"
 133              cat  /home/$A/profil/appdata/Mozilla/Firefox/Profiles/default/prefs.js | sed -e "/(\"browser.startup.homepage\",/d" > /home/$A/profil/appdata/Mozilla/Firefox/Profiles/default/prefs.js
 134              echo "user_pref(\"browser.startup.homepage\", \"$2\");'" >> /home/$A/profil/appdata/Mozilla/Firefox/Profiles/default/prefs.js
 135              else
 136              echo "le home de l'utilisateur $A n'existe pas et a été ignoré, relancer la script avec l'option create_homes en 3eme argument si vous voulez le créer"
 137              fi
 138              
 139          done
 140      fi
 141  
 142  exit 0


Generated: Tue Mar 17 22:47:18 2015 Cross-referenced by PHPXref 0.7.1