Jetzt kostenlos Anmelden!


fleyra Männlich

ist gerade angekommen

Beiträge: 6

Geschlecht: Männlich

PHPKIT Version: 1.6.4

1

Samstag, 15. März 2008, 22:35

Editieren im Forum zeitlich einschränken

Hallo,

in der Version 1.6.03 hatte ich einen Hack eingebaut, der das editieren der Postings zeitlich begrenzt. Hier der entsprechende Code:

PHP-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
//---> Sperre Abfrage
  // Soll die Sperre aktiv sein?
  $sperre_aktiv       "1"// 1 = ja ; 0 = nein
  $tage_zum_editieren "3"// Tage angeben wie lange man Editieren darf
  $tage_in_sekunden   $tage_zum_editieren 24 60 60// Tage in Sekunden umrechnen
  $lastedittime       $forumpost['forumpost_time'] + $tage_in_sekunden// Letzte Zeit wann editiert werden darf
  $aktuelle_zeit      time(); // Aktuelle Zeit in sekunden
  if(($sperre_aktiv == "1" AND $lastedittime $aktuelle_zeit) AND ($USER['status'] != "admin" AND $USER['status'] != "mod" AND userrights($forumcat['forumcat_mods']) != "true")) { // Admins und Moderatoren oder Forenmoderatoren dürfen
    //---> Ausgabe wenn nicht mehr editieren oder löschen
    eval ("\$site_body.= \"".getTemplate("forum/edit_delete_timeout")."\";");
    //---> Ausgabe wenn nicht mehr editieren oder löschen
  } else {
    //---> Ausgabe wenn editieren oder löschen geht


Leider funktioniert dieser in de rVersion 1.6.4 nicht.

Kann mir hie rbitte jemand mitteilen, wo etwas geändert werden müsste?
mfg

fleyra
  • Zum Seitenanfang
  • Zum Seitenende

Riddler Männlich

kennen Einige hier

Beiträge: 307

Geschlecht: Männlich

PHPKIT Version: 1.6.5

2

Sonntag, 16. März 2008, 11:19

Kenne die 1.6.4 zwar nicht so gut, aber denke mal das muss in die Datei "pkinc\public\forumseditpost.php".

Suche

PHP-Quelltext

1
2
if($ACTION==$_POST['save'])
    {


Füge direkt darunter deinen Code ein

PHP-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
//---> Sperre Abfrage
  // Soll die Sperre aktiv sein?
  $sperre_aktiv       "1"// 1 = ja ; 0 = nein
  $tage_zum_editieren "3"// Tage angeben wie lange man Editieren darf
  $tage_in_sekunden   $tage_zum_editieren 24 60 60// Tage in Sekunden umrechnen
  $lastedittime       $forumpost['forumpost_time'] + $tage_in_sekunden// Letzte Zeit wann editiert werden darf
  $aktuelle_zeit      time(); // Aktuelle Zeit in sekunden
  if(($sperre_aktiv == "1" AND $lastedittime $aktuelle_zeit) AND ($USER['status'] != "admin" AND $USER['status'] != "mod" AND userrights($forumcat['forumcat_mods']) != "true")) { // Admins und Moderatoren oder Forenmoderatoren dürfen
    //---> Ausgabe wenn nicht mehr editieren oder löschen
    eval ("\$site_body.= \"".getTemplate("forum/edit_delete_timeout")."\";");
    //---> Ausgabe wenn nicht mehr editieren oder löschen
  } else {
    //---> Ausgabe wenn editieren oder löschen geht


Suche

PHP-Quelltext

1
2
pkHeaderLocation('forumsthread','','threadid='.$forumpost['forumpost_threadid'].'&postid='.$postid,'post'.$postid);
    }


Direkt darüber folgendes einfügen

PHP-Quelltext

1
}


Absolut ungetestet, bin also für Schäden nicht haftbar ;)
  • Zum Seitenanfang
  • Zum Seitenende

fleyra Männlich

ist gerade angekommen

Beiträge: 6

Geschlecht: Männlich

PHPKIT Version: 1.6.4

3

Sonntag, 16. März 2008, 17:16

Danke, Riddler.

Das scheint soweit zu klappen.
mfg

fleyra
  • Zum Seitenanfang
  • Zum Seitenende

Riddler Männlich

kennen Einige hier

Beiträge: 307

Geschlecht: Männlich

PHPKIT Version: 1.6.5

4

Sonntag, 16. März 2008, 17:41

Immer gerne...
  • Zum Seitenanfang
  • Zum Seitenende

Jan-Lukas Männlich

findet sich zurecht

Beiträge: 141

Geschlecht: Männlich

Wohnort: Das schöne Neandertal

PHPKIT Version: 1.6.5

5

Sonntag, 16. März 2008, 23:27

Danke, Riddler.

Das scheint soweit zu klappen.


wie soll das denn mit einer eval ("\$site_body.= \"".getTemplate("forum/edit_delete_timeout")."\";"); abfrage klappen :?:
wenn dann schon so
eval ("\$site_body.= \"".pkTpl("forum/edit_delete_timeout")."\";");
  • Zum Seitenanfang
  • Zum Seitenende

fleyra Männlich

ist gerade angekommen

Beiträge: 6

Geschlecht: Männlich

PHPKIT Version: 1.6.4

6

Montag, 17. März 2008, 12:21

Danke für den Hinweis, Jan-Lukas.

Habe das jetzt entsprechend geändert.

Entgegen meiner ersten Aussage klappt das alles trotzdem leider nicht. Offenbar habe ich bei meinem Versuch etwas falsch gemacht. :(

Selbst Uralteinträge sind i.M. editierbar.

Für weiterführende Hilfe wäre ich hier sehr dankbar.
mfg

fleyra
  • Zum Seitenanfang
  • Zum Seitenende

Janni

unregistriert

7

Dienstag, 29. Juli 2008, 23:07

Das würde ich auch gerne einbauen. Hat da jemand eine Lösung zu gefunden, wie das in der 1.6.4 läuft?
  • Zum Seitenanfang
  • Zum Seitenende

Proggi

unregistriert

8

Mittwoch, 30. Juli 2008, 06:23

Moin Moin :)

Ich hab mal den Code vom Riddler oben hier nochmal etwas abgeändert. Ungetestet und deshalb einfach mal probieren UND vorher ein BACKUP der Datei machen.

PHP-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
//---> Sperre Abfrage
  // Soll die Sperre aktiv sein?
  $sperre_aktiv       "1"// 1 = ja ; 0 = nein
  $tage_zum_editieren "3"// Tage angeben wie lange man Editieren darf
  $tage_in_sekunden   $tage_zum_editieren 24 60 60// Tage in Sekunden umrechnen
  $lastedittime       $forumpost['forumpost_time'] + $tage_in_sekunden// Letzte Zeit wann editiert werden darf
  $aktuelle_zeit      time(); // Aktuelle Zeit in sekunden
  if(($sperre_aktiv == "1" AND $lastedittime $aktuelle_zeit) AND (pkGetUservalue('status') != "admin" AND pkGetUservalue('status') != "mod" AND userrights($forumcat['forumcat_mods']) != "true")) { // Admins und Moderatoren oder Forenmoderatoren dürfen
    //---> Ausgabe wenn nicht mehr editieren oder löschen
    eval ("\$site_body.= \"".pkTpl("forum/edit_delete_timeout")."\";");
    //---> Ausgabe wenn nicht mehr editieren oder löschen
  } else {
    //---> Ausgabe wenn editieren oder löschen geht


Netten Gruß Andy --- Proggi
  • Zum Seitenanfang
  • Zum Seitenende

Janni

unregistriert

9

Mittwoch, 30. Juli 2008, 11:14

Jo cool, jetzt funktioniert es. Kann man es aber etwas verändern, das wenn der Benutzer auf editieren klickt, sofort die Meldung kommt, das der Editierungszeitraum überschritten ist? Weil jetzt kommt das erst, wenn er auf speichern klickt, und das ist nicht so schön.
  • Zum Seitenanfang
  • Zum Seitenende

Proggi

unregistriert

10

Mittwoch, 30. Juli 2008, 16:01

Dann versuche mal den oberen Code unterhalb folgender Zeile einzubinden:

PHP-Quelltext

1
$ACTION=(isset($_POST['action'])) ? $_POST['action'] : 'view';


Aber auch wieder dazu gesagt ----> nicht getestet

Netten Gruß Andy --- Proggi
  • Zum Seitenanfang
  • Zum Seitenende