The css file sources fonts relative to itself, so we need to include the font files in our distribution as well. Fixes #209
99 lines
3.6 KiB
HTML
99 lines
3.6 KiB
HTML
<!DOCTYPE html>
|
|
<html ng-app="Application" ng-controller="Controller">
|
|
<head>
|
|
<meta charset="utf-8" />
|
|
<meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width, height=device-height" />
|
|
|
|
<title> Cloudron Error </title>
|
|
|
|
<link id="favicon" href="/api/v1/cloudron/avatar" rel="icon" type="image/png">
|
|
|
|
<!-- Theme CSS -->
|
|
<link href="theme.css" rel="stylesheet" type="text/css">
|
|
|
|
<!-- external fonts and CSS -->
|
|
<link href="3rdparty/css/font-awesome.min.css" rel="stylesheet" rel="stylesheet" type="text/css">
|
|
|
|
<!-- jQuery-->
|
|
<script src="3rdparty/js/jquery.min.js"></script>
|
|
|
|
<!-- Bootstrap Core JavaScript -->
|
|
<script src="3rdparty/js/bootstrap.min.js"></script>
|
|
|
|
<!-- Angularjs scripts -->
|
|
<script src="3rdparty/js/angular.min.js"></script>
|
|
<script src="3rdparty/js/angular-loader.min.js"></script>
|
|
|
|
<script>
|
|
|
|
'use strict';
|
|
|
|
// create main application module
|
|
var app = angular.module('Application', []);
|
|
|
|
app.controller('Controller', ['$scope', '$http', function ($scope, $http) {
|
|
$scope.errorMessage = '';
|
|
$scope.statusOk = false;
|
|
$scope.avatarUrl = '/api/v1/cloudron/avatar?' + Math.random();
|
|
|
|
var favicon = $('#favicon');
|
|
if (favicon) favicon.attr('href', $scope.avatarUrl);
|
|
|
|
// try to fetch the cloudron status
|
|
$http.get('/api/v1/cloudron/status').success(function(data, status) {
|
|
if (status !== 200 || typeof data !== 'object') return console.error(status, data);
|
|
$scope.statusOk = true;
|
|
}).error(function (data, status) {
|
|
console.error(status, data);
|
|
$scope.statusOk = false;
|
|
});
|
|
|
|
var search = window.location.search.slice(1).split('&').map(function (item) { return item.split('='); }).reduce(function (o, k) { o[k[0]] = k[1]; return o; }, {});
|
|
|
|
$scope.errorCode = search.errorCode || 0;
|
|
$scope.errorContext = search.errorContext || '';
|
|
}]);
|
|
|
|
</script>
|
|
|
|
</head>
|
|
|
|
<body class="status-page">
|
|
|
|
<div class="wrapper">
|
|
<div class="content">
|
|
<img ng-src="avatarUrl" onerror="this.src = '/img/logo_inverted_192.png'"/>
|
|
<h1> Cloudron </h1>
|
|
|
|
<div ng-show="errorCode == 0">
|
|
<h3> <i class="fa fa-frown-o fa-fw text-danger"></i> Something has gone wrong </h3>
|
|
<span ng-show="statusOk">Please try again reloading the page <a href="/">here</a>.</span>
|
|
</div>
|
|
|
|
<div ng-show="errorCode == 1">
|
|
<h3> <i class="fa fa-frown-o fa-fw text-danger"></i> Cloudron is not setup </h3>
|
|
Please use the setup link you received via mail.
|
|
</div>
|
|
|
|
<div ng-show="errorCode == 2">
|
|
<h3> <i class="fa fa-frown-o fa-fw text-danger"></i> Setup requires a setupToken in the query </h3>
|
|
Please use the setup link you received via mail.
|
|
</div>
|
|
|
|
<div ng-show="errorCode == 3">
|
|
<h3> <i class="fa fa-frown-o fa-fw text-danger"></i> Setup requires an email in the query </h3>
|
|
Please use the setup link you received via mail.
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
<footer class="text-center">
|
|
<span class="text-muted">©2017 <a href="https://cloudron.io" target="_blank">Cloudron</a></span>
|
|
<span class="text-muted"><a href="https://twitter.com/cloudron_io" target="_blank">Twitter <i class="fa fa-twitter"></i></a></span>
|
|
<span class="text-muted"><a href="https://chat.cloudron.io" target="_blank">Chat <i class="fa fa-comments"></i></a></span>
|
|
</footer>
|
|
|
|
</body>
|
|
</html>
|