Skocz do zawartości
"Idzie nowe..." - o zmianach i nie tylko ×
Przeniesienie zakupów z IPS Marketplace / Moving bought items from IPS Marketplace ×

(DP23) Show Warn Under Post


Rekomendowane odpowiedzi

  • Manager
Opublikowano

To lepiej jak poniższy sposób wg mnie się "nie da". Powyższy kod zamień na:

		//-----------------------------------------
	// (DP23) Show Warn Under Post
	//-----------------------------------------

	$dis_allowed_groups = array (1, 2, 3 );

	if ( ( ( isset($this->ipsclass->member['is_moderator'][ $this->topic['forum_id'] ]['allow_warn']) AND $this->ipsclass->member['is_moderator'][ $this->topic['forum_id'] ]['allow_warn'] ) or $this->ipsclass->member['g_is_supmod'] == 1 ) AND !in_array( $poster['mgroup'], $dis_allowed_groups ) )

Gdzie:

		$dis_allowed_groups = array (1, 2, 3 );

To ID grup, którym nie chcesz tych informacji wyświetlać.

Nie testowane.

  • Lubię to 1

intermedia - profesjonalne rozwiązania Invision Power Board

---

Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.

Opublikowano

Dziękuje, ale niestety nic z tego, dzieje się to samo co powyżej czyli nie pojawia się pasek z tekstem "Autor tego postu otrzymał ostrzeżenie" czy jakoś tak...

Opublikowano

Podałem ten tutaj:

I on działa cały czas tylko widać "-,+" przy tych rangach, które są chronione przed zwarnowaniem. (4 rangi)

Ten Twój ostatni robi to samo co kod Largo czyli usuwa - i + , ale mod już nie działa, tzn nie wyświetla tekstu.

Opublikowano (edytowane)

Witaj,

A taki kod:

 //-----------------------------------------
// (DP23) Show Warn Under Post
//-----------------------------------------
$dis_allowed_groups = array (1, 2, 3 );

if ( ( isset($this->ipsclass->member['is_moderator'][ $this->topic['forum_id'] ]['allow_warn']) AND $this->ipsclass->member['is_moderator'][ $this->topic['forum_id'] ]['allow_warn'] ) OR $this->ipsclass->member['g_is_supmod'] == 1 AND !in_array( $this->ipsclass->member['mgroup'], explode( ",", $this->ipsclass->vars['warn_protected'] ) ) AND !in_array( $poster['mgroup'], $dis_allowed_groups ) )

Po tym kodzie, aby się wykonał musisz być albo moderatorem działu, global moderatorem, Twoja grupa nie może się znajdować w grupie chronionych i grupa autora postu nie może być równa jednym z tych cyfr grup. Tak ma być?

Pokusiłem się o poprawkę, nie ten warunek za to odpowiada, a ten:

 if ($this->ipsclass->vars['dp23_swp_enable'] AND in_array( $this->ipsclass->member['mgroup'], explode( ',', $this->ipsclass->vars['dp23_swp_groups'] ) ) AND in_array($this->forum['id'], explode( ",", $this->ipsclass->vars['dp23_swp_forums'])) AND $row['warn'] == 1)

Pozdrawiam,

Largo

Edytowane przez Largo
  • Lubię to 1

Jeżeli Ci pomogłem, nie zapomnij proszę o kliknięciu - add.png

Możesz liczyć na moją pomoc z zakresu: PHP5, MySQL, JavaScript i Ajax | W trakcie nauki CSS i xHTML!

W sprawie pomocy z zakresu IP.Board służę pomocą w dziale Zaawansowane programowanie IP.Board

Proszę o nie wysyłanie próśb PW o prywatną pomoc - pomagam JEDYNIE na forum lub na zlecenie!

Opublikowano
Po tym kodzie, aby się wykonał musisz być albo moderatorem działu, global moderatorem, Twoja grupa nie może się znajdować w grupie chronionych i grupa autora postu nie może być równa jednym z tych cyfr grup. Tak ma być?

Hmm, kompletnie nie rozumiem...

-Moja grupa to główny admin, najwyzsza

-Załoga musi miec grupe chronioną

Czy któryś z powyższych linijek mam sprawdzic? Jesli tak to którą?

Opublikowano

Witaj,

Poprawiłem swój kod trochę. Pierwszy warunek ( ten pokazujący + i - ):

if ( ( isset($this->ipsclass->member['is_moderator'][ $this->topic['forum_id'] ]['allow_warn']) AND $this->ipsclass->member['is_moderator'][ $this->topic['forum_id'] ]['allow_warn'] ) or $this->ipsclass->member['g_is_supmod'] == 1 AND !in_array($this->ipsclass->member['mgroup'], explode( ",", $this->ipsclass->vars['warn_protected'])) AND !in_array($poster['mgroup'], explode( ",", $this->ipsclass->vars['warn_protected'])) )

Jeżeli moderator działu istnieje, jesteś GM, Twoja grupa nie znajduje się w chronionych lub autora postu POKAŻĘ + i -. A kolejny warunek dotyczący pokazywanie informacji nie zmieniłem, ale sprawdź czy fora w których ma się pokazywać są zaznaczone. Mi to pomogło!

Ewentualnie, aby sprawdzić czy poprawnie dodaje do bazy wpisz w SQL Toolbox:

SELECT * FROM ibf_posts WHERE warn = 1

Jeżeli znajdzie wyniki poszukaj tematów ( topic_id ) i sprawdź czy pokazuje.

Pozdrawiam,

Largo

  • Lubię to 1

Jeżeli Ci pomogłem, nie zapomnij proszę o kliknięciu - add.png

Możesz liczyć na moją pomoc z zakresu: PHP5, MySQL, JavaScript i Ajax | W trakcie nauki CSS i xHTML!

W sprawie pomocy z zakresu IP.Board służę pomocą w dziale Zaawansowane programowanie IP.Board

Proszę o nie wysyłanie próśb PW o prywatną pomoc - pomagam JEDYNIE na forum lub na zlecenie!

Opublikowano

Ech, nie mam już sił...

Nadal nie działa. Znikneły -,+, ale oczywiscie nie pokazuje tekstu....

Wpisałem zapytanie w Toolbox, ale znalazło tylko te co były robione na kodzie pierwotnym, czyli tym co wyswietla -,+ , nic innego nie ma.

Wszystkie fora są zaznaczone aby w nich pokazywało tekst od poczatku :)

Opublikowano

Witam,

Kod jest ciutkę walnięty. Nie pobiera pid! Usuwam warn i nie zmienia to pozycji. Sprawdzałem całą tablicę input i oto wynik:

array(19) {
["act"]=>
string(4) "warn"
["type"]=>
string(3) "add"
["mid"]=>
string(1) "6"
["t"]=>
string(4) "2812"
["st"]=>
string(1) "0"
["p"]=>
int(0)
["pid"]=>
int(0)
["gopid"]=>
int(0)
["L"]=>
int(0)
["f"]=>
int(0)
["cal_id"]=>
int(0)
["code"]=>
string(0) ""
["CODE"]=>
string(0) ""
["request_method"]=>
string(3) "get"
["_low_act"]=>
string(4) "warn"
["IP_ADDRESS"]=>
string(14) "62.233.182.231"
["last_activity"]=>
string(10) "1252526373"
["last_visit"]=>
string(10) "1252515181"
["skinid"]=>
int(0)

}

Poszukam rozwiązania.

  • Lubię to 1

Jeżeli Ci pomogłem, nie zapomnij proszę o kliknięciu - add.png

Możesz liczyć na moją pomoc z zakresu: PHP5, MySQL, JavaScript i Ajax | W trakcie nauki CSS i xHTML!

W sprawie pomocy z zakresu IP.Board służę pomocą w dziale Zaawansowane programowanie IP.Board

Proszę o nie wysyłanie próśb PW o prywatną pomoc - pomagam JEDYNIE na forum lub na zlecenie!

Opublikowano

Witam,

Dziwne, wiem już dlaczego i powinno działać, ale URL warnów nie przekazuje zmiennych w $_GET... Dlaczego?

  • Lubię to 1

Jeżeli Ci pomogłem, nie zapomnij proszę o kliknięciu - add.png

Możesz liczyć na moją pomoc z zakresu: PHP5, MySQL, JavaScript i Ajax | W trakcie nauki CSS i xHTML!

W sprawie pomocy z zakresu IP.Board służę pomocą w dziale Zaawansowane programowanie IP.Board

Proszę o nie wysyłanie próśb PW o prywatną pomoc - pomagam JEDYNIE na forum lub na zlecenie!

Opublikowano

Witaj,

Zobacz na kod do generowania URL ostrzeżeń:

 if ( ( isset($this->ipsclass->member['is_moderator'][ $this->topic['forum_id'] ]['allow_warn']) AND $this->ipsclass->member['is_moderator'][ $this->topic['forum_id'] ]['allow_warn'] ) or $this->ipsclass->member['g_is_supmod'] == 1 AND !in_array($this->ipsclass->member['mgroup'], explode( ",", $this->ipsclass->vars['warn_protected'])) AND !in_array($poster['mgroup'], explode( ",", $this->ipsclass->vars['warn_protected'])) )
{
$poster['warn_add'] = "<a href='{$this->base_url}act=warn&type=add&mid={$poster['id']}&t={$this->topic['tid']}&st=".intval($this->input['st'])."&p_id={$row['pid']}' title='{$this->lang['tt_warn_add']}'><{WARN_ADD}></a>";
$poster['warn_minus'] = "<a href='{$this->base_url}act=warn&type=minus&mid={$poster['id']}&t={$this->topic['tid']}&st=".intval($this->input['st'])."&p_id={$row['pid']}' title='{$this->lang['tt_warn_minus']}'><{WARN_MINUS}></a>";
}

Na końcu masz p_id, ale w URL ja go osobiście nie widzę, czemu?

  • Lubię to 1

Jeżeli Ci pomogłem, nie zapomnij proszę o kliknięciu - add.png

Możesz liczyć na moją pomoc z zakresu: PHP5, MySQL, JavaScript i Ajax | W trakcie nauki CSS i xHTML!

W sprawie pomocy z zakresu IP.Board służę pomocą w dziale Zaawansowane programowanie IP.Board

Proszę o nie wysyłanie próśb PW o prywatną pomoc - pomagam JEDYNIE na forum lub na zlecenie!

Opublikowano (edytowane)

Witaj,

Winny temu jest ipsclass.php :-) Oto kod z funkcji parse_member():

 if ( ( isset($this->member['_moderator'][ $this->topic['forum_id'] ]['allow_warn']) AND $this->member['_moderator'][ $this->topic['forum_id'] ]['allow_warn'] ) or $this->member['g_is_supmod'] == 1 )
{
$member['warn_add'] = "<a href='{$this->base_url}act=warn&type=add&mid={$member['id']}&t={$this->topic['tid']}&st=".intval($this->input['st'])."&p_id={$member['pid']}' title='{$this->lang['tt_warn_add']}'><{WARN_ADD}></a>";
$member['warn_minus'] = "<a href='{$this->base_url}act=warn&type=minus&mid={$member['id']}&t={$this->topic['tid']}&st=".intval($this->input['st'])."p_id={$member['pid']}' title='{$this->lang['tt_warn_minus']}'><{WARN_MINUS}></a>";
}

On się wykonuje mimo to i psuje wszystkie dane. Zmiana go na to co dałem skutkuje. Winnemu temu faktowi jest:

 if ( isset($this->cached_members[ $row['author_id'] ]) )
{
//-----------------------------------------
// Ok, it's already cached, read from it
//-----------------------------------------

$poster = $this->cached_members[ $row['author_id'] ];
$row['name_css'] = 'normalname';
}

Który pewnie nie znajduje w cache informacji i pobiera je. Zastanawia mnie, dlaczego mimo to, przekazuje informację, a te poniższe instrukcje pomija?

PS. OK, po modyfikacji ipsclass.php wszystko działa poprawnie. Popraw kod Dawidzie :-)

Pozdrawiam,

Largo

Edytowane przez Largo
  • Lubię to 1

Jeżeli Ci pomogłem, nie zapomnij proszę o kliknięciu - add.png

Możesz liczyć na moją pomoc z zakresu: PHP5, MySQL, JavaScript i Ajax | W trakcie nauki CSS i xHTML!

W sprawie pomocy z zakresu IP.Board służę pomocą w dziale Zaawansowane programowanie IP.Board

Proszę o nie wysyłanie próśb PW o prywatną pomoc - pomagam JEDYNIE na forum lub na zlecenie!

  • 10 miesięcy temu...
  • 1 rok później...

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę.