Seite 1 von 1

editierzeit für benutzgruppe aufheben

Verfasst: 22.12.2013 11:20
von Safiya
halle
ich suche eine funktion wie ich einer selbst erstellten benutzergruppe, das editieren von EIGENEN beiträgen, ohne zietbeschränkung erlauben kann.
für alle anderen gruppen soll die zeitbeschränkung gelten.

Re: editierzeit für benutzgruppe aufheben

Verfasst: 22.12.2013 11:58
von Miriam
Gebe dieser Gruppe in den Forums-Berechtigungen das Recht (per Forum) ihre eigenen Beiträge ändern zu dürfen.

Re: editierzeit für benutzgruppe aufheben

Verfasst: 22.12.2013 12:06
von Safiya
das steht bereits auf ja, hier greift aber die boardseitigebegrenzung von 10 minuten

Re: editierzeit für benutzgruppe aufheben

Verfasst: 22.12.2013 14:17
von Miriam
  1. In der posting.php
    finde:
    • Code: Alles auswählen

          if (!($post_data['post_time'] > time() - ($config['edit_time'] * 60) || !$config['edit_time'])) 
    tausche aus gegen:
    • Code: Alles auswählen

          if (!function_exists('group_memberships')) 
          {
              include_once($phpbb_root_path . 'includes/functions_user.' . $phpEx);
          }
          $group_id_ary = array(8, 23, 43,);
          if (!($post_data['post_time'] > time() - ($config['edit_time'] * 60) || !$config['edit_time']) && !group_memberships($group_id_ary, $user->data['user_id'], true)) 
  2. in der viewtopic.php
    finde:
    • Code: Alles auswählen

          $edit_allowed = ($user->data['is_registered'] && ($auth->acl_get('m_edit', $forum_id) || ( 
    davor füge ein:
    • Code: Alles auswählen

          if (!function_exists('group_memberships')) 
          {
              include_once($phpbb_root_path . 'includes/functions_user.' . $phpEx);
          }
          $group_id_ary = array(8, 23, 43,); 
    finde:
    • Code: Alles auswählen

              ($row['post_time'] > time() - ($config['edit_time'] * 60) || !$config['edit_time']) 
    tausche aus gegen:
    • Code: Alles auswählen

              ($row['post_time'] > time() - ($config['edit_time'] * 60) || !$config['edit_time'] || group_memberships($group_id_ary, $user->data['user_id'], true)) 
Nun muß Dein User nur noch in der Gruppe 8 oder 23 oder 43 sein...
Leere ggf. auch den Cache im ACP.

Re: editierzeit für benutzgruppe aufheben

Verfasst: 22.12.2013 14:56
von Safiya
wo sthet die gruppen id?

Re: editierzeit für benutzgruppe aufheben

Verfasst: 22.12.2013 14:58
von Miriam
Na hier:

Code: Alles auswählen

$group_id_ary = array(8, 23, 43,);
8, 23, 43 sind im Beispiel die Gruppen.

Ansonsten: http://bit.ly/18GdpEQ

Re: editierzeit für benutzgruppe aufheben

Verfasst: 22.12.2013 19:38
von Safiya
vielen dank das funktioniert super!

Re: editierzeit für benutzgruppe aufheben

Verfasst: 22.12.2013 20:26
von Helmut
Hallo,

ich hänge mich mal dran, ist ne gute Idee.

Ich würde es aber gerne so machen dass das Editieren zeitlich begrenzt ist wie im ACP eingestellt, aber wenn schon eine Antwort auf den betreffenden Beitrag kam, dann sollte man nicht mehr editieren dürfen (außer Moderatoren, ....). Bin mir nicht sicher, müsste wohl mit topic_last_post_id funktionieren.

Gruß Helmut

Re: editierzeit für benutzgruppe aufheben

Verfasst: 22.12.2013 23:29
von Miriam
aber wenn schon eine Antwort auf den betreffenden Beitrag kam, dann sollte man nicht mehr editieren dürfen (außer Moderatoren, ....)
-->
  1. In der viewtopic.php
    finde:
    • Code: Alles auswählen

      ($row['post_time'] > time() - ($config['edit_time'] * 60) || !$config['edit_time'])
    danach füge in einer neuen Zeile ein:
    • Code: Alles auswählen

       && $row['post_id'] == $topic_data['topic_last_post_id']
  2. In der posting.php
    finde: tausche aus gegen:
    • Code: Alles auswählen

      if ($user->data['user_id'] != $post_data['poster_id'] || $post_data['topic_last_post_id'] != $post_data['post_id'])
Ggf. Cache leeren.