TRImax documentatie

voor developers


TRImax implementeren

STAP 1 : keuze van de stijl = keuze Bootstrap-template

De bouw van een website start met de keuze van de stijl. Pas wanneer een Bootstrap-template gekozen is, kan de integratie met TRImax beginnen.

Aan elke webpagina wordt een template gekoppeld, het is mogelijk om één template te herbruiken voor meerdere pagina's. Een template is een aangepast Bootstrap-bestand, waarin placeholders toegevoegd worden op die plaatsen waar content moet zichtbaar zijn in de webpagina.

In de templates worden de vaste en gemeenschappelijke gedeeltes weggeknipt die elk worden bewaard in een eigen template-bestand; in de plaats ervan komt een placeholder van het type invoegen. Het wordt als een best practice beschouwd om de naam van deze invoeg-templates te laten starten met een underscore ( _ ); de drie typische voorbeelden hiervan zijn:

  • _header.htm
  • _footer.htm
  • _navigatie.htm

STAP 2 : TRImax-bestanden toevoegen aan de website

Op de startpagina van deze website kan een zip-bestand met alle TRImax-bestanden gedownload worden. Na unzippen zijn volgende bestanden beschikbaar:

startmap van de website
| PUNT-htaccess
| index.php
| tpl-system.htm
| --- trimax
|     | _trimaxmod.php
|     | config.php 
|     | markdownextra.php
|     | trimax.class.php

Deze bestanden kunnen geüpload worden naar een webserver in de root of in een submap.

In de meeste gevallen zijn er geen wijzigingen nodig in index.php en .htaccess.

Het bestand PUNT-htaccess moet na het uploaden hernoemd worden naar .htaccess.


STAP 3 : config aanpassen

1. SYSTEM config

zie ook documentatie $config

database toegang

$config["db"]["dbhost"]= host
$config["db"]["dbuser"]= username
$config["db"]["dbpass"]= password
$config["db"]["dbname"]= database name
$config["db"]["dbtable"]= naam van de tabel voor het CMS (content in Markdown), standaardnaam is trimaxcontent
$config["db"]["dbtemplate"]= naam van de tabel met alle **acties** en de bijhorende **template**, standaardnaam is trimaxtemplates

de verschillende gebruikersniveau's

meestal zijn de standaardwaarden voldoende zodat geen wijzigingen nodig zijn

$config["role"]["0"]="disabled user";
$config["role"]["1"]="user";
$config["role"]["2"]="editor";
$config["role"]["4"]="web manager";
$config["role"]["5"]="admin";

taalkeuzes

in de url zichtbaar als http://website.com/nl/start of http://website.com/fr/start, enkel wanneer er meerdere talen zijn

$config["lang"]=array("NL");

2. CUSTOM config

Bij het ontwikkelen van modules kan het nodig zijn bepaalde waarden via variabelen door te geven aan de module. Dit kan via de `$config["mod"]["- - -"] variabelen of via $_SESSION["mod"]["- - -"].


STAP 4 : system-tabellen aanmaken

  • content
  • templates
  • admins

De volgende code mag in één keer in myPhpAdmin in het SQL-vak uitgevoerd worden.

CREATE TABLE `trimaxcontent` (
  `id` int(10) UNSIGNED NOT NULL,
  `blockname` varchar(30) NOT NULL,
  `content` text NOT NULL,
  `action` varchar(30) NOT NULL,
  `markdown` tinyint(4) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

ALTER TABLE `trimaxcontent` ADD PRIMARY KEY (`id`);

ALTER TABLE `trimaxcontent` MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=1;

CREATE TABLE `trimaxtemplates` (
  `id` int(10) UNSIGNED NOT NULL,
  `action` varchar(30) NOT NULL,
  `template` varchar(30) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

ALTER TABLE `trimaxtemplates` ADD PRIMARY KEY (`id`);

ALTER TABLE `trimaxtemplates` MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=1;

INSERT INTO `trimaxtemplates` (`id`, `action`, `template`) VALUES (NULL, 'start', 'start'), (NULL, 'system', 'system');

CREATE TABLE `trimaxadmins` (
  `id` int(11) NOT NULL,
  `username` varchar(50) NOT NULL,
  `userpwd` varchar(50) NOT NULL,
  `userlfname` varchar(50) NOT NULL,
  `userlevel` tinyint(4) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

ALTER TABLE `trimaxadmins` ADD PRIMARY KEY (`id`);

ALTER TABLE `trimaxadmins` MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=1;

1. trimaxcontent

Dit is de tabel die in de $config["db"]["dbtable"] opgegeven is. In deze tabel worden de (Markdown) tekstblokken opgeslagen van het CMS.

image

2. trimaxtemplates

Dit is de tabel die in de $config["db"]["dbtemplate"] opgegeven is. In deze tabel wordt het verband gelegd tussen een actie (in de URL) en de bijhorende template. Dankzij deze tabel kan een bepaalde template meerdere keren gebruikt worden bij verschillende acties, zie als voorbeeld de template documentatie in de schermafdruk hieronder.

automatisch aangemaakt:

Er worden in het SQL-script automatisch twee records aangemaakt:

start | start
system | system

image

3. trimaxadmins

Dit is de tabel die in de $config["db"]["dbadmins"] opgegeven is. In deze tabel worden de Admins van de website gedefinieerd die content kunnen aanpassen.

een admin toevoegen:

  • username: dit is de loginnaam (adminname), bij voorkeur geen spaties en alles kleine letters
  • userpwd: het wachtwoord wordt ingevuld als een combinatie van username, dan tweemaal een dubbel punt, dan het wachtwoord: MD5(username::wachtwoord)
  • userlfname: voornaam en naam van de admin
  • userlevel: een cijfer van 0 - 5; komt overeen met de gegevens in $config["role"]

opmerking in phpMyAdmin is er een MD5-functie beschikbaar die onmiddellijk een string omzet naar MD5.


STAP 5 : homepage naam = tpl-start.htm

In stap 1 werd een ontwerp gemaakt waarin de stijlkenmerken werden vastgelegd, volgens de Bootstrap normen. Bij het opknippen en aanpassen van de Boostrap-template, moet de homepage de naam tpl-start.htm krijgen.

De homepage heeft een verplichte en vaste naam:

tpl-start.htm

Dit is de pagina die zal verschijnen wanneer de basisurl van de website ingegeven wordt (http://website.com); deze pagina heeft ook een eigen url: http://website.com/start


STAP 6 : andere pagina's zijn templates

De naamgeving van alle andere pagina's moet voldoen aan volgende regels:

  • starten altijd met tpl-
  • dan volgt de naam van de actie
  • eindigen op .htm.

In deze pagina's kunnen placeholders geplaatst worden voor includes en voor mods.

tpl-actie.htm