Tekil Mesaj gösterimi
  #1  
Alt 14 Ağustos 2010, 21:35
Avatar Yok
Difuzyon Difuzyon isimli Üye şimdilik offline konumundadır
 Coders 

mS Puan: 621
mS Derece: Difuzyon ÇalışkanDifuzyon ÇalışkanDifuzyon ÇalışkanDifuzyon ÇalışkanDifuzyon ÇalışkanDifuzyon Çalışkan
 
Üyelik tarihi: 16 Temmuz 2009
Bulunduğu yer: code talks!
Mesajlar: 83
Konular: 36
Eklentiler: 4
Alınan Teşekkür: 7
Yapılan Teşekkür: 0
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Question Ramazan İmsakiyesi [2010]

Merhabalar,


Ramazan ayına müteakip belirtilen ildeki İmsak-Güneş-İkindi-Akşam-Yatsı saatlerini veren bir çalışmadır.Bu çalışmada "İftara ne kadar kaldı?" diye merak edenlere süre olarak yanıtta verecektir.

Bu çalışmayı mirc botunuza veya kendinize eklemeniz halinde #iftar kanalında faaliyete geçirebilirsiniz.(#iftar kanalı yerine uygun gördüğünüz #kanal ismini kendinize göre değiştirebilirsiniz.)

#iftar kanalına giriş yapan kullanıcılara bilgiyi nasıl alabileceği konusunda notice mesaj gönderecektir.



Kod:
on $*:text:/^[\*](\S+)$/i:#iftar:{
  if $sock(ramazan,1).status == active { msg $chan Sırada bekleyen bilgi alınıyor,lütfen bitmesini bekleyiniz | halt }
  set -e %\/ $lower($replace($regml(1),ı,i,İ,i,ş,s,Ş,s,Ö,o,ö,o,Ü,u,ü,u,ç,c,Ç,c,ğ,g,Ğ,g)) 
  set -e %\/zeki $address($nick,2)
  msg $chan Bilgiler alınıyor..
  imsakiye
}
on !*:join:#iftar:{
  .notice $nick ..Hoş geldiniz
  .notice $nick Bulunduğunuz ilin bugünkü imsakiye bilgileri için kanala *şehir yazınız.Örnek: *İstanbul
  .notice $nick Hoşca vakitler..
}
alias imsakiye {
  $iif($isfile(ramazan.txt),.remove ramazan.txt)
  sockopen ramazan diyanettakvimi.com 80
}
on *:sockopen:ramazan:{
  sockwrite -n $sockname GET $+(/turkiye/,%\/,-imsakiye.html) HTTP/1.1
  sockwrite -n $sockname Host: diyanettakvimi.com $str($crlf,2)
}
on *:sockread:ramazan:{
  if ($sockerr) { msg #iftar Veri alımında hata oluştu. | halt }
  else {
    var %dify
    sockread %dify
    if $regex(%dify,/(A(ğ|g)ustos|Eyl(ü|u)l)/i) { write ramazan.txt $regsubex($regsubex(%dify,/<.+>/Ug,$null),/(.+>)|(Ramazan.+)/,$null) }
    elseif $regex(%dify,/<title>Sayfama hosgeldiniz \- yeni \| diyanettakvimi\.com<\/title>/i) { sockclose $sockname | ignore -u60 $evalnext(%\/zeki) | msg #iftar Verdiğiniz bilgi tanımlı değil 60 sn. sonra yeni veri girebilirsiniz. | unset %\/* | halt }
  }
}
on *:sockclose:ramazan:{
  if $read(ramazan.txt,w,$+(*,$token($regsubex($fulldate,/((\d{2}[^\s]){2}\d{2})/,),3,32),*,2010,*)) {
    var %yok = $regsub($read(ramazan.txt,$readn),/(\d{2}\x3A\d{2})/g,$+(\1,$chr(32)),%\/yeah)
    msg #iftar $+(7,[,1,$regsubex(%\/,/^(.)/,$upper(\1)),7]1) $replace($regsubex($token(%\/yeah,1-4,32),/\d{2}\x3A\d{2}/,$null),pt,Pazartesi,sa,Salı,ca,Çarşamba,pe,Perşembe,cu,Cuma,Ct,Cumartesi,pa,Pazar)
    msg #iftar İmsak - $mid($token(%\/yeah,4,32),3,7)
    msg #iftar Güneş - $token(%\/yeah,5,32)
    msg #iftar Öğle $+($chr(160),-) $token(%\/yeah,6,32)
    msg #iftar İkindi- $token(%\/yeah,7,32)
    msg #iftar Akşam - $token(%\/yeah,8,32) 2(İftar)1 $iif($regex($duration($calc(($duration($+($token(%\/yeah,8,32),:00)))-($duration($time(HH:nn:ss))))),/(^[^-].+)/),Kalan Süre: $replace($regml(1),mins,dakika,secs,saniye,hrs,saat))
    msg #iftar Yatsı - $token(%\/yeah,9,32)
    unset %\/*
  }
}
Kodu scriptinizin remote kısmına eklemiz ve #iftar kanalında bulun(dur)manız yeterlidir.

Örnek sunum :

[04:19] <Dify> *gümüşhane

[04:19] <@Cenk> Bilgiler alınıyor..

[04:19] <@Cenk> [Gumushane] 11 Agu 2010 - Çarşamba
[04:19] <@Cenk> İmsak - 03:26
[04:19] <@Cenk> Güneş - 05:20
[04:19] <@Cenk> Öğle - 12:37
[04:19] <@Cenk> İkindi - 16:28
[04:19] <@Cenk> Akşam - 19:36 (İftar) Kalan Süre: 15saat 16dakika 48saniye
[04:19] <@Cenk> Yatsı - 21:14


Hoşca paylaşımlar,hayırlı ramazanlar...
__________________
__________________
Koli
Alıntı ile Cevapla
Sponsored Links
 
1 2 13 14 16 17 18 19 21 22 23 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 49 50 51 52 54 55 56 57 58 59 60 61 62 63 67 68 69 70 71 72 73 74 75 76