[1.9.18] - image tag, value 2 uri check, fix domain conf file
This commit is contained in:
parent
ad632fc63d
commit
cc0d43e4c9
|
@ -9,6 +9,13 @@ Tyto - Littérateur
|
||||||
|
|
||||||
# CURRENTLY IN DEV !
|
# CURRENTLY IN DEV !
|
||||||
|
|
||||||
|
## [1.9.18]
|
||||||
|
- working on 'check' process
|
||||||
|
- - added image: tag
|
||||||
|
- - added value 2 (tag line 2) uri check (generic, root, post)
|
||||||
|
- - some corrections for domain config file
|
||||||
|
- - prepared html values for wip
|
||||||
|
|
||||||
## [1.9.17]
|
## [1.9.17]
|
||||||
- working on 'check' process
|
- working on 'check' process
|
||||||
- - dev on checking file used in some post header tags
|
- - dev on checking file used in some post header tags
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
#!/usr/bin/env python3
|
#!/usr/bin/env python3
|
||||||
# Version: 1.9.17
|
# Version: 1.9.18
|
||||||
# Updated: 2023-10-03 1696349064
|
# Updated: 2023-10-04 1696374079
|
||||||
# Tyto - Littérateur
|
# Tyto - Littérateur
|
||||||
|
|
||||||
# Copyright (C) 2023 Cyrille Louarn <echolib+tyto@a-lec.org>
|
# Copyright (C) 2023 Cyrille Louarn <echolib+tyto@a-lec.org>
|
||||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -237,7 +237,6 @@ def is_valid_date(date):
|
||||||
# Written using 3 lines #
|
# Written using 3 lines #
|
||||||
#----------------------------#
|
#----------------------------#
|
||||||
def ml_tags():
|
def ml_tags():
|
||||||
I_tag = post.ml_tags[1] # image:
|
|
||||||
R_tag = post.ml_tags[3] # raw:
|
R_tag = post.ml_tags[3] # raw:
|
||||||
C_tag = post.ml_tags[4] # code:
|
C_tag = post.ml_tags[4] # code:
|
||||||
A_tag = post.ml_tags[5] # abbr:
|
A_tag = post.ml_tags[5] # abbr:
|
||||||
|
@ -264,6 +263,12 @@ def ml_tags():
|
||||||
|
|
||||||
c = 2 ; continue
|
c = 2 ; continue
|
||||||
|
|
||||||
|
elif line.startswith(post.ml_tags[1]):
|
||||||
|
post.stats_images += 1
|
||||||
|
if not ml_tag_values(ln, post.ml_tags[1], post.stats_images):
|
||||||
|
return False # value errors
|
||||||
|
|
||||||
|
c = 2 ; continue
|
||||||
|
|
||||||
return True
|
return True
|
||||||
|
|
||||||
|
@ -276,6 +281,8 @@ def ml_tags():
|
||||||
# Return True/False (if no value) #
|
# Return True/False (if no value) #
|
||||||
#----------------------------------------#
|
#----------------------------------------#
|
||||||
def ml_tag_values(ln, tag, stats):
|
def ml_tag_values(ln, tag, stats):
|
||||||
|
global value2
|
||||||
|
|
||||||
# Get 3 lines values
|
# Get 3 lines values
|
||||||
value1 = headers[ln].rsplit(":")[1].lstrip()
|
value1 = headers[ln].rsplit(":")[1].lstrip()
|
||||||
value2 = headers[ln+1].lstrip()
|
value2 = headers[ln+1].lstrip()
|
||||||
|
@ -312,9 +319,7 @@ def ml_tag_values(ln, tag, stats):
|
||||||
return False
|
return False
|
||||||
|
|
||||||
# Convert values to HTML (put in post database)
|
# Convert values to HTML (put in post database)
|
||||||
html_value = '<a href="%s" class="%s" target="%s" alt="%s">%s</a>'%(
|
|
||||||
value2, css, "%%s", value3, value1
|
|
||||||
)
|
|
||||||
|
|
||||||
link_var = "%s_%s"%(tag.replace(":", ""), stats)
|
link_var = "%s_%s"%(tag.replace(":", ""), stats)
|
||||||
html_var = "html_%s"%stats
|
html_var = "html_%s"%stats
|
||||||
|
@ -322,11 +327,23 @@ def ml_tag_values(ln, tag, stats):
|
||||||
if tag == post.ml_tags[0]:
|
if tag == post.ml_tags[0]:
|
||||||
section = "LINKS"
|
section = "LINKS"
|
||||||
post.stats_text_links += post.text_contents.count(tyto_value)
|
post.stats_text_links += post.text_contents.count(tyto_value)
|
||||||
|
html_value = '<a href="%s" class="%s" target="%s" alt="%s">%s</a>'%(
|
||||||
|
value2, css, "%%s", value3, value1
|
||||||
|
)
|
||||||
|
|
||||||
elif tag == post.ml_tags[2]:
|
elif tag == post.ml_tags[2]:
|
||||||
section = "FILES"
|
section = "FILES"
|
||||||
post.stats_text_files += post.text_contents.count(tyto_value)
|
post.stats_text_files += post.text_contents.count(tyto_value)
|
||||||
|
html_value = '<a href="%s" class="%s_file" target="%s" alt="%s">%s</a>'%(
|
||||||
|
value2, css, "%%s", value3, value1
|
||||||
|
)
|
||||||
|
|
||||||
|
elif tag == post.ml_tags[1]:
|
||||||
|
section = "IMAGES"
|
||||||
|
post.stats_text_images += post.text_contents.count(tyto_value)
|
||||||
|
html_value = '<a href="%s" class="%s_image" target="%s" alt="%s">%s</a>'%(
|
||||||
|
value2, css, "%%s", value3, "%%s"
|
||||||
|
)
|
||||||
|
|
||||||
post.cf.set(section, link_var, tyto_value)
|
post.cf.set(section, link_var, tyto_value)
|
||||||
post.cf.set(section, html_var, html_value)
|
post.cf.set(section, html_var, html_value)
|
||||||
|
@ -341,34 +358,45 @@ def ml_tag_values(ln, tag, stats):
|
||||||
# - /... for root work directory #
|
# - /... for root work directory #
|
||||||
# - ... for post directory #
|
# - ... for post directory #
|
||||||
#--------------------------------#
|
#--------------------------------#
|
||||||
def is_value2_file_exists(ln, tag, value2):
|
def is_value2_file_exists(ln, tag, val2):
|
||||||
|
global value2
|
||||||
|
|
||||||
# uri "@..." means generic folders
|
# uri "@..." means generic folders
|
||||||
if value2[0].startswith("@"):
|
if val2[0].startswith("@"):
|
||||||
# Set defaut directory for files in /files
|
if val2[1] == "/": val2 = val2[2:]
|
||||||
wrk_df = domain.wrk_files
|
else: val2 = val2[1:]
|
||||||
|
|
||||||
|
#Set directory for files
|
||||||
|
test_uri = os.path.join(domain.wrk_files + val2)
|
||||||
|
value2 = src_uri = os.path.join("/files", val2)
|
||||||
|
|
||||||
# Set directory for images in /images
|
# Set directory for images in /images
|
||||||
if tag == post.ml_tags[1]: # image:
|
if tag == post.ml_tags[1]: # image:
|
||||||
wrk_df = domain.wrk_images
|
test_uri = os.path.join(domain.wrk_images, val2)
|
||||||
|
value2 = src_uri = os.path.join("/images", val2)
|
||||||
value2 = value2[1:]
|
|
||||||
|
|
||||||
# uri "/..." means from wrk root folder
|
# uri "/..." means from wrk root folder
|
||||||
elif value2[0].startswith("/"):
|
elif val2[0].startswith("/"):
|
||||||
wrk_df = domain.wrk_articles
|
val2 = val2[1:]
|
||||||
value2 = value2[1:]
|
test_uri = os.path.join(domain.wrk_articles, val2)
|
||||||
|
src_uri = value2
|
||||||
|
|
||||||
# uri "..." means from legacy post folder
|
# uri "..." means from legacy post folder
|
||||||
else:
|
else:
|
||||||
wrk_df = os.path.dirname(post.uri) + "/"
|
test_uri = os.path.dirname(post.uri) + "/" + val2
|
||||||
|
value2 = "./" + val2
|
||||||
|
src_uri = test_uri.rsplit("articles/")[1]
|
||||||
|
|
||||||
# Check if file exists
|
# Check if file exists
|
||||||
file_uri = wrk_df + value2
|
if not os.path.exists(test_uri):
|
||||||
if not os.path.exists(file_uri):
|
|
||||||
post.error = \
|
post.error = \
|
||||||
debug.out(5, "%s) %s"%(ln, tag), file_uri, True, 2, False)
|
debug.out(5, "%s) %s"%(ln, tag), test_uri, True, 2, False)
|
||||||
return False
|
return False
|
||||||
|
|
||||||
|
# Add file to [SOURCE_FILES] post database
|
||||||
|
post.stats_total_files += 1
|
||||||
|
post.cf.set("SOURCE_FILES", "file_%s"%post.stats_total_files, src_uri)
|
||||||
|
|
||||||
return True
|
return True
|
||||||
|
|
||||||
|
|
||||||
|
@ -523,10 +551,10 @@ def cf_update_values():
|
||||||
post.cf.set("HEADERS", "tags", post.tags[1])
|
post.cf.set("HEADERS", "tags", post.tags[1])
|
||||||
post.cf.set("HEADERS", "authors", post.author[1])
|
post.cf.set("HEADERS", "authors", post.author[1])
|
||||||
post.cf.set("HEADERS", "sitemap", str(sitemap))
|
post.cf.set("HEADERS", "sitemap", str(sitemap))
|
||||||
post.cf.set("HEADERS", "static", str(domain.static))
|
|
||||||
|
|
||||||
post.cf.set("CHECK", "hash", post.wrk_id)
|
post.cf.set("CHECK", "hash", post.wrk_id)
|
||||||
post.cf.set("CHECK", "date", chk_date)
|
post.cf.set("CHECK", "date", chk_date)
|
||||||
|
post.cf.set("CHECK", "static", str(domain.static))
|
||||||
|
|
||||||
post.cf.set("WIP", "web", "%s%s"%(domain.wip_url, post.wrk_target))
|
post.cf.set("WIP", "web", "%s%s"%(domain.wip_url, post.wrk_target))
|
||||||
post.cf.set("WIP", "uri", "%s%s"%(domain.wip, post.wrk_target))
|
post.cf.set("WIP", "uri", "%s%s"%(domain.wip, post.wrk_target))
|
||||||
|
@ -537,11 +565,13 @@ def cf_update_values():
|
||||||
stats_tyto_all_coms = post.stats_tyto_text_coms + post.stats_tyto_head_coms
|
stats_tyto_all_coms = post.stats_tyto_text_coms + post.stats_tyto_head_coms
|
||||||
post.cf.set("STATS_FILE", "lines", str(post.lines))
|
post.cf.set("STATS_FILE", "lines", str(post.lines))
|
||||||
post.cf.set("STATS_FILE", "tyto_coms", str(stats_tyto_all_coms))
|
post.cf.set("STATS_FILE", "tyto_coms", str(stats_tyto_all_coms))
|
||||||
|
post.cf.set("STATS_FILE", "files", str(post.stats_total_files))
|
||||||
|
|
||||||
post.cf.set("STATS_HEADERS", "lines", str(post.head_lines))
|
post.cf.set("STATS_HEADERS", "lines", str(post.head_lines))
|
||||||
|
post.cf.set("STATS_HEADERS", "tyto_coms", str(post.stats_tyto_head_coms))
|
||||||
post.cf.set("STATS_HEADERS", "links", str(post.stats_links))
|
post.cf.set("STATS_HEADERS", "links", str(post.stats_links))
|
||||||
post.cf.set("STATS_HEADERS", "files", str(post.stats_files))
|
post.cf.set("STATS_HEADERS", "files", str(post.stats_files))
|
||||||
post.cf.set("STATS_HEADERS", "tyto_coms", str(post.stats_tyto_head_coms))
|
post.cf.set("STATS_HEADERS", "images", str(post.stats_images))
|
||||||
|
|
||||||
post.cf.set("STATS_TEXTS", "lines", str(post.text_lines))
|
post.cf.set("STATS_TEXTS", "lines", str(post.text_lines))
|
||||||
post.cf.set("STATS_TEXTS", "tyto_coms", str(post.stats_tyto_text_coms))
|
post.cf.set("STATS_TEXTS", "tyto_coms", str(post.stats_tyto_text_coms))
|
||||||
|
@ -549,6 +579,7 @@ def cf_update_values():
|
||||||
post.cf.set("STATS_TEXTS", "titles", str(post.stats_titles))
|
post.cf.set("STATS_TEXTS", "titles", str(post.stats_titles))
|
||||||
post.cf.set("STATS_TEXTS", "links", str(post.stats_text_links))
|
post.cf.set("STATS_TEXTS", "links", str(post.stats_text_links))
|
||||||
post.cf.set("STATS_TEXTS", "files", str(post.stats_text_files))
|
post.cf.set("STATS_TEXTS", "files", str(post.stats_text_files))
|
||||||
|
post.cf.set("STATS_TEXTS", "images", str(post.stats_text_images))
|
||||||
|
|
||||||
with open(post.cf_uri, "w") as f:
|
with open(post.cf_uri, "w") as f:
|
||||||
post.cf.write(f)
|
post.cf.write(f)
|
||||||
|
|
|
@ -110,9 +110,9 @@ def cf_exists():
|
||||||
|
|
||||||
|
|
||||||
#=========================================#
|
#=========================================#
|
||||||
# Guess and return www_url from name #
|
# Guess and return wip_url from name #
|
||||||
#-----------------------------------------#
|
#-----------------------------------------#
|
||||||
def create_www_url():
|
def create_wip_url():
|
||||||
www_url = "https://www-wip.%s/"
|
www_url = "https://www-wip.%s/"
|
||||||
len_cn = name.count(".")
|
len_cn = name.count(".")
|
||||||
|
|
||||||
|
@ -605,9 +605,9 @@ except:
|
||||||
# Domain Configuration directory
|
# Domain Configuration directory
|
||||||
wrk_dir = user_dir.rsplit("articles/")[0]
|
wrk_dir = user_dir.rsplit("articles/")[0]
|
||||||
wrk_articles = os.path.join(wrk_dir, "articles/")
|
wrk_articles = os.path.join(wrk_dir, "articles/")
|
||||||
|
wrk_images = os.path.join(wrk_dir, "articles/images/")
|
||||||
|
wrk_files = os.path.join(wrk_dir, "articles/files/")
|
||||||
wrk_tpl = os.path.join(wrk_dir, "template/")
|
wrk_tpl = os.path.join(wrk_dir, "template/")
|
||||||
wrk_images = os.path.join(wrk_dir, "images/")
|
|
||||||
wrk_files = os.path.join(wrk_dir, "files/")
|
|
||||||
wrk_mods = os.path.join(wrk_dir, "modules/")
|
wrk_mods = os.path.join(wrk_dir, "modules/")
|
||||||
wrk_db = os.path.join(wrk_dir, ".db/")
|
wrk_db = os.path.join(wrk_dir, ".db/")
|
||||||
|
|
||||||
|
|
|
@ -174,9 +174,10 @@ snpic = ("snpic:", False)
|
||||||
# Multiple lines (3)
|
# Multiple lines (3)
|
||||||
ml_tags = ("link:", "image:", "file:", "raw:", "code:", "abbr:")
|
ml_tags = ("link:", "image:", "file:", "raw:", "code:", "abbr:")
|
||||||
ml_marks = {
|
ml_marks = {
|
||||||
"link:" : "__",
|
"link:" : "__",
|
||||||
"file:" : "--",
|
"file:" : "--",
|
||||||
"abbr:" : "::"
|
"image:" : "_image:",
|
||||||
|
"abbr:" : "::"
|
||||||
}
|
}
|
||||||
|
|
||||||
# Markers with uri in value2
|
# Markers with uri in value2
|
||||||
|
@ -223,8 +224,11 @@ stats_raws = 0
|
||||||
stats_codes = 0
|
stats_codes = 0
|
||||||
stats_abbrs = 0
|
stats_abbrs = 0
|
||||||
|
|
||||||
stats_text_links = 0
|
stats_total_files = 0
|
||||||
stats_text_files = 0
|
|
||||||
|
stats_text_links = 0
|
||||||
|
stats_text_files = 0
|
||||||
|
stats_text_images = 0
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -236,11 +240,10 @@ ini_template = """[DOMAIN]
|
||||||
[FILE]
|
[FILE]
|
||||||
|
|
||||||
[HEADERS]
|
[HEADERS]
|
||||||
static =
|
|
||||||
snpic =
|
snpic =
|
||||||
|
|
||||||
[CHECK]
|
[CHECK]
|
||||||
static
|
static =
|
||||||
|
|
||||||
[WIP]
|
[WIP]
|
||||||
static =
|
static =
|
||||||
|
@ -260,6 +263,8 @@ static =
|
||||||
|
|
||||||
[ABBRS]
|
[ABBRS]
|
||||||
|
|
||||||
|
[SOURCE_FILES]
|
||||||
|
|
||||||
[STATS_FILE]
|
[STATS_FILE]
|
||||||
|
|
||||||
[STATS_HEADERS]
|
[STATS_HEADERS]
|
||||||
|
|
Loading…
Reference in New Issue