Seversintabi.com Türkiye'nin En Büyük Forumu Bence Seversin Tabi

Seversintabi.com Türkiye'nin En Büyük Forumu Bence Seversin Tabi (https://seversintabi.com/)
-   Services (https://seversintabi.com/services/)
-   -   IrcServices için Toplam Online Zamanı (Total Online Time.) (https://seversintabi.com/services/5674-ircservices-icin-toplam-online-zamani-total-online-time.html)

ceyLin 13 November 2008 13:26

IrcServices için Toplam Online Zamanı (Total Online Time.)
 
Tahmin edebileceğiniz gibi.. Bu kod ircservices yapısına edit vasıtasıyla uygulanmak zorundadır.
kısacası eklemesi biraz zorlayacaktır.

kodun denediği version : 5.0.61 (x.x.xx)
kodun eklendiği version : 5.0.61 (x.x.xx)

yapılması gerekenler:

cd ircservices-x.x.xx
pico modules/nickserv/main.c

Kod:

strftime_lang(buf, sizeof(buf), u->ngi, STRFTIME_DATE_TIME_FORMAT,
        ni->time_registered);


Bu satırın hemen üstüne şu satırı ekleyin:

Kod:

send_cmd(s_NickServ,
"NOTICE %s :Toplam Online Süresi: %d Gun %d Saat %d Dakika ve %d Saniye.",
u->nick,  (ni->toplamzaman / 86400), ((ni->toplamzaman % 86400) / 3600),
  (((ni->toplamzaman % 86400) % 3600) / 60),
  ((((ni->toplamzaman % 86400) % 3600) % 60) % 60));

kaydedip çıkın

pico modules/nickserv/nickserv.h


Kod:

char nick[NICKMAX];
Bu satırın hemen altına şu 2 satırı ekleyin:

Kod:

int giriszamani;
    int toplamzaman;

kaydedip çıkın

pico modules/nickserv/util.c

Kod:

if (nick_id_or_rec(ni)) {
Bu satırın hemen altına şu 4 satırı ekleyin

Kod:

if (ni->giriszamani != 0) {
  ni->toplamzaman=ni->toplamzaman + (time(NULL) - ni->giriszamani);
  ni->giriszamani=0;
  }

yine aynı dosyada (util.c dosyası içinde) şu satırları bulun:

Kod:

if (!nick_recognized(ni)) {
 update_userinfo(u);
 ni->authstat |= NA_RECOGNIZED;
    }

bunların hemen bir altına şu satırı ekleyin:

Kod:

ni->giriszamani=time(NULL);
pico modules/database/version4.c

Kod:

SAFE(write_string(ni->last_quit, f));
bu satırın hemen bir altına şu satırı ekleyin:

Kod:

SAFE(write_int32(ni->toplamzaman, f));
şimdi yapmanız gereken işlem:
make
make install çekeceksiniz.
sonrasında
servislerinizi kapatıp tekrar çalıştıracaksınız.
/os update komutunu kullanacaksınız.

şimdi servislerinizi kapatın (ps x listesinden kill -9 pid ile.)

servisler kapalı halde;

pico modules/database/version4.c

Kod:

SAFE(read_string(&ni->last_quit, f));
bu satırı bulunuz.

Bir alt satıra şu 3 kodu ekleyiniz

Kod:

SAFE(read_int32(&tmp32, f));
    ni->toplamzaman = tmp32;
    ni->giriszamani = 0;

kaydedip çıkınız.

tekrar make ve make install komutlarını uygulayıp, servislerinizi getiriniz.

ve işlem bitti demektir.

aradaki servisin kapalı kalmasını istediğim yer şunun için:

servisler orada kapalı iken eski dblerinizin gitmemesi için.

Not : Alıntıdır.


Saat: 14:57

Telif Hakları vBulletin® v3.8.9 Copyright ©2000 - 2024, ve
Jelsoft Enterprises Ltd.'e Aittir.


Search Engine Friendly URLs by vBSEO 3.6.0 PL2