gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[libeufin] 02/07: Commenting out Jinja initialization.


From: gnunet
Subject: [libeufin] 02/07: Commenting out Jinja initialization.
Date: Tue, 29 Jun 2021 15:59:13 +0200

This is an automated email from the git hooks/post-receive script.

ms pushed a commit to branch master
in repository libeufin.

commit cf835854e5cd07fd7d1b630d5c13da31abe08f49
Author: ms <ms@taler.net>
AuthorDate: Tue Jun 29 11:37:24 2021 +0200

    Commenting out Jinja initialization.
    
    It will be enabled again after having found a
    solution for the i18n.
---
 .../main/kotlin/tech/libeufin/sandbox/Helpers.kt   | 73 ++++++++++++++++++++--
 1 file changed, 67 insertions(+), 6 deletions(-)

diff --git a/sandbox/src/main/kotlin/tech/libeufin/sandbox/Helpers.kt 
b/sandbox/src/main/kotlin/tech/libeufin/sandbox/Helpers.kt
index bc9c908..75448f9 100644
--- a/sandbox/src/main/kotlin/tech/libeufin/sandbox/Helpers.kt
+++ b/sandbox/src/main/kotlin/tech/libeufin/sandbox/Helpers.kt
@@ -19,6 +19,9 @@
 
 package tech.libeufin.sandbox
 
+import com.google.common.io.Resources
+import com.hubspot.jinjava.Jinjava
+import com.hubspot.jinjava.lib.fn.ELFunctionDefinition
 import io.ktor.http.HttpStatusCode
 import org.jetbrains.exposed.sql.SqlExpressionBuilder.eq
 import org.jetbrains.exposed.sql.and
@@ -66,11 +69,11 @@ fun getBankAccountFromLabel(label: String): 
BankAccountEntity {
 
 fun getBankAccountFromSubscriber(subscriber: EbicsSubscriberEntity): 
BankAccountEntity {
     return transaction {
-        BankAccountEntity.find(BankAccountsTable.subscriber eq subscriber.id)
-    }.firstOrNull() ?: throw SandboxError(
-        HttpStatusCode.NotFound,
-        "Subscriber doesn't have any bank account"
-    )
+        subscriber.bankAccount ?: throw SandboxError(
+            HttpStatusCode.NotFound,
+            "Subscriber doesn't have any bank account"
+        )
+    }
 }
 fun getEbicsSubscriberFromDetails(userID: String, partnerID: String, hostID: 
String): EbicsSubscriberEntity {
     return transaction {
@@ -82,4 +85,62 @@ fun getEbicsSubscriberFromDetails(userID: String, partnerID: 
String, hostID: Str
             "Ebics subscriber not found"
         )
     }
-}
\ No newline at end of file
+}
+
+/**
+ * FIXME: commenting out until a solution for i18n is found.
+ *
+private fun initJinjava(): Jinjava {
+    class JinjaFunctions {
+        // Used by templates to retrieve configuration values.
+        fun settings_value(name: String): String {
+            return "foo"
+        }
+        fun gettext(translatable: String): String {
+            // temporary, just to make the compiler happy.
+            return translatable
+        }
+        fun url(name: String): String {
+            val map = mapOf<String, String>(
+                "login" to "todo",
+                "profile" to "todo",
+                "register" to "todo",
+                "public-accounts" to "todo"
+            )
+            return map[name] ?: throw 
SandboxError(HttpStatusCode.InternalServerError, "URL name unknown")
+        }
+    }
+    val jinjava = Jinjava()
+    val settingsValueFunc = ELFunctionDefinition(
+        "tech.libeufin.sandbox", "settings_value",
+        JinjaFunctions::class.java, "settings_value", String::class.java
+    )
+    val gettextFuncAlias = ELFunctionDefinition(
+        "tech.libeufin.sandbox", "_",
+        JinjaFunctions::class.java, "gettext", String::class.java
+    )
+    val gettextFunc = ELFunctionDefinition(
+        "", "gettext",
+        JinjaFunctions::class.java, "gettext", String::class.java
+    )
+    val urlFunc = ELFunctionDefinition(
+        "tech.libeufin.sandbox", "url",
+        JinjaFunctions::class.java, "url", String::class.java
+    )
+
+    jinjava.globalContext.registerFunction(settingsValueFunc)
+    jinjava.globalContext.registerFunction(gettextFunc)
+    jinjava.globalContext.registerFunction(gettextFuncAlias)
+    jinjava.globalContext.registerFunction(urlFunc)
+
+    return jinjava
+}
+
+val jinjava = initJinjava()
+
+fun renderTemplate(templateName: String, context: Map<String, String>): String 
{
+    val template = Resources.toString(Resources.getResource(
+        "templates/$templateName"), Charsets.UTF_8
+    )
+    return jinjava.render(template, context)
+} **/
\ No newline at end of file

-- 
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]