Commit Graph

46 Commits

Author SHA1 Message Date
Tim Orling
22ee6617b4 bootstrap: fix typo in minified file name
Fixes dropdown menus so they are functional again.

Signed-off-by: Tim Orling <tim.orling@konsulko.com>
2023-10-19 14:01:47 -07:00
Tim Orling
99c97660fb Chart.js: upgrade from 2.9.3 to 2.9.4
https://github.com/chartjs/Chart.js/releases/tag/v2.9.4

CVE: CVE-2020-7746

https://nvd.nist.gov/vuln/detail/CVE-2020-7746

Signed-off-by: Tim Orling <tim.orling@konsulko.com>
2023-10-16 17:44:40 -07:00
Tim Orling
28f06c5ac9 Chart.js: add version to filenames
Signed-off-by: Tim Orling <tim.orling@konsulko.com>
2023-10-16 17:44:40 -07:00
Tim Orling
2566208185 bootstrap: add version to filenames
To make it easier to quickly see what version we are using, add
the version to the filenames.

Also, use minified flavor in templates/base.html

Signed-off-by: Tim Orling <tim.orling@konsulko.com>
2023-10-16 17:40:01 -07:00
Tim Orling
79172de651 jquery: upgrade 3.4.1 -> 3.7.1
Use minified version in templates/base.html

Fixes some vulernabilities:
https://nvd.nist.gov/vuln/search/results?adv_search=true&isCpeNameSearch=true&query=cpe%3A2.3%3Aa%3Ajquery%3Ajquery%3A3.4.1%3A*%3A*%3A*%3A*%3Anode.js%3A*%3A*

CVE: CVE-2020-23064
CVE: CVE-2020-11022
CVE: CVE-2020-11023

For full changelog see:
https://github.com/jquery/jquery/compare/3.4.1...3.7.1

License-Update: Copyright OpenJS Foundation (from JS Foundation)

Signed-off-by: Tim Orling <tim.orling@konsulko.com>
2023-10-16 17:37:37 -07:00
Paul Eggleton
365cfde783 Upgrade Chart.js to 2.9.3
Quite a few bugs fixed, as far as I know none that we observed, but good
to have. Details can be found here:

https://github.com/chartjs/Chart.js/releases

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2019-12-09 11:39:47 +13:00
Paul Eggleton
20544033cd Upgrade jquery to 3.4.1
Minor bugfix releases, but we should have them anyway:

https://blog.jquery.com/2019/04/10/jquery-3-4-0-released/
https://blog.jquery.com/2019/05/01/jquery-3-4-1-triggering-focus-events-in-ie-and-finding-root-elements-in-ios-10/

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2019-12-09 11:35:37 +13:00
Paul Eggleton
b4529f4b43 Upgrade Bootstrap to 3.4.1
https://blog.getbootstrap.com/2019/02/13/bootstrap-4-3-1-and-3-4-1/
https://blog.getbootstrap.com/2018/12/13/bootstrap-3-4-0/

These include a couple of CVE fixes, but this application already
sanitises data when rendering so it is unlikely to have been vulnerable.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2019-12-09 11:30:46 +13:00
Paul Eggleton
fec977de30 Drop LICENSE.diff2html
This was added when we brought over a patch from the Clear Linux
Dissector, but here we're not using diff2html here so we shouldn't have
this either.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2019-11-21 02:51:30 +13:00
Paul Eggleton
a3dcf9e8ed Add LICENSE texts for distributed components
Include upstream license notices.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2019-07-17 11:31:04 +12:00
Paul Eggleton
e10d21240c Fix Submit/Edit layer form field rendering issue
Some controls on the Submit / Edit Layer page were getting the wrong
width and any "feedback" elements were being pulled to the right because
of the size of their parent divs. Instead of pulling in the size of the
form control, act on the div to fix the problem. Additionally the
help text should now be allowed to expand to the full width of the
parent div since that is now sensible.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2018-11-20 11:58:42 +13:00
Paul Eggleton
aa10299356 Replace uitablefilter usage with jQuery
We were using uitablefilter.js to provide live filtering of table rows
based upon a search field value, but it turns out this module really
isn't necessary - we can accomplish the same thing using simple jQuery
code. While we're at it, enable the search field on the layers list page
to work in conjunction with with the drop-down layer type selection, fix
pasting into the search field and refreshing with a search specified.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2018-11-19 16:44:42 +13:00
Paul Eggleton
631116a1c4 Replace nvd3 with Chart.js
nvd3 and its python/django wrappers appear to be no longer actively
maintained, and at least the wrappers were a bit clunky to use. Looking
around for a suitable replacement, Chart.js seems capable, has no
additional dependencies and is fairly simple to use. As a bonus we get
to drop a few Python dependencies from our list.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2018-11-06 10:33:39 +13:00
Paul Eggleton
3cc90cde35 Fix wrapping on update detail page
Sometimes we get massively long lines from the update script
(particularly if there's an error) so ensure that long lines get
wrapped.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2018-10-01 16:32:15 +13:00
Paul Eggleton
606e14e412 comparison: use style on hidden select instead of CSS class to hide
This isn't a visual thing, this select element must remain hidden, so it
seems a bit more appropriate to me to specify the style directly on the
element rather than using a CSS class to do it.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2018-09-26 16:03:52 +12:00
Paul Eggleton
74b1b9c895 Show update task output more smoothly
We were refreshing the page constantly in order to show output while
a task was running, which basically worked but is horrible. Instead,
write the task output to a file and then use AJAX calls to request
whatever output has been written to the file since the last call
and call this roughly every second. Put the output in a scrollable <pre>
element instead of making it the length of the page, and auto-scroll
to the end (unless the user grabs the scrollbar and pulls it upwards -
it may not be immediately obvious that you can do this if there is a lot
of output since you have to pull it up when the scrolling animation is
not running, but it is possible).

An alternative would be to have used some kind of long-lived HTTP
session or a websocket, but those come with their own set of problems
so I elected to use this much simpler method.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2018-09-20 16:04:49 +12:00
Paul Eggleton
517424dc81 Upgrade to Bootstrap 3
Use a more modern version of Bootstrap and take the opportunity to
upgrade jQuery to the latest version at the same time. This provides
better browser compatibility, moves to MIT license, allows us to make
the site more responsive for different devices in future, and provides
theming capabilities for custom installs among other improvements.

(I chose to upgrade to v3 for now rather than straight to v4 as it was
easier to do this gradually.)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2018-09-20 15:57:59 +12:00
Paul Eggleton
db08df4a86 Improve collection/display of LayerUpdate records
Make layerupdate collection slightly more reliable and make it easier
to see when updates have actually been captured:

* Split layerbranch into separate layer and branch fields, since there
  may not be a layerbranch in existence but we might want to log an
  error relating to the branch and layer.
* Show all layerupdates on the update detail page, not just those with
  log messages
* Record before and after revisions and show these in the update detail
  and layerupdate detail (with links)
* Record return code of update_layer process
* Highlight layer updates with a non-zero return code, errors or
  warnings in the output on the update detail page
* Show duration on the layerupdate detail page

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2018-08-14 15:07:34 +02:00
Paul Eggleton
f38bae1dd9 Add side-by-side comparison detail and enhanced selection
Specifying the covering recipe in the comparison recipe detail page was
always a bit awkward - you could only type the name, if you wanted to
actually find a recipe or look up the currently selected one's details
then you had to open another browser tab/window. To fix this, replace
the form on the comparison recipe detail page with a side-by-side
display of the covering recipe's information, along with a button that
lets you search and then select the covering recipe and at the same time
enter comments or set any of the other cover fields.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2018-08-13 16:04:16 +02:00
Paul Eggleton
72d67231ec Add support for other distro comparisons
Turn the existing OE-Classic support into something a bit more
generic so we can import data from other distributions and compare it to
what we have in layers.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2018-08-07 14:44:27 +02:00
Belen Barros Pena
84120c0fa6 rrs: Set of UI improvments
Give some space to the tabs,
	Add some top margin to the nav-pills class so we
	create some breathing space between the milestone
	overview and the tabs.

Change 'No Maintainer' to 'No maintainer'
	Just to keep the capitalisation style consistent
	across the interface.

Apply the muted class to all not-sortable table headings
	The class was missing from the Recipe and Maintainer
	columns in the recipes table; and from the Not updated
	and % done column in the maintainers table.

Remove the strong tag from the recipe status information
	This is just to match the presentation of the milestone
	overview information in the base_toplevel.html template.

Separate the footer from the bottom of the viewport,
	It's hard to see the footer on click on its links when
	they are so close to the bottom of the veiwport, so
	add some margin at the bottom of the footer <div>.

Change the label of the recipes tab,
	From 'Recipes status' to 'Recipes upstream status' to
	match the label of the 'Upstream status' filter in the
	recipes table.

Signed-off-by: Belen Barros Pena <belen.barros.pena@intel.com>
Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2018-05-04 23:57:51 +12:00
Amanda Brindle
fdcde00710 Indicate if layer has YP Compatible certification
Allow admin to create Yocto Project versions with the version name,
description, an icon link that represents that version, and a link that
contains more information about the version.

Admins who have the "set_yp_compatibility" permission can then
decide if a layer has Yocto Project compatible certification,
and if it does, admin can choose which version of Yocto Project
the layer is compatible with. If a layer is deemed compatible,
the version's icon will appear next to the layer's name, and
the icon be a clickable link to a page with more information.

Fixes [YOCTO #11452]

Signed-off-by: Amanda Brindle <amanda.r.brindle@intel.com>
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2017-09-27 15:26:24 +13:00
Paul Eggleton
ac6b563716 editlayer: allow selecting web interface type
For some repo URLs we can automatically determine the values of all of
the other fields - e.g. for github or git.openembedded.org, and we've
been doing that for a while. However if someone submits a URL for some
other site we don't know what type of interface it uses, and usually
the submitter leaves the fields blank so it falls to the layer index
maintainer to set the values, and then you have to remember what the
correct URL format is which is awkward especially for gitweb.

In order to fix this, add a select field to the form which allows
specifying which type of interface is being used. At the moment only
cgit, gitweb, gitlab and "(custom)" (i.e. the current behaviour) are
supported. This is not a real field but activates javascript code
that sets the other fields and enables/disables the controls.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2016-10-25 20:33:42 +13:00
Alex Franco
50eef9b55a Display recipe blacklist information
Display blacklist information for recipes in the recipe details,
as well as the recipe search page, and layer page tables. This
information is pulled from the PNBLACKLIST variable. Includes a
hover text containing the reason for blacklist labels.

Changes to Django and Layerindex files:
- models.py, update.py
- migration file
- templates and static content (stylesheet)

[YOCTO #7855]

Signed-off-by: Alex Franco <alejandro.franco@linux.intel.com>
Signed-off-by: Elliot Smith <elliot.smith@intel.com>
2016-05-24 14:22:58 +01:00
Alex Franco
fd63761d2a Support for recipe inherits field
To identify image recipes and provide inheritance data for recipes, an
inherits field was added to the recipe model, and then populated using
refactored data from __inherit_cache. Finally the field was also added
to page templates, along with style changes proposed in attachment, and
an additional style change to display the inherits field as a list in
detailed view. The field skips globally inherited data as proposed.

[YOCTO #7575]

Signed-off-by: Alex Franco <alejandro.franco@linux.intel.com>
Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2015-10-07 11:34:28 +01:00
Paul Eggleton
6d0b9d40aa duplicates: add ability to select layers
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2014-03-09 19:17:49 +00:00
Paul Eggleton
5aa533b678 Fix OE-Classic stats page for update to latest django-nvd3 (0.6.0)
Update d3/nvd3 js files in the process, but hold off on nv.d3.css for
now because the latest version breaks the formatting/fading on tooltips.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2014-03-03 23:12:35 +00:00
Paul Eggleton
b5074ed2aa Top bar functions improvements
* Change Submit layer link into a button
* Ensure tools dropdown menu doesn't show on layer submit/edit page

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2013-09-05 00:31:23 +01:00
Paul Eggleton
c3a8eb4d82 Add support for importing OE-Classic recipes
Add a script for doing a one-time import of OE-Classic recipe
information, so comparisons against OE-Core can be performed; this
is stored using a new ClassicRecipe model supporting additional fields
for tracking migration status. The migration status fields can be
updated as well as viewed and summarised in graph format.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2013-09-05 00:31:22 +01:00
Paul Eggleton
1c70da817b Force scrollbar to always show to prevent page width changing
Having the page content dance about when switching between pages just
because one has a scrollbar and the other doesn't is annoying, so just
force the scrollbar to show all of the time to avoid this.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2013-08-11 11:28:15 +01:00
Paul Eggleton
4185d5c2d3 Update bootstrap to latest version (2.3.0)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2013-08-11 11:28:15 +01:00
Paul Eggleton
608851b2d3 Login drop-down style improvements
Thanks to Belen for the design.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2013-08-11 11:28:15 +01:00
Paul Eggleton
5166582791 Add cancel button to edit layer form
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2013-08-11 11:28:14 +01:00
Paul Eggleton
84709dbca6 Add recipe bulk change feature
This provides a way to set "meta" fields (SUMMARY, DESCRIPTION,
HOMEPAGE, BUGTRACKER, SECTION, and LICENSE) for a number of recipes at
once, and then download those changes in the form of one or more patch
files which can be submitted for merging into the layer.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2013-08-11 11:28:14 +01:00
Paul Eggleton
6ec84fb7f5 editlayer: fix checkboxes not showing up in Chromium
Somehow due to some CSS shenanigans these checkboxes had 0 width in
Chromium and thus were invisible. A style on the td had to be used
because a style on the input doesn't seem to fix it.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2013-03-30 08:42:05 +00:00
Paul Eggleton
342ff28648 De-emphasise recipes where there is a more preferred version available
If another recipe exists with the same name in a different layer and
that other layer is "older" (by layer ID) and is a software or base
layer then lighten the recipe entry in the search results as it may
not be the preferred version (e.g. recipes in BSP or distro layers may
have been customised specifically for the machine or distro).

This has had a performance impact on the recipes list; as a result
showing all recipes by default has been disabled. If the user really
wants to see all recipes they can just leave the search box blank and
hit the search button.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2013-03-20 17:04:56 +00:00
Paul Eggleton
4faeab6595 Add introductory front page
Give the user a friendly introduction instead of plunging them straight
into the layers list. (Of course if people want to link directly to the
layers list they still can.)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2013-03-06 20:13:49 +00:00
Paul Eggleton
4b3aad2cea Add CAPTCHA to submission form
This should prevent spamming even though this is less likely with this
kind of site.

The CAPTCHA does not show when editing, only submitting, and is also not
shown for authenticated users.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2013-02-28 15:48:38 +00:00
Paul Eggleton
482abdcc8a Submit/edit form tweaks
* Don't specify action on form - this is best practice and avoids the
  need to have separate form tags for submit and edit
* Add a short introduction to the submit form
* Focus first field on load only if first field is empty (avoids doing
  this focusing on the edit form which is not really useful).

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2013-02-28 14:36:41 +00:00
Belen Barros
f178ea3151 Styles for the submit layers form
Improve styling and layout

Signed-off-by: Belen Barros <belen.barros.pena@intel.com>
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2013-02-28 14:36:41 +00:00
Paul Eggleton
b9b77b8be1 Make it easier to select repo URL/subdir on detail page
Add an icon with some javascript to select the URL / subdir text so it
can be easily copied (since dragging can easily select unwanted text
from the rest of the page).

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2013-02-26 14:24:42 +00:00
Paul Eggleton
f6c10424e4 Add OE favicon
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2013-02-25 12:07:33 +00:00
Paul Eggleton
cbeba65dac Use scrolling list of checkboxes for dependencies on submit form
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2013-02-25 11:03:54 +00:00
Belen Barros
18bbce1de9 Layer details style changes
Changed to full screen layout to improve the table display
and get rid of the accordion for the layer information.

Signed-off-by: Belen Barros <belen.barros.pena@intel.com>
2013-02-22 17:11:20 +00:00
Paul Eggleton
ea213c8007 Add a basic about page
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2013-02-20 11:20:11 +00:00
Paul Eggleton
2eb5f38b21 Initial commit of layerindex-web
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2013-02-13 12:09:57 +00:00