Add support for Blasta to operate as a desktop software.
This commit is contained in:
parent
667cf12d56
commit
a4c4bccc4b
35 changed files with 498 additions and 72 deletions
|
@ -38,6 +38,7 @@ import tomli_w
|
||||||
from typing import Optional
|
from typing import Optional
|
||||||
import urllib.parse
|
import urllib.parse
|
||||||
import uvicorn
|
import uvicorn
|
||||||
|
import webbrowser
|
||||||
import xml.etree.ElementTree as ET
|
import xml.etree.ElementTree as ET
|
||||||
|
|
||||||
|
|
||||||
|
@ -266,6 +267,7 @@ class HttpInstance:
|
||||||
self.app.mount('/data', StaticFiles(directory='data'), name='data')
|
self.app.mount('/data', StaticFiles(directory='data'), name='data')
|
||||||
self.app.mount('/export', StaticFiles(directory='export'), name='export')
|
self.app.mount('/export', StaticFiles(directory='export'), name='export')
|
||||||
self.app.mount('/graphic', StaticFiles(directory='graphic'), name='graphic')
|
self.app.mount('/graphic', StaticFiles(directory='graphic'), name='graphic')
|
||||||
|
self.app.mount('/script', StaticFiles(directory='script'), name='script')
|
||||||
self.app.mount('/stylesheet', StaticFiles(directory='stylesheet'), name='stylesheet')
|
self.app.mount('/stylesheet', StaticFiles(directory='stylesheet'), name='stylesheet')
|
||||||
|
|
||||||
filename_configuration = 'configuration.toml'
|
filename_configuration = 'configuration.toml'
|
||||||
|
@ -5318,7 +5320,11 @@ def main():
|
||||||
return http_instance.app
|
return http_instance.app
|
||||||
|
|
||||||
app = main()
|
app = main()
|
||||||
|
webbrowser.open('http://localhost:8000/help/about')
|
||||||
|
# TODO Check first time
|
||||||
|
webbrowser.open_new_tab('http://localhost:8000')
|
||||||
|
|
||||||
# FIXME
|
# FIXME
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
uvicorn.run(app, host='127.0.0.1', port=8000, reload=True)
|
uvicorn.run(app, host='localhost', port=8000, reload=True)
|
||||||
|
|
||||||
|
|
39
blasta_client.py
Normal file
39
blasta_client.py
Normal file
|
@ -0,0 +1,39 @@
|
||||||
|
import webview
|
||||||
|
import subprocess
|
||||||
|
import sys
|
||||||
|
|
||||||
|
class HtmlView:
|
||||||
|
def __init__(self, url_instance):
|
||||||
|
self.url_instance = url_instance
|
||||||
|
|
||||||
|
def regulator(self, uri):
|
||||||
|
# Check if the URL is not from url_instance
|
||||||
|
if not uri.startswith(self.url_instance):
|
||||||
|
try:
|
||||||
|
# Open the link using xdg-open
|
||||||
|
subprocess.run(['xdg-open', uri], check=True)
|
||||||
|
except subprocess.CalledProcessError as e:
|
||||||
|
print(f"Failed to open URL: {uri}. Error: {e}")
|
||||||
|
else:
|
||||||
|
# If it is from url_instance, just load it in the webview
|
||||||
|
#webview.load_url(uri)
|
||||||
|
#webview.evaluate(f"window.location.href = '{uri}';")
|
||||||
|
webview.windows[0].load_url(uri)
|
||||||
|
|
||||||
|
def setup(self):
|
||||||
|
# Create a webview window
|
||||||
|
window = webview.create_window('Blasta', self.url_instance)
|
||||||
|
# Bind the link click event to the regulator function
|
||||||
|
window.expose(self.regulator)
|
||||||
|
|
||||||
|
# Start the webview application
|
||||||
|
webview.start()
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
if len(sys.argv) != 2:
|
||||||
|
print('Usage: {} <URL_OF_A_BLASTA_INSTANCE>'.format(sys.argv[0]))
|
||||||
|
sys.exit(1)
|
||||||
|
|
||||||
|
url_instance = sys.argv[1]
|
||||||
|
html_view = HtmlView(url_instance)
|
||||||
|
html_view.setup()
|
4
blasta_client.sh
Executable file
4
blasta_client.sh
Executable file
|
@ -0,0 +1,4 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
unset http_proxy
|
||||||
|
WEBKIT_DISABLE_DMABUF_RENDERER=1 python blasta_client.py http://localhost:8000
|
20
script/regulator.js
Normal file
20
script/regulator.js
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
document.addEventListener('DOMContentLoaded', () => {
|
||||||
|
window.addEventListener('pywebviewready', () => {
|
||||||
|
// Attach event listeners to all anchor elements
|
||||||
|
document.querySelectorAll('a').forEach(element => {
|
||||||
|
element.addEventListener('click', regulator);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
// This function will be called when an anchor is clicked
|
||||||
|
function regulator(event) {
|
||||||
|
event.preventDefault(); // Prevent the default link behavior
|
||||||
|
const url = this.href; // Get the URL from the clicked link
|
||||||
|
|
||||||
|
// Call the exposed Python function
|
||||||
|
window.pywebview.api.regulator(url)
|
||||||
|
.catch(error => {
|
||||||
|
console.error("Error calling regulator:", error);
|
||||||
|
});
|
||||||
|
}
|
|
@ -58,8 +58,9 @@ xmlns:atom='http://www.w3.org/2005/Atom'>
|
||||||
<title>
|
<title>
|
||||||
<xsl:value-of select='atom:title'/>
|
<xsl:value-of select='atom:title'/>
|
||||||
</title>
|
</title>
|
||||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
|
||||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||||
|
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||||
|
<script src="/script/regulator.js" />
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div id='header'>
|
<div id='header'>
|
||||||
|
@ -239,7 +240,7 @@ xmlns:atom='http://www.w3.org/2005/Atom'>
|
||||||
<p>
|
<p>
|
||||||
Congratulations! You have reached to the final
|
Congratulations! You have reached to the final
|
||||||
frontier that the XML technology has to offer to
|
frontier that the XML technology has to offer to
|
||||||
date, and as of yet!
|
date, and as of yet.
|
||||||
</p>
|
</p>
|
||||||
<p>
|
<p>
|
||||||
This is an automated Blasta Syndication Feed
|
This is an automated Blasta Syndication Feed
|
||||||
|
@ -249,7 +250,7 @@ xmlns:atom='http://www.w3.org/2005/Atom'>
|
||||||
<p>
|
<p>
|
||||||
<a href='/help/syndication#software'>Click
|
<a href='/help/syndication#software'>Click
|
||||||
here</a> for a selection of software and pick
|
here</a> for a selection of software and pick
|
||||||
the ones that would fit to you best!
|
the ones that would fit to you best.
|
||||||
</p>
|
</p>
|
||||||
</td>
|
</td>
|
||||||
</table>
|
</table>
|
||||||
|
@ -417,7 +418,7 @@ xmlns:atom='http://www.w3.org/2005/Atom'>
|
||||||
<dd>
|
<dd>
|
||||||
<small>
|
<small>
|
||||||
<h4 class='title'>
|
<h4 class='title'>
|
||||||
Technical information. Please, read it!
|
Technical information. Please, read it.
|
||||||
</h4>
|
</h4>
|
||||||
<p>
|
<p>
|
||||||
This ASF (Atom Syndication Format) document is
|
This ASF (Atom Syndication Format) document is
|
||||||
|
|
|
@ -9,6 +9,7 @@
|
||||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||||
|
<script src="/script/regulator.js" />
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div id="container">
|
<div id="container">
|
||||||
|
@ -16,11 +17,21 @@
|
||||||
<h1>
|
<h1>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<img src="/graphic/blasta.svg"/>
|
||||||
|
|
||||||
<a href="/">Blasta</a> / <a href="/help">help</a> / about
|
<a href="/">
|
||||||
|
Blasta
|
||||||
|
</a>
|
||||||
|
/
|
||||||
|
<a href="/help">
|
||||||
|
help
|
||||||
|
</a>
|
||||||
|
/ about
|
||||||
</h1>
|
</h1>
|
||||||
<dl id="navigation">
|
<dl id="navigation">
|
||||||
<dd>
|
<dd>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<a href="/">
|
||||||
|
<img alt="Main"
|
||||||
|
src="/graphic/blasta.svg"/>
|
||||||
|
</a>
|
||||||
</dd>
|
</dd>
|
||||||
{% if jabber_id %}
|
{% if jabber_id %}
|
||||||
<dd>
|
<dd>
|
||||||
|
|
|
@ -9,6 +9,7 @@
|
||||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||||
|
<script src="/script/regulator.js" />
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div id="container">
|
<div id="container">
|
||||||
|
@ -16,11 +17,17 @@
|
||||||
<h1>
|
<h1>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<img src="/graphic/blasta.svg"/>
|
||||||
|
|
||||||
<a href="/">Blasta</a> / {{path}}
|
<a href="/">
|
||||||
|
Blasta
|
||||||
|
</a>
|
||||||
|
/ {{path}}
|
||||||
</h1>
|
</h1>
|
||||||
<dl id="navigation">
|
<dl id="navigation">
|
||||||
<dd>
|
<dd>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<a href="/">
|
||||||
|
<img alt="Main"
|
||||||
|
src="/graphic/blasta.svg"/>
|
||||||
|
</a>
|
||||||
</dd>
|
</dd>
|
||||||
{% if jabber_id %}
|
{% if jabber_id %}
|
||||||
<dd>
|
<dd>
|
||||||
|
|
|
@ -9,6 +9,7 @@
|
||||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||||
|
<script src="/script/regulator.js" />
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div id="container">
|
<div id="container">
|
||||||
|
@ -16,11 +17,29 @@
|
||||||
<h1>
|
<h1>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<img src="/graphic/blasta.svg"/>
|
||||||
|
|
||||||
<a href="/">Blasta</a> / <a href="/help">help</a> / <a href="/help/about">about</a> / <a href="/help/about/xmpp">xmpp</a> / atomsub
|
<a href="/">
|
||||||
|
Blasta
|
||||||
|
</a>
|
||||||
|
/
|
||||||
|
<a href="/help">
|
||||||
|
help
|
||||||
|
</a>
|
||||||
|
/
|
||||||
|
<a href="/help/about">
|
||||||
|
about
|
||||||
|
</a>
|
||||||
|
/
|
||||||
|
<a href="/help/about/xmpp">
|
||||||
|
xmpp
|
||||||
|
</a>
|
||||||
|
/ atomsub
|
||||||
</h1>
|
</h1>
|
||||||
<dl id="navigation">
|
<dl id="navigation">
|
||||||
<dd>
|
<dd>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<a href="/">
|
||||||
|
<img alt="Main"
|
||||||
|
src="/graphic/blasta.svg"/>
|
||||||
|
</a>
|
||||||
</dd>
|
</dd>
|
||||||
{% if jabber_id %}
|
{% if jabber_id %}
|
||||||
<dd>
|
<dd>
|
||||||
|
|
|
@ -1,11 +1,12 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<?xml-stylesheet type="text/xsl" href="stylesheet/stylesheet.xsl"?>
|
<?xml-stylesheet type="text/xsl" href="/stylesheet/stylesheet.xsl"?>
|
||||||
<feed xmlns="http://www.w3.org/2005/Atom">
|
<feed xmlns="http://www.w3.org/2005/Atom">
|
||||||
<generator uri="https://git.xmpp-it.net/sch/Blasta" version="0.1">Blasta</generator>
|
<generator uri="https://git.xmpp-it.net/sch/Blasta" version="0.1">Blasta</generator>
|
||||||
|
<id>{{request.url}}</id>
|
||||||
<icon>/graphic/blasta.svg</icon>
|
<icon>/graphic/blasta.svg</icon>
|
||||||
<link href="{{request.url}}"
|
<link href="{{request.url}}"
|
||||||
rel="self"
|
rel="self"
|
||||||
type="text/html" />
|
type="application/atom+xml" />
|
||||||
<link href="{{request.url.__str__().replace('mode=feed&', '', 1).replace('?mode=feed', '', 1)}}"
|
<link href="{{request.url.__str__().replace('mode=feed&', '', 1).replace('?mode=feed', '', 1)}}"
|
||||||
rel="alternate"
|
rel="alternate"
|
||||||
type="text/html" />
|
type="text/html" />
|
||||||
|
@ -21,11 +22,11 @@
|
||||||
<entry>
|
<entry>
|
||||||
<author>
|
<author>
|
||||||
<name>{{entry['name']}}</name>
|
<name>{{entry['name']}}</name>
|
||||||
<uri>/jid/{{entry['jid']}}</uri>
|
|
||||||
<uri>xmpp:{{entry['jid']}}</uri>
|
<uri>xmpp:{{entry['jid']}}</uri>
|
||||||
<xmpp>{{entry['jid']}}</xmpp>
|
<!-- uri>/jid/{{entry['jid']}}</uri -->
|
||||||
|
<!-- xmpp>{{entry['jid']}}</xmpp -->
|
||||||
</author>
|
</author>
|
||||||
<id>{{entry['url_hash']}}</id>
|
<id>md5:{{entry['url_hash']}}</id>
|
||||||
<link href="{{entry['link']}}"
|
<link href="{{entry['link']}}"
|
||||||
rel="alternate" />
|
rel="alternate" />
|
||||||
<link href="xmpp:{{pubsub_jid}}?pubsub;action=subscribe;node=hash:{{entry['url_hash']}}"
|
<link href="xmpp:{{pubsub_jid}}?pubsub;action=subscribe;node=hash:{{entry['url_hash']}}"
|
||||||
|
|
|
@ -10,6 +10,7 @@
|
||||||
<link rel="icon" type="image/svg+xml" href="/graphic/blasta.svg" />
|
<link rel="icon" type="image/svg+xml" href="/graphic/blasta.svg" />
|
||||||
<link rel="stylesheet" type="text/css" media="screen"
|
<link rel="stylesheet" type="text/css" media="screen"
|
||||||
href="/stylesheet/stylesheet.css" />
|
href="/stylesheet/stylesheet.css" />
|
||||||
|
<script src="/script/regulator.js" />
|
||||||
<link rel="alternate" type="application/atom+xml"
|
<link rel="alternate" type="application/atom+xml"
|
||||||
title="Follow updates on /{% if jid %}jid/{% endif %}{{syndicate}}{% if param_tags %} for Tag: #{{param_tags}}{% endif %}{% if param_url %} for URL: {{param_url}}{% endif %}{% if param_hash %} for hash: {{param_hash}}{% endif %}"
|
title="Follow updates on /{% if jid %}jid/{% endif %}{{syndicate}}{% if param_tags %} for Tag: #{{param_tags}}{% endif %}{% if param_url %} for URL: {{param_url}}{% endif %}{% if param_hash %} for hash: {{param_hash}}{% endif %}"
|
||||||
href="/{% if jid %}jid/{% endif %}{{syndicate}}?mode=feed{% if param_tags %}&tags={{param_tags}}{% endif %}{% if param_url %}&url={{param_url}}{% endif %}{% if param_hash %}&hash={{param_hash}}{% endif %}" />
|
href="/{% if jid %}jid/{% endif %}{{syndicate}}?mode=feed{% if param_tags %}&tags={{param_tags}}{% endif %}{% if param_url %}&url={{param_url}}{% endif %}{% if param_hash %}&hash={{param_hash}}{% endif %}" />
|
||||||
|
@ -23,11 +24,23 @@
|
||||||
<h1>
|
<h1>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<img src="/graphic/blasta.svg"/>
|
||||||
|
|
||||||
<a href="/">Blasta</a> / {{path}}{% if jid and jid != jabber_id %} / <a href="/jid/{{jid}}">{{jid}}</a>{% endif %}
|
<a href="/">
|
||||||
|
Blasta
|
||||||
|
</a>
|
||||||
|
/ {{path}}
|
||||||
|
{% if jid and jid != jabber_id %}
|
||||||
|
/
|
||||||
|
<a href="/jid/{{jid}}">
|
||||||
|
{{jid}}
|
||||||
|
</a>
|
||||||
|
{% endif %}
|
||||||
</h1>
|
</h1>
|
||||||
<dl id="navigation">
|
<dl id="navigation">
|
||||||
<dd>
|
<dd>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<a href="/">
|
||||||
|
<img alt="Main"
|
||||||
|
src="/graphic/blasta.svg"/>
|
||||||
|
</a>
|
||||||
</dd>
|
</dd>
|
||||||
{% if jabber_id %}
|
{% if jabber_id %}
|
||||||
<dd>
|
<dd>
|
||||||
|
|
|
@ -9,6 +9,7 @@
|
||||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||||
|
<script src="/script/regulator.js" />
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div id="container">
|
<div id="container">
|
||||||
|
@ -16,11 +17,17 @@
|
||||||
<h1>
|
<h1>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<img src="/graphic/blasta.svg"/>
|
||||||
|
|
||||||
<a href="/">Blasta</a> / connect
|
<a href="/">
|
||||||
|
Blasta
|
||||||
|
</a>
|
||||||
|
/ connect
|
||||||
</h1>
|
</h1>
|
||||||
<dl id="navigation">
|
<dl id="navigation">
|
||||||
<dd>
|
<dd>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<a href="/">
|
||||||
|
<img alt="Main"
|
||||||
|
src="/graphic/blasta.svg"/>
|
||||||
|
</a>
|
||||||
</dd>
|
</dd>
|
||||||
<dd>
|
<dd>
|
||||||
<a href="/search">Search</a>
|
<a href="/search">Search</a>
|
||||||
|
|
|
@ -9,6 +9,7 @@
|
||||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||||
|
<script src="/script/regulator.js" />
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div id="container">
|
<div id="container">
|
||||||
|
@ -16,11 +17,17 @@
|
||||||
<h1>
|
<h1>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<img src="/graphic/blasta.svg"/>
|
||||||
|
|
||||||
<a href="/">Blasta</a> / contact
|
<a href="/">
|
||||||
|
Blasta
|
||||||
|
</a>
|
||||||
|
/ contact
|
||||||
</h1>
|
</h1>
|
||||||
<dl id="navigation">
|
<dl id="navigation">
|
||||||
<dd>
|
<dd>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<a href="/">
|
||||||
|
<img alt="Main"
|
||||||
|
src="/graphic/blasta.svg"/>
|
||||||
|
</a>
|
||||||
</dd>
|
</dd>
|
||||||
{% if jabber_id %}
|
{% if jabber_id %}
|
||||||
<dd>
|
<dd>
|
||||||
|
|
|
@ -9,6 +9,7 @@
|
||||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||||
|
<script src="/script/regulator.js" />
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div id="container">
|
<div id="container">
|
||||||
|
@ -16,11 +17,17 @@
|
||||||
<h1>
|
<h1>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<img src="/graphic/blasta.svg"/>
|
||||||
|
|
||||||
<a href="/">Blasta</a> / {{path}}
|
<a href="/">
|
||||||
|
Blasta
|
||||||
|
</a>
|
||||||
|
/ {{path}}
|
||||||
</h1>
|
</h1>
|
||||||
<dl id="navigation">
|
<dl id="navigation">
|
||||||
<dd>
|
<dd>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<a href="/">
|
||||||
|
<img alt="Main"
|
||||||
|
src="/graphic/blasta.svg"/>
|
||||||
|
</a>
|
||||||
</dd>
|
</dd>
|
||||||
{% if jabber_id %}
|
{% if jabber_id %}
|
||||||
<dd>
|
<dd>
|
||||||
|
@ -135,7 +142,7 @@
|
||||||
id="summary"
|
id="summary"
|
||||||
name="summary"
|
name="summary"
|
||||||
placeholder="Enter a summary (recommended)."
|
placeholder="Enter a summary (recommended)."
|
||||||
rows="5">{{summary}}</textarea>
|
rows="10">{{summary}}</textarea>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
|
@ -9,6 +9,7 @@
|
||||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||||
|
<script src="/script/regulator.js" />
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div id="container">
|
<div id="container">
|
||||||
|
@ -16,11 +17,21 @@
|
||||||
<h1>
|
<h1>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<img src="/graphic/blasta.svg"/>
|
||||||
|
|
||||||
<a href="/">Blasta</a> / <a href="/help">help</a> / feeds
|
<a href="/">
|
||||||
|
Blasta
|
||||||
|
</a>
|
||||||
|
/
|
||||||
|
<a href="/help">
|
||||||
|
help
|
||||||
|
</a>
|
||||||
|
/ feeds
|
||||||
</h1>
|
</h1>
|
||||||
<dl id="navigation">
|
<dl id="navigation">
|
||||||
<dd>
|
<dd>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<a href="/">
|
||||||
|
<img alt="Main"
|
||||||
|
src="/graphic/blasta.svg"/>
|
||||||
|
</a>
|
||||||
</dd>
|
</dd>
|
||||||
{% if jabber_id %}
|
{% if jabber_id %}
|
||||||
<dd>
|
<dd>
|
||||||
|
|
|
@ -9,6 +9,7 @@
|
||||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||||
|
<script src="/script/regulator.js" />
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div id="container">
|
<div id="container">
|
||||||
|
@ -16,11 +17,25 @@
|
||||||
<h1>
|
<h1>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<img src="/graphic/blasta.svg"/>
|
||||||
|
|
||||||
<a href="/">Blasta</a> / <a href="/help">help</a> / <a href="/help/about">about</a> / folksonomy
|
<a href="/">
|
||||||
|
Blasta
|
||||||
|
</a>
|
||||||
|
/
|
||||||
|
<a href="/help">
|
||||||
|
help
|
||||||
|
</a>
|
||||||
|
/
|
||||||
|
<a href="/help/about">
|
||||||
|
about
|
||||||
|
</a>
|
||||||
|
/ folksonomy
|
||||||
</h1>
|
</h1>
|
||||||
<dl id="navigation">
|
<dl id="navigation">
|
||||||
<dd>
|
<dd>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<a href="/">
|
||||||
|
<img alt="Main"
|
||||||
|
src="/graphic/blasta.svg"/>
|
||||||
|
</a>
|
||||||
</dd>
|
</dd>
|
||||||
{% if jabber_id %}
|
{% if jabber_id %}
|
||||||
<dd>
|
<dd>
|
||||||
|
|
|
@ -9,6 +9,7 @@
|
||||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||||
|
<script src="/script/regulator.js" />
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div id="container">
|
<div id="container">
|
||||||
|
@ -16,11 +17,17 @@
|
||||||
<h1>
|
<h1>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<img src="/graphic/blasta.svg"/>
|
||||||
|
|
||||||
<a href="/">Blasta</a> / help
|
<a href="/">
|
||||||
|
Blasta
|
||||||
|
</a>
|
||||||
|
/ help
|
||||||
</h1>
|
</h1>
|
||||||
<dl id="navigation">
|
<dl id="navigation">
|
||||||
<dd>
|
<dd>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<a href="/">
|
||||||
|
<img alt="Main"
|
||||||
|
src="/graphic/blasta.svg"/>
|
||||||
|
</a>
|
||||||
</dd>
|
</dd>
|
||||||
{% if jabber_id %}
|
{% if jabber_id %}
|
||||||
<dd>
|
<dd>
|
||||||
|
|
|
@ -9,6 +9,7 @@
|
||||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||||
|
<script src="/script/regulator.js" />
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div id="container">
|
<div id="container">
|
||||||
|
@ -16,11 +17,25 @@
|
||||||
<h1>
|
<h1>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<img src="/graphic/blasta.svg"/>
|
||||||
|
|
||||||
<a href="/">Blasta</a> / <a href="/help">help</a> / <a href="/help/about">about</a> / ideas
|
<a href="/">
|
||||||
|
Blasta
|
||||||
|
</a>
|
||||||
|
/
|
||||||
|
<a href="/help">
|
||||||
|
help
|
||||||
|
</a>
|
||||||
|
/
|
||||||
|
<a href="/help/about">
|
||||||
|
about
|
||||||
|
</a>
|
||||||
|
/ ideas
|
||||||
</h1>
|
</h1>
|
||||||
<dl id="navigation">
|
<dl id="navigation">
|
||||||
<dd>
|
<dd>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<a href="/">
|
||||||
|
<img alt="Main"
|
||||||
|
src="/graphic/blasta.svg"/>
|
||||||
|
</a>
|
||||||
</dd>
|
</dd>
|
||||||
{% if jabber_id %}
|
{% if jabber_id %}
|
||||||
<dd>
|
<dd>
|
||||||
|
|
|
@ -9,6 +9,7 @@
|
||||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||||
|
<script src="/script/regulator.js" />
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div id="container">
|
<div id="container">
|
||||||
|
@ -16,11 +17,29 @@
|
||||||
<h1>
|
<h1>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<img src="/graphic/blasta.svg"/>
|
||||||
|
|
||||||
<a href="/">Blasta</a> / <a href="/help">help</a> / <a href="/help/about">about</a> / <a href="/help/about/xmpp">xmpp</a> / libervia
|
<a href="/">
|
||||||
|
Blasta
|
||||||
|
</a>
|
||||||
|
/
|
||||||
|
<a href="/help">
|
||||||
|
help
|
||||||
|
</a>
|
||||||
|
/
|
||||||
|
<a href="/help/about">
|
||||||
|
about
|
||||||
|
</a>
|
||||||
|
/
|
||||||
|
<a href="/help/about/xmpp">
|
||||||
|
xmpp
|
||||||
|
</a>
|
||||||
|
/ libervia
|
||||||
</h1>
|
</h1>
|
||||||
<dl id="navigation">
|
<dl id="navigation">
|
||||||
<dd>
|
<dd>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<a href="/">
|
||||||
|
<img alt="Main"
|
||||||
|
src="/graphic/blasta.svg"/>
|
||||||
|
</a>
|
||||||
</dd>
|
</dd>
|
||||||
{% if jabber_id %}
|
{% if jabber_id %}
|
||||||
<dd>
|
<dd>
|
||||||
|
@ -360,8 +379,8 @@
|
||||||
</p>
|
</p>
|
||||||
<br/>
|
<br/>
|
||||||
<p class="quote bottom">
|
<p class="quote bottom">
|
||||||
"Salut a Toi" is the name of the association which manages
|
"Salut a Toi", which means Greetings to you (French), is the
|
||||||
Libervia.
|
name of the association which manages Libervia.
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -9,6 +9,7 @@
|
||||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||||
|
<script src="/script/regulator.js" />
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div id="container">
|
<div id="container">
|
||||||
|
@ -16,11 +17,29 @@
|
||||||
<h1>
|
<h1>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<img src="/graphic/blasta.svg"/>
|
||||||
|
|
||||||
<a href="/">Blasta</a> / <a href="/help">help</a> / <a href="/help/about">about</a> / <a href="/help/about/xmpp">xmpp</a> / movim
|
<a href="/">
|
||||||
|
Blasta
|
||||||
|
</a>
|
||||||
|
/
|
||||||
|
<a href="/help">
|
||||||
|
help
|
||||||
|
</a>
|
||||||
|
/
|
||||||
|
<a href="/help/about">
|
||||||
|
about
|
||||||
|
</a>
|
||||||
|
/
|
||||||
|
<a href="/help/about/xmpp">
|
||||||
|
xmpp
|
||||||
|
</a>
|
||||||
|
/ movim
|
||||||
</h1>
|
</h1>
|
||||||
<dl id="navigation">
|
<dl id="navigation">
|
||||||
<dd>
|
<dd>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<a href="/">
|
||||||
|
<img alt="Main"
|
||||||
|
src="/graphic/blasta.svg"/>
|
||||||
|
</a>
|
||||||
</dd>
|
</dd>
|
||||||
{% if jabber_id %}
|
{% if jabber_id %}
|
||||||
<dd>
|
<dd>
|
||||||
|
|
|
@ -9,6 +9,7 @@
|
||||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||||
|
<script src="/script/regulator.js" />
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div id="container">
|
<div id="container">
|
||||||
|
@ -16,11 +17,17 @@
|
||||||
<h1>
|
<h1>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<img src="/graphic/blasta.svg"/>
|
||||||
|
|
||||||
<a href="/">Blasta</a> / now
|
<a href="/">
|
||||||
|
Blasta
|
||||||
|
</a>
|
||||||
|
/ now
|
||||||
</h1>
|
</h1>
|
||||||
<dl id="navigation">
|
<dl id="navigation">
|
||||||
<dd>
|
<dd>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<a href="/">
|
||||||
|
<img alt="Main"
|
||||||
|
src="/graphic/blasta.svg"/>
|
||||||
|
</a>
|
||||||
</dd>
|
</dd>
|
||||||
{% if jabber_id %}
|
{% if jabber_id %}
|
||||||
<dd>
|
<dd>
|
||||||
|
|
|
@ -10,6 +10,7 @@
|
||||||
<link rel="icon" type="image/svg+xml" href="/graphic/blasta.svg" />
|
<link rel="icon" type="image/svg+xml" href="/graphic/blasta.svg" />
|
||||||
<link rel="stylesheet" type="text/css" media="screen"
|
<link rel="stylesheet" type="text/css" media="screen"
|
||||||
href="/stylesheet/stylesheet.css" />
|
href="/stylesheet/stylesheet.css" />
|
||||||
|
<script src="/script/regulator.js" />
|
||||||
<link rel="alternate" type="application/atom+xml"
|
<link rel="alternate" type="application/atom+xml"
|
||||||
title="Follow updates on /{% if jid %}jid/{% endif %}{{syndicate}}{% if param_tags %} for Tag: #{{param_tags}}{% endif %}{% if param_url %} for URL: {{param_url}}{% endif %}{% if param_hash %} for hash: {{param_hash}}{% endif %}"
|
title="Follow updates on /{% if jid %}jid/{% endif %}{{syndicate}}{% if param_tags %} for Tag: #{{param_tags}}{% endif %}{% if param_url %} for URL: {{param_url}}{% endif %}{% if param_hash %} for hash: {{param_hash}}{% endif %}"
|
||||||
href="/{% if jid %}jid/{% endif %}{{syndicate}}?mode=feed{% if param_tags %}&tags={{param_tags}}{% endif %}{% if param_url %}&url={{param_url}}{% endif %}{% if param_hash %}&hash={{param_hash}}{% endif %}" />
|
href="/{% if jid %}jid/{% endif %}{{syndicate}}?mode=feed{% if param_tags %}&tags={{param_tags}}{% endif %}{% if param_url %}&url={{param_url}}{% endif %}{% if param_hash %}&hash={{param_hash}}{% endif %}" />
|
||||||
|
@ -23,11 +24,17 @@
|
||||||
<h1>
|
<h1>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<img src="/graphic/blasta.svg"/>
|
||||||
|
|
||||||
<a href="/">Blasta</a> / {{path}}
|
<a href="/">
|
||||||
|
Blasta
|
||||||
|
</a>
|
||||||
|
/ {{path}}
|
||||||
</h1>
|
</h1>
|
||||||
<dl id="navigation">
|
<dl id="navigation">
|
||||||
<dd>
|
<dd>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<a href="/">
|
||||||
|
<img alt="Main"
|
||||||
|
src="/graphic/blasta.svg"/>
|
||||||
|
</a>
|
||||||
</dd>
|
</dd>
|
||||||
{% if jabber_id %}
|
{% if jabber_id %}
|
||||||
<dd>
|
<dd>
|
||||||
|
|
|
@ -9,6 +9,7 @@
|
||||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||||
|
<script src="/script/regulator.js" />
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div id="container">
|
<div id="container">
|
||||||
|
@ -16,11 +17,25 @@
|
||||||
<h1>
|
<h1>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<img src="/graphic/blasta.svg"/>
|
||||||
|
|
||||||
<a href="/">Blasta</a> / <a href="/help">help</a> / <a href="/help/about">about</a> / philosophy
|
<a href="/">
|
||||||
|
Blasta
|
||||||
|
</a>
|
||||||
|
/
|
||||||
|
<a href="/help">
|
||||||
|
help
|
||||||
|
</a>
|
||||||
|
/
|
||||||
|
<a href="/help/about">
|
||||||
|
about
|
||||||
|
</a>
|
||||||
|
/ philosophy
|
||||||
</h1>
|
</h1>
|
||||||
<dl id="navigation">
|
<dl id="navigation">
|
||||||
<dd>
|
<dd>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<a href="/">
|
||||||
|
<img alt="Main"
|
||||||
|
src="/graphic/blasta.svg"/>
|
||||||
|
</a>
|
||||||
</dd>
|
</dd>
|
||||||
{% if jabber_id %}
|
{% if jabber_id %}
|
||||||
<dd>
|
<dd>
|
||||||
|
|
|
@ -9,6 +9,7 @@
|
||||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||||
|
<script src="/script/regulator.js" />
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div id="container">
|
<div id="container">
|
||||||
|
@ -16,11 +17,17 @@
|
||||||
<h1>
|
<h1>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<img src="/graphic/blasta.svg"/>
|
||||||
|
|
||||||
<a href="/">Blasta</a> / profile
|
<a href="/">
|
||||||
|
Blasta
|
||||||
|
</a>
|
||||||
|
/ profile
|
||||||
</h1>
|
</h1>
|
||||||
<dl id="navigation">
|
<dl id="navigation">
|
||||||
<dd>
|
<dd>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<a href="/">
|
||||||
|
<img alt="Main"
|
||||||
|
src="/graphic/blasta.svg"/>
|
||||||
|
</a>
|
||||||
</dd>
|
</dd>
|
||||||
{% if jabber_id %}
|
{% if jabber_id %}
|
||||||
<dd>
|
<dd>
|
||||||
|
|
|
@ -9,6 +9,7 @@
|
||||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||||
|
<script src="/script/regulator.js" />
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div id="container">
|
<div id="container">
|
||||||
|
@ -16,11 +17,25 @@
|
||||||
<h1>
|
<h1>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<img src="/graphic/blasta.svg"/>
|
||||||
|
|
||||||
<a href="/">Blasta</a> / <a href="/help">help</a> / <a href="/help/about">about</a> / projects
|
<a href="/">
|
||||||
|
Blasta
|
||||||
|
</a>
|
||||||
|
/
|
||||||
|
<a href="/help">
|
||||||
|
help
|
||||||
|
</a>
|
||||||
|
/
|
||||||
|
<a href="/help/about">
|
||||||
|
about
|
||||||
|
</a>
|
||||||
|
/ projects
|
||||||
</h1>
|
</h1>
|
||||||
<dl id="navigation">
|
<dl id="navigation">
|
||||||
<dd>
|
<dd>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<a href="/">
|
||||||
|
<img alt="Main"
|
||||||
|
src="/graphic/blasta.svg"/>
|
||||||
|
</a>
|
||||||
</dd>
|
</dd>
|
||||||
{% if jabber_id %}
|
{% if jabber_id %}
|
||||||
<dd>
|
<dd>
|
||||||
|
|
|
@ -9,6 +9,7 @@
|
||||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||||
|
<script src="/script/regulator.js" />
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div id="container">
|
<div id="container">
|
||||||
|
@ -16,11 +17,29 @@
|
||||||
<h1>
|
<h1>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<img src="/graphic/blasta.svg"/>
|
||||||
|
|
||||||
<a href="/">Blasta</a> / <a href="/help">help</a> / <a href="/help/about">about</a> / <a href="/help/about/xmpp">xmpp</a> / pubsub
|
<a href="/">
|
||||||
|
Blasta
|
||||||
|
</a>
|
||||||
|
/
|
||||||
|
<a href="/help">
|
||||||
|
help
|
||||||
|
</a>
|
||||||
|
/
|
||||||
|
<a href="/help/about">
|
||||||
|
about
|
||||||
|
</a>
|
||||||
|
/
|
||||||
|
<a href="/help/about/xmpp">
|
||||||
|
xmpp
|
||||||
|
</a>
|
||||||
|
/ pubsub
|
||||||
</h1>
|
</h1>
|
||||||
<dl id="navigation">
|
<dl id="navigation">
|
||||||
<dd>
|
<dd>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<a href="/">
|
||||||
|
<img alt="Main"
|
||||||
|
src="/graphic/blasta.svg"/>
|
||||||
|
</a>
|
||||||
</dd>
|
</dd>
|
||||||
{% if jabber_id %}
|
{% if jabber_id %}
|
||||||
<dd>
|
<dd>
|
||||||
|
|
|
@ -9,6 +9,7 @@
|
||||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||||
|
<script src="/script/regulator.js" />
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div id="container">
|
<div id="container">
|
||||||
|
@ -16,11 +17,21 @@
|
||||||
<h1>
|
<h1>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<img src="/graphic/blasta.svg"/>
|
||||||
|
|
||||||
<a href="/">Blasta</a> / <a href="/help">help</a> / questions
|
<a href="/">
|
||||||
|
Blasta
|
||||||
|
</a>
|
||||||
|
/
|
||||||
|
<a href="/help">
|
||||||
|
help
|
||||||
|
</a>
|
||||||
|
/ questions
|
||||||
</h1>
|
</h1>
|
||||||
<dl id="navigation">
|
<dl id="navigation">
|
||||||
<dd>
|
<dd>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<a href="/">
|
||||||
|
<img alt="Main"
|
||||||
|
src="/graphic/blasta.svg"/>
|
||||||
|
</a>
|
||||||
</dd>
|
</dd>
|
||||||
{% if jabber_id %}
|
{% if jabber_id %}
|
||||||
<dd>
|
<dd>
|
||||||
|
@ -297,8 +308,14 @@
|
||||||
Does Blasta deploy ECMAScript (JavaScript)
|
Does Blasta deploy ECMAScript (JavaScript)
|
||||||
</h4>
|
</h4>
|
||||||
<p>
|
<p>
|
||||||
Blasta does not make any use of ECMAScript.
|
Yes. Blasta utilizes ECMAScript in order to confine the
|
||||||
|
client version activity to itself. This will be changed in
|
||||||
|
near future, once pywebview will have a more extensive
|
||||||
|
support for intercepting HTTP requests.
|
||||||
</p>
|
</p>
|
||||||
|
<!-- p>
|
||||||
|
Blasta does not make any use of ECMAScript.
|
||||||
|
</p -->
|
||||||
<p>
|
<p>
|
||||||
We have decided not to use unecessary components nor "toxic"
|
We have decided not to use unecessary components nor "toxic"
|
||||||
features that would compromise the intended experience that
|
features that would compromise the intended experience that
|
||||||
|
|
|
@ -9,6 +9,7 @@
|
||||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||||
|
<script src="/script/regulator.js" />
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div id="container">
|
<div id="container">
|
||||||
|
@ -16,11 +17,17 @@
|
||||||
<h1>
|
<h1>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<img src="/graphic/blasta.svg"/>
|
||||||
|
|
||||||
<a href="/">Blasta</a> / register
|
<a href="/">
|
||||||
|
Blasta
|
||||||
|
</a>
|
||||||
|
/ register
|
||||||
</h1>
|
</h1>
|
||||||
<dl id="navigation">
|
<dl id="navigation">
|
||||||
<dd>
|
<dd>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<a href="/">
|
||||||
|
<img alt="Main"
|
||||||
|
src="/graphic/blasta.svg"/>
|
||||||
|
</a>
|
||||||
</dd>
|
</dd>
|
||||||
{% if jabber_id %}
|
{% if jabber_id %}
|
||||||
<dd>
|
<dd>
|
||||||
|
|
|
@ -9,6 +9,7 @@
|
||||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||||
|
<script src="/script/regulator.js" />
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div id="container">
|
<div id="container">
|
||||||
|
@ -16,11 +17,17 @@
|
||||||
<h1>
|
<h1>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<img src="/graphic/blasta.svg"/>
|
||||||
|
|
||||||
<a href="/">Blasta</a> / {{path}}
|
<a href="/">
|
||||||
|
Blasta
|
||||||
|
</a>
|
||||||
|
/ {{path}}
|
||||||
</h1>
|
</h1>
|
||||||
<dl id="navigation">
|
<dl id="navigation">
|
||||||
<dd>
|
<dd>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<a href="/">
|
||||||
|
<img alt="Main"
|
||||||
|
src="/graphic/blasta.svg"/>
|
||||||
|
</a>
|
||||||
</dd>
|
</dd>
|
||||||
{% if jabber_id %}
|
{% if jabber_id %}
|
||||||
<dd>
|
<dd>
|
||||||
|
|
|
@ -9,6 +9,7 @@
|
||||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||||
|
<script src="/script/regulator.js" />
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div id="container">
|
<div id="container">
|
||||||
|
@ -16,11 +17,17 @@
|
||||||
<h1>
|
<h1>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<img src="/graphic/blasta.svg"/>
|
||||||
|
|
||||||
<a href="/">Blasta</a> / search / {{path}}
|
<a href="/">
|
||||||
|
Blasta
|
||||||
|
</a>
|
||||||
|
/ search / {{path}}
|
||||||
</h1>
|
</h1>
|
||||||
<dl id="navigation">
|
<dl id="navigation">
|
||||||
<dd>
|
<dd>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<a href="/">
|
||||||
|
<img alt="Main"
|
||||||
|
src="/graphic/blasta.svg"/>
|
||||||
|
</a>
|
||||||
</dd>
|
</dd>
|
||||||
{% if jabber_id %}
|
{% if jabber_id %}
|
||||||
<dd>
|
<dd>
|
||||||
|
|
|
@ -9,6 +9,7 @@
|
||||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||||
|
<script src="/script/regulator.js" />
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div id="container">
|
<div id="container">
|
||||||
|
@ -16,11 +17,25 @@
|
||||||
<h1>
|
<h1>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<img src="/graphic/blasta.svg"/>
|
||||||
|
|
||||||
<a href="/">Blasta</a> / <a href="/help">help</a> / <a href="/help/about">about</a> / software
|
<a href="/">
|
||||||
|
Blasta
|
||||||
|
</a>
|
||||||
|
/
|
||||||
|
<a href="/help">
|
||||||
|
help
|
||||||
|
</a>
|
||||||
|
/
|
||||||
|
<a href="/help/about">
|
||||||
|
about
|
||||||
|
</a>
|
||||||
|
/ software
|
||||||
</h1>
|
</h1>
|
||||||
<dl id="navigation">
|
<dl id="navigation">
|
||||||
<dd>
|
<dd>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<a href="/">
|
||||||
|
<img alt="Main"
|
||||||
|
src="/graphic/blasta.svg"/>
|
||||||
|
</a>
|
||||||
</dd>
|
</dd>
|
||||||
{% if jabber_id %}
|
{% if jabber_id %}
|
||||||
<dd>
|
<dd>
|
||||||
|
@ -103,6 +118,22 @@
|
||||||
Python is a computer language that lets you work quickly and
|
Python is a computer language that lets you work quickly and
|
||||||
integrate systems more effectively.
|
integrate systems more effectively.
|
||||||
</p>
|
</p>
|
||||||
|
<h4>
|
||||||
|
<a href="https://pywebview.flowrl.com">
|
||||||
|
pywebview - Build a graphical interface for your Python
|
||||||
|
software with ECMAScript, HTML, and CSS.
|
||||||
|
</a>
|
||||||
|
</h4>
|
||||||
|
<p>
|
||||||
|
pywebview is a lightweight cross-platform wrapper around an
|
||||||
|
htmlview component that allows to display HTML content in
|
||||||
|
its own native interface window. It gives you power of HTML
|
||||||
|
technologies in your desktop application, hiding the fact
|
||||||
|
that the interface is HTML based. You can use pywebview
|
||||||
|
either with a lightweight HTML framework like Flask (opens
|
||||||
|
new window) or on its own with a two way bridge between
|
||||||
|
Python and DOM.
|
||||||
|
</p>
|
||||||
<h4>
|
<h4>
|
||||||
<a href="https://slixmpp.readthedocs.io">
|
<a href="https://slixmpp.readthedocs.io">
|
||||||
Slixmpp - A modern python XMPP library using asyncio.
|
Slixmpp - A modern python XMPP library using asyncio.
|
||||||
|
|
|
@ -9,6 +9,7 @@
|
||||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||||
|
<script src="/script/regulator.js" />
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div id="container">
|
<div id="container">
|
||||||
|
@ -16,11 +17,21 @@
|
||||||
<h1>
|
<h1>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<img src="/graphic/blasta.svg"/>
|
||||||
|
|
||||||
<a href="/">Blasta</a> / <a href="/help">help</a> / syndication
|
<a href="/">
|
||||||
|
Blasta
|
||||||
|
</a>
|
||||||
|
/
|
||||||
|
<a href="/help">
|
||||||
|
help
|
||||||
|
</a>
|
||||||
|
/ syndication
|
||||||
</h1>
|
</h1>
|
||||||
<dl id="navigation">
|
<dl id="navigation">
|
||||||
<dd>
|
<dd>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<a href="/">
|
||||||
|
<img alt="Main"
|
||||||
|
src="/graphic/blasta.svg"/>
|
||||||
|
</a>
|
||||||
</dd>
|
</dd>
|
||||||
{% if jabber_id %}
|
{% if jabber_id %}
|
||||||
<dd>
|
<dd>
|
||||||
|
|
|
@ -9,6 +9,7 @@
|
||||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||||
|
<script src="/script/regulator.js" />
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div id="container">
|
<div id="container">
|
||||||
|
@ -16,11 +17,17 @@
|
||||||
<h1>
|
<h1>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<img src="/graphic/blasta.svg"/>
|
||||||
|
|
||||||
<a href="/">Blasta</a> / tag
|
<a href="/">
|
||||||
|
Blasta
|
||||||
|
</a>
|
||||||
|
/ tag
|
||||||
</h1>
|
</h1>
|
||||||
<dl id="navigation">
|
<dl id="navigation">
|
||||||
<dd>
|
<dd>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<a href="/">
|
||||||
|
<img alt="Main"
|
||||||
|
src="/graphic/blasta.svg"/>
|
||||||
|
</a>
|
||||||
</dd>
|
</dd>
|
||||||
{% if jabber_id %}
|
{% if jabber_id %}
|
||||||
<dd>
|
<dd>
|
||||||
|
|
|
@ -9,6 +9,7 @@
|
||||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||||
|
<script src="/script/regulator.js" />
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div id="container">
|
<div id="container">
|
||||||
|
@ -16,11 +17,25 @@
|
||||||
<h1>
|
<h1>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<img src="/graphic/blasta.svg"/>
|
||||||
|
|
||||||
<a href="/">Blasta</a> / <a href="/help">help</a> / <a href="/help/about">about</a> / thanks
|
<a href="/">
|
||||||
|
Blasta
|
||||||
|
</a>
|
||||||
|
/
|
||||||
|
<a href="/help">
|
||||||
|
help
|
||||||
|
</a>
|
||||||
|
/
|
||||||
|
<a href="/help/about">
|
||||||
|
about
|
||||||
|
</a>
|
||||||
|
/ thanks
|
||||||
</h1>
|
</h1>
|
||||||
<dl id="navigation">
|
<dl id="navigation">
|
||||||
<dd>
|
<dd>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<a href="/">
|
||||||
|
<img alt="Main"
|
||||||
|
src="/graphic/blasta.svg"/>
|
||||||
|
</a>
|
||||||
</dd>
|
</dd>
|
||||||
{% if jabber_id %}
|
{% if jabber_id %}
|
||||||
<dd>
|
<dd>
|
||||||
|
|
|
@ -9,6 +9,7 @@
|
||||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||||
|
<script src="/script/regulator.js" />
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div id="container">
|
<div id="container">
|
||||||
|
@ -16,11 +17,21 @@
|
||||||
<h1>
|
<h1>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<img src="/graphic/blasta.svg"/>
|
||||||
|
|
||||||
<a href="/">Blasta</a> / <a href="/help">help</a> / utilities
|
<a href="/">
|
||||||
|
Blasta
|
||||||
|
</a>
|
||||||
|
/
|
||||||
|
<a href="/help">
|
||||||
|
help
|
||||||
|
</a>
|
||||||
|
/ utilities
|
||||||
</h1>
|
</h1>
|
||||||
<dl id="navigation">
|
<dl id="navigation">
|
||||||
<dd>
|
<dd>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<a href="/">
|
||||||
|
<img alt="Main"
|
||||||
|
src="/graphic/blasta.svg"/>
|
||||||
|
</a>
|
||||||
</dd>
|
</dd>
|
||||||
{% if jabber_id %}
|
{% if jabber_id %}
|
||||||
<dd>
|
<dd>
|
||||||
|
|
|
@ -9,6 +9,7 @@
|
||||||
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
<link rel="shortcut icon" href="/graphic/blasta.svg"/>
|
||||||
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
<link rel='icon' type='image/svg+xml' href='/graphic/blasta.svg'/>
|
||||||
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
<link rel='stylesheet' type='text/css' media='screen' href='/stylesheet/stylesheet.css'/>
|
||||||
|
<script src="/script/regulator.js" />
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div id="container">
|
<div id="container">
|
||||||
|
@ -16,11 +17,25 @@
|
||||||
<h1>
|
<h1>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<img src="/graphic/blasta.svg"/>
|
||||||
|
|
||||||
<a href="/">Blasta</a> / <a href="/help">help</a> / <a href="/help/about">about</a> / xmpp
|
<a href="/">
|
||||||
|
Blasta
|
||||||
|
</a>
|
||||||
|
/
|
||||||
|
<a href="/help">
|
||||||
|
help
|
||||||
|
</a>
|
||||||
|
/
|
||||||
|
<a href="/help/about">
|
||||||
|
about
|
||||||
|
</a>
|
||||||
|
/ xmpp
|
||||||
</h1>
|
</h1>
|
||||||
<dl id="navigation">
|
<dl id="navigation">
|
||||||
<dd>
|
<dd>
|
||||||
<img src="/graphic/blasta.svg"/>
|
<a href="/">
|
||||||
|
<img alt="Main"
|
||||||
|
src="/graphic/blasta.svg"/>
|
||||||
|
</a>
|
||||||
</dd>
|
</dd>
|
||||||
{% if jabber_id %}
|
{% if jabber_id %}
|
||||||
<dd>
|
<dd>
|
||||||
|
|
Loading…
Reference in a new issue