Eklentide sınır yüzde belirliyorsunuz. Atıyorum 20 dediniz. Eğer mesaj ya da başlık içerisinde %20 'den az küçük harf kullanılmışsa (ki %80 üstü büyük harf kullanımına denk gelir), tüm harfler küçültülüyor.
Böylelikle düzgün yazılan fakat içerisinde satır başları olsun, noktadan sonra olsun v.b. gibi bir miktar büyük harf gerektiren durumlarda harfler küçültülmemiş oluyor.
Kod: Tümünü seç
##############################################################
## MOD Başlık: Dmry Büyük Harf Kontrol Eklentisi
## MOD Yazar: Hakan Demiray (dmRy) http://www.dmry.net
## MOD Açıklama: Forum mesaj ve başlıklarında gereğinden fazla büyük harf kullanımını engeller.
## MOD Sürüm: 1.0.0
##
## Kurulum zorluğu: Kolay
## Kurulum süresi: 1 Dakika
## Düzenlenecek dosyalar: 1
## includes/functions_post.php
##
## Yüklenecek dosyalar: N/A
##############################################################
## Yazar notları:
##
## $sinir = 30; değeri büyük harf yazmadaki sınırdır. Şöyle ki;
## Eğer kullanılan küçük harf sayısı, mesajdaki toplam karakter
## sayısının %30 'dan az ise, tüm harfler küçültülmelidir.
##
##############################################################
## Bu modu eklemeden önce lütfen dosyaların yedeğini alınız.
##############################################################
#
#-----[ Aç ]------------------------------------------------
#
includes/functions_post.php
#
#-----[ Bul ]------------------------------------------------
#
$unhtml_specialchars_replace = array('>', '<', '"', '&');
#
#-----[ Sonrasına Ekle ]------------------------------------------
#
// Dmry büyük harf kontrol
function BuyukHarfKontrol($yazi) {
$sinir = 30;
$turkce_buyuk_harflerin_kucukleri = array('İ'=>'i', 'I'=>'ı', 'Ş'=>'ş', 'Ü'=>'ü', 'Ö'=>'ö', 'Ğ'=>'ğ', 'Ç'=>'ç');
preg_match_all("([a-z])",$yazi, $sayi,PREG_SET_ORDER);
$yazi_karakter = strlen($yazi);
$bulunan_kucuk_harf = count($sayi);
$yuzde = ceil(($bulunan_kucuk_harf*100)/$yazi_karakter);
if ($yuzde>$sinir) {
return $yazi;
} else {
$yazi = strtr($yazi, $turkce_buyuk_harflerin_kucukleri);
$yazi = strtolower($yazi);
$first_space = '';
$first_word = '';
$first_space = strpos($yazi, ' ');
$first_word = substr($$yazi, 0, $first_space - 1);
$yazi = str_replace($first_word, ucfirst($first_word), $yazi);
return $yazi;
}
}
// Dmry büyük harf kontrol
#
#-----[ Bul ]------------------------------------------------
#
//
// Clean up the message
//
$message = trim($message);
#
#-----[ Sonrasına Ekle ]------------------------------------------
#
// Dmry büyük harf kontrol
$message = BuyukHarfKontrol($message);
// Dmry büyük harf kontrol
#
#-----[ Bul ]------------------------------------------------
#
$subject = htmlspecialchars(trim($subject));
#
#-----[ Sonrasına Ekle ]------------------------------------------
#
// Dmry büyük harf kontrol
$subject = BuyukHarfKontrol($subject);
// Dmry büyük harf kontrol
#
#-----[ Kaydet ve Kapat ]---------------------------------
#
# Eklentinin Sonu