Web sayfamız sadece phpBB 3.0.x sürümlerine destek vermektedir. Konu açmadan, ileti yazmadan önce lütfen site kuralları sayfamıza göz atınız.

Otomatik dil dosyası güncelleme

Forum kuralları
Bu forumdaki konular uygulanmak için değil, bir eklenti veya fikrin geliştirme aşamasında diğer geliştirici ve kullanıcılar ile fikir alışverişi içindir.

Otomatik dil dosyası güncelleme

İleti ALEXIS 09 Ekm 2007 16:16

Uzun bir süre uğraşıp %99 bitirdiğim bir uygulama. "Güncelle" butonuna basıldığında en son dil dosyası web alanına aktarılıp otomatik eski dosyalar ile değiştiriliyor.

Localhost ta sorunsuz çalışırken, CHMOD fonksiyonları ne yazıkkı sunucu tarafında sorun çıkardı. Ben de sonraya bıraktım...



Resim
ALEXIS
yönetici
yönetici

Kullanıcı avatarı

İleti: 3628
Kayıt: 03 Arl 2006 08:57
HTML: Çok iyi
CSS: İyi
PHP: İyi
phpBB3: Çok iyi
Sürüm: phpBB 3

Re: Otomatik dil dosyası güncelleme

İleti ALEXIS 07 Ağu 2008 06:08

Vay be, böyle bir eklentin varda neden kullanıma sunmadın 1 senedir ALEXIS ?
ALEXIS
yönetici
yönetici

Kullanıcı avatarı

İleti: 3628
Kayıt: 03 Arl 2006 08:57
HTML: Çok iyi
CSS: İyi
PHP: İyi
phpBB3: Çok iyi
Sürüm: phpBB 3

Re: Otomatik dil dosyası güncelleme

İleti TRX 07 Ağu 2008 10:54

ALEXIS yazdı:"Güncelle" butonuna basıldığında en son dil dosyası web alanına aktarılıp otomatik eski dosyalar ile değiştiriliyor.


Hocam, şimdi hiçbir dosya indirmeden sadece güncelle butonu bizim dil dosyalarımızı güncel dosyalar ile mi değiştiriyor? 8O
E öyleyse bu eklenti de herzamanki gibi harika!

Birde bu eklentiyi phpBB sürümlerine eklemek mümkünmüdür? Yani phpBBTurkiye den indirilen phpBB kurulum dosyasında direk phpBB ile kurulması tarzı birşey hem sizin açınızdan hemde kullanıcılar açısından harika olur.
Şimdi aklıma geldi aynı sistemi eklentilerinize monte etmeniz ve eklentinin güncel sürümü çıktığında sadece "Güncelle" butonun bu işi yapması.. :)
Eminim harika olur. (:
TRX
genel yetkili
genel yetkili

Kullanıcı avatarı

İleti: 681
Kayıt: 17 Kas 2007 20:46
Konum: Istanbul
İsim: Türker İnanmaz
HTML: Orta
CSS: Orta
PHP: Başlangıç
phpBB3: Orta
Sürüm: 3.0.9

Re: Otomatik dil dosyası güncelleme

İleti ALEXIS 07 Ağu 2008 11:21

Bir defa bunu yapmak için kendinize bir mantık yolu çizdiğinizde aslında çok ta kolay bir yapısı var. Ancak elbette pek çok evreden geçti çalışmalarım.

İlk denememi SourceForge CVS alanımdan bilgi çekmek üzerine kurmuştum. Ve de bunu çalıştırdım. Kabaca yeni dosyaları almak şöyle çalışıyordu. cache dizini içine oluşturulan bir tmp/ içine exec() ile CVS alanımıza, CVS checkout komutu veriliyordu, dosyalar yoğun olmadığından bu işlem 5 sn kadar sürüyordu (SF yavaş, y.dışı berbat). Sonrasında alınan dosyalar, mevcut dil dosyaları ile replace ediliyordu. Elbet bunun kullanılabilirliği pek yoktu, kimse hostta exec() fonksiyonuna izin vermez, her sunucu da CVS olmayabilir vb. Ancak başlangıç için iyi tecrübe oldu.

İkinci deneyimimi "file_get_contents()" ile yaptım, ancak bu defa CVS ye http üzerinen bağlanıp dosya içeriklerini aldım, orijinal dil dosyasını açıp içine yeni kodları yapıştırdım. localhostta sorunsuz ve hızlı bir şekilde çalışıyor, ancak sunucu üzerine CHMOD sıkıntıları çıkmaya başlayınca, henüz hazır olmadığımı biraz daha php+dosya+chmod+linux denemiyi gerektirdiği için askıya aldım.

Her iki yöntemin de sakıncaları var, CHMOD zorunluluğu gibi, gerçi büyük ihtimal ile bunu FTP ile aşabilirim ama, FTP bilgileri SQL de saklamak ta pek akıllıca olmaz. Başka bir eksiklikte, elbette dil dosyasında sonradan yapılan değişikliklerin imha olması.

Üçüncü deneyimim belli şu anda, direk phpBB3 install ile gelen diff fonksiyonlarını kullanacağım...


Otomatik güncelleme özelliği dışında her ne kadar kimse kullanma da bir "Dil dosyası sürüm denetimi" modülümüz var.


http://update.phpbbturkiye.net/updatech ... trlang.txt
ALEXIS
yönetici
yönetici

Kullanıcı avatarı

İleti: 3628
Kayıt: 03 Arl 2006 08:57
HTML: Çok iyi
CSS: İyi
PHP: İyi
phpBB3: Çok iyi
Sürüm: phpBB 3

Re: Otomatik dil dosyası güncelleme

İleti CitLemBiK 07 Ağu 2008 11:26

Eklentilerin dil kodlarina zarar vermezmi peki , bu otomatik güncelleme...

Yani direkt eskisiyle degistir fonksiyonu gibi olursa , eklentiler calismaz...

Yani ilk denemendeki REPLACE pek tutmaz gibime geliyor. :roll:
CitLemBiK
genel yetkili
genel yetkili

Kullanıcı avatarı

İleti: 1138
Kayıt: 23 Oca 2008 12:27
Konum: Söylemem
İsim: Isim Siz
HTML: Orta
CSS: Başlangıç
PHP: Orta
phpBB3: İyi
Sürüm: phpBB 3.0.6 (Branch)

Re: Otomatik dil dosyası güncelleme

İleti ALEXIS 07 Ağu 2008 11:41

Ne yazıkkı, eklenti geliştiricilerin %99 u dil dosyası kısmında akıllıca davranmıyorlar. Bu güne kadar bir eklentimde dil dosyası içinde bir şey değiştirdiğimi gördünüz mü? Büyük dosyalar için yeni dil dosyaları açılır mods/ içine, eğer mutlaka replace edilecek bir dil değişkeni var sa şu yöntemi uygularım:

php, html, css gibi betik kodları yukarıdan aşağa doğru yorumlanır. Aşağıda herkesin anlayabileceği bir php kod dizisi var:

Kod: Tümünü seç
$a 1;
$a 2;
echo 
$a


Bu satırlar ekrana hangi sayıyı yazar ?


Dil dosya mantığım bu kadar, eğer anlaması gereken biriyseniz anlamışsınızdır, eğer anlamadıysanız boşverin size göre değil bu işler :P
ALEXIS
yönetici
yönetici

Kullanıcı avatarı

İleti: 3628
Kayıt: 03 Arl 2006 08:57
HTML: Çok iyi
CSS: İyi
PHP: İyi
phpBB3: Çok iyi
Sürüm: phpBB 3

Re: Otomatik dil dosyası güncelleme

İleti sabri ünal 08 Ağu 2008 01:58

php buffer bilmemneyi destekler ve en son ne verildiyse onu yazar...

dil dosyalarına eklenti için şöyle bir fikrim var, lakin henüz test etmedim...

Kod: Tümünü seç
//--- [ open ]------

lang/tr/common(vs).php

//--- [ find ]------

?>

//--- [ before add ]------

include "mods/common(vs).php";

//--- [ create ]------

mods/common(vs).php



bu mantıkla çalıştırırsak, modlar ile gelen dosyaların hepsini ilgili dosyaların mods/ dizini içindeki ilave dosyalarına ekleriz, böylece direk güncellenmiş dosyaları kullanabiliriz...

test etmedim, olur mu olmaz mı bilmiyorum.
sabri ünal
kullanıcı
kullanıcı

Kullanıcı avatarı

İleti: 647
Kayıt: 06 Nis 2007 11:08
İsim: sabri ünal
HTML: İyi
CSS: Başlangıç
PHP: Başlangıç
phpBB3: Başlangıç
Sürüm: phpbb3 CVS

Re: Otomatik dil dosyası güncelleme

İleti yaso_19 18 Arl 2008 19:38

iyide @ALEXIS bunun replace ile ne alakası var, hangi eklentide dil dosyasında replace yapılıyo ki :S

5-10 satır her neyse yeni satır eklenir dil dosyasına eklenti için..
Dolayısıyla böyle bir dosya değişikliği durumlarında yapılan tüm değişiklikler gider.. Bunu çözmenin tek ama tek bir yolu var, o da phpbb deki diff.

hatta uğraşmana gerek bile olmayabilir, install klasörü altında dil dosyasını sunarsın. insanlar install klasörünü ftp den gönderip update i çalıştırır, güncelleme de olan her işlem orda olur, işlem biter.. phpbb de bu kadar usta birinin çok kısa sürede yapabileceği kanaatindeyim (phpbb sistemlerini çok uzun zamandır incelemiyorum + diff fonksiyonlarına hiç ama hiç bakmadım, sadece mantıken konuşuyorum.)

Konuyu hortlattım farkındayım, ama hem kullanıcıların hemde sizin işinize yarayabilecek bi eklenti.. olursa tabi.
yaso_19
kullanıcı
kullanıcı

Kullanıcı avatarı

İleti: 151
Kayıt: 21 Nis 2007 02:40
Konum: İzmir
İsim: Yasin
HTML: İyi
CSS: Orta
PHP: İyi
phpBB3: Orta
Sürüm: PhpBB3 Gold 3.0.4

Re: Otomatik dil dosyası güncelleme

İleti ALEXIS 22 Arl 2008 20:25

Dil dosyasında zaman zaman aşırı değişiklik oluyor, bunların çoğu phpBB3 güncellemesi ile gelmiyor, bizim düzeltmemiz.

FTP den attıktan sonra otomatik güncelleme işleminin mantığı yok, dil dosyalarını FTP ile de üzerine atabilirsiniz. Eklenti ile yapılan değişiklikler gidecektir, onlar için az çözüm var.

Proje şimdilik askıda.
ALEXIS
yönetici
yönetici

Kullanıcı avatarı

İleti: 3628
Kayıt: 03 Arl 2006 08:57
HTML: Çok iyi
CSS: İyi
PHP: İyi
phpBB3: Çok iyi
Sürüm: phpBB 3


Eklenti Geliştirme


Kimler çevrimiçi

Bu forumu görüntüleyenler: Kayıtlı kullanıcı yok ve 1 misafir

cron