aboutsummaryrefslogtreecommitdiffhomepage
path: root/main/app/sprinkles/core/templates/pages
diff options
context:
space:
mode:
authormarvin-borner@live.com2018-04-17 18:35:48 +0200
committermarvin-borner@live.com2018-04-17 18:35:48 +0200
commit6c9fc1146f466230840d9177f5b0daf1f55a8313 (patch)
treea5da06b510cc1b780d12d86619a03bb7cabc685b /main/app/sprinkles/core/templates/pages
parentaac2385c32ae2fe4462a6fb038a4619c0019e2ee (diff)
Fixed translation issues - extended cms use
Diffstat (limited to 'main/app/sprinkles/core/templates/pages')
-rw-r--r--main/app/sprinkles/core/templates/pages/abstract/mainsite.html.twig1
-rwxr-xr-xmain/app/sprinkles/core/templates/pages/index.html.twig20
-rw-r--r--main/app/sprinkles/core/templates/pages/partials/chat.js.twig123
3 files changed, 129 insertions, 15 deletions
diff --git a/main/app/sprinkles/core/templates/pages/abstract/mainsite.html.twig b/main/app/sprinkles/core/templates/pages/abstract/mainsite.html.twig
index d12ccde..fe21d34 100644
--- a/main/app/sprinkles/core/templates/pages/abstract/mainsite.html.twig
+++ b/main/app/sprinkles/core/templates/pages/abstract/mainsite.html.twig
@@ -8,7 +8,6 @@
<!-- The 'X-UA-Compatible' tag must be first, otherwise IE will not respect it. See http://stackoverflow.com/questions/25557299/internet-explorer-11-disable-display-intranet-sites-in-compatibility-view-via -->
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta charset="utf-8">
- <meta name="generator" content="UserFrosting" />
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
<meta name="description" content="{% block page_description %}This page has not yet been configured.{% endblock %}">
<meta name="author" content="{% block page_author %}{{ site.author }}{% endblock %}">
diff --git a/main/app/sprinkles/core/templates/pages/index.html.twig b/main/app/sprinkles/core/templates/pages/index.html.twig
index 4c7c838..5de2d30 100755
--- a/main/app/sprinkles/core/templates/pages/index.html.twig
+++ b/main/app/sprinkles/core/templates/pages/index.html.twig
@@ -15,7 +15,7 @@
<div class="header">
<span class="LeftButtonHeader"><img draggable="false" ondragstart="return false;"
src="{{ assets.url('assets://SiteAssets/icons/BurgerMenuShort.svg') }}"></span>
- <span class="HeaderCaption"><span data-lang='Feed'></span></span>
+ <span class="HeaderCaption">{{ translate("TAB_CAPTIONS.FEED") }}</span>
<span class="RightButtonHeader"><i class="fas fa-bell"></i></span>
</div>
<hr>
@@ -26,7 +26,7 @@
<div class="header">
<span class="LeftButtonHeader"><img draggable="false" ondragstart="return false;"
src="{{ assets.url('assets://SiteAssets/icons/BurgerMenuShort.svg') }}"></span>
- <span class="HeaderCaption"><span data-lang='Explore'></span></span>
+ <span class="HeaderCaption">{{ translate("TAB_CAPTIONS.EXPLORE") }}</span>
<span class="RightButtonHeader"><i class="fas fa-bell"></i></span>
</div>
<hr>
@@ -37,7 +37,7 @@
<div class="header">
<span class="LeftButtonHeader"><img draggable="false" ondragstart="return false;"
src="{{ assets.url('assets://SiteAssets/icons/BurgerMenuShort.svg') }}"></span>
- <span class="HeaderCaption"><span data-lang='Chat'></span></span>
+ <span class="HeaderCaption">{{ translate("TAB_CAPTIONS.CHAT") }}</span>
<span class="RightButtonHeader"><i class="fas fa-bell"></i></span>
</div>
<hr>
@@ -57,7 +57,7 @@
<div class="header">
<span class="LeftButtonHeader"><img draggable="false" ondragstart="return false;"
src="{{ assets.url('assets://SiteAssets/icons/BurgerMenuShort.svg') }}"></span>
- <span class="HeaderCaption"><span data-lang='Friends'></span></span>
+ <span class="HeaderCaption">{{ translate("TAB_CAPTIONS.FRIENDS") }}</span>
<span class="RightButtonHeader"><i class="fas fa-bell"></i></span>
</div>
<hr>
@@ -68,7 +68,7 @@
<div class="header">
<span class="LeftButtonHeader"><img draggable="false" ondragstart="return false;"
src="{{ assets.url('assets://SiteAssets/icons/BurgerMenuShort.svg') }}"></span>
- <span class="HeaderCaption"><span data-lang='Personal'></span></span>
+ <span class="HeaderCaption">{{ translate("TAB_CAPTIONS.PERSONAL") }}</span>
<span class="RightButtonHeader"><i class="fas fa-bell"></i></span>
</div>
<hr>
@@ -97,16 +97,8 @@
</div>
{% endblock %}
-
-
{% block scripts_page %}
- <!-- Script to Activate the Language -->
<script>
- function initiateLanguage() {
- var translate = new Translate();
- var currentLng = 'de'; // <- PHP IP LOCATION
- translate.init(currentLng);
- translate.process();
- }
+ {% include "pages/partials/chat.js.twig" %}
</script>
{% endblock %}
diff --git a/main/app/sprinkles/core/templates/pages/partials/chat.js.twig b/main/app/sprinkles/core/templates/pages/partials/chat.js.twig
new file mode 100644
index 0000000..779008f
--- /dev/null
+++ b/main/app/sprinkles/core/templates/pages/partials/chat.js.twig
@@ -0,0 +1,123 @@
+{% autoescape 'js' %}
+
+/************
+ GENERATE KEYS
+ ************/
+if (localStorage.getItem('KeysGenerated') === null || localStorage.getItem('KeysGenerated') !== "true") {
+ // GENERATE -- LATER ON LOGIN!
+ var EncryptionPhrase = "PASSWORD 123"; // THE USERS PASSWORD -- needs to generate on login!
+ var RSABitLength = 1024;
+ var PrivateKeyString = cryptico.generateRSAKey(EncryptionPhrase, RSABitLength);
+ var PublicKeyString = cryptico.publicKeyString(PrivateKeyString);
+ // SAVE TO DATABASE
+ $.ajax({
+ type: "POST",
+ url: "assets/php/SavePublicKey.php",
+ data: {
+ UserID: "1", // TEMPORARY
+ PublicKeyString: PublicKeyString
+ },
+ async: true,
+ error: function () {
+ console.error("Error while saving public key to database!");
+ },
+ success: function () {
+ localStorage.setItem('KeysGenerated', "true");
+ }
+ });
+}
+
+
+/******
+ GENERAL
+ ******/
+
+var ChatTextInput = $("#ChatTextInput");
+var SubscribeTextInput = $("#SubscribeTextInput");
+var ChatMessages = $("#ChatMessages");
+
+var WebSocket = new WebSocket('wss://marvinborner.ddnss.de:1337');
+
+WebSocket.onopen = function () {
+ console.log("Chat connection established!");
+};
+
+WebSocket.onmessage = function (e) {
+ var LastMessage = $(".ChatMessage:last");
+ var MessageObject = JSON.parse(e.data);
+ if (MessageObject.ServerMessage === false) {
+ if (MessageObject.WasHimself === true) { //MessageObject.Username
+ if (!LastMessage.hasClass("MessageSent")) {
+ ChatMessages.append("<div class='ChatMessage MessageSent AloneMessage'>" + MessageObject.Message + "</div><br><br>");
+ } else if (LastMessage.hasClass("MessageSent")) {
+ if (LastMessage.hasClass("AloneMessage")) {
+ LastMessage.removeClass("AloneMessage");
+ LastMessage.addClass("TopMessage");
+ } else if (LastMessage.hasClass("BottomMessage")) {
+ LastMessage.removeClass("BottomMessage");
+ LastMessage.addClass("MiddleMessage");
+ }
+ ChatMessages.append("<div class='ChatMessage MessageSent BottomMessage'>" + MessageObject.Message + "</div><br><br>");
+ }
+ $('.MessageSent').linkify({
+ target: "_blank"
+ });
+ } else if (MessageObject.WasHimself === false) {
+ if (!LastMessage.hasClass("MessageReceived")) {
+ ChatMessages.append("<div class='ChatMessage MessageReceived AloneMessage'>" + MessageObject.Message + "</div><br><br>");
+ } else if (LastMessage.hasClass("MessageReceived")) {
+ if (LastMessage.hasClass("AloneMessage")) {
+ LastMessage.removeClass("AloneMessage");
+ LastMessage.addClass("TopMessage");
+ } else if (LastMessage.hasClass("BottomMessage")) {
+ LastMessage.removeClass("BottomMessage");
+ LastMessage.addClass("MiddleMessage");
+ }
+ ChatMessages.append("<div class='ChatMessage MessageReceived BottomMessage'>" + MessageObject.Message + "</div><br><br>");
+ }
+ $('.MessageReceived').linkify({
+ target: "_blank"
+ });
+ }
+ } else if (MessageObject.ServerMessage === true) {
+ if (MessageObject.ServerMessageType === "GroupJoin") {
+ if (MessageObject.WasHimself === false) {
+ var TempJoinMessage = "{{ translate("CHAT_MESSAGES.USER_GROUP_JOIN", {user: "ConvertTranslatedMessageWithUsername"}) }}";
+ var GeneratedJoinMessage = TempJoinMessage.replace("ConvertTranslatedMessageWithUsername", MessageObject.Username);
+ ChatMessages.append("<div class='ServerChatMessage'>" + GeneratedJoinMessage + ".</div><br><br>");
+ } else if (MessageObject.WasHimself === true) {
+ ChatMessages.empty();
+ ChatMessages.append("<div class='ServerChatMessage'>{{ translate("CHAT_MESSAGES.YOU_GROUP_JOIN") }} " + MessageObject.GroupName + "</span>.</div><br><br>");
+ }
+ } else if (MessageObject.ServerMessageType === "UserDisconnect") {
+ var TempDisconnectMessage = "{{ translate("CHAT_MESSAGES.USER_DISCONNECT", {user: "ConvertTranslatedMessageWithUsername"}) }}";
+ var GeneratedDisconnectMessage = TempDisconnectMessage.replace("ConvertTranslatedMessageWithUsername", MessageObject.Username);
+ ChatMessages.append("<div class='ServerChatMessage'>" + GeneratedDisconnectMessage + ".</div><br><br>");
+ }
+ }
+};
+
+ChatTextInput.keyup(function (e) {
+ if (e.keyCode === 13) {
+ sendMessage(ChatTextInput.val());
+ ChatTextInput.val("");
+ }
+});
+
+SubscribeTextInput.keyup(function (e) {
+ if (e.keyCode === 13) {
+ subscribe(SubscribeTextInput.val());
+ }
+});
+
+function subscribe(channel) {
+ WebSocket.send(JSON.stringify({ClientMessageType: "Subscribe", Channel: channel}));
+ SubscribeTextInput.hide();
+ ChatTextInput.show();
+}
+
+function sendMessage(msg) {
+ WebSocket.send(JSON.stringify({ClientMessageType: "Message", Message: msg}));
+ ChatTextInput.val("");
+}
+{% endautoescape %} \ No newline at end of file