Grisbi is a personal finance manager http://www.grisbi.org/
This script helps you to make Gribsi HTML report export looking nicer. It only works with "Revenus et dépenses" report mode. (incomes and expenses)
| /** | |
| * RealTime.js : Update system | |
| * Manage input (or textarea) smart callback on change | |
| * @author Gaetan Renaudeau <[email protected]>, Namolovan Nicolae <[email protected]> | |
| */ | |
| var RealTime = function(node, o) { | |
| var self = this; | |
| this.input = node; | |
| var getTime = function() { |
| // Implementing the publishing Pusher REST API | |
| // @see http://pusher.com/docs/rest_api | |
| // with Play (scala) Framework | |
| // @see http://scala.playframework.org/ | |
| class Pusher { | |
| val appId = Play.configuration.getProperty("pusher.appId") | |
| val key = Play.configuration.getProperty("pusher.key") | |
| val secret = Play.configuration.getProperty("pusher.secret") | |
| def speech(text:String) = { | |
| val audio = WS.url("http://translate.google.com/translate_tts?tl=en").setParameter("q", text).get() | |
| response.contentType = audio.getContentType() | |
| audio.getStream() | |
| } | |
| /* | |
| This is a Play! framework controller's action. | |
| Put it in any scala controller. | |
| Don't forget to import play.libs.WS | |
| */ |
| .opacity(@val) { | |
| opacity: @val; | |
| @filter: @val*100; | |
| filter: ~"alpha(opacity=@{filter})"; | |
| } |
| h1 { | |
| &:hover:before { | |
| content: '> '; | |
| } | |
| &:hover:after { | |
| content: ' <'; | |
| } | |
| } | |
| h2 { | |
| &:before { |
| p.tip { | |
| font-style: italic; | |
| padding: 0.5em 1em; | |
| border-left: 2px solid #aaa; | |
| &:before { | |
| content: "Tip: "; | |
| font-weight: bold; | |
| } | |
| } |
| protected static void redirectToReferer() { | |
| redirect(request.headers.get("referer").values.get(0)); | |
| } |
| // What is a Promise sequence function ? | |
| // A function which transform a List[Promise[A]] into a Promise[List[A]] | |
| // First naive implementation. It's a synchronous implementation (blocking). | |
| def sequencePromises[A](list: List[Promise[A]]): Promise[List[A]] = { | |
| Promise.pure( | |
| list.flatMap(e => e.value match { | |
| case Redeemed(value) => Some(value) | |
| case Thrown(e) => { Logger.debug("thrown "+e); None } | |
| }) |
| // What is a Promise sequence function ? | |
| // A function which transform a List[Promise[A]] into a Promise[List[A]] | |
| // Usage: | |
| // val list: List[Promise[Int]] = ... | |
| // val sequenced: Promise[List[Int]] = list.sequence() // got it :) | |
| package utils | |
| import play.api.libs.concurrent._ |
Grisbi is a personal finance manager http://www.grisbi.org/
This script helps you to make Gribsi HTML report export looking nicer. It only works with "Revenus et dépenses" report mode. (incomes and expenses)