Дополнительные поля для Персональной страницы

  


Дополнительные поля для Персональной страницы,хак для Персональной страницы.вам например нужно чтобы пользователя заполнил как можно больше информации о себе: WMR-кошелёк, любимые фильмы, музыку, skype и т.д. Данный хак увеличивает количество дополнительных полей на девять штук
Особенности:
- Максимальная Длина введенных символов в эти доп.поля и в подпись в сумме 1000
Довольно таки хорошее число и её должно хватить
- Вывод информации из доп.поля в Персон. странице в любом место
- Информацию также можно выводить на форуме =D, что очень удобно в некоторых планах
- Заполнять все поля не обязательно
Установка
не так уж легка, но надеюсь всё подробно написать:
Заходим в ПУ » Управление дизайном » Пользователи » "Форма редактирования персональной информации"
И в самый конец добавляем этот код:
Code
ode
<script>  
  var adar = document.getElementById("siF9");  
  var contedant = adar.innerHTML;  
  var aratr = contedant.replace('_x_Polus2',' aXxXa');  
  var madas = new Array();  
  madas = aratr.split(" ");  
  var razam =madas.length;  
  var afr=2;  
  for (var g=0; g<razam;g++) {  
  if(madas[g]=='aXxXa'){  
  var afr=1;  
  }  
  }  
  // Author Fatal1ti  
  if(afr=='1'){  
  $('#siM33').after('<tr class="tewrt"><td id="rra1">Название #1</td><td id="farr1"></td></tr><tr class="tewrt"><td id="rra2">Название #2</td><td id="farr2"></td></tr><tr class="tewrt"><td id="rra3">Название #3</td><td id="farr3"></td></tr><tr class="tewrt"><td id="rra4">Название #4</td><td id="farr4"></td></tr><tr class="tewrt"><td id="rra5">Название #5</td><td id="farr5"></td></tr><tr class="tewrt"><td id="rra6">Название #6</td><td id="farr6"></td></tr><tr class="tewrt"><td id="rra7">Название #7</td><td id="farr7"></td></tr><tr class="tewrt"><td id="rra8">Название #8</td><td id="farr8"></td></tr><tr class="tewrt"><td id="rra9">Название #9</td><td id="farr9"></td></tr>');  
  var text = document.getElementById("siF9");  
  var content = text.innerHTML;  
  var mas = new Array();  
  mas = content.split("_x_");  
  var razm =mas.length;  
  var artt=mas[0];  
  document.getElementById('siF9').innerHTML = artt;  
  for (var i=1; i<razm;i++){  
  var afr=mas[i];  
  if(afr=='Polus9'){afr='';}  
  var afrq=afr.replace('Polus'+i+' ','');  
  $("#farr"+i).append('<input type="text" id="apodp'+i+'" value="'+afrq+'" style="width: 100%;">');  
  }  
  // Site Author Novi4ok.Ru  
  $('.manFlSbm:last').click(function() {  
  for(i=1;i<10;i++) {  
  $('#siF9:last').val($('#siF9').val() + '_x_Polus'+i+' '+ $('#apodp' + i).val());  
  $('#rra' + i).remove()  
  $('#farr' + i).remove()  

  }  
  });  
  }else {  

  $('#siM33').after('<tr class="tewrt"><td id="rra1">Название #1</td><td id="farr1"></td></tr><tr class="tewrt"><td id="rra2">Название #2</td><td id="farr2"></td></tr><tr class="tewrt"><td id="rra3">Название #3</td><td id="farr3"></td></tr><tr class="tewrt"><td id="rra4">Название #4</td><td id="farr4"></td></tr><tr class="tewrt"><td id="rra5">Название #5</td><td id="farr5"></td></tr><tr class="tewrt"><td id="rra6">Название #6</td><td id="farr6"></td></tr><tr class="tewrt"><td id="rra7">Название #7</td><td id="farr7"></td></tr><tr class="tewrt"><td id="rra8">Название #8</td><td id="farr8"></td></tr><tr class="tewrt"><td id="rra9">Название #9</td><td id="farr9"></td></tr>');  
  for(j=1;j<10;j++) {  
  $('#farr'+j).append('<input id="apodp'+j+'" style="width:100%;background:white;" />');  
  }  
  $('.manFlSbm:last').click(function() {  
  for(i=1;i<10;i++) {  
  $('#siF9:last').val($('#siF9').val() + '_x_Polus'+i+' '+ $('#apodp' + i).val());  
  $('#rra' + i).remove()  
  $('#farr' + i).remove()  
  }  
  });  
  }  
  </script>


Далее идём. Если у вас подключены локальные пользователи,
То заходим сюда: ПУ » Управление дизайном » Пользователи » Страница регистрации пользователей
И перед /body вставляем этот код:
Code
<script>  
  var adar = document.getElementById("siF9");  
  var contedant = adar.innerHTML;  
  var aratr = contedant.replace('_x_Polus2',' aXxXa');  
  var madas = new Array();  
  madas = aratr.split(" ");  
  var razam =madas.length;  
  var afr=2;  
  for (var g=0; g<razam;g++) {  
  if(madas[g]=='aXxXa'){  
  var afr=1;  
  }  
  }  
  // Author Fatal1ti  
  if(afr=='1'){  
  $('#siM33').after('<tr class="tewrt"><td id="rra1">Название #1</td><td id="farr1"></td></tr><tr class="tewrt"><td id="rra2">Название #2</td><td id="farr2"></td></tr><tr class="tewrt"><td id="rra3">Название #3</td><td id="farr3"></td></tr><tr class="tewrt"><td id="rra4">Название #4</td><td id="farr4"></td></tr><tr class="tewrt"><td id="rra5">Название #5</td><td id="farr5"></td></tr><tr class="tewrt"><td id="rra6">Название #6</td><td id="farr6"></td></tr><tr class="tewrt"><td id="rra7">Название #7</td><td id="farr7"></td></tr><tr class="tewrt"><td id="rra8">Название #8</td><td id="farr8"></td></tr><tr class="tewrt"><td id="rra9">Название #9</td><td id="farr9"></td></tr>');  
  var text = document.getElementById("siF9");  
  var content = text.innerHTML;  
  var mas = new Array();  
  mas = content.split("_x_");  
  var razm =mas.length;  
  var artt=mas[0];  
  document.getElementById('siF9').innerHTML = artt;  
  for (var i=1; i<razm;i++){  
  var afr=mas[i];  
  if(afr=='Polus6'){afr='';}  
  var afrq=afr.replace('Polus'+i+' ','');  
  $("#farr"+i).append('<input type="text" id="apodp'+i+'" value="'+afrq+'" style="width: 100%;">');  
  }  
  // Site Author Novi4ok.Ru  
  $('.manFlSbm:last').click(function() {  
  for(i=1;i<10;i++) {  
  $('#siF9:last').val($('#siF9').val() + '_x_Polus'+i+' '+ $('#apodp' + i).val());  
  $('#rra' + i).remove()  
  $('#farr' + i).remove()  

  }  
  });  
  }  
  else {  

  $('#siM33').after('<tr class="tewrt"><td id="rra1">Название #1</td><td id="farr1"></td></tr><tr class="tewrt"><td id="rra2">Название #2</td><td id="farr2"></td></tr><tr class="tewrt"><td id="rra3">Название #3</td><td id="farr3"></td></tr><tr class="tewrt"><td id="rra4">Название #4</td><td id="farr4"></td></tr><tr class="tewrt"><td id="rra5">Название #5</td><td id="farr5"></td></tr><tr class="tewrt"><td id="rra6">Название #6</td><td id="farr6"></td></tr><tr class="tewrt"><td id="rra7">Название #7</td><td id="farr7"></td></tr><tr class="tewrt"><td id="rra8">Название #8</td><td id="farr8"></td></tr><tr class="tewrt"><td id="rra9">Название #9</td><td id="farr9"></td></tr>');  
  for(j=1;j<10;j++) {  
  $('#farr'+j).append('<input id="apodp'+j+'" type="text" style="width:100%;background:white;" />');  
  }  
  $('.manFlSbm:last').click(function() {  
  for(i=1;i<10;i++) {  
  $('#siF9:last').val($('#siF9').val() + '_x_Polus'+i+' '+ $('#apodp' + i).val());  
  $('#rra' + i).remove()  
  $('#farr' + i).remove()  
  if(i==9){  
  document.getElementById('siF9').innerHTML = '';  
  }  

  }  

  // Site Author Novi4ok.Ru  
  });  
  }  
  </script>


У кого uNet пользователи - тем этот код выше не вставлять
Теперь заходим в ПУ » Управление дизайном » Пользователи » Персональная страница пользователя
И ищем такой код: $_SIGNATURE$ - Этот код выводит подпись пользователя
Заменяем его на этот код:
Code
<?if($_SIGNATURE$)?>  
  <?if(strrpos($_SIGNATURE$,'Polus1')>0)?>  
  <?if(len(substr($_SIGNATURE$,0,strrpos($_SIGNATURE$,'_x_Polus1')))>0)?>  

  //Код ниже выводит подпись, если она есть и заполнены какие-то доп.поля  
  <?substr($_SIGNATURE$,0,strrpos($_SIGNATURE$,'_x_Polus1'))?>  

  <?else?>  

  //Тут ничего нету т.к. пользователь не ввёл ничего в подпись, но некоторые доп.поля заполнил  

  <?endif?>  
  <?else?>  

  //Код ниже выводит подпись, а пользователь все доп.поля оставил пустыми(незаполненными)  
  $_SIGNATURE$  

  <?endif?>  
  <?else?>  

  //Вообще ничего не заполнял, ни подписи, ни доп.полей  

  <?endif?>


Комментарии (которые начинаются с двух косых //) удалите.
Их я написал, чтобы вы поняли что за что отвечает
Теперь в Персональной странице где хотите выводите доп. поля через эти коды:
Code
<?if(strrpos($_SIGNATURE$,'_x_Polus1')>2)?>  
  <?substr($_SIGNATURE$,strrpos($_SIGNATURE$,'_x_Polus1') + 9,strrpos($_SIGNATURE$,'_x_Polus2') - strrpos($_SIGNATURE$,'_x_Polus1') - 9)?>  
  <?endif?>  

  <?if(strrpos($_SIGNATURE$,'_x_Polus2')>2)?>  
  <?substr($_SIGNATURE$,strrpos($_SIGNATURE$,'_x_Polus2') + 9,strrpos($_SIGNATURE$,'_x_Polus3') - strrpos($_SIGNATURE$,'_x_Polus2') - 9)?>  
  <?endif?>  

  <?if(strrpos($_SIGNATURE$,'_x_Polus3')>2)?>  
  <?substr($_SIGNATURE$,strrpos($_SIGNATURE$,'_x_Polus3') + 9,strrpos($_SIGNATURE$,'_x_Polus4') - strrpos($_SIGNATURE$,'_x_Polus3') - 9)?>  
  <?endif?>  

  <?if(strrpos($_SIGNATURE$,'_x_Polus4')>2)?>  
  <?substr($_SIGNATURE$,strrpos($_SIGNATURE$,'_x_Polus4') + 9,strrpos($_SIGNATURE$,'_x_Polus5') - strrpos($_SIGNATURE$,'_x_Polus4') - 9)?>  
  <?endif?>  

  <?if(strrpos($_SIGNATURE$,'_x_Polus5')>2)?>  
  <?substr($_SIGNATURE$,strrpos($_SIGNATURE$,'_x_Polus5') + 9,strrpos($_SIGNATURE$,'_x_Polus6') - strrpos($_SIGNATURE$,'_x_Polus5') - 9)?>  
  <?endif?>  

  <?if(strrpos($_SIGNATURE$,'_x_Polus6')>2)?>  
  <?substr($_SIGNATURE$,strrpos($_SIGNATURE$,'_x_Polus6') + 9,strrpos($_SIGNATURE$,'_x_Polus7') - strrpos($_SIGNATURE$,'_x_Polus6') - 9)?>  
  <?endif?>  

  <?if(strrpos($_SIGNATURE$,'_x_Polus7')>2)?>  
  <?substr($_SIGNATURE$,strrpos($_SIGNATURE$,'_x_Polus7') + 9,strrpos($_SIGNATURE$,'_x_Polus8') - strrpos($_SIGNATURE$,'_x_Polus7') - 9)?>  
  <?endif?>  

  <?if(strrpos($_SIGNATURE$,'_x_Polus8')>2)?>  
  <?substr($_SIGNATURE$,strrpos($_SIGNATURE$,'_x_Polus8') + 9,strrpos($_SIGNATURE$,'_x_Polus9') - strrpos($_SIGNATURE$,'_x_Polus8') - 9)?>  
  <?endif?>  

  <?if(strrpos($_SIGNATURE$,'_x_Polus9')>2)?>  
  <?substr($_SIGNATURE$,strrpos($_SIGNATURE$,'_x_Polus9') + 9,len($_SIGNATURE$) - strrpos($_SIGNATURE$,'_x_Polus9'))?>  
  <?endif?>


Все они идут по порядку, из них вы можете делать ссылки или просто информацию
Также есть вариант сделать выбор цвета фона пользователем и т.п.
Теперь, если вы используете форум заходим сюда:
ПУ » Управление дизайном » Форум » Вид материалов
Находим такой код: $SIGNATURE$ и заменяем его на это:
Code
<?if($SIGNATURE$)?>  
  <?if(strrpos($SIGNATURE$,'Polus1')>0)?>  
  <?if(len(substr($SIGNATURE$,0,strrpos($SIGNATURE$,'_x_Polus1')))>0)?>  

  //Код ниже выводит подпись, если она есть и заполнены какие-то доп.поля  
  <?substr($SIGNATURE$,0,strrpos($SIGNATURE$,'_x_Polus1'))?>  

  <?else?>  

  //Тут ничего нету т.к. пользователь не ввёл ничего в подпись, но некоторые доп.поля заполнил  

  <?endif?>  
  <?else?>  

  //Код ниже выводит подпись, а пользователь все доп.поля оставил пустыми(незаполненными)  
  $SIGNATURE$  

  <?endif?>  
  <?else?>  

  //Вообще ничего не заполнял, ни подписи, ни доп.полей  

  <?endif?>


Комментарии (которые начинаются с двух косых //) удалите.
И если тут хотите вывести информацию из доп.поля то вот коды для вывода:
Code
<?if(strrpos($SIGNATURE$,'_x_Polus1')>2)?>  
  <?substr($SIGNATURE$,strrpos($SIGNATURE$,'_x_Polus1') + 9,strrpos($SIGNATURE$,'_x_Polus2') - strrpos($SIGNATURE$,'_x_Polus1') - 9)?>  
  <?endif?>  

  <?if(strrpos($SIGNATURE$,'_x_Polus2')>2)?>  
  <?substr($SIGNATURE$,strrpos($SIGNATURE$,'_x_Polus2') + 9,strrpos($SIGNATURE$,'_x_Polus3') - strrpos($SIGNATURE$,'_x_Polus2') - 9)?>  
  <?endif?>  

  <?if(strrpos($SIGNATURE$,'_x_Polus3')>2)?>  
  <?substr($SIGNATURE$,strrpos($SIGNATURE$,'_x_Polus3') + 9,strrpos($SIGNATURE$,'_x_Polus4') - strrpos($SIGNATURE$,'_x_Polus3') - 9)?>  
  <?endif?>  

  <?if(strrpos($SIGNATURE$,'_x_Polus4')>2)?>  
  <?substr($SIGNATURE$,strrpos($SIGNATURE$,'_x_Polus4') + 9,strrpos($SIGNATURE$,'_x_Polus5') - strrpos($SIGNATURE$,'_x_Polus4') - 9)?>  
  <?endif?>  

  <?if(strrpos($SIGNATURE$,'_x_Polus5')>2)?>  
  <?substr($SIGNATURE$,strrpos($SIGNATURE$,'_x_Polus5') + 9,strrpos($SIGNATURE$,'_x_Polus6') - strrpos($SIGNATURE$,'_x_Polus5') - 9)?>  
  <?endif?>  

  <?if(strrpos($SIGNATURE$,'_x_Polus6')>2)?>  
  <?substr($SIGNATURE$,strrpos($SIGNATURE$,'_x_Polus6') + 9,strrpos($SIGNATURE$,'_x_Polus7') - strrpos($SIGNATURE$,'_x_Polus6') - 9)?>  
  <?endif?>  

  <?if(strrpos($SIGNATURE$,'_x_Polus7')>2)?>  
  <?substr($SIGNATURE$,strrpos($SIGNATURE$,'_x_Polus7') + 9,strrpos($SIGNATURE$,'_x_Polus8') - strrpos($SIGNATURE$,'_x_Polus7') - 9)?>  
  <?endif?>  

  <?if(strrpos($SIGNATURE$,'_x_Polus8')>2)?>  
  <?substr($SIGNATURE$,strrpos($SIGNATURE$,'_x_Polus8') + 9,strrpos($SIGNATURE$,'_x_Polus9') - strrpos($SIGNATURE$,'_x_Polus8') - 9)?>  
  <?endif?>  

  <?if(strrpos($SIGNATURE$,'_x_Polus9')>2)?>  
  <?substr($SIGNATURE$,strrpos($SIGNATURE$,'_x_Polus9') + 9,len($SIGNATURE$) - strrpos($SIGNATURE$,'_x_Polus9'))?>  
  <?endif?>


В общем-то и всё, надеюсь всё понятно - вопросы в комментарии.
Доп. полей можно было сделать ещё больше - например 15,
Но тогда будет немного хуже для поля подписи,
Так как там уменьшается мак. количество символов..
На этом все Дополнительные поля для Персональной страницы - Cкрипты для uCoz - Каталог файлов - Все для uCoz, DLE, Joomla, скрипты для uCoz

Категория: Cкрипты для uCoz Просмотров: 1374