added check for duplicates in tables TAGS and CATEGORY
This commit is contained in:
parent
e169cf1b6b
commit
73904fac53
20
image-index
20
image-index
|
@ -179,6 +179,9 @@ class database():
|
||||||
n=0
|
n=0
|
||||||
for i in self.get_col(typ):
|
for i in self.get_col(typ):
|
||||||
aliases=[]
|
aliases=[]
|
||||||
|
if i == "." and self.name == "FILES":
|
||||||
|
print("NO ENTRIES IN THE INDEX!")
|
||||||
|
return "."
|
||||||
# get aliases for the checks, but only for unspecific search!
|
# get aliases for the checks, but only for unspecific search!
|
||||||
if self.name == "FILES":
|
if self.name == "FILES":
|
||||||
if typ == "*":
|
if typ == "*":
|
||||||
|
@ -278,6 +281,15 @@ class metatable(database):
|
||||||
selection=self.select_index(selection,quiet)
|
selection=self.select_index(selection,quiet)
|
||||||
return selection
|
return selection
|
||||||
|
|
||||||
|
def update_index(self, typ, update, where, val):
|
||||||
|
selection=self.search_index(update,"strict")
|
||||||
|
if selection[0] != "." and len(selection) >= 1:
|
||||||
|
print("One entry is already called {}!".format(update))
|
||||||
|
return False
|
||||||
|
else:
|
||||||
|
super().update_index(typ, update, where, val)
|
||||||
|
return True
|
||||||
|
|
||||||
class filestable(database):
|
class filestable(database):
|
||||||
def __init__(self,filepath = CONFIG_DIR + "/index.db"):
|
def __init__(self,filepath = CONFIG_DIR + "/index.db"):
|
||||||
self.name="FILES"
|
self.name="FILES"
|
||||||
|
@ -470,7 +482,7 @@ class filestable(database):
|
||||||
|
|
||||||
return self.select_index(selection,quiet)
|
return self.select_index(selection,quiet)
|
||||||
|
|
||||||
def get_randhex(self,count=5):
|
def get_randhex(count=5):
|
||||||
randhex=""
|
randhex=""
|
||||||
for i in range(count):
|
for i in range(count):
|
||||||
randhex+=random.choice("0123456789abcdef")
|
randhex+=random.choice("0123456789abcdef")
|
||||||
|
@ -668,16 +680,16 @@ def meta_update(typ,args):
|
||||||
sel_list=ctb.search_index(search)
|
sel_list=ctb.search_index(search)
|
||||||
for item in sel_list:
|
for item in sel_list:
|
||||||
alias=ctb.get_alias(item[0])
|
alias=ctb.get_alias(item[0])
|
||||||
ctb.update_index("ALIAS", update, "NAME", item[0])
|
success=ctb.update_index("ALIAS", update, "NAME", item[0])
|
||||||
elif re.match('[tT].*',typ):
|
elif re.match('[tT].*',typ):
|
||||||
sel_list=ttb.search_index(search)
|
sel_list=ttb.search_index(search)
|
||||||
for item in sel_list:
|
for item in sel_list:
|
||||||
alias=ttb.get_alias(item[0])
|
alias=ttb.get_alias(item[0])
|
||||||
ttb.update_index("ALIAS", update, "NAME", item[0])
|
success=ttb.update_index("ALIAS", update, "NAME", item[0])
|
||||||
else:
|
else:
|
||||||
print("The first argument needs to be either 'Category' or 'Tags'!")
|
print("The first argument needs to be either 'Category' or 'Tags'!")
|
||||||
return 1
|
return 1
|
||||||
if item[0] != ".":
|
if item[0] != "." and success:
|
||||||
print("Updated {} to {}".format(alias,update))
|
print("Updated {} to {}".format(alias,update))
|
||||||
|
|
||||||
def meta_help():
|
def meta_help():
|
||||||
|
|
Loading…
Reference in a new issue