);
my $op = $query->param('op') || q{};
+my $mana_base = C4::Context->config('mana_config') || '';
+# Check the mana server actually exists at the other end
+my $bad_url;
+if ($mana_base) {
+ my $request = HTTP::Request->new( GET => $mana_base );
+ my $result = Koha::SharedContent::process_request($request);
+ $bad_url = 1 unless (exists($result->{version}));
+}
if ( $op eq 'save' ) {
my $auto_share = $query->param('autosharewithmana') || q{};
my $content = to_json({name => $name,
email => $email});
- my $mana_ip = C4::Context->config('mana_config');
- my $url = "$mana_ip/getsecuritytoken";
+ my $url = "$mana_base/getsecuritytoken";
my $request = HTTP::Request->new( POST => $url );
$request->content($content);
my $result = Koha::SharedContent::process_request($request);
}
-my $mana_url = C4::Context->config('mana_config') || q{};
-
$template->param(
- mana_url => $mana_url,
+ mana_url => $mana_base,
+ bad_url => $bad_url,
);
output_html_with_http_headers $query, $cookie, $template->output;
<div class="dialog alert" role="alert">
Mana configuration is currently empty. This feature will not work. Please contact your site administrator.
</div>
+ [% ELSIF (bad_url) %]
+ <div class="dialog alert" role="alert">
+ Cannot detect mana server at <strong>[% mana_url | url %]</strong>, please ask an administrator to check your configuration.
+ </div>
[% END %]
<h1>Share content with the Koha community using Mana KB</h1>