Simple Machines Community Forum

SMF Support => Türkçe Bölümü (Turkish) => Language Specific Support => İpuçları ve Hileler => Topic started by: [SiNaN] on June 22, 2008, 08:08:17 AM

Title: Yönetici Mesajları Değiştirilemez
Post by: [SiNaN] on June 22, 2008, 08:08:17 AM
Bu ipucu sayesinde yönetici grupları olarak belirlediğimiz gruplara dahil olan kullanıcıların mesajları, bu grubun dışında kalan üyeler tarafından -herhangi bir mesajı editleme izni olsa dahi- değiştirilemez. (Eğer admin grubunu eklemezseniz, o bile değiştiremez. :P)

Yönetici grupları birbirlerinin mesajlarını değiştirebilir.

'1', '2', '3' yerine yönetici gruplarını aralarına virgül koyarak, aynı düzende yazmalısınız.

../Sources/Post.php

Bul:

Code: [Select]
elseif (isset($_REQUEST['msg']))
{
checkSession('get');

Değiştir:

Code: [Select]
   elseif (isset($_REQUEST['msg']))
   {
      checkSession('get');

      $request = db_query("
         SELECT m.ID_MEMBER, mem.ID_GROUP
         FROM {$db_prefix}messages as m
            LEFT JOIN {$db_prefix}members AS mem ON (mem.ID_MEMBER = m.ID_MEMBER)
         WHERE m.ID_MSG = $_REQUEST[msg]
         LIMIT 1", __FILE__, __LINE__);
      list ($poster, $group) = mysql_fetch_row($request);
      mysql_free_result($request);

      $staff_groups = array('1', '2', '3');
      $permit = false;
      foreach ($staff_groups as $groups) {
         if(in_array($groups, $user_info['groups']))
         $permit = true;
      }

      if (in_array($group, $staff_groups) && $permit == false)
         fatal_error('Yönetici mesajlarını değiştiremezsiniz.', false);


Tamamiyle [SiNaN] yapımıdır.
Title: Re: Yönetici Mesajları Değiştirilemez
Post by: Hoochie Coochie Man on June 23, 2008, 02:45:26 AM
Teşekkürler Sinan :)
Title: Re: Yönetici Mesajları Değiştirilemez
Post by: ★ѕραη∂αυєя★ on June 24, 2008, 11:26:12 AM
1 numaralı grup admin oluyor değil mi? :D ona göre 2 ve 3'ü silecem de.. :)

ha bir de, yöneticiler kendi mesajlarını değiştirebiliyor ama dimi?
Title: Re: Yönetici Mesajları Değiştirilemez
Post by: Dudi on June 24, 2008, 11:52:49 AM
1 numaralı grup admin oluyor değil mi? :D ona göre 2 ve 3'ü silecem de.. :)

ha bir de, yöneticiler kendi mesajlarını değiştirebiliyor ama dimi?

Grup numaralarını ögrenmek icin admin>Üye Grupları>Herhangi bir grubun üzerine gel.Sonra durum cubugunda http...........group=1 gibi bir adres cıkacak.Iste kalın ile yazdıgım sayı Grup numarasıdır ;)
Title: Re: Yönetici Mesajları Değiştirilemez
Post by: [SiNaN] on June 25, 2008, 03:26:08 AM
1 numaralı grup admin oluyor değil mi? :D ona göre 2 ve 3'ü silecem de.. :)

ha bir de, yöneticiler kendi mesajlarını değiştirebiliyor ama dimi?

Evet, değiştirebilir.
Title: Re: Yönetici Mesajları Değiştirilemez
Post by: VσℓєηŦiηus on July 24, 2008, 11:42:34 AM
Sinan Guzel Modıfıkasyon Olmus Elıne Saglık Arkadasım.

edit: sinan bu sekılde bırde yonetıcının actıgı konu ve mesajları sılememelerı ıcın bu kodu nereye eklememız gerekıyor .. sımdıden tşkler
Title: Re: Yönetici Mesajları Değiştirilemez
Post by: [SiNaN] on July 27, 2008, 07:26:00 AM
../Sources/RemoveTopic.php

Bul:

Code: [Select]
function DeleteMessage()
{
global $ID_MEMBER, $db_prefix, $topic, $board, $modSettings;

checkSession('get');

$_REQUEST['msg'] = (int) $_REQUEST['msg'];

Değiştir:

Code: [Select]
function DeleteMessage()
{
global $ID_MEMBER, $db_prefix, $topic, $board, $modSettings, $user_info;

checkSession('get');

$_REQUEST['msg'] = (int) $_REQUEST['msg'];

      $request = db_query("
         SELECT m.ID_MEMBER, mem.ID_GROUP
         FROM {$db_prefix}messages as m
            LEFT JOIN {$db_prefix}members AS mem ON (mem.ID_MEMBER = m.ID_MEMBER)
         WHERE m.ID_MSG = $_REQUEST[msg]
         LIMIT 1", __FILE__, __LINE__);
      list ($poster, $group) = mysql_fetch_row($request);
      mysql_free_result($request);

      $staff_groups = array('1', '2', '3');
      $permit = false;
      foreach ($staff_groups as $groups) {
         if(in_array($groups, $user_info['groups']))
         $permit = true;
      }

      if (in_array($group, $staff_groups) && $permit == false)
         fatal_error('Yönetici mesajlarını değiştiremezsiniz.', false);
Title: Re: Yönetici Mesajları Değiştirilemez
Post by: BuЯЯЯЯaK on July 27, 2008, 07:30:16 AM
Tamamen sinan'a teşekkür ederim :)
Title: Re: Yönetici Mesajları Değiştirilemez
Post by: sevdaligul on July 27, 2008, 02:16:13 PM
emegine saglık arakdaşım
Title: Re: Yönetici Mesajları Değiştirilemez
Post by: VσℓєηŦiηus on July 27, 2008, 02:57:31 PM
Sagol sinan tşk ederım kardes eline saglık
Title: Re: Yönetici Mesajları Değiştirilemez
Post by: TayDen on August 13, 2008, 05:57:02 AM
Tam istediğim şey ancak sormak istediğim birşey var.
Değiştir butonu kullandığı zaman sorun yok ama hızlı edit kısmında yönetici mesajları yine editlenebiliyor.
Bunu içinde bir çözüm varmı acaba
Title: Re: Yönetici Mesajları Değiştirilemez
Post by: [SiNaN] on August 13, 2008, 06:06:09 AM
../Sources/Subs-Post.php

Bul:

Code: [Select]
$topicOptions['lock_mode'] = isset($topicOptions['lock_mode']) ? $topicOptions['lock_mode'] : null;
$topicOptions['sticky_mode'] = isset($topicOptions['sticky_mode']) ? $topicOptions['sticky_mode'] : null;

Değiştir:

Code: [Select]
$topicOptions['lock_mode'] = isset($topicOptions['lock_mode']) ? $topicOptions['lock_mode'] : null;
$topicOptions['sticky_mode'] = isset($topicOptions['sticky_mode']) ? $topicOptions['sticky_mode'] : null;

      $request = db_query("
         SELECT m.ID_MEMBER, mem.ID_GROUP
         FROM {$db_prefix}messages as m
            LEFT JOIN {$db_prefix}members AS mem ON (mem.ID_MEMBER = m.ID_MEMBER)
         WHERE m.ID_MSG = $msgOptions[id]
         LIMIT 1", __FILE__, __LINE__);
      list ($poster, $group) = mysql_fetch_row($request);
      mysql_free_result($request);

      $staff_groups = array('1', '2', '3');
      $permit = false;
      foreach ($staff_groups as $groups) {
         if(in_array($groups, $user_info['groups']))
         $permit = true;
      }

      if (in_array($group, $staff_groups) && $permit == false)
         fatal_error('Yönetici mesajlarını değiştiremezsiniz.', false);

Bunu yaparsanız ilkine de gerek kalmaz.
Title: Re: Yönetici Mesajları Değiştirilemez
Post by: TayDen on August 13, 2008, 06:23:51 AM
Teşekkürler
Denedim ancak bu seferde hem yazılar çok büyüyor hemde hıslı edit çalışmıyor. :)
Title: Re: Yönetici Mesajları Değiştirilemez
Post by: [SiNaN] on August 13, 2008, 06:38:47 AM
Eğer değişiklikleri doğru yaptıysanız, eğer admin mesajıysa hızlı edit çalışmayacaktır zaten. Ama yetkisi varsa, normal bir şekilde çalışmalı. Ben her iki tarayıcıda da denedim ama yazılarla alakalı bir değişiklik olmadı.
Title: Re: Yönetici Mesajları Değiştirilemez
Post by: TayDen on August 13, 2008, 06:41:08 AM
Yazıların büyümesini farklı bir sorun sanırım, ben Firefox kullandığım için daha önce farketmemişim İe de değiştir deyince yazıları büyüyor neyse onunla ben ilgilenirim.

Değişiklikleri düzgün yaptım, değiştir dediğimizde değiştirme ekranı heliyor gönder dediğimde uyarı mesajı ile karşılaşılıyor, yani sorun yok.
Ancak hızlı edite bastığımızda, ekran editlenecek hale geliyor, kaydet değimizde çakılıp kalıyor, yani uyarı mesajı çıkmıyor.
Title: Re: Yönetici Mesajları Değiştirilemez
Post by: [SiNaN] on August 13, 2008, 07:32:11 AM
Bunun için tek önerebileceğim editlenemeyen mesajlar için o ikonları kaldırmanız. Orada hata göstermemiz pek mümkün gözükmüyor.
Title: Re: Yönetici Mesajları Değiştirilemez
Post by: TayDen on August 13, 2008, 07:48:27 AM
Tamam teşekkür ederim.
Title: Re: Yönetici Mesajları Değiştirilemez
Post by: vtn_sever on August 15, 2008, 04:24:32 PM
ya bu degişiklikten sonra takvıme etkınlık girerken su hatayı werio: Parse error: syntax error, unexpected T_ELSE in /home/a7804145/public_html/Sources/Post.php on line 689

etkınlık gremiorum ne yapmamlasım?
Title: Re: Yönetici Mesajları Değiştirilemez
Post by: Hoochie Coochie Man on August 16, 2008, 01:18:09 AM
ya bu degişiklikten sonra takvıme etkınlık girerken su hatayı werio: Parse error: syntax error, unexpected T_ELSE in /home/a7804145/public_html/Sources/Post.php on line 689

etkınlık gremiorum ne yapmamlasım?

Post.php'nizi eke koyar mısınız? (https://www.simplemachines.org/community/proxy.php?request=http%3A%2F%2Fe.deviantart.com%2Femoticons%2Fc%2Fcowboy.gif&hash=16618099f1e36440a4f5cb309cd85d4d)
Title: Re: Yönetici Mesajları Değiştirilemez
Post by: [SiNaN] on August 16, 2008, 08:23:03 AM
Böyle bir sorunla karşılaşmadım, değişiklikleri doğru yaptığınıza emin misiniz?
Title: Re: Yönetici Mesajları Değiştirilemez
Post by: BahanesiBoL on September 04, 2008, 10:32:42 AM
Saol sinan çok iyi oldu.
Title: Re: Yönetici Mesajları Değiştirilemez
Post by: GormYa on October 05, 2008, 12:33:18 AM
Peki bir kişi admin grubundaysa kendi mesajını kendisinden başkası düzeltemeyecek buna diğer adminler da dahil olacak. Yani yapmak istediğim tam olarak şu şekilde ama smf değişkenlerini ve php'yi çok fazla bilmiyorum, buyrun örnek:

if ((post_member_is_admin == true && post_member_id == session_member_id) || post_member_is_admin == false){
  // düzenleme işlemi
}
else {
 // düzenleme yapılamaz hatası
}
Title: Re: Yönetici Mesajları Değiştirilemez
Post by: [SiNaN] on October 05, 2008, 06:18:25 AM
      if (in_array($group, $staff_groups) && $permit == false)

Yerine

      if (in_array($group, $staff_groups) && $poster != $ID_MEMBER)

kullanın.
Title: Re: Yönetici Mesajları Değiştirilemez
Post by: $$$_erenkoy on November 25, 2008, 06:08:39 PM
Sinan kardeş ben bo konuyu okudumda bana biraz karışık geldi
Buna benzer ben de bir şey istiyorum yardımcı olabilirsen sevinirim
Tanıdığım bazı kişlere moderatörlük ve benzeri yaetkiler verdim
bunalrdan bazıları tüm forumda mesajları silip düzenleyebiliyorlar
benimle birlikte toplam iki admin var forumumda
ben istiyorumki onların yetkileri devam etsin ama Adminin mesajlarına hiç kimse dokunamasın ne düzen ne taşıma ne silme vs vs
Diğerlerinde de yetkisi küçük olan büyüğünün mesajına dokunamasın ama yetkisi büyük olan dokunsun
teşekkürler
Title: Re: Yönetici Mesajları Değiştirilemez
Post by: VσℓєηŦiηus on April 06, 2010, 03:15:53 PM
forum surumum 2.0 rc3 kodlar yok yapamadım yardımcı olurmusunuz
Title: Re: Yönetici Mesajları Değiştirilemez
Post by: ozanTi on October 10, 2010, 02:08:10 PM
eyvallah, az önce ip uçları ve hileler bölümünde gördüm. süper olmuş. 1.1.x deneyeceğim şimdi. ' veya ; hatası yapmazsam sorunsuz çalışır gibi geliyor :)