Installation de MediaWiki

Présentation:

MédiaWiki est le moteur de wiki utilisé par Wikipedia. Il est open source, robuste et gratuit. Il peut être utilisé pour la réalisation d'une doc produit, partage de compétence au sein d'une entreprise, etc.

 Prérequis:

  • un serveur web fonctionnel (Lamp, Wamp, Xampp, etc.)
  • composer sur votre serveur (www.get-composer.com)
  • si possible un accés SSH ou une invite de commande
  • Pas obligatoire, mais pour des raisons de performance fortement conseillé, une base de donnée MySQL ou Postgrès (au moins pour la mise en prod). Pour le développement, il est possible de passer par SQLite.
  • Un acces et un client FTP, c'est mieux wink

 

Installation:

Télécharger mediawiki depuis le site officiel.

Le dézipper dans votre répertoire cible.

/!\ Surtout bien penser à lancer la commande composer install pour récupérer toutes les dépendances (idem après l'ajout de nouvelle extension).

une fois qu'il est lancé, il faut aller à l'url => monserver.com/setup_install.php

Le programme vous posera plusieurs questiosn telle que le type et l'adresse du serveur de BDD, l'encodage, etc.

Une fois terminé, il vous fait télécharger le fichier localSettings.php à installer à la racine de votre site.

Lister attribut objet JavaScript

Il est possible de lister tout les attribut d'un objet javascript avec une simple boucle pour avoir un affichage proche du var_dump:

 

  var getKeys = function (inst) {
            var keys = [];
            for (var key in obj) {
                console.log(key);
                keys.push(key);
            }
            return keys;
        };

Ajout d’un getUrl

Pour ajouter un getUrl sur l'objet et par exemple avoir un lien dans le titre d'un objet sur le River. Ajouter un hook handler dans le start.php

// Register a URL handler for idea
elgg_register_plugin_hook_handler('entity:url', 'object', 'idea_set_url');

et la fonction qui va bien:

function idea_set_url($hook, $type, $url, $params) {
    $entity = $params['entity'];
    if (elgg_instanceof($entity, 'object', 'idealab_idea')) {
        $title = elgg_get_friendly_title($entity->title);
        return "module/view/" . $entity->getGUID() . "/" . $title;
    }
}

Afficher la date au bon format en JavaScript

Ahh le JavaScript, mon langage préféré.😡
Pour faire de l’affichage de la date du jour et pourvoir la formater comme bon me semble.

clickDate = (date.getFullYear().toString()) + « – » + (« 0 » + (date.getMonth() + 1).toString()).substr(-2) + « – » + (« 0 » + date.getDate().toString()).substr(-2) ;

affiche une date au format: 2016-09-29

C’est juste pour rappel, mais c’est plus un pense bête pour moi, comme 90% des articles du site, c’est suivant un contexte ou du besoin du moment.

Utilisé une vue d’un autre plugin dans Elgg

il existe plusieurs fonctions pour afficher les vues dans Elgg. elgg_view, elgg_view_form, elgg_view_annotation, etc.

Pour afficher une autre vue de base dans son module il suffit d'appeler la fonction elgg_view("chemin_du_module/nom_de_vue").

Attention si c'est une vue de type formulaire, c'est bien la fonction elgg_view_form

Cette fonction retourne un string du HTML generé par le moteur Elgg.

Créer un champs sélection avec le moteur Elgg

Aller zou, on passe sur Elgg, ce moteur de réseau social open source. Cela fait partie d'une serie d'article à venir, car j'ai pas trop mal bossé avec.

Donc création d'un champs select => 2 manieres de faire, soit avec option et value, soit juste option

echo elgg_view('input/dropdown', array( 
    "id" => "color_mine", 
    "value" => "Dropdown", // valeur par default 
    "name" => "color", 
    "options" => array("Rouge", "#0000ff", "#008000", "#6600ff") // rouge, bleu, vert, violet ));


echo elgg_view('input/dropdown', array( 
    "id" => "color_mine", 
    "value" => "Dropdown", // valeur par default "name" => "color", 
    "options_values" => array("ff0000"=>"Rouge", "#0000ff", "#008000", "#6600ff") // rouge, bleu, vert, violet ));