Giter Club home page Giter Club logo

iiab-admin-console's Issues

missing icons

en-catdogbooks_logo.png 404 (Not Found)
en-mustardseedbooks_logo.png 404 (Not Found)
en-openstax_OpenStaxLogo.jpeg 404 (Not Found)

on current master

OSM variable missing?

I can't seem to finish installing the admin console since the latest update. It seems like there is a variable missing but I'm not sure where it's supposed to be. Have you seen this before?

TASK [js-menu : Put the OSM update program in place] ********************************************************************************************************************
fatal: [127.0.0.1]: FAILED! => {"changed": false, "msg": "AnsibleUndefinedVariable: 'vector_map_path' is undefined"}
	to retry, use: --limit @/opt/iiab/iiab-admin-console/iiab-admin.retry

change 3 instances of kiwix_serve to kiwix to fix Kiwix checkbox?

@tim-moody can you investigate if this is why the Kiwix checkbox is highly flaky[*] in Admin Console?

<div class="checkbox kiwix_serve_service">
<label>
<input type="checkbox" name="kiwix_serve_enabled" id="kiwix_serve_enabled">Kiwix, serves Wikipediae and other content from sources below. You must also install content.

I'm hoping it's as easy as converting all 3 instances from kiwix_serve_* to kiwix_* ?

[*] symptoms I've seen today:

  • Kiwix checkbox appears even when Kiwix is False/False in local_vars.yml
  • Kiwix checkbox remains unchecked even after all others appears as checked (upon my 1. setting all server apps to True/True in local_vars.yml, 2. running ./runansible 3. executing "systemctl restart iiab-cmdsrv.service" to be safe)

apache2: Ansible src option requires state to be 'link' or 'hard' (not 'absent')

Identical error to iiab/iiab#860 :

TASK [console : Make the admin-console ssl version disabled in apache2] ********
[WARNING]: The src option requires state to be 'link' or 'hard'. This will
become an error in Ansible 2.10

Erroneous "src" lines (BOTH) appear to be:

Raspberry Pi User Guide (PDF)

Downloaded a RPi guide from here as /library/www/html/modules/en-rpi_guide/Raspberry_Pi_Beginners_Guide_v1.pdf.

Then updated /library/www/html/js-menu/menu-files/menu-defs/en-rpi_guide.json as attached ...
en-rpi_guide.json.zip

(For KoC/Uganda; as requested by @holta)

Editing menu item from admin console breaks link from home page

I edited the "credits" menu item from the admin console (to translate to Spanish), which broke the link from the home page. The link appeared as http://box.lan/undefined. Copying the link text (commons/html/credits.html) made that box.lan/undefined/commons/html/credits.html. Reverting to the original version of en-credits.json fixed the issue.

Steps:

Click on Content menus/Edit menu items
Change text in item and description
Click Update Menu Item Definition

Feature Request: Add Toggle Display Button to Menu [Desktop view often needed by Mobile users, for Content Pack details/metadata/footnote]

On the home page menu add a button to toggle between desktop and mobile layouts:

  • Placement: at bottom between Poweroff and trademark
  • Function: switches layout of menu items between what is configured for mobile devices and what is configured for desktop devices. This may or may not be between maximum and minimum verbosity depending on the configuration. It does not change the overall layout of the page, only the layout of individual menu items.
  • Storage: when the button is clicked it stores display_mode = 'default' or 'override' in localStorage. When the menu is loaded it will check this value to decide whether to display in mobile or desktop layout for a given device.
  • Configuration: Fields similar to those for power off will be added to the Admin Console to allow configuration of this feature.

node-red menuing is not backwards compatible

TASK [js-menu : Install js-menu config file] *************************************************************************************************************************************************
fatal: [127.0.0.1]: FAILED! => {"changed": false, "msg": "AnsibleUndefinedVariable: 'nodered_port' is undefined"}

Duplicate ZIMs very hard to visualize in "Remove Content"

  1. Is it possible the ZIM deletion interface[*] could sort all installed ZIMs alphabetically by filename (or by name) to make deletion of outdated-but-similarly-named ZIM files much easier?

  2. Or perhaps better: could the UX match the order shown on the "Get ZIM Files from Kiwix" page?

  3. In the distant future, would it make sense to add & delete ZIMs from the very same page, instead of having 2 separate pages?

[*] http://box/admin -> Install Content -> Remove Content

Design Change: moddir vs start_url

I think moddir use should be restricted to type 'html', where it is the sub directory under modules and start_url should be used for webroot, download, and possibly others.

remove xsce legacy

xsce_base is no longer needed
probably cmsrv/tasks/packages is not needed

Oer2Go sample links and icons are null

I've been trying to install IIAB and hit an error on the iiab-admin-console section. The error was caused by the script wanting to create a symlink - TASK [cmdsrv : Create symlink from /common/assets to oer2go_catalog.json]. The file didn't exist. I traced it back to this script and it seems that oer2go_cat_url = 'http://dev.worldpossible.org/cgi/json_api_v1.pl' isn't a valid link. Also dev.worldpossible.org/rachelmods/ isn't valid.

Admin Console would not load on RPi3 & Ubuntu 16.04 LTS

The very latest Admin Console would not fully load for me on RPi3 (Raspbian Desktop) earlier this week, even after rebooting.

Admin Console loaded the 1st time, but not after that.

Installation occurred using http://download.iiab.io/6.5/rpi/load.txt in both cases (on Raspbian 2017-11-29 and Ubuntu).

In each case on RPi3, ZIM-CAT never appeared on screen (in the browser) possibly due to ongoing ZIM downloads.

The workaround was:

systemctl restart iiab-cmdsrv

mouseover to disambiguate which ZIM is the right one to download?

Oftentimes there are similar ZIM files available for download within Admin Console (http://box/admin) -> Install Content menu -> "Get ZIM Files from Kiwix"

Any mouseover/tooltips/hovering method that allows these ZIM names/filenames to be disambiguated (so implementers can tell which to download) would be priceless โ€” would a simple-if-ugly quick HTML hack be sufficient?

(Understandably mouseover does not work in mobile browsers, but that's Ok here as any "content curator" in their right mind is generally NOT using a mobile browser, when building up their Internet-in-a-Box "master copy" for just about any field community...)

xo-services vs xo_services

We must have moved incompletely from xo-services to xo_services. There are still a few tags in iiab that are xo-services. But all the variables are xo_services.

But /etc/iiab/config_vars.yml still has xo-services, and therefore does not have any effect.

home menu not rendering in admin console

Intermittently some items on the home page menu do not render in Content Item List. They are in the generated html with display: none

if the load menu button is clicked they do render.

Concurrent calls to iiab-make-kiwix-lib fail? (when too many ZIM installs complete at the same time?)

Just a theory at this point, but here's an example after using Admin Console to install 10 tiny ZIM's simultaneously:

  1. I just installed 10 test ZIM's on RPi3 using http://box/admin and yet nothing showed at http://box:3000, even long after it was done. I waited about 10 min to be sure. Still nothing.

  2. Then I ran "systemctl restart kiwix-serve" and 3 ZIM's showed up at http://box:3000 but waiting/reloading page did not help.

  3. Then I clicked "Install Content" -> "Restart Kiwix Server" and all 10 ZIM's finally showed up at http://box:3000

I've seen this before. Often you need to run iiab-make-kiwix-lib (or likewise click "Restart Kiwix Serve") an additional time after the GUI (http://box/admin -> Install Content) jobs complete. IIAB veterans knows this, but this is terribly confusing to new users, and should prob be fixed :/

optionally / if poss consider official names for server apps we include?

Not everyone knows what "KA Lite" stands for, so prominent mention of "Khan Academy" is important / alongside / any which way. In any case, these are the official & widely circulated spellings / typography on the right side:

Khan Academy Lite -> KA Lite
Khan Academy Downloader -> KA Lite Downloader   (Is this separately installable/removable?)
SugarLabs -> Sugar Labs
ELGG -> Elgg
NextCloud -> Nextcloud
SAMBA -> Samba
VnStat fine as is... (official name is vnStat but this is the beginning of a sentence!)
PhpMyadmin -> PhpMyAdmin (official name is phpMyAdmin but this is the beginning of a sentence!)
Open VPN -> OpenVPN

On the left side is what current appears in our roles/console/files/htmlf/20-configure.html.

time to review artificial heading

formerly project gutenberg zims did not have a usable category, so one was calculated. now looks like gutenberg_fr_all appears in gutenberg and Gutenberg

Bug: Admin Console: Received error after attempting to cancel job. [OSM]

Expected behavior and actual behavior.

Received error after attempting to cancel job. See image.

Steps to reproduce the problem.

Go to http://box.lan/admin/, Select "Utilities", Select "Display Job Status", Select a job to cancel, Click "Cancel Checked Jobs"; Tried selecting different jobs, all jobs, all cancelations failed.

Specifications like the version of the IIAB, operating system version, or hardware details.

Macbook Pro 2.7 Ghz 8 GB Ram
Mac OS Sierra 10.12.6
Chrome Version 74.0.3729.169
Server: RPI 4B Buster Lite
IIAB: 7.0 pre-release

image

Known Problem - OEWR2GO Catalog

The oer2go catalog is sometimes offline and sometimes broken in the sense that the json can not be parsed due to non-utf8 characters.

These errors are trapped, but result in no download. That means that warnings about the catalog being more than 30 days old will persist.

Admin Console erroneously truncating ZIM filenames that contain dots

http://box/admin -> Utilties -> Display Job Status -> "Command" Column shows:

/usr/bin/wget -c --progress=dot:giga http://download.kiwix.org/zim/stack_exchange/es.stackoverflow.com_es_all_2018-03.zim -O /library/working/zims/es.zim

The result is that ZIM files containing periods (.) are erroneously truncated.

In the case of es.stackoverflow.com_es_all_2018-03.zim above, the ZIM file's content was downloaded correctly, but it ended up misnamed as follows:

root@box:/library/zims/content# ls -lh es.zim
-rw-r--r-- 1 root root 1.1G Mar 24 07:14 es.zim

Admin Console download of OpenMapTiles.com requires catalog of URLs [OSM]

Tim's problem statement:
4. Add Get OSM Tiles to Admin Console Install Content (without using iframes). What I would like would be to capture the navigation html, especially the region tree, allow a click, and capture the download url, which would then be passed to the cmdsrv to actually do the download and then run your db merge on it.

JS should be able to make metadata substitutions into menu items

  1. Menu runtime substitutions. Currently ##HOST## gets replaced at runtime by the proper href with the host as accessed. I had planned, mostly for zims, to provide other substitutions, like number of articles, size, etc., anything in the kiwix catalog. This is less important for oer2go items as they are pretty static, so I am less disturbed by hard coding numbers of pdfs etc. I have already stubbed this in with an (empty) array of substitution strings, but there is no code. We don't want to read the whole kiwix catalog at menu runtime, so we also need a data structure along the lines of /library/www/html/common/assets/zim_version_idx.json and I had thought to just add additional attributes to that file as it is already needed by the menuing runtime.

6.4 backward compatibility

iiab 6.5 changes ini variable section from network to computed_network

/opt/admin/console/js/admin_console.js follows this change and is incompatible with earlier versions
which require line 622 setRadioButton("gui_desired_network_role", iiab_ini.network.iiab_network_mode)

Admin Console failed to install (intermittent, on IIAB 6.5 RC)

@tim-moody & @jvonau: is there any evidence below that this is related to installing over WiFi, i.e. a DNS or Internet glitch possibly? This occurred on a fully updated Raspbian Lite on RPi 3 B+.

2018-04-05 18:22:15,129 p=2373 u=root | fatal: [127.0.0.1]: FAILED! => {"changed": false, "cmd": "/usr/bin/pip2 install --download /opt/iiab/pip-packages speedtest-cli", "failed": true, "msg": "stdout: Collecting speedtest-cli\n\n:stderr: DEPRECATION: pip install --download has been deprecated and will be removed in the future. Pip now has a download command that should be used instead.\nException:\nTraceback (most recent call last):\n File "/usr/lib/python2.7/dist-packages/pip/basecommand.py", line 215, in main\n status = self.run(options, args)\n File "/usr/lib/python2.7/dist-packages/pip/commands/install.py", line 342, in run\n requirement_set.prepare_files(finder)\n File "/usr/lib/python2.7/dist-packages/pip/req/req_set.py", line 380, in prepare_files\n ignore_dependencies=self.ignore_dependencies))\n File "/usr/lib/python2.7/dist-packages/pip/req/req_set.py", line 554, in _prepare_file\n require_hashes\n File "/usr/lib/python2.7/dist-packages/pip/req/req_install.py", line 278, in populate_link\n self.link = finder.find_requirement(self, upgrade)\n File "/usr/lib/python2.7/dist-packages/pip/index.py", line 465, in find_requirement\n all_candidates = self.find_all_candidates(req.name)\n File "/usr/lib/python2.7/dist-packages/pip/index.py", line 423, in find_all_candidates\n for page in self._get_pages(url_locations, project_name):\n File "/usr/lib/python2.7/dist-packages/pip/index.py", line 568, in _get_pages\n page = self._get_page(location)\n File "/usr/lib/python2.7/dist-packages/pip/index.py", line 683, in _get_page\n return HTMLPage.get_page(link, session=self.session)\n File "/usr/lib/python2.7/dist-packages/pip/index.py", line 792, in get_page\n "Cache-Control": "max-age=600",\n File "/usr/share/python-wheels/requests-2.12.4-py2.py3-none-any.whl/requests/sessions.py", line 501, in get\n return self.request('GET', url, **kwargs)\n File "/usr/lib/python2.7/dist-packages/pip/download.py", line 386, in request\n return super(PipSession, self).request(method, url, *args, **kwargs)\n File "/usr/share/python-wheels/requests-2.12.4-py2.py3-none-any.whl/requests/sessions.py", line 488, in request\n resp = self.send(prep, **send_kwargs)\n File "/usr/share/python-wheels/requests-2.12.4-py2.py3-none-any.whl/requests/sessions.py", line 609, in send\n r = adapter.send(request, **kwargs)\n File "/usr/share/python-wheels/CacheControl-0.11.7-py2.py3-none-any.whl/cachecontrol/adapter.py", line 47, in send\n resp = super(CacheControlAdapter, self).send(request, **kw)\n File "/usr/share/python-wheels/requests-2.12.4-py2.py3-none-any.whl/requests/adapters.py", line 423, in send\n timeout=timeout\n File "/usr/share/python-wheels/urllib3-1.19.1-py2.py3-none-any.whl/urllib3/connectionpool.py", line 643, in urlopen\n _stacktrace=sys.exc_info()[2])\n File "/usr/share/python-wheels/urllib3-1.19.1-py2.py3-none-any.whl/urllib3/util/retry.py", line 315, in increment\n total -= 1\nTypeError: unsupported operand type(s) for -=: 'Retry' and 'int'\n"}

Overwrite of menu-defs

Has anyone seen that doing a repeat of install for Admin Console overwrites modified menu-defs. This was supposed to have been prevented some time ago.

need button to refresh menu display

adm cons does not know when zim or module finishes installing, so new menu def can be generated that is not in memory.

add button to refresh

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.