TimeanddateClock, vikilerin timeanddate.com adresinden ücretsiz saatler ve geri sayımlar yerleştirmesini sağlayan bir betiktir. Saatler ve geri sayımlar üreten birkaç başka betik olmasına rağmen, timeanddate.com çok çeşitli düzen ve stil sunar. Ne yazık ki, bu saatleri gömmek için HTML'nin
<iframe> etiketinin kullanılması gerekiyor. Güvenlik nedeniyle, varsayılan MediaWiki ayarları bu etiketin sayfa içeriğinde kullanılmasına izin vermez. Bu betik, oluşturulan sayfada yer tutucu etiketleri bularak ve bunları gerekli <iframe> etiketleriyle değiştirerek bu sorunu çözer.
Installation
Configuration
Bu betik için yapılandırma seçenekleri, sonraki bölümde açıklanan yer tutucu öznitelikleriyle ilişkili varsayılan değerleri değiştirmenin bir yolunu sağlar. Seçenekler, aşağıdaki kod satırlarıyla bir topluluğun JS'sinde oluşturulabilen betiğin yapılandırma nesnesinin özellikleridir.
if (!window.andrewds1021) {
window.andrewds1021 = {
timeanddate_clock: {
defaults: {}
}
};
} else if (!window.andrewds1021.timeanddate_clock) {
window.andrewds1021.timeanddate_clock = {
defaults: {}
};
} else if (!window.andrewds1021.timeanddate_clock.defaults) {
window.andrewds1021.timeanddate_clock.defaults = {};
}
Aşağıdaki tablo tanınan seçenekleri listeler.
| Varsayılan Nesne Anahtarı | Yer Tutucu Öznitelik(leri) | Veri Türü | Faktör Varsayılanı |
|---|---|---|---|
source
|
data-timeanddateclock-source
|
dize | i71tro3z/tt0/th1/tb2
|
is_countdown
|
data-timeanddateclock-iscountdown, data-timeanddateclock-isclock
|
boole | false
|
allow_transparency
|
data-timeanddateclock-allowtransparency, data-timeanddateclock-preventtransparency
|
boole | false
|
width
|
data-timeanddateclock-width
|
dize | varsayılan değer |
height
|
data-timeanddateclock-height
|
dize | varsayılan değer |
Belirli bir seçeneği ayarlamak için, betiğinin yapılandırma nesnesini oluşturan kodun altına bir kod satırı yerleştirin. Yukarıdaki tabloda listelendiği gibi property ögesinin anahtarla değiştirildiği ve value ögesinin istenen değerle değiştirildiği aşağıdaki biçimi izlemelidir.
window.andrewds1021.timeanddate_clock.defaults.property = value;
Bu örnek, is_countdown ögesini true olarak ayarlar. Bu, data-timeanddateclock-isclock kullanılarak aksi belirtilmediği sürece betiğinin yer tutucuların geri sayımlar için olduğunu varsaymasına neden olur.
window.andrewds1021.timeanddate_clock.defaults.is_countdown = true;
Usage
<iframe> etiketini düzgün bir şekilde bir araya getirmek için betiğe belirli bilgiler sağlanmalıdır. Bu, yer tutucu etiketlerinin öznitelikleri kullanılarak yapılır. Belirli bir öznitelik belirtilmezse, varsayılan değer kullanılacaktır.
data-timeanddateclock-source
timeanddate.com adresindeki URL, saat yapılandırmasını kodlayan benzersiz bir kuyruk içerir. Bu kuyruk, bu özelliğin değeri olarak iletilmelidir. örnek 1'de, URL http://free.timeanddate.com/clock/i71vvzfa/fn15/fs30/fc00f/tct/pct/fti/bas5/bat1/tt0/tw0/tm1/ts1/tb4 şeklindedir. Bu nedenle geçirilmesi gereken değer i71vvzfa/fn15/fs30/fc00f/tct/pct/fti/bas5/bat1/tt0/tw0/tm1/ts1/tb4 şeklindedir.
data-timeanddateclock-iscountdown, data-timeanddateclock-isclock
timeanddate.com hem saatler hem de geri sayımlar sunduğundan, belirli bir yer tutucunun hangi türü temsil ettiğini belirtmek gerekir. Betik, is_countdown yapılandırma ayarının değerine bağlı olarak saatleri veya geri sayımları varsayar. Bir yer tutucunun varsayılan olmayan türü temsil etmesi durumunda, yer tutucuya uygun öznitelik eklenmelidir. Örneğin, betik, is_countdown, true olacak şekilde yapılandırılmışsa, betik, yer tutucuların geri sayımı temsil ettiğini varsayar. Daha sonra bir saati temsil eden bir yer tutucuya sahip olmak isterseniz, yer tutucuya data-timeanddateclock-isclock eklemeniz gerekir. Bu özniteliklerin ikili olduğunu unutmayın. Bu, onlara atanan değerin alakasız olduğu anlamına gelir; betik yalnızca varlıklarını kontrol eder. Her iki nitelik de eklenirse, komut dosyası varsayılan türü alır.
data-timeanddateclock-allowtransparency, data-timeanddateclock-preventtransparency
timeanddate.com tarafından üretilen <iframe> etiketlerinden bazılarında allowtransparency="true" bulunur (örnek 1 bölümüne bakın). Bu, kullanımdan kaldırılmış bir özniteliktir ve bu nedenle çoğu modern tarayıcıyla ilgisizdir. Ancak, bir kullanıcı yine de data-timeanddateclock-allowtransparency ekleyerek bunu eklemeyi seçebilir. allow_transparency yapılandırma ayarı true olarak ayarlanmışsa, betik özelliği varsayılan olarak ekler. Bu öznitelikler ikili özniteliktedir ve her ikisi de mevcutsa varsayılan değer kullanılacaktır.
data-timeanddateclock-width, data-timeanddateclock-height
Bu öznitelikler, <iframe> etiketinin genişliğini ve yüksekliğini belirtmek için kullanılır. Bu öznitelikler için CSS'nin width ve height özellikleri değerler kullanılır. Bu özniteliklerden biri veya her ikisi kullanılmazsa, betik, eksik öznitelik(ler) için karşılık gelen varsayılan değeri kullanmayı dener. Varsayılan değer belirtilmemişse (faktör varsayılanlarında olduğu gibi), ilgili boyut ayarlanmayacaktır ve bu nedenle tarayıcının varsayılan değerini (genellikle width için 300px ve height için 150px) alacaktır. Saatin boyutlarının değişmeyeceğini unutmayın, bu nedenle saatin boyutlarına uymayan boyutlara sahip olmak, saatin etrafında fazladan boşluk oluşmasına veya saatin kırpılmasına neden olur. Saatin "doğru" boyutları timeanddate.com tarafından sağlanan <iframe> etiketinden elde edilebilir. timeanddate.com adresin boyutları CSS yerine HTML yoluyla belirtmeyi seçtiğini, bu nedenle sayılarla birlikte birim içermediğini unutmayın. Bu sayılar piksel cinsindendir, bu nedenle timeanddate.com tarafından oluşturulan HTML'den kopyalanıyorsa kullanıcının bunlara px eklemesi gerekir.
Example
Aşağıda, bu betiğinin nasıl kullanılacağına ilişkin örnekler verilmiştir. Tüm örnekler, betik varsayılanlarının değiştirilmediği varsayılarak yazılmıştır. Sonuçları göremiyorsanız DemoScripts aracını devre dışı bırakmış olabilirsiniz. Tercihlerinize gidin ve DemoScript'in etkinleştirildiğini doğrulayın (kutunun içinde bir onay işareti olmalıdır).
Varsayılan örnek
Sayfa içeriğinde yer tutucu:
<div class="TimeanddateClock"></div>
Sonuç:
Örnek 1
timeanddate.com adresinden HTML:
<iframe allowTransparency="true" frameborder="0" height="84" src="http://free.timeanddate.com/clock/i71vvzfa/fn15/fs30/fc00f/tct/pct/fti/bas5/bat1/tt0/tw0/tm1/ts1/tb4" width="179"></iframe>
Sayfa içeriğinde yer tutucu:
<div class="TimeanddateClock" data-timeanddateclock-allowtransparency data-timeanddateclock-height="84px" data-timeanddateclock-source="i71vvzfa/fn15/fs30/fc00f/tct/pct/fti/bas5/bat1/tt0/tw0/tm1/ts1/tb4" data-timeanddateclock-width="179px"></div>
Sonuç:
Örnek 2
timeanddate.com adresinden HTML:
<iframe frameborder="0" height="110" src="http://free.timeanddate.com/clock/i71vvzfa/szw110/szh110/hoc09f/hbw0/hfc09f/cf100/hnce1ead6/fas30/fdi66/mqc000/mql15/mqw4/mqd98/mhc000/mhl15/mhw4/mhd98/mmc000/mml10/mmw1/mmd98/hhs2/hms2/hsv0" width="110"></iframe>
Sayfa içeriğinde yer tutucu:
<div class="TimeanddateClock" data-timeanddateclock-height="110px" data-timeanddateclock-source="i71vvzfa/szw110/szh110/hoc09f/hbw0/hfc09f/cf100/hnce1ead6/fas30/fdi66/mqc000/mql15/mqw4/mqd98/mhc000/mhl15/mhw4/mhd98/mmc000/mml10/mmw1/mmd98/hhs2/hms2/hsv0" data-timeanddateclock-width="110px"></div>
Sonuç:
Örnek 3
timeanddate.com adresinden HTML:
<iframe allowTransparency="true" frameborder="0" height="135" src="http://free.timeanddate.com/countdown/i71vwgtn/cf101/cm0/cu4/ct0/cs1/ca0/cr0/ss0/cac000/cpc000/pcd8873c/tcfff/fs100/szw320/szh135/tatTime%20left%20to%20Event%20in/tac000/tptTime%20since%20Event%20started%20in/tpc000/mac000/mpc000/iso2025-01-01T00:00:00" width="320"></iframe>
Sayfa içeriğinde yer tutucu:
<div class="TimeanddateClock" data-timeanddateclock-allowtransparency data-timeanddateclock-height="135px" data-timeanddateclock-iscountdown data-timeanddateclock-source="i71vwgtn/cf101/cm0/cu4/ct0/cs1/ca0/cr0/ss0/cac000/cpc000/pcd8873c/tcfff/fs100/szw320/szh135/tatTime%20left%20to%20Event%20in/tac000/tptTime%20since%20Event%20started%20in/tpc000/mac000/mpc000/iso2025-01-01T00:00:00" data-timeanddateclock-width="320px"></div>
Sonuç:
Örnek 4
timeanddate.com adresinden HTML:
<iframe allowTransparency="true" frameborder="0" height="66" src="http://free.timeanddate.com/countdown/i71vwor8/cf12/cm0/cu4/ct0/cs0/ca0/cr0/ss0/cac000/cpc000/pcfff/tcfff/fs100/szw320/szh135/tatTime%20left%20to%20Event%20in/tac000/tptTime%20since%20Event%20started%20in/tpc000/mac000/mpc000/iso2025-01-01T00:00:00" width="175"></iframe>
Sayfa içeriğinde yer tutucu:
<div class="TimeanddateClock" data-timeanddateclock-allowtransparency data-timeanddateclock-height="66px" data-timeanddateclock-iscountdown data-timeanddateclock-source="i71vwor8/cf12/cm0/cu4/ct0/cs0/ca0/cr0/ss0/cac000/cpc000/pcfff/tcfff/fs100/szw320/szh135/tatTime%20left%20to%20Event%20in/tac000/tptTime%20since%20Event%20started%20in/tpc000/mac000/mpc000/iso2025-01-01T00:00:00" data-timeanddateclock-width="175px"></div>
Sonuç:
Ek notlar
Bu iletide tartışıldığı gibi, belirli saatlerin/geri sayımların timeanddate.com tarafından düzgün şekilde sunulmaması ile ilgili bir sorun olabilir. Şimdilik, Fandom bu saatleri/geri sayımları görüntülemeye devam ediyor ve tarayıcı konsoluna bir uyarı yazdırıyor. Ancak Fandom, etkilenen saatlerin/geri sayımların artık görüntülenmeyeceği noktada güvenlik filtresini uygulamayı seçebilir.