Tipikate Rattamatkaklubi veebileht

Allikas: Tipikate Rattamatkaklubi teabebaas
Redaktsioon seisuga 17. veebruar 2019, kell 17:18 kasutajalt Jaanus (arutelu | kaastöö) (→Uuendamine)
Mine navigeerimisribale Mine otsikasti

Sissejuhatus

Käesolev leht koondab märkmeid Tipikate Rattamatkaklubi kodulehe ja muude IT teenuste kohta.

Wordpress sisuhaldus

Suvalised märkmed

  • Kodulehele info lisamisel tuleb aeg-ajalt ette olukordi, kus mingi pildifail edastatakse meile PDF kujul, samas Wordpress seda mõistlikult (muu info vahel) näidata ei oska. PDF failist saab pildiformaate välja võtta näiteks PDFill PDF Tools nimelise utiliidiga.
  • Tundub, et lehtede kirjutamiseks ja uuendamiseks tasub kasutada ainult Text Editor'i. Visual Editor kipub vorminduse ära rikkuma.

  • Kui on soov sisutekstide vahele lisada pilte, mis oleks kogu teksti laiuses, siis on mõistlik valida pildi kuvatavaks laiuseks 515 pikslit. Kui valida veidi kitsam variant, võib Wordpress üritada pildi kõrvale veel lisaks väga kitsa tulba tekitada, mille tõttu näiteks pildi järele lisatud reavahetused ( ) paigutatakse hoopis pildi kõrvale. Lisaks tasub mainida, et kogu teksti laiuses piltide korral tasub valida class="alignright" - kummalisel kombel paigutab just see pildi korrektselt vasakusse serva.

Vasakpoolne menüü

Kodulehe vasakus ääres olev menüü on ainult osaliselt Wordpress'i kaudu konfigureeritav, ülejäänu tuleb wp-content/themes/ratas/sidebar.php failist. Nimetatud PHP fail defineerib kodulehe vasakusse serva järgmised asjad:

  • Logod ja Facebook'i plugin.
  • Sinised suurtähtedega lingid.
  • Kolm sektsiooni, mille sisu on võimalik Wordpress keskkonna kaudu muuta. Need on:
    • Tipikate Rattamatka sektsioonis olevad musta kirjaga lingid (sektsioon top).
    • Kääriku sektsioonis olevad musta kirjaga lingid (sektsioon middle).
    • Ülejäänud musta kirjaga lingid (sektsioon bottom).

Selleks, et lisada vastavasse sektsiooni (top, middle või bottom) uus leht, tuleb Wordpress keskkonnas minna vastava lehe redigeerimise režiimi ning lisada lehele Custom field:

Tasub mainida, et paremal ääres olev Order väljal olev number on puhtalt kasutaja hallata: vastavas sektsioonis olevad lingid järjestatakse selle numbri suurenemise järjekorras. Probleeme ei teki ka juhul, kui mõned numbrid vahelt puudu jäävad või korduvad.

Lingi eemaldamiseks vasakust menüüst tuleb vastav Custom field lihtsalt ära kustutada (Custom Fields sektsioonis olev Delete nupp).

Registreerimisvorm

Sissejuhatus

Käesolev peatükk räägib Tipikate Rattamatka registreerimisvormist.

Andmebaasi muudatused

Andmebaasi saab muuta phpMyAdmin liidese kaudu (vajalik teada linki phpMyAdmin liidesele ning andmebaasi kasutajanime ja parooli). NB! Enne suuremaid ümberkorraldusi tasub alati andmebaasist varukoopia teha!

Meie praktika läbi paljude aastate näeb ette, et säilitame ka eelmiste aastate tabelid, seega käib uue aasta registreerimise tarbeks andmebaasi ettevalmistamine järgmiselt:

  1. Logi phpMyAdmin liidese kaudu sisse.
  2. Vali vasakult menüüst tabel wp_rega_people.
  3. Kopeeri tabel wp_rega_people uueks tabeliks wp_rega_people_xxxx, kus xxxx on eelmise aasta number (näiteks tuleks 2017. aastal luua tabel wp_rega_people_2016). Selleks vali ülevalt menüüst Operations ning leia lehelt sektsioon Copy table to (database.table). Vali selles sektsioonis uuele tabelile nimi (näiteks wp_rega_people_2016), seejärel lisavalik Structure and data ning lõpuks Go:
  4. Tee tabel wp_rega_people tühjaks. Selleks veendu, et vasakult menüüst oleks jätkuvalt valitud tabel wp_rega_people, seejärel vali ülevalt äärest Operations ning seejärel Empty the table (TRUNCATE):
  5. Vajadusel võib nüüd tabelis wp_rega_people välju lisada või eemaldada (vastavalt konkreetse aasta vajadustele).

index.php muudatused

Registreerimisvorm ei ole hetkel osa Wordpress keskkonnast, vaid vorm poogitakse vajadusel konkreetse ID-ga Wordpress'i lehe alla juurde wp-content/themes/ratas/index.php failist (muutmiseks vaja FTP ligipääsu). Hetkel on seal olemas registreerimisvormist kaks versiooni: eesti- ja ingliskeelne.

Eestikeelne registreerimisvorm algab sellisest reast:

<?php if($post->ID=='2546'): ?>

... ja ingliskeelne sellisest:

<?php elseif($post->ID=='_2265') : ?>

Kui vastav registreerimisvorm on hetkel aktiivne, siis peaks ID väärtus olema puhtalt numbriline. Kui vorm ei ole aktiivne, siis on mõistlik lisada ID väärtusesse sümboleid või tähti (ehk siis mittenumbrilisi elemente).

Wordpress lehe ID saab teada, kui minna vastava lehe redigeerimise režiimi. Sellisel juhul on ID näha brauseri URL realt (antud näiteks 2546):

Mõtted tulevikuks

2018. aasta veebruaris sai registreerimisvormi omajagu edasi arendatud, kuid paar asja jäävad tulevikuks lahendamiseks:

  • Kui kasutaja sisestab midagi valesti, siis näeb ta lehte infoga, mis vigadele tähelepanu juhib. Selle lehe allääres on link "Tagasi infot kontrollima", mis käitub nii nagu brauseri "Tagasi" nupp. Enamikes brauserites (Chrome, Firefox, Opera, IE) viib see nupp tagasi vormile, seejuures on kasutaja poolt juba sisestatud andmed seal ilusti näha. Siiski võib osades brauserites (näiteks Microsoft Edge) see link (ja brauseri "Tagasi" nupp) ka vormi ära tühjendada, internet teab rääkida, et ajalooliselt on taolistel puhkudel vorme tühjendatud HTTPS lehtedel.
  • Kui kasutaja on andmed sisestanud, siis näeb ta kas kinnituslehte või veateadete lehte. Kui nendel lehtedel brauseris F5 vajutada, siis küsib brauser koleda "Confirm form resubmission" küsimuse.

Neist mõlemast probleemist aitaks üle saada, kui vorm saadetaks serverisse AJAXi abil, samuti loetaks sealt vead ja õnnestumised tagasi ilma, et lehte värskendama peaks. Tegemist oleks veidi suurema ümber tegemisega ning 2018. aasta veebruaris jäi asi ajapuudusel katki. Kui mingi hetk tegemiseks läheb, võib alustuseks selle artikli läbi lugeda.

Uudiskiri

Sissejuhatus

Uudiskiri istub kaustas /lists ning võimaldab saata välja Tipikate Rattamatkaklubi uudiskirja. Kasutatavad ressursid on laias laastus järgmised:

  • Kaustas /lists asuvad failid
  • Andmebaas
  • Meiliaadress uudiskiri-bounces [ät] rattamatkaklubi.ee

Uudiskirja süsteem ei ole kuidagi cpaneliga integreeritud, kogu haldus käib manuaalselt, näppides selleks eelpool nimetatud faile, andmebaasi ja meilikontot. Tasub juhtida tähelepanu, et kuna korraga välja saadetavate kirjade hulk on suur, siis kasutame teenusepakkuja lisateenust, mis meilide väljasaatmise limiiti suurendab (2017. aasta novembris on limiidiks 600 kirja tunnis).

Kasutusõigused

Nagu selgus, siis on PHPList kasutajaõigused veidi kohmakad. Kui on soov teha igale kirjade välja saatjale oma konto, siis see polegi eriti võimalik (ilma, et kõik kasutajad super admin'ideks teha). Tavalised administraatorid näevad ainult neid liste, mille omanikud nad on. Samas ei saa listi omanikuks olla mitu administraatorit korraga. Kui tavaline administraator liste ei näe, siis on tema ainsaks võimaluseks postitada kõikidesse listidesse (mis on väga halb valik).

Kasutame seetõttu kahe kasutaja süsteemi, mida siis administraatorite vahel jagama peame:

  • Kirjade väljasaatja - omab liste ja saab kirju välja saata ning statistikat vaadata.
  • Super admin, kes saab kõike teha. Tema näeb ja saab kasutada ka liste, mille omanik on keegi teine. Tasub märkida, et mingis varasemas versioonis oli see vist teisiti, ehk siis isegi super admin ei näinud liste, mille omanik ta ei olnud.

Uuendamine

Uudiskirja süsteemi uuendamine käib laias laastus nii:

  • Lae alla uus versioon ja paki arhiiv lahti.
  • Tee andmebaasist varukoopia.
  • Tee varukoopia lists kaustas asuvatest failidest logo_lists.png, config/config.php ja texts/estonian.inc
  • Vaheta lists kataloogis olevad failid uutega välja.
  • Taasta eelpool nimetatud kolm faili.
  • Logi uudiskirja admin liidesele sisse ja jälgi protseduure (tõenäoliselt pakutakse välja andmebaasi uuendamist).

Liitumislehe päis

18.11.2017 tekkis mõte, et võiks uudiskirjaga liitumise lehe päise veidi ilmekamaks teha ning lisada sinna klubi logo. Nimetatud päist saab iseenesest administreerimisliideselt muuta nii: menüüst Config -> Configuration -> Create a subscribe page - Go there -> Edit ikoon -> Header alajaotus -> leida üles järgmine osa:

<div id="header" >

Selleks aga, et muidu valgel taustal olev logo sealse lehe kujunduse mõttes liigselt silma ei riivaks, samuti võttes arvesse päise riba kõrgust, tekkis kaks mõtet:

  • Logo võiks olla läbipaistval taustal.
  • Kuna kiri "Tipikate Rattamatkaklubi" on seal niikuinii olemas, siis võib logost kasutada ainult "rataste/rõngaste" osa.

Mingil põhjusel ei PDF ega AI failist tehtud PNG aga läbipaistvat tausta ei omanud - oli see sama valge taust. Võib-olla ongi algfail selline, võib-olla ei osanud abivahendeid õigesti kasutada. Tausta aitas läbipaistvaks muuta Paint.net tarkvara. Samas esmane katse PDF failist konverditud PNG failiga jäi kole - samas võib-olla oleks abi olnud sellest, kui PNG algul märksa kõrgema DPI-ga tekitada.

Igal juhul lõplik lahendus oli järgmine:

  • Konverteerida AI fail PNG-ks online konverteri abil. Mingeid erilisi seadistusi teha pole vaja. Tulemuse link saadeti e-mailile.
  • Avada PNG fail Paint.net-is ja kasutada "Tools" alt abivahendit nimega Magic Wand. Teema rääkis lahti see artikkel. Laias laastus tuleb klikkida igal valgel alal ja siis "delete" nupuga sealne taust ära kustutada. Et "kodarate" vahelt ka väiksemad alad kätte saada, tuleb korralikult sisse zoomida.
  • Seejärel lõigata välja ainult rataste osa. Kuna taust on nüüd läbipaistev, võib lõigata nii väikse raami kui saab.
  • Seejärel vähendada pilt selliseks, et kõrgus oleks 59 pikslit - see osutuks parimaks, mis päisesse sobib. Laiuseks tuli automaatselt 130.
  • Laadida fail /lists kausta.

Päise konfiguratsioon osutus lõpuks selliseks:

<h1 id="logo"><a href="https://rattamatkaklubi.ee" title="Visit our website" target="_blank"><table><tr><td style="padding-left: 50px;"><img src="https://rattamatkaklubi.ee/lists/logo_lists.png" /></td><td style="padding-left: 20px; font-size: 25px; vertical-align: middle; width: 200px;">[ORGANISATION_NAME]</td></tr></table></a></h1>

Seejuures põhjendused olid järgmised:

  • Tabeli tekitamine oli vajalik, et logo korrektselt vasakule ja kiri paremale saada ning et oleks võimalik neile eraldi atribuute külge panna.
  • padding-ud said pandud tunde järgi, et okei välja näeks.
  • Fondi suurus oli oli alguses ~50, aga väiksemas aknas või väiksemal ekraanil (nt telefonis) nägi see väga kole välja - tekst wrap'iti kahele reale ja alumine rida jäi päise alast välja. Seetõttu sai fondi suuruseks pandud 25 ja tabeli lahtri laiuseks 200 - see viimane tagab, et tekst nüüd alati kahele reale wrapitakse.