#!/usr/bin/env python3 import sys, json sys.path.append('lib/') from helpers import * qString = get_query_string() if isinstance(qString, dict): if ('feedback' in qString and 'page' in qString): # simplify data access pageName = qString['page'][0] feedback = qString['feedback'][0] # Validity data validFeedback = ["thanks", "not_helpful", "no_opinion"] if (feedback in validFeedback): # open file and insert data with open("thanks.json", "r+") as file: # Load the json file dataDict = json.load(file) # Create entry if it doesn't exist if (pageName) not in dataDict: dataDict[pageName] = {'thanks': 0, 'not_helpful':0, 'no_opinion':0} # Update the count dataDict[pageName][feedback] += 1 # write the data, truncating file first file.seek(0) file.truncate() json.dump(dataDict, file, indent = 2) # Display success show_header_ok() print("# Feedback Recorded") print(" ") print("Thanks, your feedback has been recorded.") print(f"=> {pageName} Return to page") else: show_header_ok() print("Not valid parameters") else: show_header_ok() print("No valid data, expected 'feedback' and 'page' params") else: show_header_ok() print("No valid data passed") gemini://gemini.smallweb.space/HOWTO/examples/thanks.txt

-- Leo's gemini proxy

-- Connecting to gemini.smallweb.space:1965...

-- Connected

-- Sending request

-- Meta line: 20 text/plain

-- Response ended

-- Page fetched on Sun May 19 13:54:32 2024