I cannot seem to access the User Dashboard or the Admin Dashboard. There are no Dashboard related Extensions installed in my wiki. This feature was working about 2 weeks ago but seems to have been lost.
Hello Ryan,
starting from BlueSpice 5 the extension BlueSpiceDashboards is no longer delivered as part of the product. One can still find the source code of this extension here.
Best regards,
Hua
Huh. I would have sworn we had that in BS5. Must just be a glitch in my memory of the timing of the upgrade.
Thanks!
I’m sorry to be a PITA about this but I’m trying and failing to recover this Dashboard capability.
I have added a directory in /extensions for BlueSpiceDatashboards and have moved the content from the github into it. I am loading the extension in post-init-settings.php. I ran the update script in --force mode and it appears to have deleted the entries for the Dashboard that existed in my database.
Now when I visit either the UserDashboard or the AdminDashboard they are blank.
Is there an SQL script I can run to restore the necessary database entries to repopulate these pages?
Hey Ryan,
thanks for the feedback, though unfortunately the potential chaos of resuming the extension might be too much:
BlueSpiceDashboards can only work with the 4.x version of BlueSpiceFoundation, the core BlueSpice extension that one should definitely not downgrade, as well as ExtJSBase, the completely removed old-styled display module.
To access certain overview information one could consider visiting Special:Statistics, Special:Instance_status, Special:MediaStatistics or the “Snapshot statistics” (Special:AggregatedStatistic) instead.
Please let me know if you find certain type of wanted statistics missing.
Best regards,
Hua
Understood. To be honest the only thing we really care about was the Leaderboard
We’re trying to incentivize our team to be more proactive about adding wiki pages and editing existing pages and the Leaderboard was a useful way to get people engaged.
Also you should remove all the Dashboard content from the Blue Spice 5 wiki.
Hi Ryan,
thanks for the reminder. My colleague archived the content.
On a leader board I would recommend that you try the third-party extensions SemanticMediaWiki as well as one additional extension from its eco-system, SemanticExtraSpecialProperties. The compatibility of these extensions are well tested. With theses two extensions configured, you can generate a “top 10 contributor” leader board using such a query in your wikitext:
{{#ask: [[User edit count::+]]
|?User edit count=
|format=ul
|limit=10
|offset=0
|link=all
|sort=User edit count
|order=desc
|headers=show
|searchlabel=
|propsep=,
|valuesep=,
|prefix=none
}}
However, released as container images, BlueSpice installations will need some more steps to add additional extensions, especially those complicated semantic extensions that will only work after resolving library dependencies using Composer.
In short, one need to copy the BlueSpice source code outside the container, add extensions to the external code base, update libraries then map the external code base back to the wiki-web and wiki-task containers. A detailed tutorial is missing here, I should write one. I’ll update this thread when I have something new = )
Best regards,
Hua
That would be amazing Hua and I would really appreciate it. I have tried to avoid manipulating Composer and would love a tutorial.
Hello Ryan,
eventually I decide to add a comment here, explaining how one should add additional MediaWiki extensions to containerized BlueSpice. Anyone taking such a move should notice that this is very experimental and is only posted for community discussion.
To install more MediaWiki extensions, especially those complicated ones that relies on external libraries, one will need to manage the wiki’s code base outside the wiki-web and the wiki-task containers, add your wanted extensions then load libraries with Composer.
The steps I tried:
- Enter the sub-directory
composefor the Docker Compose files of the directory where you load projectbluespice-deploy, like one did in this step of the installation guide. - Start the stack with
./bluespice-deploy up -d, then run./bluespice-deploy cp wiki-web:/app/bluespice/w ../codeto copy the code base outside, putting it e.g in thecodesubdirectory of the project. - Add the following content to a
docker-compose.override.ymlfile in your current directory (create one if it does not yet exist, and replace the placeholder path to your real path):
services:
wiki-web:
volumes:
- /<absolute-path-to-the-project>/code:/app/bluespice/w
wiki-task:
volumes:
- /<absolute-path-to-the-project>/code:/app/bluespice/w
- Check the
bluespice-deployscript in your current directory, make sure that there is a line like-f docker-compose.override.yml \. If it is not yet there, add one like this (don’t forget the space and the backslash):
diff --git a/compose/bluespice-deploy b/compose/bluespice-deploy
index 39891ea..0c94940 100755
--- a/compose/bluespice-deploy
+++ b/compose/bluespice-deploy
@@ -69,4 +69,5 @@ fi
-f docker-compose.persistent-data-services.yml \
-f docker-compose.stateless-services.yml \
${EXTENDED_TOOLS} \
+ -f docker-compose.override.yml \
${DOCKER_ARGS[*]}
- Restart the stack to load the
ymland enter thewiki-taskcontainer as root user:
./bluespice-deploy down
./bluespice-deploy up -d
./bluespice-deploy exec -it -u root wiki-task bash
- Load Composer using its official script. I copy the lines I currently see as the second part of the following block, but you should always visit the website and use the latest, if it is different from what you see here.
cd /app/bluespice/w
mv _bluespice/pre-autoload-dump.d _bluespice/pre-autoload-dump.d.backup
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('sha384', 'composer-setup.php') === 'dac665fdc30fdd8ec78b38b9800061b4150413ff2e3b6f88543c636f7cd84f6db9189d43a81e5503cda447da73c7e5b6') { echo 'Installer verified'.PHP_EOL; } else { echo 'Installer corrupt'.PHP_EOL; unlink('composer-setup.php'); exit(1); }"
php composer-setup.php
php -r "unlink('composer-setup.php');"
- Load the wanted extension. For installation guidelines requiring
composercommand, you should replace it with./composer.phar. For example, if one want to load Extension:Maps, one should run:
COMPOSER=composer.local.json ./composer.phar require --no-update mediawiki/maps:*
./composer.phar update mediawiki/maps --no-dev --with-dependencies --ignore-platform-reqs
# Warning: --ignore-platfrom-reqs flag is a very rough override, ignoring many conditions.
# Always backup your code and data, as Composer might mess them up in certain cases.
# Consider using extensions well tested on BlueSpice, for example those you see find here:
# https://en.wiki.bluespice.com/wiki/Special:Version
- Enable the extension. Use the
exitcommand to return to your host machine, then enable your newly added extension in${DATADIR}/wiki/bluespice/post-init-settings.php. You should follow the enable tutorial of your extension and decide if you need to add more lines. For the example of Maps, you should add a line:
wfLoadExtension( 'Maps' );
- Follow the post-installation steps of your extension. For example, if it is an extension that adds new data tables to your database, it might require a run of
update.php. You can find tutorial here for the containerized BlueSpice.
Hopefully you should be able to find your extensions in Special:Version, and use it in your wiki.
Best regards,
Hua
Edit: The current SemanticMediaWiki version 5.0.2 is unfortunately not directly usable with MediaWiki 1.43.3, the base version of BlueSpice 5. A fix of SMW awaits.