enonic / app-admin-home

Home application for Enonic XP admin
GNU General Public License v3.0
1 stars 1 forks source link

Add license info to About XP dialog #68

Closed jsi closed 5 years ago

jsi commented 5 years ago

In order to put our product in the Google Cloud, our licenses must be easily accessible for all users. Here is a design approved by @sigdestad

New License box

So the idea is to replace the three links at the bottom of the current About Box with on line that says "Licensing v" Where the v is some kind of arrow down. When you click on it, the About box expands to show the License information as shown in the screenshot. This should be a long text with scrollbar on the right. The first two lines should be as shown in the screenshot:

After these two texts, all the licenses should be listed, followed by the actual license text. The list of licenses and the license text may be found in the xp and lib-admin-ui projects:

In order to avoid doubly updating the information in these files, the best solution would parse the files, either live or at build time, and include the info in a way shown in the screenshot, where the blue text that states the actual license, just links to the license text below, while the link opens up a new tab to the source code where the actual license is stated.

Note that the "NOTICE.txt" files may be changed around to make them easier to parse. They can be changed to XML, JSON or some other format that allows them to be parsed more easily by the new code.

alansemenov commented 5 years ago

@jsi Our NOTICE.txt files typically include contents of all of the used licenses following the list of the licenses. So it's done in the same way in the About box as well - first the list of licenses, then license contents.

jsi commented 5 years ago

@alansemenov Looks good! I have checked it on nightly!

Only question I have is this: The notice URL and license URL as defined in the AboutDialog.ts file. Are they loaded live? If we do it this way, old versions will load new licenses. This may be okay throughout the life of 7.x, but when we switch to 8, we will likely make such big changes that this could be incorrect.

Or: Have I misunderstood something?