trombinoscope
, agenda
, material-card
et damier
ne sont plus proposés dans composants
blocs
ou liste
est maintenant automatiquement en mode dynamic (ce nouveau template blocs
ou card
n'est pas encore compatible des données externes)composants
à la fin de la barre d'édition{{section}}
tout en restant compatible des sites qui utilisent <div class="well">Texte liposum ...</div>
composants
pour être remplacé par le template blocs
qui permet de les avoir tous (les anciens templates restent disponibles pour rétrocompatibilité){{section}}
PageCSS
ou le css
de votre thème custom (correctif non compatible avec le thème margot)#yw-topnav.fixable { position: relative; }
fun.css
(attention, uniquement compatible avec le squelette 1col.tpl.html
)PageCSS
: :root { --neutral-soft-color: #b0b1b3; --neutral-light-color: #ffffff; }
LookWiki
well
a changé. Vous pouvez retrouver l'ancienne en tapant ceci dans PageCSS
: .well{ border:3px solid var(--secondary-color-2); background:var(--neutral-light-color); padding: 19px; border-radius: 4px; }
custom/themes/margot/images/
: Télécharger le fichier faviconsmargot.ziptags
et templates
et le handler
show
) : pour aider à traduire AiderATraduireMapField
permet à nouveau de faire de l'autocomplétion des noms de ville.FormBuilder
, constructeur graphique des formulaires, il est possible de choisir des droits de lecture/écriture en sélection multipleFileField
fonctionne à nouveau pour le téléchargement des fichiers d'une fiche avec chromium.FormBuilder
, réparation d'un bug qui dupliquait l'aide d'un champ lors de la duplication du champEntryController
: correction d'un bug pour permettre l'affichage du bouton de suppression d'une entrée pour son propriétaire dans un affichage en template accordéon par exemple {{editconfig}}
, le chevron est maintenant dans le bon sens lors du chargement initiale avant de déplier les panneaux.{{usertable}}
n'affichent plus les admins comme des membres des groupes où ils ne sont pas explicitement membresincludes/User.class
la suppression d'un membre qui n'est pas seul dans un groupe fonctionne à nouveaulang/yeswiki_fr.php
, lang/yeswikijs_fr.php
, docs/actions/lang/actionsbuilder_fr.inc.php
lang/yeswiki_en.php
, lang/yeswikijs_en.php
, docs/actions/lang/actionsbuilder_pt.inc.php
TextField
(texte
) en mode range
il y a maintenant affichage de la valeur courante du curseur pendant la saisie{{bazarliste}}
n'affichent plus les paramètres {{... displayfields="floating=,visual="}}
si ça n'est pas nécessaireTabsField
(tout récent de décembre) fonctionne maintenant avec des ,
comme séparateurs, (une rétro-compatibilité avec le séparateur |
est assurée)extension_autorisee
: il est maintenant possible de charger des fichiers Markdown .md
FormBuilder
, les retours à la ligne intempestifs sont retirées (ils apparaissaient lors de l'ajout de certains champs en mode graphique)FormBuilder
en mode graphique, il est possible de choisir des droits de lecture, écriture plus fins en choisissant plusieurs groupes dans la liste possible{{section}}
peut maintenant consigurer le paramètre {{... nocontainer="1"}}
SimplePie
via composer
(attention, la librairie est mse en dure dans le dossier tools/syndication/vendor
) de façon à ne pas créer de dépendance avec le cœur et ne pas oublier les composer install
qui serait alors nécessaire sans le code en dur&lang=fr
... ou de la langue du navigateurcomposer.lock
)psr/container
dans composer.json
à la version 1.1.1
pour permettre le fonctionnement avec PHP 7.3
UserField
(utilisateur_wikini
) permet maintenant d'ajouter le nouvel utilisateur à un ou plusieurs groupes.formBuilder
utilisée par le constructeur graphique de formulaire (via yarn
)formbuilder-languages
pour permettre l'usage de formBuilder
même hors ligne (genre dans le train)CheckBoxField
maintient la liste des cases déjà cochées lors du rechargement d'un formulaire en cas d'erreur de saisiebaz_check_owner_acl_only_for_field_can_edit
est maintenant à true
ce qui implique que les champs des formulaires non accessible en écriture mais accessible en lecture pourraient être tout de même accessible en écriture uniquement lors de la création d'une fiche (à confirmer)mail
vérifie maintenant si l'utilisateur courant à les droits d'accès en lecture à la page avant d'envoyer un e-mail et formate les fiches au lieu de les envoyer au format brutphpunit
sont maintenant lancées avec une sortie vers --stderr
pour éviter les conflits lors de la définition des en-têtes http par YesWiki
update
(lors finalisation de la mise à jour), les images incluses en base64 dans les champs textelong
en mode HTML
sont maintenant extraites de la base de données vers le dossier files/
même pour les versions précédentes des fichesannuaire_alphabetique.tpl.html
[| |Première colonne|Deuxième Colonne| |Première ligne|Une case| |]
gauche
, droite
ou centré
fonctionne maintenant même pour les colonnes du bord du tableau.YesWiki->Href()
avec des paramètres utilise maintenant urlencode()
quand les paramètres sont fournis sous forme de tableau{{usertable}}
n'utilise plus die()
mais plutôt l'affichage d'un joli message d'erreurUser.class->listGroupMemberships()
réparé{{generatemodel}}
lors de la suppression d'un modèle et création automatique des pages de base{{bazar id="1,2,3" voirmenu="0" vue="saisir"}}
{{bazarliste search="true" dynamique="false"}}
permet maintenant de conserver le handler
iframe
{{newtextsearch}}
fonctionne à nouveau avec une gestion des droits d'accès (refactor de updateRequestWithACL
depuis EntryManager
vers AclService
)bazar_farm_id
dans l'action {{editconfig}}
Content-Security-Policy
pour que les inclusions en iframe des pages d'un wiki ne soient autorisées que pour les handler iframe
, editiframe
et render
. Toutefois, c'est la liste des hanlders autorisés est personnalisable dans GererConfig
(il est possible de tout ouvrir)/rss
n'affiche maintenant que les fiches et les champs bazar accessibles en lecture{{recentchangesrss}}
n'affiche plus la compariason des différences, ni le titre entier, ni le lien pour les pages non accessibles en lecture.Les champs non acessibles en lecture ne sont plus accessibles dans le flux rssEnumField
, WidgetHandler
et ExternalBazarService
(affichage des fiches externes),TabsField
et TabchangeField
pour faciliter la création d'onglets dans les formulaires et les fichesMettre à jour les pages de gestion
(elles sont aussi visibles dans la section des pages spéciales dans la page GererDroits)TextaraField
: usage de ob_start()
pour récupérer les sorties lors de l'importation de actions_builder.php
__EditHandler.php
: usage de ob_start()
pour récupérer les sorties éventuelles et éviter leur afficahge avant la création de la balise <head>
{{section}}
accepte maintenant pour le paramètre visibility
plusieurs groupes séparés par \n
. Exemple : {{section visibility="@group1\n@group2"}}
{{translation destination="fr"}}
_t
en javascript
fait maintenant un remplace globalcache
et files
en fin de mise à jour{{gererdroits}}
permet maintenant de filtrer les listes
javascript
. Ces fichiers se nomment ainsi tools/<extension-name>/lang/<extension-name>js_<code-lang>.inc.php
(exemple : tools/bazar/lang/bazarjs_fr.inc.php
). Ces traductions sont acessibles en javascript par _t('CLE_A_TRADUIRE')
'
DataField
, il y a une meilleure détection de l'option pour initialiser le champ à la date du jour.trombinoscope
est maintenant découpé en deux fichiers tools/bazar/presentation/templates/trombinoscope.tpl.html
qui appelle le fichier tools/bazar/templates/trombinoscope.twig
. L'affichage du logo quand il n'y a pas d'image est responsive
(adaptable sur téléphone).InnoDB
_t('CLE_A_TRADUIRE',{'wordToReplace':'Replacement'})
ce qui prendra le contenu de $GLOBALS['translations_js']['CLE_A_TRADUIRE']
et remplacera dans ce contenue {wordToReplace}
par Replacement
EnumField
lors d'une mauvaise importation de données externes.TextareaField
en mode HTML
retire les images en base64 de la fiche pour les sauvegarder dans le dossier files/
lors de la sauvegarde de la ficheRadioEntryField (radiofiche)
sont maintenant accessibles avec LinkedEntryField
en utilisant leur nom de type bf_name
en plus de pouvoir utiliser le nom de propriété de type radiofiche7bf_name
liste_liens.tpl.html
affiche maintenant par défaut les liens vers le site courant dans la fenêtre courante. (il y a maintenant le paramètre {{bazarliste id="..." template="liste_liens.tpl.html" links_in_new_window="1"}}
) pour retrouver le comportement d'avant avec ouverture dans une nouvelle fenêtre.blog.tpl.html
fonctionne mieux pour détecter le paramètre header="true"
javascript:toastMessage())
p) pour éviter de bloquer la création, modification et suppression des fiches (sauf pour les admins en mode debug qui voient tout).YesWiki->runFileInBuffer
PageManager->deleteOrpheaned
utilise maintenant TagsManager->deleteall()
pour éviter que des tags restent présents alors que les pages sont supprimées.ApiService
, usage de \n
au lieu d'un espace pour séparer les acls multiples pour les routes api.wakka.config.php
avec $wiki->params
pour que les tableaux non-associatifs ne soient pas fusionnés avec mais remplacer par ceux de wakka.config.php
wiki.url
dans PreviewAction.js
EmailField (champ_mail)
a été remanié (email.twig
) pour que le modèle utilise des méthodes plus en cohérence avec les autres champs EntryManager->prepareSearchRequest
il y a nettoyage du contenu de la requête query
pour éviter les potentielles injections de code en SQL et pour éviter les soucis de recherches SQL avec les caractères **
par exempletools/syndication/libs/simplepie_1.3.1.compiled.php
(mais il faudra mettre en place l'usage de composer pour mettre à jour cette librairire automatiquement)FileField
(fichier
) affice maintenant le nom court du fihier si facile à extraire.MetadataField
(metadatas
) permet maintenant de définir aussi le nom du preset
si disponible pour le thème courant{{listpages}}
, {{textsearch}}
et le handler /listpages
n'affichent maintenant que les pages et fiches accessibles en lecture par l'utilisateur courant.contact_use_long_wiki_urls_in_emails
dans wakka.config.php
. Ce paramètre permet de rajouter wiki=
devant la page dans les liens ajoutés dans les e-mails afin d'éviter les soucis avec les relais smtp
qui ajoutent un nouveau paramètre en début de la requête dans l'urlGuard
, pensez à mettre à jour vos wikis pour que des champs non autorisés en lecture ne soient pas affichées par erreur.Joindre des fichiers
dès la création d'une fiche pour les champs textelong
en mode wiki
/?BazaR&vue=consulter
: retour de la barre de recherchetools/contact/templates
. Il est possible de les personnaliser en les recopiant et les modifiant dans le dossier custom/templates/contact
{{admintag}}
pour l'affichage de la liste quand il n'y a qu'un seul tag dans tout le wiki/?BazaR&vue=consulter
api
au sein de $_GET['wiki']
pour améliorer le fonctionnement du mode rewriteMethodNotAllowedException
pour l'api>
LinkTracker
pour la génération des liens entre les pages et ajout de cette fonction lors de la mise à jour des pages spéciales par le handler /update
ou la restauration d'un page par le handler /revisions
.DbService
lèvent maintenant une Exception
au lieu d'uiliser die()
. Ceci permet d'afficher les erreurs dans un environnement plus agréable pour l'utilisateur.DbService
possède maintenant la méthode getDbTimeZone
qui permet d'obtenir le fuseau horaire de la base de données (C'est utile pour éviter les mauvaises dates dans les noms de fichiers lors de leur création).composants
, il n'y a plus de bugs dans l'affichage des facettes lors de l'existence de champs inconnus dans les formulaires (InputFormField
vérifie si les données sont un tableau ou un objet avant de le filtrer).LinkTracker
pour {{attach link="..."}}
EntryController->view
, retrait de $_GET['vue']
lors du rendu de la fiche pour éviter que les formulaires inclus dans la page ne fassent du rendu et restent en mode vue="saisir"
/.EntryController->view
possède maintenant un paramètre permettant de faire le rendu dans le contexte d'un utilisateur donné (autre que celui connecté). C'est utilisé par Mailer
{{admintag}}
passage en twigTagsManager
pour ne pas utiliser GROUP BY
mais plutôt WHERE EXISTS
car plus stableJoindre un fichier
permet de choisir dans les options avancées s'il faut ou non créer un lien pour voir l'image seule en entiertextelong
en mode wiki
disposent maintenant du bouton Joindre un fichier
qui est actif lors de la modification d'une fichesend_mail
au lieu de mail
(ce sui permet de passer par un relai smtp
)Joindre un fichier
de la barre d'action pour le passer en twigutilisateur_wikini
permettre à un admin de forcer la création d'une fiche pour un autre utilisateur que lui-mêmeradio
permettre l'usage de l'affichage conditionnel pour les champs radio{{despam}}
pour afficher un bouton permettant de voir la fiche concernée ou de pouvoir restaurer une version en particuliers.utilisateur_wikini
ne permet plus de créer des comptes en doublons, ni de créer une fiche si le compte existe déjà.fichier
affiche maintenant un bouton pour télécharger le fichier à la place du lien qu'il y avait avant.{{bazarliste dynamic="true" seach="true"}}
permet d'utiliser la recherche standard de YesWiki sur le fiche (mais elle ne permet pas de profiter de la rapidité de la recherche dynamique {{bazarliste dynamic="true" seach="dynamic"}}
)YesWikiPerfomable.php
définissent arguments
par références au lieu de passer les varleurs (ce qui permet à une pre ou post action de modifier arguments
)getWiki()
pour récupérer l'object wiki sans créer de boucle infinie à la contrsution{{toc}}
et {{tocjs}}
en particuliers sur les téléphonesdateMin
pour la route ?api\entries
ExternalBazarService
autorisation de refresh
uniquement pour les adminswiki
avec pour variables lang
(pour les traductions), baseUrl
, pageTag
, locale
(la langue courante){{bazarliste dynamic="true"}}
{{pointimage}}pour pouvoir gérer les liens
{{bazarliste period="day" ..}}
{# mon commentaire #}
$.load()
@Route("/api",options={"acl":{"public"}})
foreach ($form['prepared'] as $field)
for ($i = 0; $i < count($form['template']); ++$i)
<div class="page">...
'actionbuilder_textarea_name' => 'bf_contenus',
<div class="page">...
foreach($form['prepared'] as $field)
{{bazarliste user="..."}}
{{update version="doryphore"}}
{{editactionsacls}}
{{edithandlersacls}}
{{editgroups}}
{{recentchanges}}