To jest tylko wersja do druku, aby zobaczyć pełną wersję tematu, kliknij TUTAJ
phpBB2 by Przemo
Support forów phpBB2 modified by Przemo

1.12.7 i starsze - Szybkie zamykanie tematów poprzez napsianie -close-

tosiek - 05-09-2008, 20:49
Temat postu: Szybkie zamykanie tematów poprzez napsianie -close-
Szybkie zamykanie tematów poprzez napsianie -close-

Zamyka temat, jesli moderator/administrator napiszą -close- w swoim poście.


Kod:
##############################################################
## MOD Title: Close Topic with Post
## MOD Author: fishgod < fishgod@drugstar3.de > (Michael Wahlen) http://www.drugstar3.de
## MOD Description: Close a Topic when you write "-close-" in the posting-text while having admin-rights
## MOD Version: 1.0.0
##
## Installation Level: easy
## Installation Time: 1 Minutes
## Files To Edit: (1) functions_post.php
## Included Files: n/a
##############################################################
## For Security Purposes, Please Check: http://www.phpbb.com/mods/ for the
## latest version of this MOD. Downloading this MOD from other sites could cause malicious code
## to enter into your phpBB Forum. As such, phpBB will not offer support for MOD's not offered
## in our MOD-Database, located at: http://www.phpbb.com/mods/
##############################################################
## Author Notes:
##    testet on phpBB 2.0.8a
##
##############################################################
## MOD History:
##
## 2004-06-17 - Version 1.0.0
##    - Initial Release :)
##
##############################################################
## Before Adding This MOD To Your Forum, You Should Back Up All Files Related To This MOD
##############################################################


Modyfikacja zamyka temat jeśli w treści posta moderatora lub administratora znajdzie się fraza -close-
W poście może znajdować się inna treść ale ważne żeby od -close- była ta treść oddzielona spacją

Oczywiście jeśli chcemy aby temat zamykał sie na inną treść znajdujemy linię:
Kod:
if(strstr($post_message, "-close-"))

I w linii zmieniamy -close- na własna wartość np.
Kod:
if(strstr($post_message, "-koniec tematu-"))



Mod w załączniku:

szresi - 05-09-2008, 21:21
Temat postu: Re: Szybkie zamykanie tematów porpzez napsianie -close-
tosiek napisał/a:
Modyfikacja zamyka temat jeśli w treści posta moderatora ...


Kod:
// close_topic_with_text_mod by fishgod start
    if($userdata['user_level'] == ADMIN)
        {
        if(strstr($post_message, "-close-"))


czy aby napewno? Sprawdzałeś czy mod może wygaszać tematy w ten sposob?

Bo wydaje mi się że żeby mod miał taka możliwość trzeba by bylo zrobić tak:

Kod:
// close_topic_with_text_mod by fishgod start
    if($userdata['user_level'] == 'ADMIN' || $userdata['user_level'] == 'MOD')
        {
        if(strstr($post_message, "-close-"))

Cleric - 06-09-2008, 00:03

U mnie działa poprawnie, treść zawarta w instrukcji jest na 100% poprawna. Dzięki mod się przyda:)
szresi - 06-09-2008, 07:08

okej zainstalowałam to na testowym i tak jak myslałam , kod z pierwszego posta daje możliwosć blogowania tematów słowem tylko adminowi.

Aby moderator tez miał taką mozliwość

w instrukcji jest

Kod:
if($userdata['user_level'] == ADMIN)
        {
        if(strstr($post_message, "-close-"))


zamień na
Kod:

if($userdata['user_level'] == ADMIN || MOD)
        {
        if(strstr($post_message, "-close-"))

tosiek - 06-09-2008, 07:14

szresi77, teraz dla modów działa :) A ja próbowałem MOD-a dodać przez && $userdata['user_level'] == MOD :mrgreen:

[ Dodano: 06-09-2008, 08:14 ]
Paczka w 1 poście poprawiona :)

szresi - 06-09-2008, 08:01

I jeszcze taka jedna sugestia. Ponieważ to "magiczne słowo" blokujące temat nie znika po wysłaniu posta , proponuję dodać je do cenzury słów. Jednym słowem dodać nową tabliczkę dla obsługi.

PA-->Ogólne-->Cenzura Słów--> Dodaj nowe słowo

Słowo:
Kod:
-close-


Zamiennik:
Kod:
<TABLE ALIGN="CENTER" WIDTH="400" CELLPADDING="8" BORDER="1" BGCOLOR="#FF0000"><TR><TD ALIGN="CENTER"><b>Temat został zamknięty , gdyż jest niezgodny z regulaminem.</b></TD></TR></TABLE>


;)

warna - 06-09-2008, 08:03

szresi77 napisał/a:
if($userdata['user_level'] == ADMIN || MOD)

Mówiłem Ci o tym kiedyś już ;)
Kod:
if($userdata['user_level'] == ADMIN || $userdata['user_level'] == MOD)


tosiek napisał/a:
szresi77, teraz dla modów działa A ja próbowałem MOD-a dodać przez && $userdata['user_level'] == MOD

Zadziałałoby dla usera, który jest jednocześnie adminem i modem.

szresi - 06-09-2008, 08:08

warna napisał/a:
Mówiłem Ci o tym kiedyś już ;)
Kod:
if($userdata['user_level'] == ADMIN || $userdata['user_level'] == MOD)



zaraz sprawdzę czy bez tych przecinków u góry będzie dzialało..

[ Dodano: 06-09-2008, 09:19 ]
faktycznie , jest ok ;) czyli pomysł miałam dobry ( drugi post ). tylko niepotrzebnie górne przecinki powstawiałam. :oops:

Tak więc oba rozwiązania sa dobre, ale obecnie stosuje się kod, który napisał warna

warna - 06-09-2008, 10:19

Jakie przecinki? O_o
tosiek - 06-09-2008, 10:23

szresi77 napisał/a:
'ADMIN'
szresi77 napisał/a:
'MOD'

Te przecinki chyba :) ja będzie działać ten niby prawidłowy sposób poprawię paczkę :)

Radek - 06-09-2008, 10:33

Takie coś:
Kod:
$userdata['user_level'] == 'ADMIN'

nie zadziała - ADMIN to stała o wartości 1, nie można jej traktować jako string -,-

tosiek - 06-09-2008, 19:44

warna napisał/a:
if($userdata['user_level'] == ADMIN || $userdata['user_level'] == MOD)

Dzieki warna ;) Paczka w 1 poście poprawiona ;)

POGROM - 06-09-2008, 19:50

Piękna modyfikacja

Od razu wypróbuje :mrgreen:

Seba123 - 09-09-2008, 22:57

Cytat:
nie zadziała - ADMIN to stała o wartości 1, nie można jej traktować jako string -,-
No yoł, w którym pliku jest to zdefiniowane :> ?
warna - 10-09-2008, 05:19

Tak trudno poszukać? Tam gdzie wszystkie stałe: /includes/constants.php


Powered by phpBB modified by Przemo © 2003 phpBB Group