ExBB Community ExBB Community
 Сайт проекта ExBB Общение объединяет!
Войдите на форум при помощиВойти через loginza
 Чат на форуме      Помощь      Поиск      Пользователи     BanList BanList

Страниц (1): [1]

> Найдено сообщений: 13
valualit Отправлено: 11 марта 2013 — 10:56 • Тема: Юмор • Форум: О жизни

Ответов: 143
Просмотров: 0
Правила поведения в тренажерном зале
1. Если ты видишь нужные тебе блины, забирай их, пока никто не видит. Ни в коем случае не спрашивай, нужны ли они кому-нибудь – всегда найдется тот, кому они нужны.
2. Никогда никого не пускай жать твою штангу. Если желающий разделить с тобой жимовую лавку и штангу настаивает, обними штангу и заплачь. С психами никто не любит связываться и ты не будешь тратить время и разбирать/собирать штангу перед каждым подходом
3. Никогда не стирай тренировочную одежду. Она должна показывать твой стаж и говорить о твоем опыте. Заметь, самые здоровые парни в зале ходят или в рваных футболках, или вообще без них.
4. Если тебя просят подстраховать на жиме, не отказывай, но демонстративно ковыряйся в носу во время выполнения подхода и зевай. Если просят подстраховать на приседе, будь осторожен – штанга может упасть и на тебя. Когда страх**мый снимет штангу со стоек, отбеги в сторону и делай вид, что смотришь досед. Потом сообщи ему, что он ни разу не досел, и спину держал криво.
5. Если видишь лежащую на полу штангу, обязательно переступи через нее. Это – особый ритуал, символизирующий победу человеческого разума над железом.
6. В душе внимательно рассматривай мускулатуру других посетителей, людям приятно, когда на плоды их труда обращают внимание.
7. Если в зале кто-то испортил воздух, подойди к самому большому в зале и спроси, не он ли это сделал. Если да, скажи, что тебе понравился тембр. Если нет – предложи пойти вместе и найти того, кто это сделал.
8. Разбирай штангу сначала с одной стороны. Это экономит время и показывает твою целеустремленность. После того, как все блины с одной стороны сняты, переходи к другой.
9. С самого начала тренировки забери себе все, что может понадобиться – гриф, блины, гантели. Помни, что день может быть удачным, возможно, ты будешь делать максимальный вес. Настрой на рекорд может закончиться, пока ты ищешь блины, так что позаботься об этом заранее.
10. Если кто-то делает тягу или присед, стань прямо перед ним и смотри на технику движения. После подхода ты сможешь высказать ему свое мнение – люди это ценят.
11. Если кто-то жмет большой вес, подойди к нему и начни рассказывать анекдот. Хорошее настроение на тренировке – залог успеха.
12. Всем интересно, какой вес установлен. Спрашивай у каждого, сколько он чего делает, если вес большой – объявляй на весь зал, какой вес на штанге.
13. Чтобы штанга выглядела солиднее, вешай на нее как можно больше блинов. Вначале для этого подойдут самые маленькие блины, которые нужно собрать со всего зала. Другие занимающиеся будут тебе за это благодарны – эта мелочь только валяется под ногами.
14. Перед каждым подходом настраивайся – можно кричать, бить себя по щекам и вращать глазами. Главное, за всем этим не забыть о самом подходе.
15. Напрягай бицепс и показывай его окружающим. В качалке народ дружный и радуется успехам друг друга, не лишай их радости.
16. Перед каждым упражнением разминайся. Лучшая разминка – это бег по залу и махи руками. Постарайся сочетать бег и махи, хорошая разминка – залог успеха.
17. Не освобождай штангу, пока не уверен, что она тебе больше не нужна. То же самое касается гантелей, стоек и лавки. Не отдавай их никому даже на подход. Помни о пункте 9.
18. Между подходами старайся больше общаться. Те, кто приходят в зал только тренироваться и избегают разговоров – ограниченные люди, главное – общение.
19. Если в зал пришла девушка, окажи ей знаки внимания. Будь уверен, она по достоинству оценит, что ты ходишь за ней по пятам и делишься своим опытом тренировок.
20. Главное – безопасность, перед каждым подходом проси, чтобы тебя подстраховали. Если вес совсем легкий, не дай страховщику расслабиться и заскучать. Например, на жиме ты можешь оставить штангу на груди и захрипеть; когда тебе станут помогать, тяни штангу на себя и говори, что ты еще не додержал паузу
21. Собирай автографы у самых больших качков на каждой тренировке, пусть они расписываются на одном листе. После того, как все подписи собраны, стань в центр зала, всех поблагодари и порви лист на мелкие части – это будет стимулировать их успехи, не даст им впасть в эйфорию и остановиться на достигнутом. После больших побед они будут благодарить тебя за это.
22. Старайся вешать на штангу разноцветные блины. Если есть черные пятнашки и желтые – повесь один черный блин и один желтый. Пестрая цветовая гамма улучшит твое настроение и настроение окружающих.
23. Никогда не разбирай за собой штангу. Может оказаться, что кому-то нужен точно такой вес, как у тебя, поэтому и разбирать ее не нужно.
24. Важно иметь свое мнение во всем. Почаще говори “я” и приводи примеры из своего опыта. Люди должны понять, что ты прогрессирующий спортсмен и достойный собеседник
25. Приноси с собой кассеты и диски. Реквием Моцарта – классика и понравится всем, а монологи Петросяна сделают тренировки веселыми. Не стесняйся подпевать магнитофону, благодарные слушатели оценят твой голос.
26. Перед тем, как пойти домой, загляни в зал и громко пошути. “Ну что, щенки, я пошел, всем скулить” – подобная шутка вызовет общую радость и твоей следующей тренировки все будут ждать с нетерпением.
valualit Отправлено: 10 февраля 2013 — 16:47 • Тема: Юмор • Форум: О жизни

Ответов: 143
Просмотров: 0
В самолете на соседних креслах блондинка и адвокат. Лететь долго.
Блондинка молча отворачивается и смотрит в иллюминатор.
Адвокат блондинке:
- Давайте я Вам задаю вопрос, если вы не знаете ответ - Вы мне 5 долларов. Потом Вы мне задаете вопрос, если я не знаю ответ - я Вам 500 долларов.
Блондинка соглашается.
Адвокат:
- Каково расстояние от Луны до Земли?
Блондинка молча отдает ему 5 долларов.
Блондинка:
- Кто поднимается в гору на трех ногах, а спускается на четырех?
Проходит пару часов. Адвокат обзвонил всех друзей, перерыл Интернет, ответа найти не может.
Делать нечего, отдает блондинке 500 долларов и спрашивает:
- Кто это???
Блондинка молча отдает ему 5 долларов и отворачивается к иллюминатору.
valualit Отправлено: 10 февраля 2013 — 15:11 • Тема: Для тех у кого форум - основная часть проекта • Форум: Решение проблем

Ответов: 3
Просмотров: 0
Почему не безопасно? Можно дополнительно конечно проверки делать кому нужно, но тут сам принцип реализован.
Смысл, чтоб использовать авторизацию форума на сайте и не делать дополнительную аутентификацию на сайте.
valualit Отправлено: 8 февраля 2013 — 19:45 • Тема: Форумы устарели или эпоха социальных сетей • Форум: О жизни

Ответов: 23
Просмотров: 0
По моим наблюдениям все зависит от тематики форума или блога и форме оформления. Поэтому темы которые не требуют особого оформления, эффективнее и дешевле развивать в соц.сетях.
Если брать вариант, как "правильней" - нужно вести сайт и с помощью например крона, постись на стену Вашей группы обновления. Если это читатель- ему хватит соц сети, если потенциально-активный участник заинтересованный в теме - обязательно перейдет на сайт для ведения дискуссий.
valualit Отправлено: 8 февраля 2013 — 16:45 • Тема: Торрент ТВ • Форум: О жизни

Ответов: 3
Просмотров: 0
Осталось торрент-кинотеатр оформить и будет вообще хорошо.
valualit Отправлено: 5 февраля 2013 — 07:30 • Тема: Для тех у кого форум - основная часть проекта • Форум: Решение проблем

Ответов: 3
Просмотров: 0
Если форум это основная часть проекта и хотелось бы использовать авторизацию, регистрацию и настройки форума на страницах сайта - тема для Вас!

Для решения задачи нам нужно поймать сессию $_SESSION['mid'] - которая хранит id пользователя и исходя от характеристик строить Функционал по части сайта.

CODE:

$user_info=false;
if(isset($_SESSION['mid'])){
$userfile=ROOT_DIR."/forum/members/".$_SESSION['mid'].".php";
if(file_exists($userfile)){
$fp = @fopen($userfile,'a+');
flock($fp, /*1*/2);
$filesize = filesize($userfile);
$filesize = ($filesize ===0) ? 1:$filesize-8;
fseek($fp,8);
$str = fread($fp,$filesize);
$user_info= (!empty($str))?unserialize($str):array(1);
}


ROOT_DIR - полный путь к директории с форумом


Теперь, если нужно добавить на сайте функции управления содержимым:

CODE:
if($user_info['status']=='ad'){ echo "Я админ"; }


CODE:
if($user_info['status']==false){ echo "Я не авторизован"; }
valualit Отправлено: 5 февраля 2013 — 07:08 • Тема: Юмор • Форум: О жизни

Ответов: 143
Просмотров: 0
[youtube=ДТП. Маму реально жалко]http://www.youtube.com/watch?fea...mp;v=qEDeQ6TrTGA[/youtube]
valualit Отправлено: 4 февраля 2013 — 19:45 • Тема: Как я выводил последние посты с форума на сайт • Форум: Решение проблем

Ответов: 0
Просмотров: 0
Первым делом было внесено небольшое изменение в forum/modules/threadstop/frontindex.php

Привел функцию return_print в следующий вид:
CODE:
function return_print($array,$mode) {
$menu = '';
$array = (is_array($array))?$array:array();
foreach ($array as $key =>$value){
if (!isset($value['name']) || !isset($value['id']) || !isset($value['fid']) || !isset($value['postkey'])) continue;
if(isset($_GET['strlen'])){
$toptopicname = (strlen($value['name'])>(int)$_GET['strlen'])?substr($value['name'],0,(int)$_GET['strlen']).'...':$value['name'];
} else {
$toptopicname = (strlen($value['name'])>32)? substr($value['name'],0,32).'...':$value['name'];
}
$toptopicname = (isset($value['tnun'])) ? $toptopicname.' - '.$value['tnun']:$toptopicname;
$printvalue = (FM_PRINTVAL === TRUE && isset($value[$mode])) ? ' ('.$value[$mode].')':'';
$menu .= '<span class="hint"><a title="'.str_replace("\"","\\\"",$value['name']).'" href="topic.php?forum='.$value['fid'].'&topic='.$value['id'].'&postid='.$value['postkey'].'#'.$value['postkey'].'" poster="'.$value['poster'].'">'.$toptopicname.$printvalue.'</a></span><br>';
}
return $menu;
}

1) Это получаем автора последнего поста
2) Можем ограничить количество символов в названии топика, чтоб красиво влиться в дизайн.

Теперь на сайте делаем вывод:

CODE:
<ul style="list-style: none;">
<?php
$ppf=iconv("windows-1251","utf-8",file_get_contents(VALUALIT_HOST."forum/tools.php?action=threadstop&strlen=28"));
preg_match_all("~<td class=\"row1\" width=\"33\%\">(.*)</td>~isU",$ppf,$match);
unset($ppf);
preg_match_all("~<span class=\"hint\"><a title=\"([^\"]+)\" href=\"([^\"]+)\" poster=\"([^\"]+)\">(.+)</a></span>~isU",$match[1][0],$match);
$i=1;
foreach($match[1] as $key=>$value){ ?>
<li>
<a href="<?=VALUALIT_HOST?>forum/<?=$match[2][$key]?>" style="color:#fff; font-size: 12px;" title="<?=str_replace("\"","\\\"",$match[1][$key])?>"><?=$match[4][$key]?></a> <br/>
<small style="color:#ff0;"><font style="color:#fff;">Автор:</font> <?=$match[3][$key]?></small>
</li>
<?php if($i==4){ break; } $i++; } ?>
</ul>


1) Если парсинг нужен в различные части и требуется ограничение на количество выводимых новостей, я пользуюсь переменной $i
2) VALUALIT_HOST - http путь к корню проекта.
valualit Отправлено: 4 февраля 2013 — 13:21 • Тема: Класс для добавления пользователя на форум ExBB • Форум: Решение проблем

Ответов: 2
Просмотров: 0
CODE:
$forum_stats['totalmembers']=0;

Необходимо удалить, код использовался при установке системы, когда необходимо было почистить профили и статистику на форуме и создать нового админа.

CODE:
$forum_stats['totalmembers']=$forum_stats['totalmembers']+1;


можно заменить на :

CODE:
$forum_stats['totalmembers']+=1;


P.S> Отредактировать старый пост не могу, поскольку нет прав.
valualit Отправлено: 4 февраля 2013 — 06:47 • Тема: Класс для добавления пользователя на форум ExBB • Форум: Решение проблем

Ответов: 2
Просмотров: 0
Для игрового портала по Lineage 2 L2-RPG.COM необходимо было организовать автоматическую регистрацию на форуме, поскольку раздельная регистрация мастер аккаунта и профиля на форуме вносила дискомфорт.

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

Собственно часть кода, который используется:

CODE:
<?php
class valualit_exbb {

public function file_serialize_read($filename){
if (!file_exists($filename)){
return array();
}
$fp = @fopen($filename,'r');
flock($fp, 1);
$filesize = filesize($filename);
$filesize = ($filesize ===0) ? 1:$filesize-8;
fseek($fp,8);
$str = fread($fp,$filesize);
flock($fp, 3);
fclose($fp);
return (!empty($str))?unserialize($str):array();
}

// Проверка существования пользователя по логину
public function user_exists($path_forum,$name){
$users = self::file_serialize_read(VALUALIT_ROOT_DIR.$path_forum."data/users.php");
foreach($users as $k=>$u){
if($u['n']==$name){
return true;
}
}
return false;
}


// Добавляем пользователя
public function user_add($login,$email,$passwd,$path_to_forum,$status='me',$title='Пользователь'){
$array=self::file_serialize_read(VALUALIT_ROOT_DIR.$path_to_forum."data/users.php");
$array[0]=true;
$array[]=array("n"=>strtolower(preg_replace("~\s*~isU","",$login)),"m"=>trim($email),"p"=>0);
unset($array[0]);
file_put_contents(VALUALIT_ROOT_DIR.$path_to_forum."data/users.php",'<?die;?>'.serialize($array));
$forum_id_user=max(array_keys($array));
$user_info=array(
"id"=>$forum_id_user,
"status"=>$status,
"name"=>iconv('utf-8', 'windows-1251',preg_replace("~\s*~isU","",$login)),
"pass"=>md5(iconv('utf-8', 'windows-1251', preg_replace("~\s*~isU","",$passwd))),
"mail"=>iconv('utf-8', 'windows-1251',trim($email)),
"posts"=>0,
"icq"=>"",
"title"=>iconv('utf-8', 'windows-1251',$title),
"ip"=>"127.0.0.1",
"showemail"=>FALSE,
"joined"=>time(),
"www"=>"",
"aim"=>"",
"location"=>"",
"interests"=>"",
"sig"=>"",
"sig_on"=>TRUE,
"lang"=>"russian",
"timedif"=>0,
"avatar"=>'noavatar.gif',
"upload"=>TRUE,
"visible"=>TRUE,
"new_pm"=>FALSE,
"sendnewpm"=>FALSE,
"posts2page"=>10,
"topics2page"=>15,
"last_visit"=>0);
file_put_contents(VALUALIT_ROOT_DIR.$path_to_forum."members/".$forum_id_user.".php",'<?die;?>'.serialize($user_info));

$forum_stats=self::file_serialize_read(VALUALIT_ROOT_DIR.$path_to_forum."data/boardstats.php");
$forum_stats['totalmembers']=0;
$forum_stats['totalmembers']=$forum_stats['totalmembers']+1;
$forum_stats['last_id']=$forum_id_user;
$forum_stats['lastreg']=iconv('utf-8', 'windows-1251',preg_replace("~\s*~isU","",$login));
file_put_contents(VALUALIT_ROOT_DIR.$path_to_forum."data/boardstats.php",'<?die;?>'.serialize($forum_stats));
}
}


Поскольку это создавалось для движка CMF Valualit, код содержит некоторые нюансы.

VALUALIT_ROOT_DIR - содержит полный путь к корню проекта.
file_serialize_read - метод практически в неизменном виде взят из движка ExBB
$path_forum - входящий параметр содержащий относительный путь к форуму от корня проекта.
user_exists - с помощью цикла перебирает data/users.php для проверки занятости логина на форуме.
user_add - метод добавления профиля пользователя на форум, а так же обновление статистики в data/boardstats.php


Проверяем существование пользователя:

CODE:
if(valualit_exbb::user_exists($path_to_forum,$login)==true){
// Аккаунт с таким Логином существует!
} else {
// Добавляем аккаунт
}



По умолчанию статус пользователя при регистрации указывается block

CODE:
valualit_exbb::user_add($login,$email,$passwd,$path_to_forum,$status='banned',$title='Пользователь');


После подтверждения регистрации:

CODE:
$array=valualit_exbb::file_serialize_read(VALUALIT_ROOT_DIR.$path_to_forum."members/".$user_id.".php");
$array["status"]='me';
file_put_contents(VALUALIT_ROOT_DIR.$path_to_forum."members/".$user_id.".php",'<?die;?>'.serialize($array));
valualit Отправлено: 2 февраля 2013 — 16:13 • Тема: Юмор • Форум: О жизни

Ответов: 143
Просмотров: 0
- С вас 250 рублей. Пакет нужен?
- Будете так шутить, я к вам больше стричься не приду.
valualit Отправлено: 10 апреля 2012 — 08:28 • Тема: Подсветка синтаксиса • Форум: Решение проблем

Ответов: 3
Просмотров: 0
В общем не дождался ответа, сделал так, если кому-то нужно:
1) Скачал последнюю версию gishi от сюда: http://sourceforge.net/projects/...shi/files/geshi/
2) Загрузил в корень форума папку gishi и файл gishi.php
3) Открыл файл topic.php в корне форума, за строкой:
CODE:
include('./include/common.php');

добавил
CODE:
include_once ("geshi.php");

4) Открыл файл include/fm.class.php
Нашел код
CODE:
$string = preg_replace_callback("#\[code\](.+?)\[/code\]#is",
create_function(
'$matches',
'global $array,$num;
$key = "%__".$num."__%";
$num++;
$array[$key] = "<div class=\"block\"><b>CODE:</b><div class=\"htmlcode\">".$matches[1]."</div></div>";
return $key;'
),$string);


За ним добавил код:
CODE:
$string = preg_replace_callback("#\[code=([^\]]*)\](.+?)\[/code\]#is",
create_function(
'$matches',
'global $array,$num;
$key = "%__".$num."__%";
$num++;
$geshi = new GeSHi(html_entity_decode($matches[2],ENT_QUOTES),$matches[1]);
$array[$key] = "<div class=\"block\"><b>".$matches[1].":</b><div class=\"htmlcode\">".$geshi->parse_code()."</div></div>";
return $key;'
),$string);



Вот и все!

Теперь для подсветки кода, необходимо писать: {code=lang}код{/code}
Фигурные кавычки меняем на квадратные, после равно ставим язык программирования.

!ВНИМАНИЕ
Для безопасности,
CODE:
\[code=([^\]]*)\](.+?)\[/code\]
фрагмент ([^\]]*) заменить на список разрешаемых к переводу языков например:
CODE:
\[code=(php|html|css|javascript|cpp|python)\](.+?)\[/code\]
valualit Отправлено: 9 апреля 2012 — 14:07 • Тема: Подсветка синтаксиса • Форум: Решение проблем

Ответов: 3
Просмотров: 0
Дайте пожалуйста рабочую ссылку на:
Установку мода с подсветкой синтаксиса кода и нумерацию строк (нашел только битую ссылку)

Страниц (1): [1]

Яндекс.Метрика   

Powered by ExBB
ExBB FM 1.0 RC1 by TvoyWeb.ru
InvisionExBB Style converted by Markus®

[Script Execution time: 0.0533]     [ ]