X-Git-Url: http://git.polytechnique.org/?a=blobdiff_plain;f=htdocs%2Fjavascript%2Fprofile.js;h=3a10c1700580defa8a392778afa7cf95d2d73430;hb=57fa97b3b0820a76b26a1d17c078c3663b161922;hp=ff6c312c7364e204538cabac664eeea802db00ca;hpb=8e79f7c70f2ab8081fef3e2731eb3898c6eecf49;p=platal.git
diff --git a/htdocs/javascript/profile.js b/htdocs/javascript/profile.js
index ff6c312..3a10c17 100644
--- a/htdocs/javascript/profile.js
+++ b/htdocs/javascript/profile.js
@@ -37,11 +37,10 @@ function wizPage_onLoad(id)
updateGroupSubLink();
break;
case 'deco':
- for (var i in names) {
- if ($('#medal_' + i).length != 0) {
- getMedalName(i);
- buildGrade(i, $('#medal_' + i).find('[name*=medal_' + i + '_grade]').val());
- }
+ var i = 0;
+ while ($('#medal_' + i).length != 0) {
+ prepareMedal(i);
+ ++i;
}
break;
case 'emploi':
@@ -57,6 +56,7 @@ var educationDegreeAll;
var educationDegreeName;
var subgrades;
var names;
+var multiples;
// Publicity follows the following ordering: private < ax < public.
var publicity = [];
@@ -211,7 +211,7 @@ function addEdu()
i++;
$('#edu_add').addClass(prefix + i);
i--;
- $.get(platal_baseurl + 'profile/ajax/edu/' + i + '/' + class_parity,
+ $.xget('profile/ajax/edu/' + i + '/' + class_parity,
function(data) {
$('#edu_add').before(data);
prepareType(i);
@@ -333,18 +333,22 @@ function addressChanged(prefid)
$('#' + prefid + '_cont').find('[name*=changed]').val("1");
}
-function validGeoloc(prefid, id, geoloc)
+function deleteGeocoding(prefid, hrpid)
{
- if (geoloc == 1) {
- $('#' + prefid + '_cont').find('[name*=text]').val($('#' + prefid + '_cont').find('[name*=geocodedText]').val());
- $('#' + prefid + '_cont').find('[name*=postalText]').val('');
- }
- if (geoloc > 0) {
- $('#' + prefid + '_cont').find("[name*='[geocodedText]']").remove();
+ var confirmation = confirm(
+ "La localisation de l'adresse sert à deux choses : te placer dans "
+ + "le planisphère et te faire apparaître dans la recherche avancée par "
+ + "pays, région, département, ville... La supprimer t'en fera disparaître. "
+ + "\nIl ne faut le faire que si cette localisation "
+ + "est réellement erronée. Avant de supprimer cette localisation, l'équipe de "
+ + "Polytechnique.org tentera de la réparer.\n\nConfirmes-tu ta "
+ + "demande de suppression de cette localisation ?");
+
+ if (confirmation) {
+ var address = $('#' + prefid).find("[name*='[text]']").val();
+ $.xpost('profile/ajax/address/del/' + hrpid, { address:address });
+ $('#' + prefid + '_geocoding_removal').html('Localisation en attente de validation.');
}
- $('#' + prefid + '_cont').find('[name*=text]').removeClass('error');
- $('#' + prefid + '_cont').find('[name*=geocodeChosen]').val(geoloc);
- $('.' + prefid + '_geoloc').remove();
}
// {{{1 Phones
@@ -437,10 +441,17 @@ function updateGroupSubLink()
// {{{1 Medals
+function prepareMedal(i)
+{
+ getMedalName($('#medal_' + i).find('[name="medals[' + i + '][id]"]').val());
+ buildGrade(i);
+}
+
function updateMedal()
{
var val = $('#medals').find('[name*=medal_sel]').val();
- if (val && ($('#medal_' + val).length == 0)) {
+
+ if ((multiple[val] && subgrades[val]) || $('.medal_name_' + val).length == 0) {
$('#medal_add').show();
} else {
$('#medal_add').hide();
@@ -449,55 +460,80 @@ function updateMedal()
function getMedalName(id)
{
- $('#medal_name_' + id).html(names[id]);
+ $('.medal_name_' + id).html(names[id]);
}
-function buildGrade(id, current)
+function buildGrade(i)
{
- var grade;
- var subg = subgrades[id];
- var obj = $('#medal_grade_' + id);
+ var id = $('#medal_' + i).find('[name="medals[' + i + '][id]"]').val();
+ var current = $('#medal_' + i).find('[name="medals_' + i + '_grade"]').val();
+ var subg = subgrades[id];
+ var obj = $('#medal_grade_' + i);
if (!subg) {
- obj.prepend('');
+ obj.prepend('');
} else {
- var html = 'Agrafe :