Управление доступом личной гостевой (Всем, Только друзьям, Закрыта) (под 5.1.0)

731
.
$owner_sets = mysql_fetch_array(mysql_query("SELECT `set_user` FROM `users` WHERE `id` = '".$user['id']."'")); 
$owner_set = array();
$owner_set = unserialize($owner_sets['set_user']);
$error = array();
if ($owner_set['mod_ank'] == 2) {
$error[]= 'Анкета закрыта'; 
}
if ($owner_set['mod_ank'] == 1) {
$in_friends = mysql_result(mysql_query("SELECT COUNT(*) FROM `cms_contact` WHERE `user_id` = '".$user['id']."' and `from_id` = '".$user_id."' AND `friends` = 1"),0);
if (!$in_friends and $user['id'] != $user_id) {
$error[]= 'Анкета открыта только для друзей'; 
}
}

это вставляю в шапке профиля.
.
$set_user['mod_ank'] = isset($_POST['mod_ank']) ? intval($_POST['mod_ank']) : 0;
if ( $set_user['mod_ank'] !=0 && $set_user['mod_ank'] !=1 && $set_user['mod_ank'] !=2)
$set_user['mod_ank'] =0;
  echo '<p><h3>Доступ к анкете</h3>' . 
'<input type="radio" value="0" name="mod_ank" ' . (!core::$user_set['mod_ank'] ? 'checked="checked"' : '') . '/>&#160;Все<br />' .
'<input type="radio" value="1" name="mod_ank" ' . (core::$user_set['mod_ank'] == 1 ? 'checked="checked"' : '') . '/>&#160;Только друзья<br />' .
'<input type="radio" value="2" name="mod_ank" ' . (core::$user_set['mod_ank'] == 2 ? 'checked="checked"' : '') . '/>&#160;Закрыта<br /></p>';
это в настройках. что не так?
.
Блиносвёрт ?
HAL-9000 (19.07.2013 / 16:49)
Jane, не смотрел хак. Ты там используешь готовые функции "друзья", "контакты" или дублируешь их?
друзья и контакты идут с новой почтой

цель моих вчерашних хаков было не сделать что-то глобально новое, а просто чуть-чуть добавить или изменить текущий функционал - то, что просится на мой взгляд и то, что хотели бы видеть другие
.
FloMaster
Jane, похожие цвета это не спер дизайн.и его ставил 2ой админ.
.
Блиносвёрт ?
FloMaster, что конкретно не получается? настройки не сохраняются?
.
Jane, настройки сохраняются.все норм а вот анкета открыта.вставляю сразу после запрета гостям.
.
Блиносвёрт ?
FloMaster, все аналогично, проверяй по буквам, может где-то забыл поменять
.
Блиносвёрт ?
FloMaster, только код надо не в шапку ставить, а в анкету и ты его не до конца докопировал
.
Jane, я вот одной фишки не пойму,а запрос в базу как осуществяется,в сет_юзерс задаются все настройки сразу?
.
Блиносвёрт ?
FloMaster, да, в сериализованном виде хранятся в поле настроек
Всего: 43