Вход Регистрация
Файл: modules/communities/edit.php
Строк: 72
<?php  
$comm 
= db::get_string("SELECT * FROM `COMMUNITIES` WHERE `ID` = ? LIMIT 1", [intval(get('id'))]);
$par = db::get_string("SELECT * FROM `COMMUNITIES_PAR` WHERE `COMMUNITY_ID` = ? AND `USER_ID` = ? AND `ACT` = ? LIMIT 1", [$comm['ID'], user('ID'), 1]);
acms_header(lg('Редактировать сообщество %s', communities::name($comm['ID'])), 'users');
communities::blocked($comm['ID']);
is_active_module('PRIVATE_COMMUNITIES');

if (!isset(
$comm['ID'])) {
  
  
error('Неверная директива');
  
redirect('/m/communities/');

}

if (isset(
$par['ID']) && $par['ADMINISTRATION'] == 1 || access('communities', null) == true){
  
  if (
post('ok_edit_comm')){
    
    
valid::create(array(
    
      
'COMM_NAME' => ['name', 'text', [5, 40], 'Название', 0],
      
'COMM_MESSAGE' => ['message', 'text', [0, 80], 'Описание', 0],
      
'COMM_RULES' => ['rules', 'text', [0, 250], 'Правила', 0],
      
'COMM_INTERESTS' => ['interests', 'text', [0, 250], 'Интересы', 0],
      
'COMM_MOTTO' => ['motto', 'text', [0, 250], 'Девиз', 0],
      
'COMM_ID_CATEGORY' => ['id_cat', 'number', [0, 99999], 'Категория'],
      
'COMM_TYPE' => ['type', 'number', [0, 5], 'Тип сообщества'],
      
'COMM_URL' => ['url', 'text', [5, 30], 'Адрес сообщества', 0]
    
    ));
    
    if (
$comm['NAME'] != COMM_NAME && db::get_column("SELECT COUNT(*) FROM `COMMUNITIES` WHERE `NAME` = ? LIMIT 1", [COMM_NAME]) > 0){
      
      
error('Сообщество с таким именем уже существует');
      
redirect('/m/communities/edit/?id='.$comm['ID']);
    
    }
    
    if (!
preg_match("#^([A-z0-9-_])+$#ui", COMM_URL)) {
      
      
error('В адресе сообщества присутствуют запрещенные символы. Только латиница, символы "_-" и цифры');
      
redirect('/m/communities/edit/?id='.$comm['ID']);
    
    }
    
    if (!
preg_match("~([A-z])~", COMM_URL)){
      
      
error('В адресе сообщества должна содержаться хотябы одна буква (латиница)');
      
redirect('/m/communities/edit/?id='.$comm['ID']);
    
    }
    
    if (
COMM_URL != $comm['URL'] && db::get_column("SELECT COUNT(`ID`) FROM `COMMUNITIES` WHERE `URL` = ? LIMIT 1", [COMM_URL]) > 0) {      

      
error('Такой адрес сообщества уже занят. Придумайте другой');
      
redirect('/m/communities/edit/?id='.$comm['ID']);
    
    }
    
    if (
ERROR_LOG == 1){
      
      
redirect('/m/communities/edit/?id='.$comm['ID']);
    
    }
    
    
db::get_set("UPDATE `COMMUNITIES` SET `ID_CATEGORY` = ?, `NAME` = ?, `MESSAGE` = ?, `PRIVATE` = ?, `RULES` = ?, `INTERESTS` = ?, `MOTTO` = ?, `URL` = ? WHERE `ID` = ? LIMIT 1", [COMM_ID_CATEGORY, COMM_NAME, COMM_MESSAGE, COMM_TYPE, COMM_RULES, COMM_INTERESTS, COMM_MOTTO, strtolower(COMM_URL), $comm['ID']]);
    
    if (
access('communities', null) == true){
      
      
logs('Сообщества - редактирование сообщества [url=/public/'.$comm['URL'].']'.$comm['NAME'].'[/url]', user('ID'));
    
    }
    
    
success('Изменения успешно приняты');
    
redirect('/public/'.strtolower(COMM_URL));
  
  }
  
  
?>    
  <div class='list'>
  <form method='post' class='ajax-form' action='/m/communities/edit/?id=<?=$comm['ID']?>'>
  <?
  html
::input('name', 'Название сообщества', null, null, tabs($comm['NAME']), 'form-control-100', 'text', null, 'text-width');
  
html::input('message', 'Описание сообщества', null, null, tabs($comm['MESSAGE']), 'form-control-100', 'text', null, 'text-width');
  
html::input('url', 'Адрес сообщества', null, null, tabs($comm['URL']), 'form-control-100', 'text', null, 'link'); 
  
$array = array();
  
$array[0] = ['Без категории', ($comm['ID_CATEGORY'] == 0 ? "selected" : null)];
  
$data = db::get_string_all("SELECT * FROM `COMMUNITIES_CATEGORIES` ORDER BY `ID` DESC");  
  while (
$list = $data->fetch()){
  
    
$array[$list['ID']] = [$list['NAME'], ($comm['ID_CATEGORY'] == $list['ID'] ? "selected" : null)];

  }
  
html::select('id_cat', $array, 'Категория', 'form-control-100-modify-select', 'list-ul'); 
  
html::select('type', array(
    
0 => ['Открытое сообщество', ($comm['PRIVATE'] == 0 ? "selected" : null)], 
    
1 => ['Анонимное сообщество', ($comm['PRIVATE'] == 1 ? "selected" : null)], 
    
2 => ['Сообщество по интересам', ($comm['PRIVATE'] == 2 ? "selected" : null)]
  ), 
'Тип сообщества', 'form-control-100-modify-select', 'users');
  
html::input('motto', 'Девиз сообщества', null, null, tabs($comm['MOTTO']), 'form-control-100', 'text', null, 'text-width');
  
html::input('interests', 'Интересы сообщества', null, null, tabs($comm['INTERESTS']), 'form-control-100', 'text', null, 'text-width');
  
html::input('rules', 'Правила сообщества', null, null, tabs($comm['RULES']), 'form-control-100', 'text', null, 'text-width');
  
html::button('button ajax-button', 'ok_edit_comm', 'save', 'Сохранить');  
  
?>
  <a class='button-o' href='/public/<?=$comm['URL']?>'><?=lg('Отмена')?></a>
  <form>
  </div>
    
  <div class='list'>
  <?=lg('Вы можете безвозвратно удалить сообщество')?><br /><br />
  <a href='/m/communities/delete/?id=<?=$comm['ID']?>&<?=TOKEN_URL?>' class='button'><?=lg('Удалить сообщество')?></a>
  </div>
  <?
    
}else{
  
  
error('Нет прав');
  
redirect('/public/'.$comm['URL']);
  
}

back('/public/'.$comm['URL']);
acms_footer();
Онлайн: 1
Реклама