Synology-Forum.nl

Algemeen => Vragen en opmerkingen OVER het forum => Topic gestart door: Pippin op 20 maart 2016, 22:54:06

Titel: Berichten met een bedankje ?
Bericht door: Pippin op 20 maart 2016, 22:54:06
Als ik in mijn profiel op "Berichten met een bedankje" klik blijf ik op dezelfde pagina.

Edit: En ook bij andere gebruikers.
Titel: Re: Berchten met een bedankje ?
Bericht door: Birdy op 20 maart 2016, 23:09:41
Even geprobeerd.....inderdaad, @Björn zal het wel oplossen dan. ;D
Titel: Re: Berchten met een bedankje ?
Bericht door: Björn op 21 maart 2016, 09:20:28
:(
Titel: Re: Berchten met een bedankje ?
Bericht door: Babylonia op 21 maart 2016, 11:49:26
Als ik in mijn profiel op "Berichten met een bedankje" klik blijf ik op dezelfde pagina.
Edit: En ook bij andere gebruikers.

Ja, en dan?
Ik zie erna het bedankje erbij. Dat is toch de bedoeling?
Titel: Re: Berchten met een bedankje ?
Bericht door: Pippin op 21 maart 2016, 13:18:46
Klik eens op je Profiel-->Berichten met een bedankje  ;)
Titel: Re: Berichten met een bedankje ?
Bericht door: Hofstede op 21 maart 2016, 16:07:07
Snelste oplossing: Het linkje in het profiel weghalen ....  :D
Titel: Re: Berichten met een bedankje ?
Bericht door: Pippin op 30 maart 2016, 16:42:04

Nog nieuws?
Titel: Re: Berichten met een bedankje ?
Bericht door: Birdy op 30 maart 2016, 17:11:21
@MMD bedoelt deze optie, die niet (meer) werkt:

[attachimg=1]
Titel: Re: Berichten met een bedankje ?
Bericht door: Pippin op 30 maart 2016, 17:53:30

Inderdaad, dat bedoel ik.
Titel: Re: Berichten met een bedankje ?
Bericht door: Björn op 31 maart 2016, 13:54:00
Ik heb geen idee waarom die link niet werkt eerlijk gezegd. Gebruiken jullie die link veel dan?
Titel: Re: Berichten met een bedankje ?
Bericht door: Pippin op 31 maart 2016, 14:06:03

Nee maar ik denk altijd, als het erop zit moet het ook werken  :D
Titel: Re: Berichten met een bedankje ?
Bericht door: Björn op 31 maart 2016, 14:08:37
Ja op zich is dat wel waar, maar (veel) tijd besteden aan een feature repareren die niemand gebruikt is niet echt mijn eerste prio ;)
Titel: Re: Berichten met een bedankje ?
Bericht door: Birdy op 31 maart 2016, 14:24:41
@MMD wel denk ik ? ;)
Titel: Re: Berichten met een bedankje ?
Bericht door: Björn op 31 maart 2016, 14:33:21
Ik heb het even gecontroleerd. Deze link werkte wel op de oude server (php 5.3.x) en niet op de nieuwe (php 5.6.x). Er zit dus waarschijnlijk ergens een functie in die niet meer ondersteund wordt.
Helaas wordt deze plugin niet meer ondersteund of bijgehouden, dus updaten is er niet meer bij helaas.

Nog goede programmeurs in de buurt die 'm spotten?

<?php
/*******************************************
* Thank-o-matic
* Re-edited by Adk-Team
* www.smfpersonal.net
* 2009-2011
*******************************************/

if (!defined('SMF'))
die('Hacking attempt...');

// Show all thank you posts by the current user
function showThankYouPosts($memID)
{
global $txt$user_info$scripturl$modSettings;
global $context$user_profile$sourcedir$smcFunc;

// Load the Thank You Post Template :D
loadTemplate('ThankYouPost');

// Some initial context.
$context['start'] = (int) $_REQUEST['start'];
$context['current_member'] = $memID;

// Is the load average too high to allow searching just now?
if (!empty($context['load_average']) && !empty($modSettings['loadavg_show_posts']) && $context['load_average'] >= $modSettings['loadavg_show_posts'])
fatal_lang_error('loadavg_show_posts_disabled'false);

// Create the tabs for the template.
$context[$context['profile_menu_name']]['tab_data'] = array(
'title' => $txt['thankyoutitle'],
'description' => $txt['thankyoutitle_help'],
'tabs' => array(
'messages' => array(
'description' => $txt['thankyou_messages_become_desc'],
),
'topics' => array(
'description' => $txt['thankyou_topics_become_desc'],
),
'messages_given' => array(
'description' => $txt['thankyou_messages_given_desc'],
),
'topics_given' => array(
'description' => $txt['thankyou_topics_given_desc'],
),
),
);

$context['page_title'] = $txt['thankyoutitle'] . ': ' $user_profile[$memID]['real_name'];

// Are we just viewing topics?
$context['is_topics'] = isset($_GET['sa']) && $_GET['sa'] == 'topics' true false;
// Okay special case woa never thought i will insert them :D but this will be a nice feature :D
$context['is_messages_given'] = isset($_GET['sa']) && $_GET['sa'] == 'messages_given' true false;
$context['is_topics_given'] = isset($_GET['sa']) && $_GET['sa'] == 'topics_given' true false;
$context['is_given'] = $context['is_messages_given'] || $context['is_topics_given'];
$context['is_messages'] = !($context['is_given'] || $context['is_topics']);

// If just deleting a message, do it and then redirect back.
if (isset($_GET['delete']) && !$context['is_topics'])
{
checkSession('get');

// We can be lazy, since removeMessage() will check the permissions for us.
require_once($sourcedir '/RemoveTopic.php');
removeMessage((int) $_GET['delete']);

// Back to... where we are now ;).
redirectexit('action=profile;u=' $memID ';sa=showThankYouPosts;start=' $_GET['start']);
}

// Default to 10.
if (empty($_REQUEST['viewscount']) || !is_numeric($_REQUEST['viewscount']))
$_REQUEST['viewscount'] = '10';

// This are the Thank You Posts where you give a nice thank you ;D
if ($context['is_given'])
{
$request $smcFunc['db_query']('''
SELECT COUNT(*)
FROM {db_prefix}thank_you_post AS m' 
. ($context['is_topics_given'] ? '
INNER JOIN {db_prefix}topics AS t ON (t.id_first_msg = m.id_msg)' 
'') . '
INNER JOIN {db_prefix}boards AS b ON (b.id_board = m.id_board AND {query_see_board})
WHERE m.id_member = {int:current_member}
. (!empty($board) ? 'AND m.id_board=' $board ''),
array(
'current_member' => $memID,
)
);
list ($msgCount) = $smcFunc['db_fetch_row']($request);
$smcFunc['db_free_result']($request);

$request $smcFunc['db_query']('''
SELECT MIN(id_msg), MAX(id_msg)
FROM {db_prefix}thank_you_post AS m
WHERE m.id_member = {int:current_member}
. (!empty($board) ? 'AND m.id_board=' $board ''),
array(
'current_member' => $memID,
)
);
list ($min_msg_member$max_msg_member) = $smcFunc['db_fetch_row']($request);
$smcFunc['db_free_result']($request);
}
// That are your current Thankyous that you become from a user :)
else
{
$request $smcFunc['db_query']('''
SELECT COUNT(*)
FROM {db_prefix}messages AS m' 
. ($context['is_topics'] ? '
INNER JOIN {db_prefix}topics AS t ON (t.id_first_msg = m.id_msg)' 
'') . '
INNER JOIN {db_prefix}boards AS b ON (b.id_board = m.id_board AND {query_see_board})
WHERE m.id_member = {int:current_member}
AND m.thank_you_post = 1
. (!empty($board) ? 'AND m.id_board=' $board '') . '
. ($context['user']['is_owner'] ? '' 'AND m.approved = {int:is_approved}'),
array(
'current_member' => $memID,
'is_approved' => 1,
)
);
list ($msgCount) = $smcFunc['db_fetch_row']($request);
$smcFunc['db_free_result']($request);

$request $smcFunc['db_query']('''
SELECT MIN(id_msg), MAX(id_msg)
FROM {db_prefix}messages AS m
WHERE m.id_member = {int:current_member}
AND m.thank_you_post = 1
. (!empty($board) ? 'AND m.id_board=' $board '') . '
. ($context['user']['is_owner'] ? '' 'AND m.approved = {int:is_approved}'),
array(
'current_member' => $memID,
'is_approved' => 1,
)
);
list ($min_msg_member$max_msg_member) = $smcFunc['db_fetch_row']($request);
$smcFunc['db_free_result']($request);
}

$reverse false;
$range_limit '';
$maxIndex = (int) $modSettings['defaultMaxMessages'];

// Make sure the starting place makes sense and construct our friend the page index.
$context['page_index'] = constructPageIndex($scripturl '?action=profile;u=' $memID ';area=showThankYouPosts' . ($context['is_topics'] ? ';sa=topics' ''), $context['start'], $msgCount$maxIndex);
$context['current_page'] = $context['start'] / $maxIndex;

// Reverse the query if we're past 50% of the pages for better performance.
$start $context['start'];
$reverse $_REQUEST['start'] > $msgCount 2;
if ($reverse)
{
$maxIndex $msgCount $context['start'] + $modSettings['defaultMaxMessages'] + && $msgCount $context['start'] ? $msgCount $context['start'] : (int) $modSettings['defaultMaxMessages'];
$start $msgCount $context['start'] + $modSettings['defaultMaxMessages'] + || $msgCount $context['start'] + $modSettings['defaultMaxMessages'] ? $msgCount $context['start'] - $modSettings['defaultMaxMessages'];
}

// Guess the range of messages to be shown.
if ($msgCount 1000)
{
$margin floor(($max_msg_member $min_msg_member) * (($start $modSettings['defaultMaxMessages']) / $msgCount) + .1 * ($max_msg_member $min_msg_member));
// Make a bigger margin for topics only.
if ($context['is_topics'])
$margin *= 5;

$range_limit $reverse 'id_msg < ' . ($min_msg_member $margin) : 'id_msg > ' . ($max_msg_member $margin);
}

$context['page_title'] = $txt['latest_posts'] . ' ' $txt['thank_you_post_thx_display'] . ' ' $user_profile[$memID]['real_name'];

// Find this user's posts.  The left join on categories somehow makes this faster, weird as it looks.
$looped false;
while (true)
{
$request $smcFunc['db_query']('''
SELECT
b.id_board, b.name AS bname, c.id_cat, c.name AS cname, m.id_topic, m.id_msg,
t.id_member_started, t.id_first_msg, t.id_last_msg, m.body, m.smileys_enabled,
m.subject, m.poster_time
, m.thank_you_post_counter, m.thank_you_post
FROM ' 
. (!$context['is_given'] ? '{db_prefix}messages AS m' '{db_prefix}thank_you_post AS tp
INNER JOIN {db_prefix}messages AS m ON (m.id_msg = tp.id_msg)'
) . '
INNER JOIN {db_prefix}topics AS t ON (' 
. ($context['is_topics'] || $context['is_topics_given'] ? 't.id_first_msg = m.id_msg' 't.id_topic = m.id_topic') . ')
INNER JOIN {db_prefix}boards AS b ON (b.id_board = t.id_board)
LEFT JOIN {db_prefix}categories AS c ON (c.id_cat = b.id_cat)
WHERE ' 
. ($context['is_given'] ? 'tp' 'm') . '.id_member = {int:current_member}
AND m.thank_you_post = 1
. (!empty($board) ? 'AND m.id_board=' $board '') . '
. (empty($range_limit) ? '' '
AND ' 
$range_limit) . '
AND {query_see_board}
. ($context['user']['is_owner'] ? '' 'AND m.approved = {int:is_approved} AND t.approved = {int:is_approved}') . '
ORDER BY m.id_msg ' 
. ($reverse 'ASC' 'DESC') . '
LIMIT ' 
$start ', ' $maxIndex,
array(
'current_member' => $memID,
'is_approved' => 1,
)
);

// Make sure we quit this loop.
if ($smcFunc['db_num_rows']($request) === $maxIndex || $looped)
break;
$looped true;
$range_limit '';
}

// Start counting at the number of the first message displayed.
$counter $reverse $context['start'] + $maxIndex $context['start'];
$context['posts'] = array();
$board_ids = array('own' => array(), 'any' => array());
$thank_you_posts = array();
while ($row $smcFunc['db_fetch_assoc']($request))
{
// Censor....
censorText($row['body']);
censorText($row['subject']);

// Do the code.
$row['body'] = parse_bbc($row['body'], $row['smileys_enabled'], $row['id_msg']);

// And the array...
$context['posts'][$counter += $reverse ? -1] = array(
'body' => $row['body'],
'counter' => $counter,
'category' => array(
'name' => $row['cname'],
'id' => $row['id_cat']
),
'board' => array(
'name' => $row['bname'],
'id' => $row['id_board']
),
'topic' => $row['id_topic'],
'subject' => $row['subject'],
'start' => 'msg' $row['id_msg'],
'time' => timeformat($row['poster_time']),
'timestamp' => forum_time(true$row['poster_time']),
'id' => $row['id_msg'],
'can_reply' => false,
'can_mark_notify' => false,
'can_delete' => false,
'delete_possible' => ($row['id_first_msg'] != $row['id_msg'] || $row['id_last_msg'] == $row['id_msg']) && (empty($modSettings['edit_disable_time']) || $row['poster_time'] + $modSettings['edit_disable_time'] * 60 >= time()),
'thank_you_post' => array(
'locked' => !empty($row['thank_you_post']) && $row['thank_you_post'] > 1,
'counter' => !empty($row['thank_you_post_counter']) ? $row['thank_you_post_counter'] : '0',
'isThankYouPost' => !empty($row['thank_you_post']) && $row['thank_you_post'] >= 1,
'href' => $scripturl '?action=thankyoupostlist;topic=' $row['id_topic'] . '.0;msg='.$row['id_msg'],
),
);

$thank_you_posts[] = $row['id_msg'];

if ($user_info['id'] == $row['id_member_started'])
$board_ids['own'][$row['id_board']][] = $counter;
$board_ids['any'][$row['id_board']][] = $counter;
}
$smcFunc['db_free_result']($request);

// All posts were retrieved in reverse order, get them right again.
if ($reverse)
$context['posts'] = array_reverse($context['posts'], true);

// These are all the permissions that are different from board to board..
if ($context['is_topics'])
$permissions = array(
'own' => array(
'post_reply_own' => 'can_reply',
),
'any' => array(
'post_reply_any' => 'can_reply',
'mark_any_notify' => 'can_mark_notify',
)
);
else
$permissions = array(
'own' => array(
'post_reply_own' => 'can_reply',
'delete_own' => 'can_delete',
),
'any' => array(
'post_reply_any' => 'can_reply',
'mark_any_notify' => 'can_mark_notify',
'delete_any' => 'can_delete',
)
);

// For every permission in the own/any lists...
foreach ($permissions as $type => $list)
{
foreach ($list as $permission => $allowed)
{
// Get the boards they can do this on...
$boards boardsAllowedTo($permission);

// Hmm, they can do it on all boards, can they?
if (!empty($boards) && $boards[0] == 0)
$boards array_keys($board_ids[$type]);

// Now go through each board they can do the permission on.
foreach ($boards as $board_id)
{
// There aren't any posts displayed from this board.
if (!isset($board_ids[$type][$board_id]))
continue;

// Set the permission to true ;).
foreach ($board_ids[$type][$board_id] as $counter)
$context['posts'][$counter][$allowed] = true;
}
}
}

// Clean up after posts that cannot be deleted.
foreach ($context['posts'] as $counter => $dummy)
$context['posts'][$counter]['can_delete'] &= $context['posts'][$counter]['delete_possible'];

// Load A Preview?
if (!empty($modSettings['thankYouPostPreview']) && !empty($thank_you_posts))
{
// Should i gernerate a list? Need a extra query :)
require_once ($sourcedir.'/ThankYouPost.php');
ThankYouPostList($thank_you_poststruetrue);
}
}

?>
Titel: Re: Berichten met een bedankje ?
Bericht door: Pippin op 31 maart 2016, 15:25:34
Helaas geen kaas van gegeten  :)

Heb wel dit (http://www.bombercode.org/foro/soporte-en-espanol/thank-o-matic-v3-0-smfpesonal/) gevonden.
Citaat
Compatibilidad/Compatibility:
     SMF 2.0.1 !!!
     SMF 2.0.2 !!!
     SMF 2.0.3 !!!
     SMF 2.0.4 !!!
     SMF 2.0.5 !!!
     SMF 2.0.6 !!!
     SMF 2.0.7 !!!
     SMF 2.0.8 !!!
     SMF 2.0.9 !!!
     SMF 2.0.10 !!!
     SMF 2.0.11 !!!
Probeer me te registreren maar van Spaans ook geen kaas gegeten  ;D
Titel: Re: Berichten met een bedankje ?
Bericht door: Birdy op 31 maart 2016, 15:28:19
Google kan websites vertalen hoor :lol:
Titel: Re: Berichten met een bedankje ?
Bericht door: Pippin op 31 maart 2016, 15:29:16

Daarmee kom ik slechts tot de voorwaarden, als ik dan accepteren klik houd translate ermee op.

Onderaan bij de kleur van de hemel vul ik dan azul (blauw) in maar ik denk dat de hemel daar een andere kleur heeft  :lol:
Titel: Re: Berichten met een bedankje ?
Bericht door: Björn op 31 maart 2016, 15:32:18
Ik heb me net geregistreerd.. Momentje, ik kijk even of 't wat is
Titel: Re: Berichten met een bedankje ?
Bericht door: Björn op 31 maart 2016, 15:38:17
Hmm dat is dus uiteindelijk gewoon de versie die ik al hebt.. Of ze hebben geen onderscheid gemaakt in versienummers..
Titel: Re: Berichten met een bedankje ?
Bericht door: Pippin op 31 maart 2016, 16:06:08

Dan houd het op, tenzij er een een PHP`er iets vindt.
Titel: Re: Berichten met een bedankje ?
Bericht door: Hofstede op 31 maart 2016, 16:24:11
Het is moeilijk om het probleem alleen door het kijken naar de code te vinden. Want de code werkte goed voor de oudere PHP versie, zoals @Björn al aangaf. En dan moet je precies weten wat er in PHP versie 5.3.x anders was dan in PHP versie 5.6.x.

Je zou de code moeten debuggen op de webserver zelf om te kijken waar het precies fout gaat.