IRCRehberi.Net- Türkiyenin En iyi IRC ve Genel Forum Sitesi  
 sohbet
derya sohbet


9Beğeni(ler)
  • 2 Post By aLtimod
  • 1 Post By Reyhan
  • 1 Post By She
  • 1 Post By Sim
  • 1 Post By oMeN
  • 1 Post By aStaLaviSta
  • 1 Post By Ruyanur
  • 1 Post By KivanC


 
 
Seçenekler Stil
Alt 16 Aralık 2020, 22:04   #1
Standart Access Kabul (IrcServices)

Yapmamız gereken

SSH Login ol.

cd ircservices-5.0.xx

pico lang/tr.l

Kod

 CHAN_ACCESS_ADDED
%s nick'i %s kanalinin erisim listesine %d seviyeden eklendi.
Bu satırları bulup şu şekilde değiştirin

Kod

 CHAN_ACCESS_ADDED
%s nick'ine %s kanalinin erisim listesine %d seviyeden eklenmesi için Kabul Mesajı Gönderildi.
-

Kod

CHAN_ACCESS_LIST_HEADER
 %s Kanali Erisim Listesi:
   Sira   Seviye  Nick
CHAN_ACCESS_LIST_FORMAT
   %4d    %4d   %s
Bu satırları bulup şu şekilde değiştirin

Kod

CHAN_ACCESS_LIST_HEADER
 %s Kanali Erisim Listesi:
   Sira   Seviye  Nick  Durum
CHAN_ACCESS_LIST_FORMAT
   %4d    %4d   %s   %s
-

Kod

CHAN_XOP_ADDED
 %s %s %s listesine eklendi.
Bu satırları bulup şu şekilde değiştirin

Kod

CHAN_XOP_ADDED
 %s nickine %s %s listesine eklenmesi için Kabul Mesajı Gönderildi.
-

Kod

CHAN_XOP_LIST_HEADER
 %s %s listesi:
   Sira   Nick
CHAN_XOP_LIST_FORMAT
   %4d   %s
Bu satırları bulup şu şekilde değiştirin

Kod

CHAN_XOP_LIST_HEADER
 %s %s listesi:
   Sira   Nick   Durum
CHAN_XOP_LIST_FORMAT
   %4d   %s   %s
pico modules\chanserv\access-levels.c

Kod

int is_list;  /* Is true when command is either LIST or COUNT */
Bu Satırları bulup bir üstüne şu satırı ekleyin

Kod

User *sky;
-

Kod

notice_lang(s_ChanServ, u, CHAN_ACCESS_ADDED, nick, chan, level);
Bu satırı bulup bir altına şu satırları ekleyin

Kod

sky = get_user(nick);
  if (sky) {
   if (user_identified(sky)) {
    send_cmd(s_ChanServ, "NOTICE %s :%s Nicki %s Kanalında Size Access Ekledi.", sky->nick, u->nick, chan);
    send_cmd(s_ChanServ, "NOTICE %s :Kabul Etmek için /chanserv kabul %s e Yaziniz.", sky->nick, chan);
    send_cmd(s_ChanServ, "NOTICE %s :Reddetmek için /chanserv kabul %s h Yaziniz.", sky->nick, chan);
   }
  }
-

Kod

static int access_list(User *u, int index, ChannelInfo *ci, int *sent_header)
{
    ChanAccess *access = &ci->access[index];
    NickGroupInfo *ngi;
    if (!access->nickgroup)
 return RET_NOENTRY;
    if (!(ngi = get_ngi_id(access->nickgroup)))
 return RET_INTERR;
    if (!*sent_header) {
 notice_lang(s_ChanServ, u, CHAN_ACCESS_LIST_HEADER, ci->name);
 *sent_header = 1;
    }
    notice_lang(s_ChanServ, u, CHAN_ACCESS_LIST_FORMAT,
  index+1, access->level, ngi_mainnick(ngi));
    return RET_LISTED;
}
Bu satırları bulup şu şekilde değiştirin

Kod

static int access_list(User *u, int index, ChannelInfo *ci, int *sent_header)
{
    ChanAccess *access = &ci->access[index];
    NickGroupInfo *ngi;
    if (!access->nickgroup)
 return RET_NOENTRY;
    if (!(ngi = get_ngi_id(access->nickgroup)))
 return RET_INTERR;
    if (!*sent_header) {
  notice_lang(s_ChanServ, u, CHAN_ACCESS_LIST_HEADER, ci->name);
 *sent_header = 1;
    }
 if (access->kabul==0)
    notice_lang(s_ChanServ, u, CHAN_ACCESS_LIST_FORMAT,
  index+1, access->level, ngi_mainnick(ngi), "<Beklemede>");
 else if (access->kabul==1)
    notice_lang(s_ChanServ, u, CHAN_ACCESS_LIST_FORMAT,
  index+1, access->level, ngi_mainnick(ngi), "<Kabul Edildi>");
    return RET_LISTED;
}
pico modules\chanserv\access-xop.c

Kod

const char *listname = XOP_LISTNAME(level);
Bu Satıri bulup bir üstüne şu satırı ekleyin

Kod

User *sky;
-

Kod

notice_lang(s_ChanServ, u, CHAN_XOP_ADDED, nick, chan, listname);
Bu satırı bulup bir altına şu satırları ekleyin

Kod

sky = get_user(nick);
  if (sky) {
   if (user_identified(sky)) {
    send_cmd(s_ChanServ, "NOTICE %s :%s Nicki %s Kanalında Size Access Ekledi.", sky->nick, u->nick, chan);
    send_cmd(s_ChanServ, "NOTICE %s :Kabul Etmek için /chanserv kabul %s e Yaziniz.", sky->nick, chan);
    send_cmd(s_ChanServ, "NOTICE %s :Reddetmek için /chanserv kabul %s h Yaziniz.", sky->nick, chan);
   }
  }
-

Kod

static int xop_list(User *u, int index, ChannelInfo *ci, int *sent_header,
      int relindex)
{
    ChanAccess *access = &ci->access[index];
    NickGroupInfo *ngi;
    if (!(ngi = get_ngi_id(access->nickgroup)))
 return 0;
    if (!*sent_header) {
 notice_lang(s_ChanServ, u, CHAN_XOP_LIST_HEADER,
      XOP_LISTNAME(access->level), ci->name);
 *sent_header = 1;
    }
    notice_lang(s_ChanServ, u, CHAN_XOP_LIST_FORMAT, relindex,
  ngi_mainnick(ngi));
    return 1;
}
Bu satırları bulup şu şekilde değiştirin

Kod

static int xop_list(User *u, int index, ChannelInfo *ci, int *sent_header,
      int relindex)
{
    ChanAccess *access = &ci->access[index];
    NickGroupInfo *ngi;
    if (!(ngi = get_ngi_id(access->nickgroup)))
 return 0;
    if (!*sent_header) {
 notice_lang(s_ChanServ, u, CHAN_XOP_LIST_HEADER,
      XOP_LISTNAME(access->level), ci->name);
 *sent_header = 1;
    }
 if (access->kabul==0)
  notice_lang(s_ChanServ, u, CHAN_XOP_LIST_FORMAT, relindex,
   ngi_mainnick(ngi), "<Beklemede>");
 else if (access->kabul==1)
  notice_lang(s_ChanServ, u, CHAN_XOP_LIST_FORMAT, relindex,
   ngi_mainnick(ngi), "<Kabul Edildi>");
    return 1;
}
pico modules\chanserv\access.c

Kod

if (ci->access[i].nickgroup == id)
Bu satırları bulup şu şekilde değiştirin

Kod

if (ci->access[i].kabul==1)

Kod

    ci->access[i].nickgroup = ni->nickgroup;
    ci->access[i].level = level;
bu satırları bulup hemen altına şu kodu ekleyiniz

Kod

ci->access[i].kabul = 0;
pico modules\chanserv\chanserv.h

Kod

int16 level;
bu kodu bulup hemen altına şu kodu ekleyin

Kod

int32 kabul;
-

Kod

int16 access_count;
bu kodu bulup hemen altına şu kodu ekleyin

Kod

ChanAccess *accesstemp;
pico modules\chanserv\main.c

Kod

static void do_status(User *u);
bu satırı bulup hemen altına şu satırı ekleyin

Kod

static void do_kabul(User *u);
-

Kod

 { "UNSUSPEND",do_unsuspend,is_services_admin,  -1,
  -1, CHAN_OPER_HELP_UNSUSPEND },
bu satırları bulup hemen altına şu satırı ekleyin

Kod

{ "KABUL",    do_kabul,   NULL,          -1,-1, -1 },
-

Kod

static void do_help(User *u)
{
bu satırları bulup hemen bir üstüne şu kodu ekleyin

Kod

static void do_kabul(User *u) {
//char *cmd = strtok_remaining();
char *kanal = strtok(NULL, " ");
char *secim = strtok(NULL, " ");
int sec;
ChannelInfo *ci;
NickInfo *ni=u->ni;
int bulunan=0;
int i=0;
 if (!kanal) {
  send_cmd(s_ChanServ, "NOTICE %s :Kullanımı : KABUL #Kanal e/h", u->nick);
 return;
 }
 ci = get_channelinfo(kanal);
 
 if (strcmp(kanal, "#") == 0) {
 notice_lang(s_ChanServ, u, CHAN_REGISTER_SHORT_CHANNEL);
    } else if (*kanal == '&') {
 notice_lang(s_ChanServ, u, CHAN_REGISTER_NOT_LOCAL);
    } else if ((*kanal != '#') && stricmp(kanal, "list")) {
 notice_lang(s_ChanServ, u, CHAN_REGISTER_INVALID_NAME);
    } else if (!ni) {
 notice_lang(s_ChanServ, u, CHAN_MUST_REGISTER_NICK, s_NickServ);
    } else if (!user_identified(u)) {
 notice_lang(s_ChanServ, u, CHAN_MUST_IDENTIFY_NICK,
  s_NickServ, s_NickServ);
 } else if (stricmp(kanal, "list") == 0) {
  for (ci = first_channelinfo(); ci; ci = next_channelinfo()) {
   if (ci->flags & (CI_VERBOTEN))
   continue;
   if (ci->suspendinfo)
      continue;
   ARRAY_SEARCH_SCALAR(ci->access, nickgroup, u->ngi->id, i);
   if (i != ci->access_count) {
    if (ci->access[i].kabul==0) {
     send_cmd(s_ChanServ, "NOTICE %s :%s Kanalında Bekleyen Bir Access isteği Bulundu..", u->nick, ci->name);
     send_cmd(s_ChanServ, "NOTICE %s :Kabul Etmek için /chanserv kabul %s e Yazınız.", u->nick, ci->name);
     send_cmd(s_ChanServ, "NOTICE %s :Reddetmek için /chanserv kabul %s h Yazınız.", u->nick, ci->name);
     send_cmd(s_ChanServ, "NOTICE %s :-", u->nick);
    }
   }
  }
 return;
 }
 else if (ci == NULL) {
  notice_lang(s_ChanServ, u, CHAN_X_NOT_REGISTERED, kanal);
 }
 else {
  if (!secim) {
   send_cmd(s_ChanServ, "NOTICE %s :Kullanımı : KABUL #Kanal e/h", u->nick);
  return;
  }
  if (stricmp(secim, "h") == 0)
   sec=0;
  else if (stricmp(secim, "e") == 0)
   sec=1;
  else {
   send_cmd(s_ChanServ, "NOTICE %s :Kullanımı : KABUL #Kanal e/h", u->nick);
   return;
  }
  if (ci->flags & CI_VERBOTEN) {
   send_cmd(s_ChanServ, "NOTICE %s :Bu Kanal Yasaklı Bir Kanaldır, Komutunuzu Gözden Geçiriniz.", u->nick);
  return;
  } else if (ci->suspendinfo) {
      send_cmd(s_ChanServ, "NOTICE %s :Bu Kanal Suspendli Bir Kanaldır, Komutunuzu Gözden Geçiriniz.", u->nick);
  return;
  }
  ARRAY_FOREACH (i, ci->access) {
   if (ci->access[i].nickgroup == ni->nickgroup) {
    if (sec==1) {
     if (ci->access[i].kabul==0) {
      ci->access[i].kabul=1;
      send_cmd(s_ChanServ, "NOTICE %s :%s Kanalı için Access Eklemesi Kabul Edildi.", u->nick, kanal);
     }
     else if (ci->access[i].kabul==1) {
      send_cmd(s_ChanServ, "NOTICE %s :%s Kanalı için Access Eklemesini Zaten Kabul Etmişsiniz.", u->nick, kanal);
     }
     else {
      send_cmd(s_ChanServ, "NOTICE %s :%s Kanalı için Nickinize Ait Bekleyen Access isteği Yok.", u->nick, kanal);
     }
         put_channelinfo(ci);
      bulunan=1;
      break;
    }
    else {
     if (ci->access[i].kabul==0) {
      send_cmd(s_ChanServ, "NOTICE %s :%s Kanalındaki Bekleyen Access isteğiniz Silindi.", u->nick, kanal);
      ARRAY_REMOVE(ci->access, i);
         put_channelinfo(ci);
      bulunan=1;
     }
      break;
    }
   }
  }
  if (bulunan==0)
   send_cmd(s_ChanServ, "NOTICE %s :Nickiniz için %s Kanalında Bekleyen Bir Access isteği Yok.", u->nick, kanal);
 }
 
}
pico modules\nickserv\main.c

Kod

#include "modules/operserv/operserv.h"
bu kodu bulup hemen altına şu kodu ekleyin

Kod

#include "modules/chanserv/chanserv.h"
-

Kod

char *s_NickServ;
bu kodu bulup hemen altına şu kodu ekleyin

Kod

char *s_ChanServ;
-

Kod

static void do_identify(User *u)
{
    char *pass = strtok_remaining();
    NickInfo *ni = NULL;
    NickGroupInfo *ngi = NULL;
bu satırları bulup hemen altına şu 3 satırı ekleyiniz

Kod

ChannelInfo *ci;
 int i;
 int toplam=0;
-

Kod

notice_lang(s_NickServ, u, NICK_IDENTIFY_SUCCEEDED);
bu satırı bulup hemen bir altına şu satırları ekleyiniz

Kod

 for (ci = first_channelinfo(); ci; ci = next_channelinfo()) {
     if (ci->flags & (CI_VERBOTEN))
  continue;
  if (ci->suspendinfo)
      continue;
  ARRAY_SEARCH_SCALAR(ci->access, nickgroup, u->ngi->id, i);
  if (i != ci->access_count) {
  if (ci->access[i].kabul==0)
   toplam++;
  }
 }
 if (toplam!=0) {
  send_cmd(s_ChanServ, "NOTICE %s :%d Adet Bekleyen Access Kabul isteğiniz Var.", u->nick, toplam);
  send_cmd(s_ChanServ, "NOTICE %s :istekleri Listelemek için /chanserv kabul list Komutunu Uygulayınız.", u->nick);
 }
pico modules\database\version4.c

Kod

SAFE(write_int16(convert_new_level(ci->access[i].level), f));
bu satırı bulup altına şu satırı ekleyiniz

Kod

SAFE(write_int32(ci->access[i].kabul, f));
pico modules\database\version4.c

Kod

ci->access[i].level = convert_old_level(lev);
bu satırı bulup hemen altına şu satırı ekleyiniz

Kod

SAFE(read_int32(&ci->access[i].kabul, f));
Bu işlemler bittikten sonra.

make
make install

komutlarını uygulayıp servislerinizi aktif ediniz.

Not : tr.l de yapacağınız değişikliklerde "tab" lara dikkat ediniz.
Not : dosyaları ftp' den çekip not defterinde veya başka bir editörde yapmanız daha iyi olacaktır. Satır kaymasına dikkat edelim..

iyi forumlar dilerim.
 
Alt 16 Aralık 2020, 22:14   #2
Cumhuriyet Kadını
Reyhan - ait Kullanıcı Resmi (Avatar)

Standart

Emeğinize sağlık ;ççk

________________

bazen insanlar iyilesmek istemez.
cünkü ,
icindeki acı sevdiklerinin son hatirasidir..


per aspera ad astra ✨
 
Alt 16 Aralık 2020, 22:16   #3
She
✰ ÖzeL..
She - ait Kullanıcı Resmi (Avatar)

Standart

Emeğinize sağlık paylaşım için teşekkürler

________________

~ E & B ~
 
Alt 16 Aralık 2020, 22:19   #4
Sim
civciv~🐥
Sim - ait Kullanıcı Resmi (Avatar)

Standart

emeginize saglik

________________

Hope. . . ✨
 
Alt 17 Aralık 2020, 20:21   #5
✰ ÖzeL..
oMeN - ait Kullanıcı Resmi (Avatar)

Standart

Eline sağlık @[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

________________

Edep; aklın Tercümanıdır. İnsan edebi kadar akıllı, Aklı kadar şerefli, Şerefi kadar Kıymetlidir. Massive..




~ E & B ~
 
Alt 17 Aralık 2020, 20:40   #6
Banlı Üye
aStaLaviSta - ait Kullanıcı Resmi (Avatar)

Standart

eLine sağlık güzel paylaşım.

 
Alt 17 Aralık 2020, 20:43   #7
Mutena
Ruyanur - ait Kullanıcı Resmi (Avatar)

Standart

Emeğinize sağlık güzel bir çalışma olmuş.

________________

"hakikâte giden yolda, meşakkatsiz bir varış yoktur."




 
Alt 17 Aralık 2020, 21:07   #8
W r i t e r
KivanC - ait Kullanıcı Resmi (Avatar)

Standart

Ellerine sağlık @[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] unuttum sanma

________________

"Sevilmenin kıymeti bilinmiyorsa, Uzaklaşmak En güzeli ki üzülen sen olmayasın"
 


Konuyu Toplam 1 Üye okuyor. (0 Kayıtlı üye ve 1 Misafir)
 
Seçenekler
Stil

Yetkileriniz
Konu Acma Yetkiniz Yok
Cevap Yazma Yetkiniz Yok
Eklenti Yükleme Yetkiniz Yok
Mesajınızı Değiştirme Yetkiniz Yok

BB code is Açık
Smileler Açık
[IMG] Kodları Açık
HTML-Kodu Kapalı
Trackbacks are Kapalı
Pingbacks are Kapalı
Refbacks are Kapalı





Tüm Zamanlar GMT +3 Olarak Ayarlanmış. Şuanki Zaman: 15:31.