Skip to content

Webpages is a visual multi-site CMS for authoring HTML in collaboration based on DMX.

License

Notifications You must be signed in to change notification settings

mukil/dmx-webpages

Repository files navigation

DMX Webpages

This DMX plugin brings multi-site web-publishing capabilities to your DMX installation.

Installing it introduces the type defintions for a Website, Webpage, Webpage Section, Tile, Button, Link, Website Redirect and a Website Menu Item. The following figure shows an overview of the type definitions installed when deploying the dmx-webpages plugin into a.

Webpages Applicaton Model: Type Definitions Expanded

Feature-wise, this plugins allows for one global website ("Standard Website") as well as a website for each DMX user. Each website can appear in a different style or layout, has its own namespace and its own webpages.

The HTML generated by this module tries to map (at best as possible) the DMX standard types to the terms of the Schema.org vocabulary.

Webpages is build on the dmx-thymeleaf module.

Installation Requirements

See system requirements at dmx-systems/dmx-platform

It is recommended to use DMX 5.1 (or higher) and it is required to use the following

You'll find both available for download both at https://download.dmx.systems.

Usage: Creating a Webpage

To start working a Webpage simply use the Create menu in the "Search/Create" dialog of DMX Webclient.

To publish a Webpage it must be connected to a Website. To do so, create a webpage and create an "Association" (Grey) between the Webpage and your Website topic.

Search and reveal your Website. The website topic allows you to edit and enter some basic information (e.g. Footer, About Text, Stylesheet etc) which is shared across all webpages associated with the website.

After you've associated your webpage with your website, you can use the "Browse" command available on the Website topic to see how your new website looks like.

In the following graphic you see the configuration of a "Hello World" website with five main menu items, a website header, a webpage with a custom header and with three webpage sections.

Website Example: Setup of a Hello World Website

Note: The permission who can see your published webpage depends on the so called SharingMode of the workspace your webpage topic is assigned to. You can learn more about sharing data with the public or within a group of users in the DMX User Guide - Collaboration and Sharing.

The webpages modules is still far from perfect and comes with a lot of quirks. Feel free to ask for help or give feedback in the DMX Forum. For more help using DMX Webpages check out its documentation here.

License

DMX Webpages is available freely under the GNU Affero General Public License, version 3 or later (see License).

The CSS library included in DMX Webpages is Fomantic-UI 2.8.4 and licensed under the MIT License (Link).

Changelog

0.8.2 - Aug 06, 2021

  • Fixes #32
  • Improves on #23

0.8.1 - Aug 05, 2021

  • Utilizing "Header JS" values when evaluating Header topics
  • Adapted to DMX 5.2 platform
  • Two bug fixes (#30, #31)

0.8.0 - Jan 04, 2021

  • Adapted to DMX 5.1's new type system (#15) and webclient (#21)
  • Migrated CSS library to Fomantic-UI 2.8.4 (community fork of Semantic-UI) since the latter is no longer maintained.
  • Added new "promut.css" theme (#16)
  • A bug-fix for search (main website not clickable)
  • Renamed "Standard Website" to "Main Website" (#29)
  • Removed "Webpage Header" and "Webpage Section" from Create Menu (#21)
  • Added "Menu Item" to "Website" context menu (#21)
  • Section Title -> Section Identifier (Not rendered any longer, #25)
  • Tile Headline -> Tile Identifier (Not rendered any longer, #25)
  • Webalias automatically derived on server-side (#19)
  • Re-organized all migrations for better readability (#29)
  • Features the exact same type URIs as 0.7.2 to allow content migration from a DM 4 Webpages installation using the DMX Import Export plugin

0.7.2 - Pending

(maintained in dm4 branch)

  • Compatible with DM 4.9.2
  • Improvements and fixes for third-party plugin integration
  • Enabled font-smoothing, esp. for bold bright serif texts on dark backgrounds
  • Added very basic json-ld mapping for an Institution to be publisher of the frontpage
  • Include tile child values and section titles in fulltext search results.
  • Preparations of displaying topic type icons on pages
  • Interchangeable footer thymeleaf fragment
  • Optimized loading of javascript resources & page script initialization
  • Adjustment of header button, section header and Pages section style
  • Added contact-form and mapbox-widget as Section Layouts
  • Added tile-content wrapper for additional custom-styles
  • File topic rendering precedes Tile Content rendering in Sections
  • Changes in HTML markup for article tag on pages

0.7.1 - Mar 08, 2018

  • Fixes Single Tile section layout
  • Added sorting for Tiles within Sections

0.7 -- Mar 07, 2018

Features:

  • Added support Headers customizable per Webage and Website
    (Screen size specific background images, image styles, text overrides, color styles and call-to-action buttons)
  • Added support for ordered Sections above or below Webpage content
  • Added support for various Grid Layout, Quote and Accordion segments within Sections
  • Added Tiles to compose content or clickable areas in Sections
    (Tile and screen-size specific background images or font and background colors)
  • Added support for a website specific logo image

Improvements:

  • Server side revision of main webpage and site routing (global site vs. user websites)
  • Upgrade and reconfigured custom build of semantic-ui 2.3
  • Switched to wordpress-style system fonts
  • Prepared Tiles as proxy objects for rendering various types of topics
  • Revised some old semantic-ui overrides
  • Revised markup of the three navigation menus
  • Extended dm4-webclient integration for simpler authoring
  • Introduced constants for all plugin specific type URIs
  • Added migrations to complete workspace assignments (specifically some View Config topics had been missed)
  • Switched from usernames to prefixes for routing multiple Websites

0.4.6 -- Nov 18, 2017

  • Maintenance relase improving on the custom events fired for 3rd party plugins

0.4.5 -- Nov 13, 2017

  • Standard Theme: Integrate semantic-ui standard theme
  • Multi-sites: Migrated username based prefixes to simple Website prefixes
  • Top-navigation bar with support for dropdown menus
  • Ajax based fulltext search in top nav bar
  • New custom events for 3rd parties to hook into template preparation

0.4.4 -- Jan 31, 2017

  • Arrange site navigation blocks as flexbox layout
  • Feature: Allow 3rd party plugins to hook in a top menu navigation fragment
  • Feature: Allow 3rd party plugins to gather menu items and webpage topics (for the "standard" website)
  • Fix: Website name is always "standard" on pages/templates registered by 3rd party plugins

0.4.3 -- Jan 04, 2017

  • Expose standard webpages and menu items to a 3rd party frontpage
  • A CSS fix in the "standard grey" stylesheet fixing menu position on each page

0.4.2 -- Nov 14, 2016

  • Revision of "standard-grey" stylesheet
  • Revision of server side java plugin code

0.4.1 -- Nov 03, 2016

Pleae have a look at this commit message for a short description of fixes and improvements in 0.4.1.

0.4 -- Aug 09, 2016

  • Completely revised webpage application model
  • Introduced new icons, types and a specific web-alias renderer
  • Depends on dm4-thymeleaf module version 0.6.1
  • Not compatible with previous version (dm4-webpages-0.3)
  • Developer note: This version only installs migrations 1, 2 and 3.
    Migration 4 and 5 are still in flux and may instal with the next release.
  • Uses Thymeleaf 2.1.3

Note: You cannot upgrade a dm47-webpages-0.3 installation to use dm47-webpages-0.4.

0.3 -- Nov 23, 2015

  • Useful to create and publish one website
  • Compatible with the collaborative DMX 4.7

0.1.1 -- Oct 09, 2015

  • Simple Web Pages for DMX 4.4.x

(C) 2016-2021 Malte Reißig