refact design form Poste
authordavin baragiotta <davin.baragiotta@u-db.(none)>
Wed, 6 Apr 2011 23:11:49 +0000 (19:11 -0400)
committerDavin BARAGIOTTA <davin.baragiotta@auf.org>
Wed, 6 Apr 2011 23:11:49 +0000 (19:11 -0400)
project/dae/forms.py
project/dae/models.py
project/dae/templates/dae/poste.html
project/media/skin/css/auf.css

index 59e1da9..54447df 100644 (file)
@@ -35,7 +35,7 @@ class PosteForm(forms.ModelForm):
             queryset=rh.Poste.objects.select_related(depth=1))
 
     # La liste des choix est laissée vide. Voir __init__ pour la raison.
-    poste = forms.ChoiceField(label="Nouveau poste, ou évolution du poste",
+    poste = forms.ChoiceField(label="Nouveau poste ou évolution du poste",
                               choices=(), required=False)
 
     def __init__(self, *args, **kwargs):
index c7f19f0..c48ae74 100644 (file)
@@ -52,17 +52,20 @@ class Poste(models.Model):
     service = models.ForeignKey(rh.Service, related_name='+',
                                 verbose_name=u"Direction/Service/Pôle support")
     responsable = models.ForeignKey(rh.Poste, related_name='+',
-                                    verbose_name="Poste du responsable")
+                                verbose_name="Poste du responsable")
 
     regime_travail = models.DecimalField(max_digits=12, decimal_places=2,
-                                         default=100)
+                                default=100, 
+                                verbose_name="Temps de travail", 
+                                help_text="% du temps complet")
     regime_travail_nb_heure_semaine = models.DecimalField(max_digits=12,
-                                                          decimal_places=2,
-                                                          default=40)
+                                decimal_places=2,
+                                default=40,
+                                verbose_name="Nb. heures par semaine")
 
     # Recrutement
     statut_residence = models.CharField(max_length=10, default='MAD',
-                                        verbose_name="Recrutement",
+                                        verbose_name="Statut",
                                         choices=STATUT_RESIDENCE_CHOICES)
     # TODO null?
     mise_a_disposition = models.BooleanField()
index fc8bc50..7db427d 100644 (file)
@@ -2,7 +2,9 @@
 
 {% block title %}RH - DAE{% endblock %}
 {% block titre %}Ressources humaines{% endblock %}
-{% block sous_titre %}Demande d'autorisation d'embauche{% endblock %}
+{% block sous_titre %}
+Demande d'autorisation d'embauche
+{% endblock %}
 
 {% block extrahead %}
   <script src="{{ MEDIA_URL }}js/jquery-1.5.1.min.js"
 {% block main %}
 <h1>Demande d'autorisation de création de poste</h1>
 
-  <form action="" method="post">
-  
-    <div class="row">
-        {{ form.poste.label_tag }} 
-        {{form.poste.errors }} 
-        <span> : </span>
-        <span>{{ form.poste }}</span>
-        <span class="note">Justifier à la section 4<span>
-    </div>
-    
-    <h1 class="section">
-    {% if new %}
-      Nouveau poste
-    {% else %}
-      Mise à jour du poste :<br />{{ poste.nom }} ({{ poste.implantation.nom }})
-    {% endif %}
-    </h1>
-
-    <div class="row">
-        {{ form.nom.label_tag }} 
-        {{ form.nom.errors }} 
-        <span> : </span>
-        <span>{{ form.nom }}</span>
-    </div>
-    <div class="row">
-        {{ form.type_poste.label_tag }}
-        {{ form.type_poste.errors }}
-        <span> : </span>
-        {{ form.type_poste }}
-    </div>
-
-    <div class="row">
-        {{ form.implantation.label_tag }} 
-        {{ form.implantation.errors }} 
-        <span> : </span>
-        <span>{{ form.implantation }}<span>
-        {{ form.service.label_tag }} 
-        {{ form.service.errors }} 
-        <span> : </span>
-        <span>{{ form.service }}</span>
-    </div>
-
-    <div class="row">
-        {{ form.responsable.label_tag }} 
-        {{ form.responsable.errors }} 
-        <span> : </span>
-        <span>{{ form.responsable }}</span>
-    </div>
-
-    <div class="row">
-        <span class="underline">{{ form.statut_residence.label_tag }}</span> 
-        <span> : </span> 
-        <span>
-            {{ form.statut_residence.errors }} 
-            {{ form.statut_residence }} 
-            {{ form.mise_a_disposition.label_tag }} 
-            {{ form.mise_a_disposition.errors }} 
-            {{ form.mise_a_disposition }}
-        </span>
-    </div>
-
-    <div class="row">
-        {{ form.appel.label_tag }} 
-        {{ form.appel.errors }} 
-        <span> : </span> 
-        <span>{{ form.appel }}</span>
-    </div>
-
-    <div class="row">
-        <label>Durée prévue du poste </label> 
-        <span class="underline">(indépendamment du titulaire du poste)</span> :
-    </div>
-
-    <div class="row">
-        <label>Durée déterminée : </label> 
-        <span>du ({{form.date_debut.help_text }}) : </span> 
-        <span>{{ form.date_debut.errors }} {{ form.date_debut }}</span> 
-        <span> au ({{form.date_fin.help_text }}) : </span> 
-        <span>{{ form.date_fin.errors }} {{ form.date_fin }}</span>
-        <span class="note">Pour une durée indéterminée, spécifier uniquement la date de début<span>
-    </div>
+<form action="" method="post">
+    <fieldset>
+    <h2>
+        {% if new %}
+            Nouveau poste
+        {% else %}
+            Poste existant : {{ poste.nom }} ({{ poste.implantation.nom }})
+        {% endif %}
+    </h2>
+    <table>
+        <tbody>
+        <tr>
+            <th>{{ form.poste.label_tag }} :<br />{{ form.poste.errors }}</th>
+            <td>{{ form.poste }}</td>
+        </tr>
+        <tr>
+            <th>{{ form.nom.label_tag }} :<br />{{ form.nom.errors }}</th>
+            <td>{{ form.nom }}</td>
+        </tr>
+        <tr>
+            <th>{{ form.type_poste.label_tag }} :<br />{{ form.type_poste.errors }}</th>
+            <td>{{ form.type_poste }}</td>
+        </tr>
+        <tr>
+            <th>{{ form.implantation.label_tag }} :<br />{{ form.implantation.errors }}</th>
+            <td>{{ form.implantation }}</td>
+        </tr>
+        <tr>
+            <th>{{ form.service.label_tag }} :<br />{{ form.service.errors }}</th>
+            <td>{{ form.service }}</td>
+        </tr>
+        <tr>
+            <th>{{ form.responsable.label_tag }} :<br />{{ form.responsable.errors }}</th>
+            <td>{{ form.responsable }}</td>
+        </tr>
+        </tbody>
+    </table>
+    </fieldset>
 
-    <div class="row">
-        <label>Régime de travail</label>
-        <span> : </span> 
-        <span>Temps complet 100%,  Temps partiel : </span>
-        {{ form.regime_travail.errors }} 
-        {{ form.regime_travail }}<span>%</span>
-        <label>Nbr heures par semaine</label>
-        <span> : </span> 
-        <span>
-            {{ form.regime_travail_nb_heure_semaine.errors }} 
-            {{ form.regime_travail_nb_heure_semaine }}
-        </span>
-    </div>
+    <fieldset>
+    <h2>Recrutement</h2>
+    <table>
+        <tbody>
+        <tr>
+            <th>{{ form.statut_residence.label_tag }} :<br />{{ form.statut_residence.errors }}</th>
+            <td>
+                <span class="row">
+                {{ form.statut_residence }} 
+                {{ form.mise_a_disposition.label_tag }} 
+                {{ form.mise_a_disposition.errors }} 
+                {{ form.mise_a_disposition }}
+                </span>
+            </td>
+        </tr>
+        <tr>
+            <th>{{ form.appel.label_tag }} :<br />{{ form.appel.errors }}</th>
+            <td>
+                <span class="row">
+                {{ form.appel }}
+                </span>
+            </td>
+        </tr>
+        </tbody>
+    </table>
+    </fieldset>
 
-    <table class="noborder">
-        <tr class="noborder">
-            <td><label>Classement du poste</label> : </td>
+    <fieldset>
+    <h2>Durée prévue du poste </h2> 
+    <span class="underline">(indépendamment du titulaire du poste)</span>
+    <table>
+        <tbody>
+        <tr>
+            <th rowspan="2">Durée :</th>
+            <td>du</td>
+            <td>
+                {{ form.date_debut }}<br />
+                <span class="info">({{form.date_debut.help_text }})</span><br />
+                {{ form.date_debut.errors }}
+            </td>
+            <td> au </td>
+            <td>
+                {{ form.date_fin }}<br />
+                <span class="info">({{form.date_fin.help_text }})</span><br />
+                {{ form.date_fin.errors }}
+            </td>
+        </tr>
+        <tr>
+            <td colspan="4" class="info">Pour une durée indéterminée, spécifier uniquement la date de début.</td>
         </tr>
         <tr>
-            <td class="noborder">
-                <table>
-                    <tr>
-                        <th></th>
-                        <th>Échelon AUF</th>
-                        <th>Valeur du point</th>
-                        <th>Salaire de base</th>
-                        <th>Indemnité, responsabilité (le cas échéant)</th>
-                        <th>Autres</th>
-                        <th>TOTAL</th>
-                        <th>Conversion EUR</th>
-                    </tr>
-                    <tr>
-                        <th>Minimum</th>
-                        <td>{{ form.classement_min }}</td>
-                        <td>
-                            {{ form.valeur_point_min }}
-                            {{ form.valeur_point_min.errors }}
-                        </td>
-                        <td>{{ form.salaire_min }}</td>
-                        <td>{{ form.indemn_min }}</td>
-                        <td>{{ form.autre_min }}</td>
-                        <td>??</td>
-                        <td>??</td>
-                    </tr>
-                    <tr>
-                        <th>Maximun</th>
-                        <td>{{ form.classement_max }}</td>
-                        <td>
-                            {{ form.valeur_point_max }}
-                            {{ form.valeur_point_max.errors }}
-                        </td>
-                        <td>{{ form.salaire_max }}</td>
-                        <td>{{ form.indemn_max }}</td>
-                        <td>{{ form.autre_max }}</td>
-                        <td>??</td>
-                        <td>??</td>
-                    </tr>
-                </table>
+            <th>{{ form.regime_travail.label_tag }} :<br />{{ form.regime_travail.errors }}</th>
+            <td colspan="4">
+                {{ form.regime_travail }}
+                <span class="info">{{ form.regime_travail.help_text }}</span>
             </td>
         </tr>
+        <tr>
+            <th>
+                {{ form.regime_travail_nb_heure_semaine.label_tag }} :<br />
+                {{ form.regime_travail_nb_heure_semaine.errors }}
+            </th>
+            <td colspan="4">{{ form.regime_travail_nb_heure_semaine }}</td>
+        </tr>
+        </tbody>
     </table>
+    </fieldset>
 
-    {% if new %}
-    <table class="noborder">
-        <tr class="noborder">
-            <td><label>Éléments de comparaison<label> : <p class="info">Compléter uniquement lors de la création d'un poste</p></td>
+    <fieldset>
+    <h2>Classement du poste</h2>
+    <table>
+        <tbody>
+        <tr>
+            <th></th>
+            <th>Échelon AUF</th>
+            <th>Valeur du point</th>
+            <th>Salaire de base</th>
+            <th>Indemnité, responsabilité (le cas échéant)</th>
+            <th>Autres</th>
+            <th>TOTAL</th>
+            <th>Conversion EUR</th>
+        </tr>
+        <tr>
+            <th>Minimum</th>
+            <td>{{ form.classement_min }}</td>
+            <td>
+                {{ form.valeur_point_min }}
+                {{ form.valeur_point_min.errors }}
+            </td>
+            <td>{{ form.salaire_min }}</td>
+            <td>{{ form.indemn_min }}</td>
+            <td>{{ form.autre_min }}</td>
+            <td>??</td>
+            <td>??</td>
         </tr>
         <tr>
-            <td class="noborder">
-                <table>
-                    <tr>
-                        <th></th>
-                        <th>Locale</th>
-                        <th>Université</th>
-                        <th>Fonction publique</th>
-                        <th>ONG</th>
-                        <th>Autre</th>
-                    </tr>
-                    <tr>
-                        <th>Minimum</th>
-                        <td>{{ form.comp_locale_min }}</td>
-                        <td>{{ form.comp_universite_min }}</td>
-                        <td>{{ form.comp_fonctionpub_min }}</td>
-                        <td>{{ form.comp_ong_min }}</td>
-                        <td>{{ form.comp_autre_min }}</td>
-                    </tr>
-                    <tr>
-                        <th>Maximum</th>
-                        <td>{{ form.comp_locale_max }}</td>
-                        <td>{{ form.comp_universite_max }}</td>
-                        <td>{{ form.comp_fonctionpub_max }}</td>
-                        <td>{{ form.comp_ong_max }}</td>
-                        <td>{{ form.comp_autre_max }}</td>
-                    </tr>
-                </table>
+            <th>Maximun</th>
+            <td>{{ form.classement_max }}</td>
+            <td>
+                {{ form.valeur_point_max }}
+                {{ form.valeur_point_max.errors }}
             </td>
+            <td>{{ form.salaire_max }}</td>
+            <td>{{ form.indemn_max }}</td>
+            <td>{{ form.autre_max }}</td>
+            <td>??</td>
+            <td>??</td>
         </tr>
+        </tbody>
     </table>
-    {% endif %}
 
     <p class="info">N.B Conversion en EUROS au taux de change budgétaire</p>
+    </fieldset>
+
+    {% if new %}
+    <fieldset>
+    <h2>Éléments de comparaison</h2>
+    <p class="info">Compléter uniquement lors de la création d'un poste</p>
+    <table>
+        <tbody>
+        <tr>
+            <th></th>
+            <th>Locale</th>
+            <th>Université</th>
+            <th>Fonction publique</th>
+            <th>ONG</th>
+            <th>Autre</th>
+        </tr>
+        <tr>
+            <th>Minimum</th>
+            <td>{{ form.comp_locale_min }}</td>
+            <td>{{ form.comp_universite_min }}</td>
+            <td>{{ form.comp_fonctionpub_min }}</td>
+            <td>{{ form.comp_ong_min }}</td>
+            <td>{{ form.comp_autre_min }}</td>
+        </tr>
+        <tr>
+            <th>Maximum</th>
+            <td>{{ form.comp_locale_max }}</td>
+            <td>{{ form.comp_universite_max }}</td>
+            <td>{{ form.comp_fonctionpub_max }}</td>
+            <td>{{ form.comp_ong_max }}</td>
+            <td>{{ form.comp_autre_max }}</td>
+        </tr>
+        </tbody>
+    </table>
+    <p class="info">N.B Conversion en EUROS au taux de change budgétaire</p>
+    </fieldset>
+    {% endif %}
 
-{% comment %}
+    {% comment %}
     <h1 class="section clear">SECTION 2 - PERSONNEL ENGAGÉ</h1>
     <div class="row"></div>
 
 
     <h1 class="section">SECTION 4 - JUSTIFICATION DE LA DEMANDE (OBLIGATOIRE)</h1>
     <div class="row"></div>
-{% endcomment %}
+    {% endcomment %}
     <input type="submit" name="save" value="Sauvegarder" />
-  </form>
+</form>
 
-  <h2>Financement</h2>
+    <fieldset>
+    <h2>Financement</h2>
 
-  <table cellspacing="0" id="financing">
+    <table cellspacing="0" id="financing">
     <tr>
       <th>Type</th>
       <th>Montant</th>
         </td>
       </tr>
     {% endfor %}
-  </table>
-  {% if not new %}
+    </table>
+    {% if not new %}
     <a href="{% url financement poste_key %}" class="new">
       Ajouter une source de financement
     </a>
-  {% endif %}
+    {% endif %}
 
-  <div id="financing-form"></div>
+    <div id="financing-form"></div>
+    </fieldset>
 
   <script type="text/javascript">
     $('#id_poste').change(function() {
index bca5b36..4c46f25 100644 (file)
@@ -23,13 +23,14 @@ a img { border:none; }
 strong {font-weight: bold;}
 
 form { margin:8px 17px 0 0; padding:0px; }
-fieldset {border: 1px solid #EEEEEE; margin: 1em;}
+fieldset {border: 1px solid #5F5F5F; margin: 1em 0em 1em 0em; padding: 1em;}
+fieldset h2  { margin-top:0px; }
 label {font-weight: bold;}
 
 table { margin:10px 0px; border-collapse:collapse; padding:5px; }
 table th, table td{ font-size: 14px; border-top:1px solid #d0e8f8; border-left:1px solid #d0e8f8; padding: 5px; }
 table { border-bottom:1px solid #d0e8f8; border-right:1px solid #d0e8f8; }
-th { height:28px; border-top:2px solid #d0e8f8; padding:0 10px; background-color:#e7f1f8; font-size:14px; text-align:left; font-weight: bold;}
+th { height:28px; border-top:2px solid #d0e8f8; padding:0 10px; background-color:#F8FBFD; font-size:14px; text-align:left; font-weight: bold;}
 td { vertical-align: top; }
 table h1, table h2, table h3, table h4, table h5 {font-size: 120%; }