]> apps.delaporte.us Git - matrix-shop-bot.git/blobdiff - matrix_shop_bot/bot.py
WIP skill
[matrix-shop-bot.git] / matrix_shop_bot / bot.py
index 8894ce61cc1d92c993cefc3d358d2199aafe4bd9..ee56105c77384feea18483b715ad5e267641ea79 100644 (file)
@@ -13,17 +13,17 @@ DATE_FORMAT = '%Y-%m-%d'
 def today():
     return dt.now().strftime(DATE_FORMAT)
 
-PREFIX = f'.{MODULE}'
+PREFIX = f'{MODULE}'
 logger = logging.getLogger(__name__)
 logging.basicConfig(filename=f'{MODULE}.log', encoding='utf-8', level=logging.DEBUG)
 logging.getLogger('nio').setLevel(logging.WARNING)
 
 async def do_shop(match):
     '''
-    Prefix: .shop
+    Prefix: shop
 
     Synax:
-      .shop COMMAND ARGS
+      shop COMMAND ARGS
 
     Commands:
       help - show this help
@@ -38,29 +38,31 @@ async def do_shop(match):
       stores - list all stores
 
     Examples:
-      .shop past costco
-      .shop at costco
+      shop past costco
+      shop at costco
 
-      .shop add sour cream
-      .shop add milk
+      shop add sour cream
+      shop add milk
     
-      .shop list
+      shop list
 
-      .shop buy 1 2 5 7
+      shop buy 1 2 5 7
 
     '''
     extended_help = '''
       assign ITEM_ID - assign item to last used store id
       assign.item.to.store ITEM_ID STORE_ID - plan to shop for at store for item
       clear.all STORE - clear **all** items for STORE, including un-purchased
+      rename OLD,NEW - rename an item
+      rename.store OLD,NEW - rename a store
       remove ITEM_ID - remove a shopping item from the datatbase
       remove.store STORE_ID - remove a store from the datatbase (requires clearing the list first)
       setup - run one time database setup
       unsorted - list all items not assigned to any store
-      zone ZONE ITEM - list ITEM under given ZONE 
+      zone ZONE ITEM - list ITEM under given ZONE - ZONE may not contain spaces
 
       Example: 
-        .shop zone dairy sour cream
+        shop zone dairy sour cream
     '''
 
     if match.command('setup'):
@@ -160,6 +162,16 @@ async def do_shop(match):
             results.append(str(item))
         return results
 
+    if match.command('rename'):
+        old,new = ' '.join(match.args()[1:]).split(',')
+        Data().rename_item(old,new)
+        return ['Success']
+
+    if match.command('rename.store'):
+        old,new = ' '.join(match.args()[1:]).split(',')
+        Data().rename_store(old,new)
+        return ['Success']
+
     if match.command('remove'):
         item_id = ' '.join(match.args()[1:])
         Data().remove_item(item_id)