Phone class: new class to access profile_phones.
[platal.git] / htdocs / javascript / profile.js
index 25b7214..cafaba9 100644 (file)
@@ -344,9 +344,16 @@ function addTel(prefid, prefname)
     Ajax.update_html(prefix + i, 'profile/ajax/tel/' + prefid + '/' + prefname + '/' + i);
 }
 
-function removeTel(id)
+function removeTel(prefname, prefid, id)
 {
-    $('#' + id).remove();
+    var total = 0;
+    while ($('#' + prefid + '_' + total).length != 0) {
+        ++total;
+    }
+    $('#' + prefid + '_' + id).remove();
+    for (var i = parseInt(id) + 1; i < total; ++i) {
+        renumberPhone(prefname, prefid, i);
+    }
 }
 
 function addPhoneComment(id)
@@ -362,6 +369,27 @@ function removePhoneComment(id, pref)
     $('#' + id + '_addComment').show();
 }
 
+function renumberPhone(prefname, prefid, i)
+{
+    var telid = i - 1;
+    var telprefOld = prefname + '[' + i + ']';
+    var telpref = prefname + '[' + telid + ']';
+    var idOld = prefid + '_' + i;
+    var id = prefid + '_' + telid;
+
+    $('#' + idOld).attr('id', id);
+    $('#' + id).find('div.titre').html('N°' + i);
+    $('#' + id).find('a.removeTel').attr('href', 'javascript:removeTel(\'' + prefname + '\',\'' + prefid + '\',' + telid + ')');
+    $('#' + id).find('select').attr('name', telpref + '[type]');
+    $('#' + id).find("[name='" + telprefOld + "[display]']").attr('name', telpref + '[display]');
+    $('#' + id).find("[name='" + telprefOld + "[comment]']").attr('name', telpref + '[comment]');
+    $('#' + id).find('a.removePhoneComment').attr('href', 'javascript:removePhoneComment(' + id + ',' + telpref + ')');
+    $('#' + id).find('#' + idOld + '_addComment').attr('id', id + '_addComment');
+    $('#' + id).find('#' + id + '_addComment').attr('href', 'javascript:addPhoneComment(' + id + ')');
+    $('#' + id).find('#' + idOld + '_comment').attr('id', id + '_comment');
+    $('#' + id).find("[name='" + telprefOld + "[pub]']").attr('name', telpref + '[pub]');
+}
+
 // {{{1 Groups
 
 function addBinet()