System update (summer remix)

This commit is contained in:
markseu 2016-08-13 17:48:18 +02:00
parent c47f6f7c8d
commit 168b285ea6
9 changed files with 569 additions and 395 deletions

View file

@ -53,12 +53,12 @@ UpdateThemesUrl: https://github.com/datenstrom/yellow-themes
UpdateVersionFile: version.ini
UpdateInformationFile: update.ini
WebinterfaceLocation: /edit/
WebinterfaceNewFile: page-new-(.*).txt
WebinterfaceMetaFilePrefix: published
WebinterfaceUserFile: user.ini
WebinterfaceUserPasswordMinLength: 4
WebinterfaceUserHashAlgorithm: bcrypt
WebinterfaceUserHashCost: 10
WebinterfaceUserStatus: active
WebinterfaceUserPending: none
WebinterfaceUserHome: /
WebinterfaceUserFile: user.ini
WebinterfaceNewFile: page-new-(.*).txt
WebinterfaceMetaFilePrefix: published

View file

@ -3,7 +3,7 @@
Language: de
LanguageDescription: Deutsch
LanguageAuthor: David Fehrmann
LanguageVersion: 0.6.6
LanguageVersion: 0.6.7
BlogBy: von
BlogFilter: Blog:
@ -51,28 +51,45 @@ WebinterfaceSignupStatusNext: Benutzerkonto wird erstellt, bitte überprüfe dei
WebinterfaceRecoverTitle: Kennwort vergessen
WebinterfaceRecoverEmail: E-Mail:
WebinterfaceRecoverPassword: Kennwort:
WebinterfaceRecoverButton: Absenden
WebinterfaceRecoverStatusNone: Kein Problem, du kannst ein neues Kennwort erstellen.
WebinterfaceRecoverStatusInvalid: Bitte eine gültige E-Mail angeben.
WebinterfaceRecoverStatusPassword: Bitte ein neues Kennwort angeben.
WebinterfaceRecoverStatusWeak: Bitte eine anderes Kennwort angeben.
WebinterfaceRecoverStatusNext: Benutzerkonto wird wiederhergestellt, bitte überprüfe deine E-Mails.
WebinterfaceSettingsTitle: Einstellungen
WebinterfaceSettingsStatusInvalid: Bitte eine gültige E-Mail angeben.
WebinterfaceSettingsStatusExists: Bitte eine andere E-Mail angeben.
WebinterfaceSettingsStatusWeak: Bitte eine anderes Kennwort angeben.
WebinterfaceSettingsStatusNext: Benutzerkonto wird geändert, bitte überprüfe deine E-Mails.
WebinterfaceConfirmSubject: Benutzerkonto bestätigen
WebinterfaceConfirmMessage: Hallo @usershort, bitte bestätige dein Benutzerkonto. Klicke auf den folgenden Link.
WebinterfaceConfirmStatusDone: Benutzerkonto wurde bestätigt. Vielen Dank!
WebinterfaceConfirmStatusExpire: Benutzerkonto kann nicht bestätigt werden. Link ist abgelaufen!
WebinterfaceConfirmStatusDone: Benutzerkonto wurde bestätigt und wartet auf Genehmigung. Vielen Dank!
WebinterfaceConfirmStatusExpired: Benutzerkonto kann nicht bestätigt werden. Link ist abgelaufen!
WebinterfaceApproveSubject: Benutzerkonto genehmigen
WebinterfaceApproveMessage: Hallo @usershort, bitte genehmige ein neues Benutzerkonto für @useraccount. Klicke auf den folgenden Link.
WebinterfaceApproveStatusDone: Benutzerkonto wurde genehmigt. Vielen Dank!
WebinterfaceApproveStatusExpire: Benutzerkonto kann nicht genehmigt werden. Link ist abgelaufen!
WebinterfaceApproveStatusExpired: Benutzerkonto kann nicht genehmigt werden. Link ist abgelaufen!
WebinterfaceRecoverSubject: Benutzerkonto wiederherstellen
WebinterfaceRecoverMessage: Hallo @usershort, bitte bestätige dass du dein Kennwort vergessen hast. Klicke auf den folgenden Link.
WebinterfaceRecoverStatusDone: Benutzerkonto wurde wiederhergestellt. Vielen Dank!
WebinterfaceRecoverStatusExpire: Benutzerkonto kann nicht wiederhergestellt werden. Link ist abgelaufen!
WebinterfaceRecoverStatusExpired: Benutzerkonto kann nicht wiederhergestellt werden. Link ist abgelaufen!
WebinterfaceReconfirmSubject: Benutzerkonto ändern
WebinterfaceReconfirmMessage: Hallo @usershort, bitte bestätige eine neue E-Mail für dein Benutzerkonto. Klicke auf den folgenden Link.
WebinterfaceReconfirmStatusDone: Benutzerkonto wurde bestätigt. Vielen Dank!
WebinterfaceReconfirmStatusExpired: Benutzerkonto kann nicht bestätigt werden. Link ist abgelaufen!
WebinterfaceChangeSubject: Benutzerkonto ändern
WebinterfaceChangeMessage: Hallo @usershort, bitte bestätige dass du dein Benutzerkonto ändern möchtest. Klicke auf den folgenden Link.
WebinterfaceChangeStatusDone: Benutzerkonto wurde geändert. Vielen Dank!
WebinterfaceChangeStatusExpired: Benutzerkonto kann nicht geändert werden. Link ist abgelaufen!
WebinterfaceWelcomeSubject: Willkommen
WebinterfaceWelcomeMessage: Hallo @usershort, dein Benutzerkonto wurde erstellt. Viel Spass beim Bearbeiten der Webseite.
WebinterfaceInformationSubject: Willkommen zurück
WebinterfaceInformationMessage: Hallo @usershort, dein Benutzerkonto wurde geändert. Viel Spass beim Bearbeiten der Webseite.
WebinterfaceInformationMessage: Hallo @usershort, dein Benutzerkonto wurde geändert. Du kannst dich jetzt anmelden.
WebinterfaceUpdateTitle: Aktualisierung
WebinterfaceUpdateCheck: Nach Aktualisierung suchen
WebinterfaceUpdateStatusNone: Nach Aktualisierung suchen…
WebinterfaceUpdateStatusEmpty: Keine Aktualisierung verfügbar.
WebinterfaceUpdateButton: Aktualisieren
WebinterfaceOkButton: Ok
WebinterfaceCancelButton: Abbruch
WebinterfaceCreateButton: Erzeugen
@ -81,12 +98,9 @@ WebinterfaceDeleteButton: Löschen
WebinterfaceEdit: Seite ändern
WebinterfaceCreate: +
WebinterfaceDelete: -
WebinterfaceCreateTitle: Neue Seite
WebinterfaceCreateTitle: Seite erzeugen
WebinterfaceDeleteTitle: Seite löschen
WebinterfaceMarkdownHelp: Markdown
WebinterfaceSettingsTitle: Einstellungen
WebinterfaceSettingsChangeEmail: Email ändern
WebinterfaceSettingsChangePassword: Kennwort ändern
WebinterfaceUserHelp: Hilfe
WebinterfaceUserLogout: Abmelden
WikiFilter: Wiki:

View file

@ -3,7 +3,7 @@
Language: en
LanguageDescription: English
LanguageAuthor: Mark Seuffert
LanguageVersion: 0.6.6
LanguageVersion: 0.6.7
BlogBy: by
BlogFilter: Blog:
@ -51,28 +51,45 @@ WebinterfaceSignupStatusNext: User account will be created, please check your em
WebinterfaceRecoverTitle: Forgot your password
WebinterfaceRecoverEmail: Email:
WebinterfaceRecoverPassword: Password:
WebinterfaceRecoverButton: Send
WebinterfaceRecoverStatusNone: No problem, you can create a new password.
WebinterfaceRecoverStatusInvalid: Please enter a valid email.
WebinterfaceRecoverStatusPassword: Please enter a new password.
WebinterfaceRecoverStatusWeak: Please enter a different password.
WebinterfaceRecoverStatusNext: User account will be recovered, please check your emails.
WebinterfaceSettingsTitle: Settings
WebinterfaceSettingsStatusInvalid: Please enter a valid email.
WebinterfaceSettingsStatusExists: Please enter a different email.
WebinterfaceSettingsStatusWeak: Please enter a different password.
WebinterfaceSettingsStatusNext: User account will be changed, please check your emails.
WebinterfaceConfirmSubject: Confirm user account
WebinterfaceConfirmMessage: Hi @usershort, please confirm your user account. Click the following link.
WebinterfaceConfirmStatusDone: User account confirmed. Thank you!
WebinterfaceConfirmStatusExpire: User account can not be confirmed. Link has expired!
WebinterfaceConfirmStatusDone: User account confirmed and waiting for approval. Thank you!
WebinterfaceConfirmStatusExpired: User account can not be confirmed. Link has expired!
WebinterfaceApproveSubject: Approve user account
WebinterfaceApproveMessage: Hi @usershort, please approve a new user account for @useraccount. Click the following link.
WebinterfaceApproveStatusDone: User account approved. Thank you!
WebinterfaceApproveStatusExpire: User account can not be approved. Link has expired!
WebinterfaceApproveStatusExpired: User account can not be approved. Link has expired!
WebinterfaceRecoverSubject: Recover user account
WebinterfaceRecoverMessage: Hi @usershort, please confirm that you forgot your password. Click the following link.
WebinterfaceRecoverStatusDone: User account recovered. Thank you!
WebinterfaceRecoverStatusExpire: User account can not be recovered. Link has expired!
WebinterfaceRecoverStatusExpired: User account can not be recovered. Link has expired!
WebinterfaceReconfirmSubject: Change user account
WebinterfaceReconfirmMessage: Hi @usershort, please confirm a new email for your user account. Click the following link.
WebinterfaceReconfirmStatusDone: User account confirmed. Thank you!
WebinterfaceReconfirmStatusExpired: User account can not be confirmed. Link has expired!
WebinterfaceChangeSubject: Change user account
WebinterfaceChangeMessage: Hi @usershort, please confirm that you want to change your user account. Click the following link.
WebinterfaceChangeStatusDone: User account changed. Thank you!
WebinterfaceChangeStatusExpired: User account can not be changed. Link has expired!
WebinterfaceWelcomeSubject: Welcome
WebinterfaceWelcomeMessage: Hi @usershort, your user account has been created. Have fun editing the website.
WebinterfaceInformationSubject: Welcome back
WebinterfaceInformationMessage: Hi @usershort, your user account has been changed. Have fun editing the website.
WebinterfaceInformationMessage: Hi @usershort, your user account has been changed. You can now log in.
WebinterfaceUpdateTitle: Updates
WebinterfaceUpdateCheck: Check for updates
WebinterfaceUpdateStatusNone: Checking for updates…
WebinterfaceUpdateStatusEmpty: No updates available.
WebinterfaceUpdateButton: Update
WebinterfaceOkButton: Ok
WebinterfaceCancelButton: Cancel
WebinterfaceCreateButton: Create
@ -81,12 +98,9 @@ WebinterfaceDeleteButton: Delete
WebinterfaceEdit: Edit page
WebinterfaceCreate: +
WebinterfaceDelete: -
WebinterfaceCreateTitle: New page
WebinterfaceCreateTitle: Create page
WebinterfaceDeleteTitle: Delete page
WebinterfaceMarkdownHelp: Markdown
WebinterfaceSettingsTitle: Settings
WebinterfaceSettingsChangeEmail: Change your email
WebinterfaceSettingsChangePassword: Change your password
WebinterfaceUserHelp: Help
WebinterfaceUserLogout: Logout
WikiFilter: Wiki:

View file

@ -3,7 +3,7 @@
Language: fr
LanguageDescription: Français
LanguageAuthor: Juh Nibreh
LanguageVersion: 0.6.6
LanguageVersion: 0.6.7
BlogBy: par
BlogFilter: Blog:
@ -51,28 +51,45 @@ WebinterfaceSignupStatusNext: Votre compte a été créé, vérifiez vos emails.
WebinterfaceRecoverTitle: Mot de passe oublié
WebinterfaceRecoverEmail: Email:
WebinterfaceRecoverPassword: Mot de passe:
WebinterfaceRecoverButton: Envoyer
WebinterfaceRecoverStatusNone: Pas de problème, vous pouvez créer un nouveau mot de passe.
WebinterfaceRecoverStatusInvalid: S'il vous plaît, veuillez entrer une adresse email valide.
WebinterfaceRecoverStatusPassword: S'il vous plaît, choisissez un nouveau mot de passe.
WebinterfaceRecoverStatusWeak: S'il vous plaît, choisissez un mot de passe différent.
WebinterfaceRecoverStatusNext: Votre compte est à nouveau disponible, vérifiez vos emails.
WebinterfaceConfirmSubject: Création d'un compte utilisateur.
WebinterfaceConfirmMessage: Bonjour @usershort, veuillez confirmer la création de votre compte utilisateur. Cliquez sur le lien suivant.
WebinterfaceConfirmStatusDone: Votre compte utilisateur est confirmé. Merci!
WebinterfaceConfirmStatusExpire: Votre compte utilisateur ne peut pas être créé. Le lien de confirmation a expiré!
WebinterfaceApproveSubject: Approuver un nouvel utilisateur.
WebinterfaceSettingsTitle: Paramètres
WebinterfaceSettingsStatusInvalid: S'il vous plaît, veuillez entrer une adresse email valide.
WebinterfaceSettingsStatusExists: S'il vous plaît, veuillez entrer une adresse email différent.
WebinterfaceSettingsStatusWeak: S'il vous plaît, choisissez un mot de passe différent.
WebinterfaceSettingsStatusNext: Votre compte a été changé, vérifiez vos emails.
WebinterfaceConfirmSubject: Confirmation d'un compte utilisateur
WebinterfaceConfirmMessage: Bonjour @usershort, veuillez confirmer votre compte utilisateur. Cliquez sur le lien suivant.
WebinterfaceConfirmStatusDone: Votre compte utilisateur est confirmé et en attente d'approbation. Merci!
WebinterfaceConfirmStatusExpired: Le compte ne peut pas être créé. Le lien de confirmation a expiré!
WebinterfaceApproveSubject: Approuver un nouvel utilisateur
WebinterfaceApproveMessage: Bonjour @usershort, veuillez approuver la création d'un nouveau compte utilisateur pour @useraccount. Cliquez sur le lien suivant.
WebinterfaceApproveStatusDone: Compte utilisateur approuvé. Merci!
WebinterfaceApproveStatusExpire: Le compte ne peut pas être approuvé. Le lien de confirmation a expiré!
WebinterfaceRecoverSubject: Restauration d'un compte utilisateur.
WebinterfaceApproveStatusExpired: Le compte ne peut pas être approuvé. Le lien de confirmation a expiré!
WebinterfaceRecoverSubject: Restauration d'un compte utilisateur
WebinterfaceRecoverMessage: Bonjour @usershort, veuillez confirmer que vous avez oublié votre mot de passe. Cliquez sur le lien suivant.
WebinterfaceRecoverStatusDone: Compte utilisateur restauré. Merci!
WebinterfaceRecoverStatusExpire: Le compte ne peut pas être restauré. Le lien de confirmation a expiré!
WebinterfaceRecoverStatusExpired: Le compte ne peut pas être restauré. Le lien de confirmation a expiré!
WebinterfaceReconfirmSubject: Changement d'un compte utilisateur
WebinterfaceReconfirmMessage: Bonjour @usershort, veuillez confirmer une nouvelle adresse email pour votre compte utilisateur. Cliquez sur le lien suivant.
WebinterfaceReconfirmStatusDone: Votre compte utilisateur est confirmé. Merci!
WebinterfaceReconfirmStatusExpired: Le compte ne peut pas être créé. Le lien de confirmation a expiré!
WebinterfaceChangeSubject: Changement d'un compte utilisateur
WebinterfaceChangeMessage: Bonjour @usershort, veuillez confirmer que vous souhaitez modifier votre compte utilisateur. Cliquez sur le lien suivant.
WebinterfaceChangeStatusDone: Compte utilisateur changé. Merci!
WebinterfaceChangeStatusExpired: Le compte ne peut pas être changé. Le lien de confirmation a expiré!
WebinterfaceWelcomeSubject: Bienvenue
WebinterfaceWelcomeMessage: Bonjour @usershort, votre compte utilisateur a bien été créé. Amusez-vous bien en éditant le site web.
WebinterfaceInformationSubject: Bienvenue à nouveau
WebinterfaceInformationMessage: Bonjour @usershort, votre compte utilisateur a bien été changé. Amusez-vous bien en éditant le site web.
WebinterfaceInformationMessage: Bonjour @usershort, votre compte utilisateur a bien été changé. Vous pouvez maintenant vous connecter.
WebinterfaceUpdateTitle: Mises à jour
WebinterfaceUpdateCheck: Vérifier les mises à jour
WebinterfaceUpdateStatusNone: Vérification des mises à jour…
WebinterfaceUpdateStatusEmpty: Aucune mise à jour disponible.
WebinterfaceUpdateButton: Mettre à jour
WebinterfaceOkButton: Ok
WebinterfaceCancelButton: Annuler
WebinterfaceCreateButton: Créer
@ -81,12 +98,9 @@ WebinterfaceDeleteButton: Supprimer
WebinterfaceEdit: Éditer page
WebinterfaceCreate: +
WebinterfaceDelete: -
WebinterfaceCreateTitle: Nouvelle page
WebinterfaceCreateTitle: Créer page
WebinterfaceDeleteTitle: Supprimer page
WebinterfaceMarkdownHelp: Markdown
WebinterfaceSettingsTitle: Paramètres
WebinterfaceSettingsChangeEmail: Changez email
WebinterfaceSettingsChangePassword: Changez mot de passe
WebinterfaceUserHelp: Aide
WebinterfaceUserLogout: Déconnexion
WikiFilter: Wiki:

View file

@ -5,7 +5,7 @@
// Language plugin
class YellowLanguage
{
const VERSION = "0.6.6";
const VERSION = "0.6.7";
var $yellow; //access to API
// Handle initialisation

View file

@ -5,7 +5,7 @@
// Update plugin
class YellowUpdate
{
const VERSION = "0.6.6";
const VERSION = "0.6.7";
var $yellow; //access to API
// Handle initialisation
@ -284,12 +284,10 @@ class YellowUpdate
$statusCode = 0;
if($this->isContentFile($fileName))
{
$fileName = $this->yellow->lookup->findFileNew($fileName,
$this->yellow->config->get("webinterfaceNewFile"), $this->yellow->config->get("configDir"), "installation");
$this->yellow->pages->pages["root/"] = array();
$this->yellow->page = new YellowPage($this->yellow);
$this->yellow->page->setRequestInformation($serverScheme, $serverName, $base, $location, $fileName);
$this->yellow->page->parseData($this->getRawDataInstallation($fileName, $this->yellow->getRequestLanguage()), false, 404);
$this->yellow->page->parseData($this->getRawDataInstallation($this->yellow->getRequestLanguage()), false, 404);
$this->yellow->page->parserSafeMode = false;
$this->yellow->page->parseContent();
$name = trim(preg_replace("/[^\pL\d\-\. ]/u", "-", $_REQUEST["name"]));
@ -346,8 +344,9 @@ class YellowUpdate
}
// Return raw data for installation page
function getRawDataInstallation($fileName, $language)
function getRawDataInstallation($language)
{
$fileName = strreplaceu("(.*)", "installation", $this->yellow->config->get("configDir").$this->yellow->config->get("webinterfaceNewFile"));
$rawData = $this->yellow->toolbox->readFile($fileName);
if(empty($rawData))
{

View file

@ -1,4 +1,4 @@
/* Yellow web interface 0.6.10 */
/* Yellow web interface 0.6.11 */
.yellow-bar { position:relative; overflow:hidden; height:2em; margin-bottom:10px; }
.yellow-bar-left { display:block; float:left; }
@ -20,7 +20,7 @@
.yellow-pane p { margin:0.5em; }
.yellow-pane ul { list-style:none; margin:0 0.5em; padding:0; }
.yellow-pane div { overflow:hidden; }
.yellow-close { display:block; float:right; padding:0 0.5em; color:#bbb; }
.yellow-close { display:block; float:right; padding:0 0.5em; color:#bbb; font-size:1.1em; }
.yellow-close:hover { text-decoration:none; color:#000; }
.yellow-arrow { position:absolute; top:0; left:0; }
.yellow-arrow:after, .yellow-arrow:before {
@ -70,18 +70,6 @@
text-decoration:none;
}
.yellow-btn:active { box-shadow:inset 0 2px 4px rgba(0, 0, 0, 0.1); }
.yellow-btn-create {
background-color:#3cc335; color:#ffffff;
background-image:linear-gradient(to bottom, #5fee5b, #36bd2f);
border-color:#31b121 #31b121 #20b020;
}
.yellow-btn-create:hover, .yellow-btn-create:focus, .yellow-btn-create:active { color:#ffffff; }
.yellow-btn-edit {
background-color:#3cc335; color:#ffffff;
background-image:linear-gradient(to bottom, #5fee5b, #36bd2f);
border-color:#31b121 #31b121 #20b020;
}
.yellow-btn-edit:hover, .yellow-btn-edit:focus, .yellow-btn-edit:active { color:#ffffff; }
.yellow-btn-delete {
background-color:#c33c35; color:#ffffff;
background-image:linear-gradient(to bottom, #ee5f5b, #bd362f);

View file

@ -4,7 +4,7 @@
// Yellow API
var yellow =
{
version: "0.6.10",
version: "0.6.11",
action: function(action) { yellow.webinterface.action(action, "none"); },
onLoad: function() { yellow.webinterface.loadInterface(); },
onClick: function(e) { yellow.webinterface.hidePanesOnClick(yellow.toolbox.getEventElement(e)); },
@ -34,6 +34,8 @@ yellow.webinterface =
case "approve": this.showPane("yellow-pane-signup", action, status); break;
case "recover": this.showPane("yellow-pane-recover", action, status); break;
case "settings": this.showPane("yellow-pane-settings", action, status); break;
case "reconfirm": this.showPane("yellow-pane-settings", action, status); break;
case "change": this.showPane("yellow-pane-settings", action, status); break;
case "create": this.showPane("yellow-pane-edit", action, status, true); break;
case "edit": this.showPane("yellow-pane-edit", action, status, true); break;
case "delete": this.showPane("yellow-pane-edit", action, status, true); break;
@ -174,7 +176,8 @@ yellow.webinterface =
"<div id=\"yellow-pane-settings-fields\">"+
"<input type=\"hidden\" name=\"action\" value=\"settings\" />"+
"<p><label for=\"yellow-pane-settings-name\">"+this.getText("SignupName")+"</label><br /><input class=\"yellow-form-control\" name=\"name\" id=\"yellow-pane-settings-name\" maxlength=\"64\" value=\""+yellow.toolbox.encodeHtml(this.getRequest("name"))+"\" /></p>"+
this.getLanguages(paneId)+
"<p><label for=\"yellow-pane-settings-email\">"+this.getText("SignupEmail")+"</label><br /><input class=\"yellow-form-control\" name=\"email\" id=\"yellow-pane-settings-email\" maxlength=\"64\" value=\""+yellow.toolbox.encodeHtml(this.getRequest("email"))+"\" /></p>"+
"<p><label for=\"yellow-pane-settings-password\">"+this.getText("SignupPassword")+"</label><br /><input class=\"yellow-form-control\" type=\"password\" name=\"password\" id=\"yellow-pane-settings-password\" maxlength=\"64\" value=\"\" /></p>"+this.getLanguages(paneId)+
"<p><input class=\"yellow-btn\" type=\"submit\" value=\""+this.getText("OkButton")+"\" /></p>"+
"</div>"+
"<div id=\"yellow-pane-settings-buttons\">"+
@ -185,11 +188,11 @@ yellow.webinterface =
case "yellow-pane-edit":
elementDiv.innerHTML =
"<form method=\"post\">"+
"<a href=\"#\" onclick=\"yellow.action('close'); return false;\" class=\"yellow-close\">x</a>"+
"<h1 id=\"yellow-pane-edit-title\">"+this.getText("Edit")+"</h1>"+
"<textarea id=\"yellow-pane-edit-page\" class=\"yellow-form-control\" name=\"rawdataedit\"></textarea>"+
"<div id=\"yellow-pane-edit-buttons\">"+
"<input id=\"yellow-pane-edit-send\" class=\"yellow-btn\" type=\"button\" onclick=\"yellow.action('send'); return false;\" value=\""+this.getText("EditButton")+"\" />"+
"<input id=\"yellow-pane-edit-close\" class=\"yellow-btn\" type=\"button\" onclick=\"yellow.action('close'); return false;\" value=\""+this.getText("CancelButton")+"\" />"+
"<a href=\""+this.getText("MarkdownHelpUrl", "yellow")+"\" target=\"_blank\" id=\"yellow-pane-edit-help\">"+this.getText("MarkdownHelp")+"</a>" +
"</div>"+
"</form>";
@ -211,48 +214,41 @@ yellow.webinterface =
updatePane: function(paneId, paneAction, paneStatus, init)
{
if(yellow.config.debug) console.log("yellow.webinterface.updatePane id:"+paneId);
var showFields = paneStatus!="next" && paneStatus!="done" && paneStatus!="expired";
switch(paneId)
{
case "yellow-pane-login":
if(!yellow.config.loginButtons)
if(yellow.config.loginRestrictions)
{
document.getElementById("yellow-pane-login-buttons").style.display = "none";
yellow.toolbox.setVisible(document.getElementById("yellow-pane-login-buttons"), false);
}
break;
case "yellow-pane-signup":
if(paneStatus=="next" || paneStatus=="done" || paneStatus=="expire")
{
document.getElementById("yellow-pane-signup-fields").style.display = "none";
} else {
document.getElementById("yellow-pane-signup-buttons").style.display = "none";
}
yellow.toolbox.setVisible(document.getElementById("yellow-pane-signup-fields"), showFields);
yellow.toolbox.setVisible(document.getElementById("yellow-pane-signup-buttons"), !showFields);
break;
case "yellow-pane-recover":
if(paneStatus=="next" || paneStatus=="done" || paneStatus=="expire")
yellow.toolbox.setVisible(document.getElementById("yellow-pane-recover-fields-first"), showFields);
yellow.toolbox.setVisible(document.getElementById("yellow-pane-recover-fields-second"), showFields);
yellow.toolbox.setVisible(document.getElementById("yellow-pane-recover-buttons"), !showFields);
if(showFields)
{
document.getElementById("yellow-pane-recover-fields-first").style.display = "none";
document.getElementById("yellow-pane-recover-fields-second").style.display = "none";
} else {
document.getElementById("yellow-pane-recover-buttons").style.display = "none";
if(this.getRequest("id"))
{
document.getElementById("yellow-pane-recover-fields-first").style.display = "none";
yellow.toolbox.setVisible(document.getElementById("yellow-pane-recover-fields-first"), false);
} else {
document.getElementById("yellow-pane-recover-fields-second").style.display = "none";
yellow.toolbox.setVisible(document.getElementById("yellow-pane-recover-fields-second"), false);
}
}
break;
case "yellow-pane-settings":
if(paneStatus=="next" || paneStatus=="done" || paneStatus=="expire")
{
document.getElementById("yellow-pane-settings-fields").style.display = "none";
} else {
document.getElementById("yellow-pane-settings-buttons").style.display = "none";
}
yellow.toolbox.setVisible(document.getElementById("yellow-pane-settings-fields"), showFields);
yellow.toolbox.setVisible(document.getElementById("yellow-pane-settings-buttons"), !showFields);
if(paneStatus=="none")
{
document.getElementById("yellow-pane-settings-status").innerHTML = yellow.toolbox.encodeHtml(yellow.config.serverVersion);
document.getElementById("yellow-pane-settings-name").value = yellow.config.userName;
document.getElementById("yellow-pane-settings-email").value = yellow.config.userEmail;
document.getElementById("yellow-pane-settings-"+yellow.config.userLanguage).checked = true;
}
break;
@ -271,20 +267,17 @@ yellow.webinterface =
yellow.toolbox.setCursorPosition(document.getElementById("yellow-pane-edit-page"), 0);
}
paneAction = this.getPaneAction(paneId, paneAction);
if(paneAction)
var key, className, readOnly;
switch(paneAction)
{
var key, className;
switch(paneAction)
{
case "create": key = "CreateButton"; className = "yellow-btn yellow-btn-create"; break;
case "edit": key = "EditButton"; className = "yellow-btn yellow-btn-edit"; break;
case "delete": key = "DeleteButton"; className = "yellow-btn yellow-btn-delete"; break;
}
document.getElementById("yellow-pane-edit-send").value = this.getText(key);
document.getElementById("yellow-pane-edit-send").className = className;
} else {
document.getElementById("yellow-pane-edit-send").style.display = "none";
case "create": key = "CreateButton"; className = "yellow-btn yellow-btn-create"; readOnly = false; break;
case "edit": key = "EditButton"; className = "yellow-btn yellow-btn-edit"; readOnly = false; break;
case "delete": key = "DeleteButton"; className = "yellow-btn yellow-btn-delete"; readOnly = false; break;
case "": key = "CancelButton"; className = "yellow-btn yellow-btn-cancel"; readOnly = true; break;
}
document.getElementById("yellow-pane-edit-send").value = this.getText(key);
document.getElementById("yellow-pane-edit-send").className = className;
document.getElementById("yellow-pane-edit-page").readOnly = readOnly;
break;
}
},
@ -342,7 +335,7 @@ yellow.webinterface =
if(!yellow.toolbox.isVisible(element))
{
if(yellow.config.debug) console.log("yellow.webinterface.showPane id:"+paneId);
element.style.display = "block";
yellow.toolbox.setVisible(element, true);
if(modal)
{
yellow.toolbox.addClass(document.body, "yellow-body-modal-open");
@ -368,7 +361,7 @@ yellow.webinterface =
if(yellow.config.debug) console.log("yellow.webinterface.hidePane id:"+paneId);
yellow.toolbox.removeClass(document.body, "yellow-body-modal-open");
yellow.toolbox.removeValue("meta[name=viewport]", "content", ", maximum-scale=1, user-scalable=0");
element.style.display = "none";
yellow.toolbox.setVisible(element, false);
this.paneId = 0;
this.paneAction = 0;
this.paneStatus = 0;
@ -451,7 +444,7 @@ yellow.webinterface =
getLanguages: function(paneId)
{
var languages = "";
if(yellow.toolbox.getLength(yellow.config.serverLanguages)>1)
if(yellow.config.serverLanguages && yellow.toolbox.getLength(yellow.config.serverLanguages)>1)
{
languages += "<p>";
for(var language in yellow.config.serverLanguages)
@ -559,7 +552,7 @@ yellow.toolbox =
return Object.keys ? Object.keys(element).length : 0;
},
// Set element width/height in pixel, including padding and border
// Set element width in pixel, including padding and border
setOuterWidth: function(element, width, maxWidth)
{
width -= this.getBoxSize(element).width;
@ -571,6 +564,7 @@ yellow.toolbox =
}
},
// Set element height in pixel, including padding and border
setOuterHeight: function(element, height, maxHeight)
{
height -= this.getBoxSize(element).height;
@ -582,7 +576,7 @@ yellow.toolbox =
}
},
// Return element width/height in pixel, including padding and border
// Return element width in pixel, including padding and border
getOuterWidth: function(element, includeMargin)
{
var width = element.offsetWidth;
@ -590,6 +584,7 @@ yellow.toolbox =
return width;
},
// Return element height in pixel, including padding and border
getOuterHeight: function(element, includeMargin)
{
var height = element.offsetHeight;
@ -597,18 +592,19 @@ yellow.toolbox =
return height;
},
// Return element width/height in pixel
// Return element width in pixel
getWidth: function(element)
{
return element.offsetWidth - this.getBoxSize(element).width;
},
// Return element height in pixel
getHeight: function(element)
{
return element.offsetHeight - this.getBoxSize(element).height;
},
// Set element top/left position in pixel
// Set element top position in pixel
setOuterTop: function(element, top, marginTop)
{
if(marginTop)
@ -619,6 +615,7 @@ yellow.toolbox =
}
},
// Set element left position in pixel
setOuterLeft: function(element, left, marginLeft)
{
if(marginLeft)
@ -629,25 +626,27 @@ yellow.toolbox =
}
},
// Return element top/left position in pixel
// Return element top position in pixel
getOuterTop: function(element)
{
var top = element.getBoundingClientRect().top;
return top + (window.pageYOffset || document.documentElement.scrollTop);
},
// Return element left position in pixel
getOuterLeft: function(element)
{
var left = element.getBoundingClientRect().left;
return left + (window.pageXOffset || document.documentElement.scrollLeft);
},
// Return window width/height in pixel
// Return window width in pixel
getWindowWidth: function()
{
return window.innerWidth || document.documentElement.clientWidth;
},
// Return window height in pixel
getWindowHeight: function()
{
return window.innerHeight || document.documentElement.clientHeight;
@ -726,6 +725,12 @@ yellow.toolbox =
return pos;
},
// Set element visibility
setVisible: function(element, show)
{
element.style.display = show ? "block" : "none";
},
// Check if element exists and is visible
isVisible: function(element)
{

File diff suppressed because it is too large Load diff