Tekil Mesaj gösterimi
Alt 26 Ağustos 2007, 02:04   #1
Çevrimdışı
NeTDeLiSi
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
(IRCServices versionları için [/MS list] komutunda ufak bir çalışma)




Bilindiği gibi uzun zamandır, nickserv ve chanserv üzerine kod çalışmaları oldu ve yayınlayabildiklerimizi yayınlamıştık... Akşam üstü canım sıkılıyordu memoserv üzerine ufak bir çalışma yapayım dedim umarım işinize yarar.

Gelen memoların /ms list komutunda ne kadar süre önce geldiğinin gösterimi:


Kod:   Kodu kopyalamak için üzerine çift tıklayın!
cd ircservices* pico extern.h

extern.h dosyasının içine giriyoruz.

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
E int lock_data(void);

satırının üstüne;

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
E void emre_time(char *buf, time_t t, User *u);

satırlarını ekleyin kaydedip dosyadan çıkın.



Kod:   Kodu kopyalamak için üzerine çift tıklayın!
pico misc.c

dosyasının içine giriyoruz.



Kod:   Kodu kopyalamak için üzerine çift tıklayın!
if (outpos < outsize) outp[outpos] = (i2&3)<<6 | i3; outpos++; } return outpos; }

satırlarının hemen altına;



Kod:   Kodu kopyalamak için üzerine çift tıklayın!
void emre_time(char *buf, time_t t, User *u) { int days, hours, minutes, seconds; days = t / (24 * 3600); t %= 24 * 3600; hours = t / 3600; t %= 3600; minutes = t / 60; t %= 60; seconds = t; sprintf (buf, "\2%d\2 gün,\2%d\2 saat,\2%d\2 dakika ve \2%d\2 saniye önce geldi.", days, hours, minutes, seconds); }

satırlarını ekleyin, kaydedip dosyadan çıkın.



Kod:   Kodu kopyalamak için üzerine çift tıklayın!
pico modules/memoserv/main.c

komutu ile memoserv/main.c dosyamıza giriyoruz.


Kod:   Kodu kopyalamak için üzerine çift tıklayın!
static int list_memo(User *u, int index, MemoInfo *mi, int *sent_header, int new, const char *chan) { Memo *m; char timebuf[64];

satırlarının hemen altına;

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
char emre[BUFSIZE]; time_t simdi = time(NULL);

satırlarını ekleyin, yine aynı dosyada;


Kod:   Kodu kopyalamak için üzerine çift tıklayın!
m = &mi->memos[index]; strftime_lang(timebuf, sizeof(timebuf), u->ngi, STRFTIME_DATE_TIME_FORMAT, m->time); timebuf[sizeof(timebuf)-1] = 0; /* just in case */

satırlarını görüceksiniz bu satırın hemen altına;


Kod:   Kodu kopyalamak için üzerine çift tıklayın!
emre_time(emre, simdi-m->time, u);

satırını ekleyin, yine aynı dosyada;


Kod:   Kodu kopyalamak için üzerine çift tıklayın!
notice_lang(s_MemoServ, u, MEMO_LIST_FORMAT, (m->flags & MF_UNREAD) ? '*' : ' ', (!M***pire || (m->flags & MF_EXPIREOK)) ? ' ' : '+', m->number, m->sender, timebuf);

satırlarını;


Kod:   Kodu kopyalamak için üzerine çift tıklayın!
notice_lang(s_MemoServ, u, MEMO_LIST_FORMAT, (m->flags & MF_UNREAD) ? '*' : ' ', (!M***pire || (m->flags & MF_EXPIREOK)) ? ' ' : '+', m->number, m->sender, timebuf, emre);

şeklinde değiştirin, kaydedip dosyadan çıkın..


Kod:   Kodu kopyalamak için üzerine çift tıklayın!
pico modules/memoserv/memoserv.h

dosyasının içine giriyoruz.


Kod:   Kodu kopyalamak için üzerine çift tıklayın!
typedef struct { uint32 number; /* Index number -- not necessarily array position! */ int16 flags; time_t time; /* When it was sent */

satırlarının altına;


Kod:   Kodu kopyalamak için üzerine çift tıklayın!
time_t simdi;

satırını ekleyin, kaydedip dosyadan çıkın.


Kod:   Kodu kopyalamak için üzerine çift tıklayın!
pico lang/tr.l

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
MEMO_LIST_HEADER Sira Gonderen Tarih/Saat

satırını;



Kod:   Kodu kopyalamak için üzerine çift tıklayın!
MEMO_LIST_HEADER Sira Gonderen Tarih/Saat Ne kadar önce geldi?

şeklinde değiştirin, yine aynı dosyada;


Kod:   Kodu kopyalamak için üzerine çift tıklayın!
MEMO_LIST_FORMAT %c%c%4d %-16s %s

satırını ise;

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
MEMO_LIST_FORMAT %c%c%4d %-16s %s %s

şeklinde değiştirin, kaydedip dosyadan çıkın.



Kod:   Kodu kopyalamak için üzerine çift tıklayın!
make

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
make install

Ardından servislerinize restart atın.


Kod yazarı : Soldy


Konu toXic tarafından (02 Kasım 2010 Saat 19:03 ) değiştirilmiştir.
 
Alıntı ile Cevapla

IRCForumlari.NET Reklamlar
sohbet odaları sohbet odaları Benimmekan Mobil Sohbet