add iipmooviewer and mirador libraries

This commit is contained in:
rnsrk 2024-05-22 09:14:28 +02:00
parent 51e0773097
commit 8efa3fe0b4
4 changed files with 77 additions and 0 deletions

View file

@ -0,0 +1,17 @@
#!/bin/bash
set -e
echo "=> Setting up filesystem permissions"
chmod 777 /var/www/data/project/web/sites/default/
trap "chmod 755 /var/www/data/project/web/sites/default/" EXIT
echo "=> Download 'IIPMooViewer' repo"
wget https://github.com/ruven/iipmooviewer/archive/refs/heads/master.zip -P /var/www/data/project/web/sites/default/libraries/
echo "=> Unzip 'IIPMooViewer' repo"
unzip /var/www/data/project/web/sites/default/libraries/master.zip -d web/libraries/
echo "=> Remove 'IIPMooViewer' zipped package"
rm -r /var/www/data/project/web/sites/default/libraries/master.zip
echo "=> Rename 'IIPMooViewer' library"
mv /var/www/data/project/web/sites/default/libraries/iipmooviewer-master web/libraries/iipmooviewer
echo "=> Done"

View file

@ -0,0 +1,14 @@
#!/bin/bash
set -e
echo "=> Setting up filesystem permissions"
chmod 777 /var/www/data/project/web/sites/default/
trap "chmod 755 /var/www/data/project/web/sites/default/" EXIT
echo "=> Creating 'sites/default/libraries/wisski-mirador-integration/' directory"
mkdir -p /var/www/data/project/web/sites/default/libraries/wisski-mirador-integration
echo "=> Downloading 'mirador-integration.js'"
curl -L https://raw.githubusercontent.com/rnsrk/wisski-mirador-integration/main/mirador-integration.js -o /var/www/data/project/web/sites/default/libraries/wisski-mirador-integration/mirador-integration.js
echo "=> Done"

View file

@ -55,3 +55,47 @@ func (*InstallDompurifyJS) Action() InstanceAction {
func (*InstallDompurifyJS) Act(ctx context.Context, instance *wisski.WissKI, in io.Reader, out io.Writer, params ...string) error {
return instance.Barrel().Shell(ctx, stream.NewIOStream(out, out, nil), "/runtime/install_dompurify.sh")
}
type InstallMiradorJS struct {
component.Base
}
var (
_ WebsocketInstanceAction = (*InstallMiradorJS)(nil)
)
func (*InstallMiradorJS) Action() InstanceAction {
return InstanceAction{
Action: Action{
Name: "install-mirador-js",
Scope: scopes.ScopeUserAdmin,
NumParams: 0,
},
}
}
func (*InstallMiradorJS) Act(ctx context.Context, instance *wisski.WissKI, in io.Reader, out io.Writer, params ...string) error {
return instance.Barrel().Shell(ctx, stream.NewIOStream(out, out, nil), "/runtime/install_mirador.sh")
}
type InstallIIPMooViewerJS struct {
component.Base
}
var (
_ WebsocketInstanceAction = (*InstallIIPMooViewerJS)(nil)
)
func (*InstallIIPMooViewerJS) Action() InstanceAction {
return InstanceAction{
Action: Action{
Name: "install-iipmooviewer-js",
Scope: scopes.ScopeUserAdmin,
NumParams: 0,
},
}
}
func (*InstallIIPMooViewerJS) Act(ctx context.Context, instance *wisski.WissKI, in io.Reader, out io.Writer, params ...string) error {
return instance.Barrel().Shell(ctx, stream.NewIOStream(out, out, nil), "/runtime/install_iipmooviewer.sh")
}

View file

@ -229,6 +229,8 @@ func (dis *Distillery) allComponents(context *lifetime.Registry[component.Compon
lifetime.Place[*actions.Cron](context)
lifetime.Place[*actions.InstallColorboxJS](context)
lifetime.Place[*actions.InstallDompurifyJS](context)
lifetime.Place[*actions.InstallMiradorJS](context)
lifetime.Place[*actions.InstallIIPMooViewerJS](context)
lifetime.Place[*actions.Start](context)
lifetime.Place[*actions.Stop](context)
lifetime.Place[*actions.Purge](context)