parent
							
								
									b202889dce
								
							
						
					
					
						commit
						e4e9df88d7
					
				
							
								
								
									
										32
									
								
								main.py
									
									
									
									
									
								
							
							
						
						
									
										32
									
								
								main.py
									
									
									
									
									
								
							| 
						 | 
				
			
			@ -50,14 +50,29 @@ def exception_handler(e: werkzeug.exceptions.InternalServerError) -> tuple[str,
 | 
			
		|||
@app.route("/")
 | 
			
		||||
def start() -> str:
 | 
			
		||||
    """Start form."""
 | 
			
		||||
    wikipedia_url = flask.request.args.get("wikipedia")
 | 
			
		||||
    if not wikipedia_url:
 | 
			
		||||
    enwp = flask.request.args.get("enwp")
 | 
			
		||||
    if not enwp:
 | 
			
		||||
        return flask.render_template("combined.html")
 | 
			
		||||
    enwp = enwp.strip()
 | 
			
		||||
    if not enwp:
 | 
			
		||||
        return flask.render_template("combined.html")
 | 
			
		||||
 | 
			
		||||
    start = wikipedia_url.find(enwiki) + len(enwiki)
 | 
			
		||||
    wiki_part2 = unquote(wikipedia_url[start:])
 | 
			
		||||
    input_is = "url" if enwp.startswith(enwiki) else "title"
 | 
			
		||||
 | 
			
		||||
    name = wiki_part2
 | 
			
		||||
    wikipedia_url: str
 | 
			
		||||
    wiki_part1: str
 | 
			
		||||
    wiki_part2: str
 | 
			
		||||
    if input_is == "url":
 | 
			
		||||
        start = enwp.find(enwiki) + len(enwiki)
 | 
			
		||||
        wiki_part2 = unquote(enwp[start:])
 | 
			
		||||
        name = wiki_part2
 | 
			
		||||
        wiki_part1 = enwp[:start]
 | 
			
		||||
        wikipedia_url = enwp
 | 
			
		||||
    else:
 | 
			
		||||
        name = enwp
 | 
			
		||||
        wiki_part1 = enwiki
 | 
			
		||||
        wiki_part2 = name.replace(" ", "_")
 | 
			
		||||
        wikipedia_url = wiki_part1 + wiki_part2
 | 
			
		||||
 | 
			
		||||
    if "_(" in name:
 | 
			
		||||
        name = name[: name.find("_(")]
 | 
			
		||||
| 
						 | 
				
			
			@ -68,11 +83,9 @@ def start() -> str:
 | 
			
		|||
        return flask.render_template(
 | 
			
		||||
            "combined.html",
 | 
			
		||||
            name=name,
 | 
			
		||||
            wikipedia_url=wikipedia_url,
 | 
			
		||||
            enwp=enwp,
 | 
			
		||||
        )
 | 
			
		||||
 | 
			
		||||
    wiki_part1 = wikipedia_url[:start]
 | 
			
		||||
 | 
			
		||||
    if "/in/" in flickr_url:
 | 
			
		||||
        flickr_url = flickr_url[: flickr_url.find("/in/")]
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -90,6 +103,7 @@ def start() -> str:
 | 
			
		|||
    msg = flask.render_template(
 | 
			
		||||
        "message.jinja",
 | 
			
		||||
        flickr_url=flickr_url,
 | 
			
		||||
        enwp=enwp,
 | 
			
		||||
        wikipedia_url=wikipedia_url,
 | 
			
		||||
        name=name,
 | 
			
		||||
        wiki_part1=wiki_part1,
 | 
			
		||||
| 
						 | 
				
			
			@ -103,7 +117,7 @@ def start() -> str:
 | 
			
		|||
    return flask.render_template(
 | 
			
		||||
        "combined.html",
 | 
			
		||||
        name=name,
 | 
			
		||||
        wikipedia_url=wikipedia_url,
 | 
			
		||||
        enwp=enwp,
 | 
			
		||||
        flickr_url=flickr_url,
 | 
			
		||||
        subject=subject,
 | 
			
		||||
        lines=lines,
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -8,8 +8,8 @@
 | 
			
		|||
    <h1>Flickr mail</h1>
 | 
			
		||||
    <form action="{{ url_for(request.endpoint) }}">
 | 
			
		||||
      <div class="mb-3">
 | 
			
		||||
        <label for="wikipedia" class="form-label">Wikipedia URL:</label>
 | 
			
		||||
        <input type="text" class="form-control" id="wikipedia" name="wikipedia" value="{{ wikipedia_url }}" required>
 | 
			
		||||
        <label for="enwp" class="form-label">Wikipedia article URL or title:</label>
 | 
			
		||||
        <input type="text" class="form-control" id="enwp" name="enwp" value="{{ enwp }}" required>
 | 
			
		||||
      </div>
 | 
			
		||||
 | 
			
		||||
      <input type="submit" value="Submit">
 | 
			
		||||
| 
						 | 
				
			
			@ -21,8 +21,8 @@
 | 
			
		|||
    <p><a href="https://flickr.com/search/?view_all=1&safe_search=3&text={{ '"' + name + '"' | urlencode }}" target="_blank">Search flickr</a></p>
 | 
			
		||||
 | 
			
		||||
    <form action="{{ url_for(request.endpoint) }}">
 | 
			
		||||
      <input type="hidden" name="wikipedia" value="{{ wikipedia_url }}"></input>
 | 
			
		||||
  <div class="mb-3">
 | 
			
		||||
        <input type="hidden" name="enwp" value="{{ enwp }}"></input>
 | 
			
		||||
        <div class="mb-3">
 | 
			
		||||
        <label for="flickr" class="form-label">Flickr URL:</label>
 | 
			
		||||
        <input type="text" class="form-control" id="flickr" name="flickr" value="{{ flickr_url }}" required>
 | 
			
		||||
        </div>
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in a new issue