Public Access
cache-bust local assets; narrow the language facet to scores >= 3
Part 1 — asset versioning: every local <script src> and <link rel=stylesheet> on the tracked pages now carries ?v=<sha256-of-the-file> (10 hex), computed at BUILD time from the file's bytes by work/build-asset-versions.py — never hand-typed, and idempotent (re-running with no file change rewrites nothing). This is what makes an edited focus-rule.js / photo-upload.js a new URL instead of a stale cache hit. Part 2 — language facet: a language now counts for the Language filter only when its 0-5 self-assessment is >= LANG_FACET_MIN (3 = 'works in it'). The constant sits beside the 15-point rule in the page script and its mirror in build-directory.py. Nothing stored changes; the card's languages chart still prints every language above 0, the search box is unchanged, and the facet stays an exact membership test against the card's value. A '1' language no longer offers the person under that language.
This commit is contained in:
1 parent
c83186f809
commit
bd0881f882
51 files changed
+138
-118
No files matched your search
@@ -16,7 +16,7 @@
|
||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
|
||||
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Inter+Tight:wght@500;600;700;800&display=swap" rel="stylesheet" />
|
||||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css" />
|
||||
<link rel="stylesheet" href="../../style.css" />
|
||||
<link rel="stylesheet" href="../../style.css?v=3332fbba93" />
|
||||
<style>
|
||||
body { background: #0d1b2e; }
|
||||
.blog-post { max-width: 720px; margin: 0 auto; padding: 3rem 1.5rem 6rem; color: #171c26; background: #faf7f1; min-height: 100vh; }
|
||||
|
||||
@@ -33,7 +33,7 @@
|
||||
rel="stylesheet"
|
||||
href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css"
|
||||
/>
|
||||
<link rel="stylesheet" href="../../style.css" />
|
||||
<link rel="stylesheet" href="../../style.css?v=3332fbba93" />
|
||||
<style>
|
||||
:root {
|
||||
--primary: #714b67;
|
||||
@@ -325,6 +325,6 @@
|
||||
</div>
|
||||
</div>
|
||||
</main>
|
||||
<script defer src="/static/agent-odoo4projects/agent.js"></script>
|
||||
<script defer src="/static/agent-odoo4projects/agent.js?v=c3bb0cee2b"></script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -16,7 +16,7 @@
|
||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
|
||||
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Inter+Tight:wght@500;600;700;800&display=swap" rel="stylesheet" />
|
||||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css" />
|
||||
<link rel="stylesheet" href="../../style.css" />
|
||||
<link rel="stylesheet" href="../../style.css?v=3332fbba93" />
|
||||
<style>
|
||||
body { background: #0d1b2e; }
|
||||
.blog-post { max-width: 720px; margin: 0 auto; padding: 3rem 1.5rem 6rem; color: #171c26; background: #faf7f1; min-height: 100vh; }
|
||||
|
||||
@@ -36,7 +36,7 @@
|
||||
rel="stylesheet"
|
||||
href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css"
|
||||
/>
|
||||
<link rel="stylesheet" href="../../style.css" />
|
||||
<link rel="stylesheet" href="../../style.css?v=3332fbba93" />
|
||||
<style>
|
||||
.blog-header {
|
||||
padding: 2rem 0;
|
||||
@@ -275,6 +275,6 @@
|
||||
</div>
|
||||
</div>
|
||||
</main>
|
||||
<script defer src="/static/agent-odoo4projects/agent.js"></script>
|
||||
<script defer src="/static/agent-odoo4projects/agent.js?v=c3bb0cee2b"></script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -16,7 +16,7 @@
|
||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
|
||||
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Inter+Tight:wght@500;600;700;800&display=swap" rel="stylesheet" />
|
||||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css" />
|
||||
<link rel="stylesheet" href="../../style.css" />
|
||||
<link rel="stylesheet" href="../../style.css?v=3332fbba93" />
|
||||
<style>
|
||||
body { background: #0d1b2e; }
|
||||
.blog-post { max-width: 720px; margin: 0 auto; padding: 3rem 1.5rem 6rem; color: #171c26; background: #faf7f1; min-height: 100vh; }
|
||||
|
||||
@@ -31,7 +31,7 @@
|
||||
href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Inter+Tight:wght@500;600;700;800&display=swap"
|
||||
rel="stylesheet"
|
||||
/>
|
||||
<link rel="stylesheet" href="../../style.css" />
|
||||
<link rel="stylesheet" href="../../style.css?v=3332fbba93" />
|
||||
<style>
|
||||
/* Blog post specific overrides — matching homepage light theme */
|
||||
body {
|
||||
|
||||
@@ -36,7 +36,7 @@
|
||||
rel="stylesheet"
|
||||
href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css"
|
||||
/>
|
||||
<link rel="stylesheet" href="../../style.css" />
|
||||
<link rel="stylesheet" href="../../style.css?v=3332fbba93" />
|
||||
<style>
|
||||
:root {
|
||||
--primary: #714b67;
|
||||
@@ -277,6 +277,6 @@
|
||||
</div>
|
||||
</div>
|
||||
</main>
|
||||
<script defer src="/static/agent-odoo4projects/agent.js"></script>
|
||||
<script defer src="/static/agent-odoo4projects/agent.js?v=c3bb0cee2b"></script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -36,7 +36,7 @@
|
||||
rel="stylesheet"
|
||||
href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css"
|
||||
/>
|
||||
<link rel="stylesheet" href="../../style.css" />
|
||||
<link rel="stylesheet" href="../../style.css?v=3332fbba93" />
|
||||
<style>
|
||||
:root {
|
||||
--primary: #714b67;
|
||||
@@ -296,6 +296,6 @@ Admin credentials: sent via email</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
</main>
|
||||
<script defer src="/static/agent-odoo4projects/agent.js"></script>
|
||||
<script defer src="/static/agent-odoo4projects/agent.js?v=c3bb0cee2b"></script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -35,7 +35,7 @@
|
||||
rel="stylesheet"
|
||||
href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css"
|
||||
/>
|
||||
<link rel="stylesheet" href="../../style.css" />
|
||||
<link rel="stylesheet" href="../../style.css?v=3332fbba93" />
|
||||
<style>
|
||||
:root {
|
||||
--primary: #714b67;
|
||||
@@ -263,7 +263,7 @@
|
||||
</main>
|
||||
<script
|
||||
defer
|
||||
src="/static/agent-odoo4projects/agent.js"
|
||||
src="/static/agent-odoo4projects/agent.js?v=c3bb0cee2b"
|
||||
></script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -36,7 +36,7 @@
|
||||
rel="stylesheet"
|
||||
href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css"
|
||||
/>
|
||||
<link rel="stylesheet" href="../../style.css" />
|
||||
<link rel="stylesheet" href="../../style.css?v=3332fbba93" />
|
||||
<style>
|
||||
* {
|
||||
box-sizing: border-box;
|
||||
@@ -263,7 +263,7 @@
|
||||
</main>
|
||||
<script
|
||||
defer
|
||||
src="/static/agent-odoo4projects/agent.js"
|
||||
src="/static/agent-odoo4projects/agent.js?v=c3bb0cee2b"
|
||||
></script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -16,7 +16,7 @@
|
||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
|
||||
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Inter+Tight:wght@500;600;700;800&display=swap" rel="stylesheet" />
|
||||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css" />
|
||||
<link rel="stylesheet" href="../../style.css" />
|
||||
<link rel="stylesheet" href="../../style.css?v=3332fbba93" />
|
||||
<style>
|
||||
body { background: #0d1b2e; }
|
||||
.blog-post { max-width: 720px; margin: 0 auto; padding: 3rem 1.5rem 6rem; color: #171c26; background: #faf7f1; min-height: 100vh; }
|
||||
|
||||
@@ -34,7 +34,7 @@
|
||||
rel="stylesheet"
|
||||
href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css"
|
||||
/>
|
||||
<link rel="stylesheet" href="../../style.css" />
|
||||
<link rel="stylesheet" href="../../style.css?v=3332fbba93" />
|
||||
<style>
|
||||
:root {
|
||||
--primary: #714b67;
|
||||
@@ -175,6 +175,6 @@
|
||||
</div>
|
||||
</div>
|
||||
</main>
|
||||
<script defer src="/static/agent-odoo4projects/agent.js"></script>
|
||||
<script defer src="/static/agent-odoo4projects/agent.js?v=c3bb0cee2b"></script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -17,7 +17,7 @@
|
||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
|
||||
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Inter+Tight:wght@500;600;700;800&display=swap" rel="stylesheet" />
|
||||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css" />
|
||||
<link rel="stylesheet" href="../../style.css" />
|
||||
<link rel="stylesheet" href="../../style.css?v=3332fbba93" />
|
||||
<style>
|
||||
body { background: #0d1b2e; }
|
||||
.blog-post { max-width: 720px; margin: 0 auto; padding: 3rem 1.5rem 6rem; color: #171c26; background: #faf7f1; min-height: 100vh; }
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
|
||||
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Inter+Tight:wght@500;600;700;800&display=swap" rel="stylesheet" />
|
||||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css" />
|
||||
<link rel="stylesheet" href="../../style.css" />
|
||||
<link rel="stylesheet" href="../../style.css?v=3332fbba93" />
|
||||
<style>
|
||||
body { background: #0d1b2e; }
|
||||
.blog-post { max-width: 720px; margin: 0 auto; padding: 3rem 1.5rem 6rem; color: #171c26; background: #faf7f1; min-height: 100vh; }
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
|
||||
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Inter+Tight:wght@500;600;700;800&display=swap" rel="stylesheet" />
|
||||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css" />
|
||||
<link rel="stylesheet" href="../../style.css" />
|
||||
<link rel="stylesheet" href="../../style.css?v=3332fbba93" />
|
||||
<style>
|
||||
body { background: #0d1b2e; }
|
||||
.blog-post { max-width: 720px; margin: 0 auto; padding: 3rem 1.5rem 6rem; color: #171c26; background: #faf7f1; min-height: 100vh; }
|
||||
|
||||
@@ -35,7 +35,7 @@
|
||||
rel="stylesheet"
|
||||
href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css"
|
||||
/>
|
||||
<link rel="stylesheet" href="../../style.css" />
|
||||
<link rel="stylesheet" href="../../style.css?v=3332fbba93" />
|
||||
<style>
|
||||
/* Blog post specific styles — leverages CSS vars from style.css */
|
||||
:root {
|
||||
@@ -311,6 +311,6 @@
|
||||
</div>
|
||||
</div>
|
||||
</main>
|
||||
<script defer src="/static/agent-odoo4projects/agent.js"></script>
|
||||
<script defer src="/static/agent-odoo4projects/agent.js?v=c3bb0cee2b"></script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -35,7 +35,7 @@
|
||||
rel="stylesheet"
|
||||
href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css"
|
||||
/>
|
||||
<link rel="stylesheet" href="../../style.css" />
|
||||
<link rel="stylesheet" href="../../style.css?v=3332fbba93" />
|
||||
<style>
|
||||
.container {
|
||||
width: 80%;
|
||||
@@ -250,6 +250,6 @@ Odoo > Settings > Technical > Scheduled Actions > backup job</code><
|
||||
</div>
|
||||
</div>
|
||||
</main>
|
||||
<script defer src="/static/agent-odoo4projects/agent.js"></script>
|
||||
<script defer src="/static/agent-odoo4projects/agent.js?v=c3bb0cee2b"></script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -35,7 +35,7 @@
|
||||
rel="stylesheet"
|
||||
href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css"
|
||||
/>
|
||||
<link rel="stylesheet" href="../../style.css" />
|
||||
<link rel="stylesheet" href="../../style.css?v=3332fbba93" />
|
||||
<style>
|
||||
:root {
|
||||
--primary: #714b67;
|
||||
@@ -267,6 +267,6 @@ Password: (check your email)</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
</main>
|
||||
<script defer src="/static/agent-odoo4projects/agent.js"></script>
|
||||
<script defer src="/static/agent-odoo4projects/agent.js?v=c3bb0cee2b"></script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -34,7 +34,7 @@
|
||||
rel="stylesheet"
|
||||
href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css"
|
||||
/>
|
||||
<link rel="stylesheet" href="../../style.css" />
|
||||
<link rel="stylesheet" href="../../style.css?v=3332fbba93" />
|
||||
<style>
|
||||
:root {
|
||||
--primary: #714b67;
|
||||
@@ -165,6 +165,6 @@
|
||||
</div>
|
||||
</div>
|
||||
</main>
|
||||
<script defer src="/static/agent-odoo4projects/agent.js"></script>
|
||||
<script defer src="/static/agent-odoo4projects/agent.js?v=c3bb0cee2b"></script>
|
||||
</body>
|
||||
</html>
|
||||
Reference in new issue
Block a user