Бесплатный форум: форум поддержки
Добро пожаловать на форум поддержки сервиса Forum2x2 !

Для полноценной работы с форумом,
пожалуйста, войдите на форум под своим логином (если вы уже зарегистрированы) или же зарегистрируйтесь.


С нашей помощью вы можете создать форум,
похожий на этот!
Мы в социальных сетях

Правила форума

для обязательного прочтения!


Внимание! Важная информация для РЕГИСТРАЦИИ на форуме:

Пожалуйста, не регистрируйтесь на этом форуме с электронными адресами mail.ru, bk.ru, inbox.ru, list.ru - вам может не прийти письмо со ссылкой активации!
Вы можете воспользоваться адресами типа yandex.ru, rambler.ru, gmail.com и т.д.
Интересные решения
Быстрый переход к сервисам: Savepic Видео фоторедактор Транслит

Добавление и удаление полей в список пользователей

Предыдущая тема Следующая тема Перейти вниз

Добавление и удаление полей в список пользователей

Сообщение автор spryima в Сб 24 Сен - 15:51

Пока не добавили возможность из ПА галочками управлять перечнем желаемых столбцов в списке пользователей, особенно если там кастомная информация в виде выпадающих меню и пр.
Задачу можно решить скриптом

Я себе так настроил


для phpbb3



Код:
  $(function(){
        var newbname = "New Field"; // Название новго столбца
        var aftbox = parseInt("0"); // Столбец после которого будет вставлен ваш новый.. отсчет с 0
        var thfield = 'field_id-1'; //  id вашего поля (ниже напишу где его найти)
        var wfield = ["3","4","5"]; // столбцы которые нужно удалить .. начиная с 0 и включая ваш новый столбец с лева на право
        var remf = "yes";  // удалять столбцы или нет
        $('#memberlist thead tr th').eq(aftbox).after('<th class="name" nowrap="nowrap">'+newbname+'</th>');
        $('#memberlist tbody tr').each(function(){
          $(this).find('td').eq(aftbox).after('<td class="row2" id="blahhh" align="center">LOADING...</td>');
        });
        $('#memberlist tbody tr td:nth-child(2) a[href^="/u"]').each(function(index){
          var prof = jQuery(this).attr('href');
          $(this).closest('tr').find('td').eq(aftbox+1).load(prof + ' #'+thfield+':eq(0)', function() {
              jQuery(this).find('dt').remove();
              jQuery(this).text().replace("-","");
              jQuery(this).find('.field_uneditable').unwrap();
        });
        });
        if(remf =="yes"){
        for (var i = wfield.length-1; i>-1; i--){
        $('#memberlist thead tr th').eq(parseInt(wfield[i])).remove();
        $('#memberlist tbody tr').each(function(){
          $(this).find('td').eq(parseInt(wfield[i])).remove();
        });};};
        });

Дольше всего искал ID поля которое нужно добавлять. Т.к. в ПА его нет.
Для этого в открываем профиль любого пользователя и в браузере делаем inspect элемента (я делал в Firefox). Чаще всего он выглядит так "field_id4"

для phpbb2

Код:
$(function(){
      var newbname = "New Field"; // Название новго столбца
        var aftbox = parseInt("0"); // Столбец после которого будет вставлен ваш новый.. отсчет с 0
        var thfield = 'field_id-1'; //  id вашего поля
        var wfield = ["3","4","5"]; // столбцы которые нужно удалить .. начиная с 0 и включая ваш новый столбец с лева на право
        var remf = "yes";  // удалять столбцы или нет
        $('.forumline:eq(2) tbody tr th').eq(aftbox).after('<th class="thTop" nowrap="nowrap">'+newbname+'</th>');
        $('.forumline:eq(2) tbody tr').each(function(){
          $(this).find('td').eq(aftbox).after('<td class="row2" id="blahhh" align="center">LOADING...</td>');
        });
        $('.forumline tbody tr td:nth-child(3) a[href^="/u"]').each(function(index){
          var prof = jQuery(this).attr('href');
          $(this).closest('tr').find('td').eq(aftbox+1).load(prof + ' #'+thfield+':eq(0)', function() {
              jQuery(this).find('dt').remove();
              jQuery(this).text().replace("-","");
              jQuery(this).find('.field_uneditable').unwrap();
        });
        });
        if(remf =="yes"){
        for (var i = wfield.length-1; i>-1; i--){
        $('.forumline:eq(2) tbody tr th').eq(parseInt(wfield[i])).remove();
        $('.forumline:eq(2) tbody tr').each(function(){
          $(this).find('td').eq(parseInt(wfield[i])).remove();
        });};};
        });

Для invision

Код:
$(function(){
var newbname = "New Field"; // Название новго столбца
var aftbox = parseInt("0"); // Столбец после которого будет вставлен ваш новый.. отсчет с 0
var thfield = 'field_id-20'; //  id вашего поля
var wfield = ["3","4","5"]; // столбцы которые нужно удалить .. начиная с 0 и включая ваш новый столбец с лева на право
var remf = "yes"; // удалять столбцы или нет
$('.member').each(function(){
var ohtm = $(this).find('p').html();
var newhtm = ohtm.replace(/<span class="label">/g,'<span class="pffield"><span class="label">').replace(/<br>/g,'</span><br>');
$(this).find('p').html(newhtm);
});
$('.member').each(function(){
$(this).find('p .pffield').eq(aftbox).after('<br><span class="" id="blahhh" align="center">LOADING...</span>');
});
$('.member .profile-icon').eq(0).each(function(index){
var prof = jQuery(this).attr('href');
$(this).closest('.member').find('#blahhh').load(prof + ' #'+thfield+':eq(0)', function() {
var blagg1 = jQuery(this).find('span').text();
var blagg2 = jQuery(this).find('.field_uneditable').text();
jQuery(this).html(blagg1+': '+blagg2);
});
});
if(remf =="yes"){
for (var i = 0; i<wfield.length; i++){

$('.member').each(function(){
$(this).find('.pffield').eq(parseInt(wfield[i])).remove();
});};};
});

spryima
Новичок

Мужчина

Сообщения : 6
Возраст : 31
Регистрация : 2016-09-22
Благодарности : 0

Без предупреждений

http://grunvald.ukrainianforum.net

Вернуться к началу Перейти вниз

Предыдущая тема Следующая тема Вернуться к началу


 
Права доступа к этому форуму:
Вы не можете отвечать на сообщения