Перейти к контенту

Категории записи/разделы дневника


Allure

Рекомендуемые сообщения

Когда-то, в общей теме еще, обсуждали возможность создания категорий записи (разделов) в дневниках, вроде даже кто-то собирался делать... Если есть у кого-то, поделитесь, пожалуйста. :D Или, может, подскажет кто, как сделать...
Ссылка на комментарий
Поделиться на других сайтах

  • Ответы 59
  • Создана
  • Последний ответ

Лучшие авторы в этой теме

Лучшие авторы в этой теме

Загружено фотографий

Мы делаем это уже несколько дней. Будет называться только иначе - "ТЕГИ". Далее они формируются в красивое кучерявое облако. Пока только наброски, но вцелом уже получается что-то похожее на облако.

 

/me вспомнил что обещал опубликовать rss-ленты для блогов на основе мода для форума :D

Ссылка на комментарий
Поделиться на других сайтах

О! /me вспомнил что обещал опубликовать rss-ленты для блогов на основе мода для форума :D
О! Только я собралась тебя спросить о ней... :)

 

А возможность разбить друзей на категории/группы вы не собираетесь сделать (до кучи уж)? ;)

Изменено пользователем Allure
Ссылка на комментарий
Поделиться на других сайтах

можно поподробней об идеи? скажем так ТЗ, и вообще что это такое?
Про категории записей или группы друзей?
Ссылка на комментарий
Поделиться на других сайтах

Поскольку ответа не последовало, попробую разложить по обоим пунктам, тем более, что они могут быть взаимосвязаны. :D Группы друзей - разбить друзей на группы с разным уровнем доступа к записям. Соответственно, категории записей с разным уровнем доступа. Скажем к одной категории дать доступ одной (или нескольким, или всем) группе друзей, к другой категории - другой (другим) группе друзей, к третьей - только себе, например.
Ссылка на комментарий
Поделиться на других сайтах

  • 4 месяца спустя...
Поднимаю тему. Сделал кто-нибудь уже облако тегов в дневниках?

 

Да. Пример у меня на сайте есть http://bbs.krasnogorsk.ru/forum/journal.php, но проблема в одном. Нету внятного change-log, чтобы опубликовать, но попробую что-нибудь придумать.

Ссылка на комментарий
Поделиться на других сайтах

Да. Пример у меня на сайте есть http://bbs.krasnogorsk.ru/forum/journal.php, но проблема в одном. Нету внятного change-log, чтобы опубликовать, но попробую что-нибудь придумать.

Ждем.

Еще, если не трудно, расскажи про RSS в дневниках.

Ссылка на комментарий
Поделиться на других сайтах

Да. Пример у меня на сайте есть http://bbs.krasnogorsk.ru/forum/journal.php, но проблема в одном. Нету внятного change-log, чтобы опубликовать, но попробую что-нибудь придумать.

Ждем.

Еще, если не трудно, расскажи про RSS в дневниках.

+1 :D
Ссылка на комментарий
Поделиться на других сайтах

  • 2 месяца спустя...
  • 2 месяца спустя...
Пример у меня на сайте есть http://bbs.krasnogorsk.ru/forum/journal.php, но проблема в одном.

Я так понимаю, что это структура общая для всех дневников... Мне бы хотелось, чтобы каждый у себя в дневнике сам создавал рубрики и разделы... т.е. делил все свои заметки на группы по тематики... Семья, Работа, Фото, Видео и т.д... И если я захожу в дневник и хочу посмотреть все фото пользователя и нажимаю на рубрику "Фото", то мне вываливаются все записи дневника с фото... Было бы здорово, если кто-нибудь воплотил)))

Ссылка на комментарий
Поделиться на других сайтах

  • 8 месяцев спустя...

Для mJournal 1.05 на IPB 1.3 у меня работает rss: с главной страницы журналов лента по всем журналам открытого доступа; со страницы журнала пользователя лента на открытые в общий доступ сообщения и коментарии этого журнала.

 

$root_path = "../../";

//-----------------------------------------------
// NO USER EDITABLE SECTIONS BELOW
//-----------------------------------------------

error_reporting  (E_ERROR | E_WARNING | E_PARSE);
set_magic_quotes_runtime(0);

class info {

var $input      = array();
var $base_url   = "";
var $vars       = "";
function info() {
	global $sess, $std, $DB, $root_path, $INFO;

	$this->vars = &$INFO;

}
}

//--------------------------------
// Import $INFO, now!
//--------------------------------

require $root_path."conf_global.php";

//--------------------------------
// Require our global functions
//--------------------------------

require $root_path."sources/functions.php";

$std   = new FUNC;

//--------------------------------
// Load the DB driver and such
//--------------------------------

$INFO['sql_driver'] = !$INFO['sql_driver'] ? 'mySQL' : $INFO['sql_driver'];

$to_require = $root_path."sources/Drivers/".$INFO['sql_driver'].".php";
require ($to_require);

$DB = new db_driver;

$DB->obj['sql_database']     = $INFO['sql_database'];
$DB->obj['sql_user']         = $INFO['sql_user'];
$DB->obj['sql_pass']         = $INFO['sql_pass'];
$DB->obj['sql_host']         = $INFO['sql_host'];
$DB->obj['sql_tbl_prefix']   = $INFO['sql_tbl_prefix'];

// Get a DB connection

$DB->connect();

//--------------------------------
// Wrap it all up in a nice easy to
// transport super class
//--------------------------------

$ibforums             = new info();

//--------------------------------
//  Set up our vars
//--------------------------------

$ibforums->input      = $std->parse_incoming();
$ibforums->base_url   = $ibforums->vars['board_url'];

//--------------------------------
// What to do?
//--------------------------------


do_lastposts();



//-------------------------------------------------
//  Last Posts
//-------------------------------------------------
function do_lastposts() {
global $DB, $ibforums, $root_path, $std, $INFO;

   $limit        = "7";   // Количество дней 'последних постов'
if(isSet($ibforums->input['n']))
{
	$n=intval($ibforums->input['n']);
	if($n<31 and $n>0)$limit = $n;
}
$n_days = $limit."";
$limit = time() - $limit*3600*24;
$prefix 	  =  $INFO['sql_tbl_prefix'];

$autor_name = "";
$autor_name_d = "";
$posts_extra = "";
if(intval($ibforums->input['user'])>0)
{
	$DB->query("SELECT name FROM ibf_members WHERE id = ".$ibforums->input['user']);
	$out = $DB->fetch_row();
	$autor_name = " (".$out['name'].")";
	$autor_name_d = ": журнал ".$out['name'];
	$posts_extra = " AND p.author_id = ".intval($ibforums->input['user']);
}

//----------------------------------------
// Header parse...
//----------------------------------------

@header('Content-Type: text/xml');
@header('Expires: ' . gmdate('D, d M Y H:i:s') . ' GMT');
@header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
@header('Pragma: public');

// Темплейт для постов
$template = "
     <item>
       <guid isPermaLink='true'>{post_url}</guid>
       <pubDate>{rfc_date}</pubDate>
       <title>{author} создал(а) тему: {thread_title}</title>
       <link>{post_url}</link>
       <description><![CDATA[{text}]]></description>
       <comments>{post_url}</comments>
     </item>
";

// Темплейт для каментов
$template_c = "
     <item>
       <guid isPermaLink='true'>{post_url}</guid>
       <pubDate>{rfc_date}</pubDate>
       <title>{author} ответил(а) тему: {thread_title} (автор темы {j_a_name})</title>
       <link>{post_url}</link>
       <description><![CDATA[{text}]]></description>
       <comments>{post_url}</comments>
     </item>
";

 	$to_echo = "<?xml version='1.0' encoding=\"windows-1251\"?>
     <rss version='2.0'>
     <channel>
     <title>Сообщения и комментарии в журналах Анонимных Алкоголиков".$autor_name." за последние ".$n_days." дней</title>
     <link>http://vesvalo.net/</link>
     <description>Русскоязычная группа анонимных алкоголиков онлайн".$autor_name_d."</description>
     <generator>Vesvalo.net</generator>
 	";

// Тянем посты
$DB->query("SELECT p.post_date, p.pid, p.author_name, p.title, p.post, me.j_public, me.id
			FROM ibf_jposts p
			LEFT JOIN ibf_member_extra me ON ( me.id = p.journal_id ) 
			WHERE p.post_date > '".$limit."'
			AND me.j_blocked <>1
			AND me.j_public =1".$posts_extra."
			ORDER BY p.post_date ASC");
if ( ! $DB->get_num_rows() ) {
	fatal_error("Could not get the information from the database");
}
while( $out = $DB->fetch_row($query) ) {
// Выковариваем архивированное
	if ( strlen($out['post']) < 3 )$out['post'] = $std->extract_archived_post($out['pid'], "jpc");
// выковыряли...
	$thread_title = $out['title'];
       $thread_title = preg_replace( "'&'si", "&" , $thread_title );
	$forum_name = $out['name'];
	$author	            = $out['author_name'];
       $rfcdate            = date( 'r', $out['post_date'] );
	$out['post_date']	= $std->get_date( $out['post_date'], 'LONG' );
	$date               = $out['post_date'];
	$text               = $out['post'];

	$to_echo  .= parse_template( $template,array (

	'thread_url' => $ibforums->base_url."/journal.php?user=".$out['id']."&comm=".$out['pid'],
	'thread_title' => $thread_title,
	'forum_url' => $ibforums->base_url."/journal.php?user=". $out['id'],
	'post_url' => $ibforums->base_url."/journal.php?user=".$out['id']."&comm=".$out['pid'],
	'forum_name' => $forum_name,
	'date'       => $date,
	'rfc_date'   => $rfcdate,
	'author'     => $author,
	'text'     => $text,
	'profile_link'   => $ibforums->base_url."?act=Profile&CODE=03&MID=".$out['id'],	) );
}




// Тянем каменты
$DB->query("SELECT c.cid, c.post_date, c.post, c.author_name, p.author_name as j_a_name, p.title, p.pid, me.j_public, me.id
			FROM ibf_jcomments c
			LEFT JOIN ibf_jposts p ON (p.pid=c.post_id)
			LEFT JOIN ibf_member_extra me ON (me.id=c.owner_id)
			WHERE p.post_date > '".$limit."'
			AND me.j_blocked <>1
			AND me.j_public =1".$posts_extra."
			ORDER BY p.post_date ASC");
if ( ! $DB->get_num_rows() ) {
	fatal_error("Could not get the information from the database");
}
while( $out = $DB->fetch_row($query) ) {
// Выковариваем архивированное
	if ( strlen($out['post']) < 3 )$out['post'] = $std->extract_archived_post($out['pid'], "jсc");
// выковыряли...
	$thread_title = $out['title'];
       $thread_title = preg_replace( "'&'si", "&" , $thread_title );
	$forum_name = $out['name'];
	$author	            = $out['author_name'];
       $rfcdate            = date( 'r', $out['post_date'] );
	$out['post_date']	= $std->get_date( $out['post_date'], 'LONG' );
	$date               = $out['post_date'];
	$text               = $out['post'];

	$to_echo  .= parse_template( $template_c,array (

	'thread_url' => $ibforums->base_url."/journal.php?user=".$out['id']."&comm=".$out['pid'],
	'thread_title' => $thread_title,
	'forum_url' => $ibforums->base_url."/journal.php?user=". $out['id'],
	'post_url' => $ibforums->base_url."/journal.php?user=".$out['id']."&comm=".$out['pid']."&c=".$out['cid']."#c".$out['cid'],
	'forum_name' => $forum_name,
	'date'       => $date,
	'rfc_date'   => $rfcdate,
	'author'     => $author,
	'j_a_name'     => $out['j_a_name'],
	'text'     => $text,
	'profile_link'   => $ibforums->base_url."/index.php?act=Profile&CODE=03&MID=".$out['id'],	) );
}


$to_echo  .= "
     </channel>
     </rss>
";

   echo $to_echo;
}



//+-------------------------------------------------
// GLOBAL ROUTINES
//+-------------------------------------------------


function parse_template( $template, $assigned=array() )
{

foreach( $assigned as $word => $replace)
{
	$template = preg_replace( "/\{$word\}/i", "$replace", $template );
}

return $template;
}



function fatal_error($message="") {
echo("An error occured whilst processing this directive");
if ($message)
{
	echo("<br>$message");
}
exit();
}

Ссылка на комментарий
Поделиться на других сайтах

выбирает все записи с тегом. Внутри дневника - только авторские, с главной страницы - из всех дневников. Типично. :D
Ссылка на комментарий
Поделиться на других сайтах

выбирает все записи с тегом. Внутри дневника - только авторские, с главной страницы - из всех дневников. Типично. smile.gif

внутри дневника - только авторские

я так понимаю у каждого днева имеються свои теги тоесть те которые автор выставлял в своем дневе? и выводяться темы с определенным тегом только с его днева?

 

а с главной страницы все темы из всех дневников с выбранным тегом?

 

если да то это ваще супер :D

Ссылка на комментарий
Поделиться на других сайтах

Присоединиться к обсуждению

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

Гость
Ответить в этой теме...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Зарузка...

×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.