Simple Machines Community Forum

SMF Support => Language Specific Support => Hilfe zu SMF (German) => Aiheen aloitti: freemn78 - lokakuu 25, 2007, 07:45:35 AP

Otsikko: Custom action nur für Mitglieder
Kirjoitti: freemn78 - lokakuu 25, 2007, 07:45:35 AP
Hi an alle;

ich habe seit geraumer Zeit den genialen Mod "custom actions" laufen. Ich hätte nun gern eine solche Aktion definiert, die ausschließlich für Mitglieder zu sehen sein soll. Hat da jemand eine Idee?

LG René
www.otworld.de (http://www.otworld.de)
Otsikko: Re: Custom action nur für Mitglieder
Kirjoitti: PfalzNacht - lokakuu 25, 2007, 08:18:06 AP
Einfach beim Button

if ($context['user']['is_logged'])

dazu setzen.
Otsikko: Re: Custom action nur für Mitglieder
Kirjoitti: freemn78 - lokakuu 25, 2007, 08:27:23 AP
Lainaus käyttäjältä: PfalzNacht - lokakuu 25, 2007, 08:18:06 AP
Einfach beim Button

if ($context['user']['is_logged'])

dazu setzen.

klingt im Ansatz nicht schlecht, aber welchen Button meinst du? Den Link zur Custom action?
Otsikko: Re: Custom action nur für Mitglieder
Kirjoitti: PfalzNacht - lokakuu 25, 2007, 06:26:55 IP
Ja, eigentlich schon.

Oder wie kommt man sonst zu den actions?
Otsikko: Re: Custom action nur für Mitglieder
Kirjoitti: freemn78 - lokakuu 27, 2007, 01:14:32 IP
ich denke ganz so easy is es dann doch nicht; ich habe mir folgendes vorgestellt (aus index.template.php):
    // Go to PM center... [pm]
if ($context['user']['is_logged'] && $context['allow_pm'])
echo ($current_action == 'pm' || $context['browser']['is_ie4']) ? '<td class="maintab_active_' . $first . '">&nbsp;</td>' : '' , '
<td valign="top" class="maintab_' , $current_action == 'pm' ? 'active_back' : 'back' , '">
<a href="', $scripturl, '?action=pm">' , $txt['pm_short'] , ' ', $context['user']['unread_messages'] > 0 ? '[<strong>'. $context['user']['unread_messages'] . '</strong>]' : '' , '</a>
</td>' , $current_action == 'pm' ? '<td class="maintab_active_' . $last . '">&nbsp;</td>' : '';


das müsste sich doch so umbauen lassen, dass man statt zur PM zu einer custom action kommt; PS: muss auch nicht Multi Language sein; das heist wir müssen nicht gesondert Variablen definieren. In meinem Fall geht es um eine Stellenbörse, die nur Mitgliedern zugänglich sein soll. Ich bin nicht so der Coder, ich dachte an irgendwas in der Art:

// Meine custom action
if ($context['user']['is_logged'])
echo Link zu meiner Custom Action ($context['browser']['is_ie4']) ? '<td class="maintab_active_' . $first . '">&nbsp;</td>' : '' , '

Ich komme mit dem ganzen Tab Code nicht klar...

einer von den Profi´s ne Idee?
Otsikko: Re: Custom action nur für Mitglieder
Kirjoitti: PfalzNacht - lokakuu 27, 2007, 01:23:31 IP
Ok, anderer Vorschlag:

da du anscheinend nicht verstehst was ich meine (was aber eigentlich in dem Code von z.B. der PM schon drin steht), mach ich dir nen Vorschlag.

Sag einfach mal wie die Custom Action heissen soll, und stell deine index.template.php hier ein.
Ich ändere es dann.
Otsikko: Re: Custom action nur für Mitglieder
Kirjoitti: freemn78 - lokakuu 27, 2007, 03:06:23 IP
na das bringt mich doch aber auch nicht weiter; ich wills doch selber begreifen; der Link zu action ist index.php?action=joboffer; die index.template.php hast Du doch; gell  ;D
Otsikko: Re: Custom action nur für Mitglieder
Kirjoitti: PfalzNacht - lokakuu 27, 2007, 04:05:38 IP
// Show the [joboffer] button.
if ($context['user']['is_logged'])
echo ($current_action=='joboffer' || $context['browser']['is_ie4']) ? '<td class="maintab_active_' . $first . '">&nbsp;</td>' : '' , '
<td valign="top" class="maintab_' , $current_action == 'joboffer' ? 'active_back' : 'back' , '">
<a href="', $scripturl, '">Stellenangebote</a>
</td>' , $current_action == 'joboffer' ? '<td class="maintab_active_' . $last . '">&nbsp;</td>' : '';


Um das ganze auch noch als aktiven Button anzeigen zu lassen, musst du noch etwas oben drüber bei "// Work out where we currently are.", genauer gesagt bei $current_action = 'admin';
if (in_array($context['current_action'], array('staff','usercp','search', 'unread', 'arcade', 'admin', 'calendar', 'profile', 'mlist', 'register', 'login', 'help', 'pm',)))
noch das "joboffer" dazu machen.
Otsikko: Re: Custom action nur für Mitglieder
Kirjoitti: freemn78 - lokakuu 29, 2007, 03:31:25 IP
knapp dran; so hats dann letztendlich hingehauen

// Show the [joboffer] button.
if ($context['user']['is_logged'])
echo ($current_action=='joboffer' || $context['browser']['is_ie4']) ? '<td class="maintab_active_' . $first . '">&nbsp;</td>' : '' , '
<td valign="top" class="maintab_' , $current_action == 'joboffer' ? 'active_back' : 'back' , '">
<a href="', $scripturl, '?action=joboffer">Stellenangebote</a>
</td>' , $current_action == 'joboffer' ? '<td class="maintab_active_' . $last . '">&nbsp;</td>' : '';


Besten Dank
MfG René
Otsikko: Re: Custom action nur für Mitglieder
Kirjoitti: PfalzNacht - lokakuu 29, 2007, 03:55:30 IP
Ja, Sorry, habs vergessen.  :'(

Aber gut wenn es trotzdem geklappt hat.  ;)