Advertisement:

Author Topic: Üyenin gönderdiği mesajları bu biçimde kısaltarak listeleme..  (Read 40046 times)

Offline boranjudge

  • Semi-Newbie
  • *
  • Posts: 67
İyi günler, bir üyenin Gönderdiği mesajları ekte ki resim gibi içeriğini kısaltarak listeleme yapabilirmiyiz

sajT®

  • Guest
Re: Üyenin gönderdiği mesajları bu biçimde kısaltarak listeleme..
« Reply #1 on: April 20, 2008, 11:49:50 AM »
Yapılabilir Beklemen Gerekiyo biraz..

Offline boranjudge

  • Semi-Newbie
  • *
  • Posts: 67
Re: Üyenin gönderdiği mesajları bu biçimde kısaltarak listeleme..
« Reply #2 on: April 20, 2008, 12:35:27 PM »
Yapılabilir Beklemen Gerekiyo biraz..

Teşekkür ederim.

Offline boranjudge

  • Semi-Newbie
  • *
  • Posts: 67
Re: Üyenin gönderdiği mesajları bu biçimde kısaltarak listeleme..
« Reply #3 on: April 21, 2008, 03:14:34 PM »
Sayın Tias tahminen ne zaman paylaşırsınız ?

sajT®

  • Guest
Re: Üyenin gönderdiği mesajları bu biçimde kısaltarak listeleme..
« Reply #4 on: April 21, 2008, 04:53:05 PM »
Ben Sources'a Giremedim Daha :) Üzgünüm..

Offline boranjudge

  • Semi-Newbie
  • *
  • Posts: 67
Re: Üyenin gönderdiği mesajları bu biçimde kısaltarak listeleme..
« Reply #5 on: April 21, 2008, 04:55:55 PM »
Ben Sources'a Giremedim Daha :) Üzgünüm..

Themes/Default/Profile.template.php dosyasına ? :) ;)

sajT®

  • Guest
Re: Üyenin gönderdiği mesajları bu biçimde kısaltarak listeleme..
« Reply #6 on: April 21, 2008, 04:59:25 PM »
Hayıır ! :)

Offline Yağız...

  • SMF Super Hero
  • *******
  • Posts: 10,809
  • Gender: Male
    • MMO Browser
Re: Üyenin gönderdiği mesajları bu biçimde kısaltarak listeleme..
« Reply #7 on: April 21, 2008, 05:01:29 PM »
Hem hayır, hem evet. Iki dosyayada ekleme yapilmali.

sajT®

  • Guest
Re: Üyenin gönderdiği mesajları bu biçimde kısaltarak listeleme..
« Reply #8 on: April 21, 2008, 05:03:53 PM »
Sources'daki Değişken Profile.template.php'den Çağıralacak Uğraşmam Gerekiyo Bayağı  ::)

Offline boranjudge

  • Semi-Newbie
  • *
  • Posts: 67
Re: Üyenin gönderdiği mesajları bu biçimde kısaltarak listeleme..
« Reply #9 on: April 25, 2008, 11:45:37 AM »
Hem hayır, hem evet. Iki dosyayada ekleme yapilmali.

Sevgili Yağız, Anlatımını yaparak, Yardımcı olursanız çok sevinirim, uzun süredir kurmak istediğim modlardan birisi .
Teşekkür ederim.

Offline Yağız...

  • SMF Super Hero
  • *******
  • Posts: 10,809
  • Gender: Male
    • MMO Browser
Re: Üyenin gönderdiği mesajları bu biçimde kısaltarak listeleme..
« Reply #10 on: April 25, 2008, 05:34:22 PM »
Örnek bir siteyi özel mesajdan gönderir misiniz?

Offline [SiNaN]

  • SMF Super Hero
  • *******
  • Posts: 11,524
  • Young and Foolish
    • SimplePortal
Re: Üyenin gönderdiği mesajları bu biçimde kısaltarak listeleme..
« Reply #11 on: April 26, 2008, 09:34:18 AM »
Kısalatarak göstermek için:

../Sources/Profile.php

Bul:

Code: [Select]
global $txt, $user_info, $scripturl, $modSettings, $db_prefix;
global $context, $user_profile, $ID_MEMBER, $sourcedir;

Değiştir:

Code: [Select]
global $txt, $user_info, $scripturl, $modSettings, $db_prefix;
global $context, $user_profile, $ID_MEMBER, $sourcedir, $func;

Bul:

Code: [Select]
// Do the code.
$row['body'] = parse_bbc($row['body'], $row['smileysEnabled'], $row['ID_MSG']);

Öncesine ekle:

Code: [Select]
//Message body length.
$message_length = 150;

// Do we need to cut it off?
if ($func['strlen']($row['body']) > $message_length)
{
$row['body'] = $func['substr']($row['body'], 0, $message_length);

// Check for space or line break.
$cutoff = max(strrpos($row['body'], ' '), strrpos($row['body'], '<'));

if ($cutoff !== false)
$row['body'] = $func['substr']($row['body'], 0, $cutoff);
$row['body'] .= '...';
}


150 yerine istediğiniz uzunluğu girmelisiniz.
Former SMF Core Developer | My Mods | SimplePortal

sajT®

  • Guest
Re: Üyenin gönderdiği mesajları bu biçimde kısaltarak listeleme..
« Reply #12 on: April 26, 2008, 04:13:04 PM »
Teşekkür Ederim Bende :)

Offline boranjudge

  • Semi-Newbie
  • *
  • Posts: 67
Re: Üyenin gönderdiği mesajları bu biçimde kısaltarak listeleme..
« Reply #13 on: April 27, 2008, 10:27:13 AM »
Çok teşekkür ederim Sevgili sinan, güzel bir kısmı tamamlandı sayende.

Offline Yağız...

  • SMF Super Hero
  • *******
  • Posts: 10,809
  • Gender: Male
    • MMO Browser
Re: Üyenin gönderdiği mesajları bu biçimde kısaltarak listeleme..
« Reply #14 on: April 27, 2008, 10:34:40 AM »
O sorun çözüldügüne göre baska bir sorun kaldi mi?

Offline boranjudge

  • Semi-Newbie
  • *
  • Posts: 67
Re: Üyenin gönderdiği mesajları bu biçimde kısaltarak listeleme..
« Reply #15 on: April 27, 2008, 11:11:38 AM »
O sorun çözüldügüne göre baska bir sorun kaldi mi?

Sevgili Yağız,
Tablolama ve linkler açısından resimde ki gibi bir geliştirme kaldı.

Offline tarihogretmeni

  • Semi-Newbie
  • *
  • Posts: 25
    • Tarih Öğretmeni
Re: Üyenin gönderdiği mesajları bu biçimde kısaltarak listeleme..
« Reply #16 on: April 27, 2008, 01:38:46 PM »
Öncelikle teşekkürler...

Bu değişiklik ile üyelerin gönderdiği son konularda kısalma oldu fakat son mesajlarda değişiklik olmadı.
"Tomurcuk derdinde olmayan ağaç odundur."

Offline Yağız...

  • SMF Super Hero
  • *******
  • Posts: 10,809
  • Gender: Male
    • MMO Browser
Re: Üyenin gönderdiği mesajları bu biçimde kısaltarak listeleme..
« Reply #17 on: April 27, 2008, 01:42:02 PM »
Aynı kodlardan ikişer tane olması gerekiyor. Siz ilk kodları değiştirmişsiniz. Diğer kodlarıda değiştirmeyi deneyin.

Offline Yağız...

  • SMF Super Hero
  • *******
  • Posts: 10,809
  • Gender: Male
    • MMO Browser
Re: Üyenin gönderdiği mesajları bu biçimde kısaltarak listeleme..
« Reply #18 on: April 27, 2008, 03:59:48 PM »
Tam olarak olmadı ama idare eder :)
Sources/Profile.php'de bulun:
Code: [Select]
t.ID_MEMBER_STARTED, t.ID_FIRST_MSG, t.ID_LAST_MSG, m.body, m.smileysEnabled,
m.subject, m.posterTime
FROM ({$db_prefix}messages AS m, {$db_prefix}topics AS t, {$db_prefix}boards AS b)
LEFT JOIN {$db_prefix}categories AS c ON (c.ID_CAT = b.ID_CAT)
Degistirin:
Code: [Select]
t.ID_MEMBER_STARTED, t.ID_FIRST_MSG, t.ID_LAST_MSG, m.body, m.smileysEnabled,
m.subject, m.posterTime, mem.memberName
FROM ({$db_prefix}messages AS m, {$db_prefix}topics AS t, {$db_prefix}boards AS b)
LEFT JOIN {$db_prefix}categories AS c ON (c.ID_CAT = b.ID_CAT)
LEFT JOIN {$db_prefix}members AS mem ON (mem.ID_MEMBER = t.ID_MEMBER_STARTED)
Bulun:
Code: [Select]
'topic' => $row['ID_TOPIC'],Öncesine ekleyin:
Code: [Select]
'poster' => array(
'name' => $row['memberName'],
'url' => $scripturl . '?action=profile;u=' . $row['ID_MEMBER_STARTED'],
),
Themes/default/Profile.template.php dosyasinda bulun(burada tüm fonksiyonu degistiricez, yoksa çok uzun sürer):
Code: [Select]
// Template for showing all the posts of the user, in chronological order.
function template_showPosts()
{
global $context, $settings, $options, $scripturl, $modSettings, $txt;

echo '
<table border="0" width="85%" cellspacing="1" cellpadding="4" class="bordercolor" align="center">
<tr class="titlebg">
<td colspan="3" height="26">
&nbsp;<img src="', $settings['images_url'], '/icons/profile_sm.gif" alt="" align="top" />&nbsp;', $txt['showPosts'], '
</td>
</tr>';

// Only show posts if they have made some!
if (!empty($context['posts']))
{
// Page numbers.
echo '
<tr class="catbg3">
<td colspan="3">
', $txt[139], ': ', $context['page_index'], '
</td>
</tr>
</table>';

// Button shortcuts
$quote_button = create_button('quote.gif', 145, 'smf240', 'align="middle"');
$reply_button = create_button('reply_sm.gif', 146, 146, 'align="middle"');
$remove_button = create_button('delete.gif', 121, 31, 'align="middle"');
$notify_button = create_button('notify_sm.gif', 131, 125, 'align="middle"');

// For every post to be displayed, give it its own subtable, and show the important details of the post.
foreach ($context['posts'] as $post)
{
echo '
<table border="0" width="85%" cellspacing="1" cellpadding="0" class="bordercolor" align="center">
<tr>
<td width="100%">
<table border="0" width="100%" cellspacing="0" cellpadding="4" class="bordercolor" align="center">
<tr class="titlebg2">
<td style="padding: 0 1ex;">
', $post['counter'], '
</td>
<td width="75%" class="middletext">
&nbsp;<a href="', $scripturl, '#', $post['category']['id'], '">', $post['category']['name'], '</a> / <a href="', $scripturl, '?board=', $post['board']['id'], '.0">', $post['board']['name'], '</a> / <a href="', $scripturl, '?topic=', $post['topic'], '.', $post['start'], '#msg', $post['id'], '">', $post['subject'], '</a>
</td>
<td class="middletext" align="right" style="padding: 0 1ex; white-space: nowrap;">
', $txt[30], ': ', $post['time'], '
</td>
</tr>
<tr>
<td width="100%" height="80" colspan="3" valign="top" class="windowbg2">
<div class="post">', $post['body'], '</div>
</td>
</tr>
<tr>
<td colspan="3" class="windowbg2" align="', !$context['right_to_left'] ? 'right' : 'left', '"><span class="middletext">';

if ($post['can_delete'])
echo '
<a href="', $scripturl, '?action=profile;u=', $context['current_member'], ';sa=showPosts;start=', $context['start'], ';delete=', $post['id'], ';sesc=', $context['session_id'], '" onclick="return confirm(\'', $txt[154], '?\');">', $remove_button, '</a>';
if ($post['can_delete'] && ($post['can_mark_notify'] || $post['can_reply']))
echo '
', $context['menu_separator'];
if ($post['can_reply'])
echo '
<a href="', $scripturl, '?action=post;topic=', $post['topic'], '.', $post['start'], '">', $reply_button, '</a>', $context['menu_separator'], '
<a href="', $scripturl, '?action=post;topic=', $post['topic'], '.', $post['start'], ';quote=', $post['id'], ';sesc=', $context['session_id'], '">', $quote_button, '</a>';
if ($post['can_reply'] && $post['can_mark_notify'])
echo '
', $context['menu_separator'];
if ($post['can_mark_notify'])
echo '
<a href="' . $scripturl . '?action=notify;topic=' . $post['topic'] . '.' . $post['start'] . '">' . $notify_button . '</a>';

echo '
</span></td>
</tr>
</table>
</td>
</tr>
</table>';
}

// Show more page numbers.
echo '
<table border="0" width="85%" cellspacing="1" cellpadding="4" class="bordercolor" align="center">
<tr>
<td colspan="3" class="catbg3">
', $txt[139], ': ', $context['page_index'], '
</td>
</tr>
</table>';
}
// No posts? Just end the table with a informative message.
else
echo '
<tr class="windowbg2">
<td>
', $txt[170], '
</td>
</tr>
</table>';
}
Degistirin:
Code: [Select]
// Template for showing all the posts of the user, in chronological order.
function template_showPosts()
{
global $context, $settings, $options, $scripturl, $modSettings, $txt;

echo '
<table border="0" width="85%" cellspacing="1" cellpadding="4" class="bordercolor" align="center">
<tr class="titlebg">
<td colspan="3" height="26">
&nbsp;<img src="', $settings['images_url'], '/icons/profile_sm.gif" alt="" align="top" />&nbsp;', $txt['showPosts'], '
</td>
</tr>';

// Only show posts if they have made some!
if (!empty($context['posts']))
{
// Page numbers.
echo '
<tr class="catbg3">
<td colspan="3">
', $txt[139], ': ', $context['page_index'], '
</td>
</tr>
</table>';

// For every post to be displayed, give it its own subtable, and show the important details of the post.
foreach ($context['posts'] as $post)
{
echo '
<table cellpadding="6" cellspacing="1" border="0" width="85%" align="center" class="bordercolor">
<tr>
<td class="titlebg" style="font-weight:normal">
<span style="float:right">
Forum: <a href="', $scripturl, '?board=', $post['board']['id'], '.0">', $post['board']['name'], '</a>
</span>
', $post['time'], '
</td>
</tr>
<tr>
<td class="windowbg">
<div>
<a href="', $scripturl, '?topic=', $post['topic'], '.', $post['start'], '#msg', $post['id'], '"><strong>', $post['subject'], '</strong></a>
</div>
<div class="smalltext">
Baslatan: <a href="', $post['poster']['url'], '">', $post['poster']['name'], '</a>
</div>
<div class="windowbg2" style="margin:6px 0px 6px 0px; padding:6px; border:2px groove">
<div class="smalltext"><em>
<img style="vertical-align: middle;" src="images/icons/icon1.gif" alt="" border="0" />
<a href="', $scripturl, '?topic=', $post['topic'], '.', $post['start'], '#msg', $post['id'], '">', $post['subject'], '</a><br />
<br />
', $post['body'], '
</em></div>
</div>
</td>
</tr>
</table>';
}

// Show more page numbers.
echo '
<table border="0" width="85%" cellspacing="1" cellpadding="4" class="bordercolor" align="center">
<tr>
<td colspan="3" class="catbg3">
', $txt[139], ': ', $context['page_index'], '
</td>
</tr>
</table>';
}
// No posts? Just end the table with a informative message.
else
echo '
<tr class="windowbg2">
<td>
', $txt[170], '
</td>
</tr>
</table>';
}
« Last Edit: May 05, 2008, 02:54:37 PM by Yağız »

Offline boranjudge

  • Semi-Newbie
  • *
  • Posts: 67
Re: Üyenin gönderdiği mesajları bu biçimde kısaltarak listeleme..
« Reply #19 on: April 28, 2008, 11:50:50 AM »
Sevgili Yağız, emeğinize sağlık eğer demosu varsa verebilirseniz daha iyi olur ben denedim hata verdi ama büyük ihtimalle benden kaynaklı bir hata, çünkü kombinasyonlar kurarak değiştirmiştim dosyaların kodlarını şöyle birşey çıktı sonuç olarak

http://www.boranjudge.org/index.php?action=profile;u=1;sa=showPosts

Bu kadarıda şimdilik yeterli benim için,

umarım bu modu geliştiren arkadaşlar olur, güzel bir mod olduğunu düşünüyorum

İlgi ve alakanız için teşekkür ederim Sevgilerimle boranjudge.