{% extends "base.html" %} {% import "utils.html" as utils %} {% block search %} {% call utils::search("".to_owned(), "") %} {% endblock %} {% block title %}{{ user.name.replace("u/", "") }} (u/{{ user.name }}) - Redlib{% endblock %} {% block subscriptions %} {% call utils::sub_list("") %} {% endblock %} {% block body %} <main> {% if !is_filtered %} <div id="column_one"> <form id="sort"> <div id="listing_options"> {% call utils::sort(["/user/", user.name.as_str()].concat(), ["overview", "comments", "submitted"], listing) %} </div> <select id="sort_select" name="sort"> {% call utils::options(sort.0, ["hot", "new", "top", "controversial"], "") %}</select >{% if sort.0 == "top" || sort.0 == "controversial" %}<select id="timeframe" name="t" > {% call utils::options(sort.1, ["hour", "day", "week", "month", "year", "all"], "all") %}</select >{% endif %}<button id="sort_submit" class="submit"> <svg width="15" viewBox="0 0 110 100" fill="none" stroke-width="10" stroke-linecap="round" > <path d="M20 50 H100" /> <path d="M75 15 L100 50 L75 85" /> → </svg> </button> </form> {% if all_posts_hidden_nsfw %} <center> All posts are hidden because they are NSFW. Enable "Show NSFW posts" in settings to view. </center> {% endif %} {% if no_posts %} <center>No posts were found.</center> {% endif %} {% if all_posts_filtered %} <center>(All content on this page has been filtered)</center> {% else %} <div id="posts"> {% for post in posts %} {% if post.flags.nsfw && prefs.show_nsfw != "on" %} {% else if !post.title.is_empty() %} {% call utils::post_in_list(post) %} {% else %} <div class="comment user-comment"> <div class="comment_left"> <p class="comment_score" title="{{ post.score.1 }}"> {% if prefs.hide_score != "on" %} {{ post.score.0 }} {% else %} • {% endif %} </p> <div class="line"></div> </div> <details class="comment_right" open> <summary class="comment_data"> <a class="comment_link" href="{{ post.permalink }}#{{ post.id }}" title="{{ post.link_title }}" >{{ post.link_title }}</a > <div class="user_comment_data_divider"> <span class="created-in"> in </span> <a class="comment_subreddit" href="/r/{{ post.community }}" >r/{{ post.community }}</a > <span class="dot">•</span> <span class="created" title="{{ post.created }}" > {{ post.rel_time }}</span > </div> </summary> <p class="comment_body">{{ post.body|safe }}</p> </details> </div> {% endif %} {% endfor %} {% if prefs.ffmpeg_video_downloads == "on" %} <script src="/ffmpeg/ffmpeg.js"></script> <script src="/ffmpeg/ffmpeg-util.js"></script> {% endif %} {% if prefs.use_hls == "on" || prefs.ffmpeg_video_downloads == "on" %} <script src="/hls.min.js"></script> <script src="/videoUtils.js"></script> {% endif %} </div> {% endif %} <footer> {% if ends.0 != "" %} <a href="?sort={{ sort.0 }}&t={{ sort.1 }}&before={{ ends.0 }}" accesskey="P" >PREV</a > {% endif %} {% if ends.1 != "" %} <a href="?sort={{ sort.0 }}&t={{ sort.1 }}&after={{ ends.1 }}" accesskey="N" >NEXT</a > {% endif %} </footer> </div> {% endif %} <aside> {% if is_filtered %} <center>(Content from u/{{ user.name }} has been filtered)</center> {% endif %} <div class="panel" id="user"> <img loading="lazy" id="user_icon" src="{{ user.icon }}" alt="User icon" /> <h1 id="user_title">{{ user.title }}</h1> <p id="user_name">u/{{ user.name }}</p> {% if crate::utils::enable_rss() %} <a href="/r/{{ user.name }}.rss" title="RSS feed for r/{{ user.name }}"> <button> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"> <g fill="none" fill-rule="evenodd"> <path d="m12.594 23.258l-.012.002l-.071.035l-.02.004l-.014-.004l-.071-.036q-.016-.004-.024.006l-.004.01l-.017.428l.005.02l.01.013l.104.074l.015.004l.012-.004l.104-.074l.012-.016l.004-.017l-.017-.427q-.004-.016-.016-.018m.264-.113l-.014.002l-.184.093l-.01.01l-.003.011l.018.43l.005.012l.008.008l.201.092q.019.005.029-.008l.004-.014l-.034-.614q-.005-.019-.02-.022m-.715.002a.02.02 0 0 0-.027.006l-.006.014l-.034.614q.001.018.017.024l.015-.002l.201-.093l.01-.008l.003-.011l.018-.43l-.003-.012l-.01-.01z" /> <path fill="currentColor" d="M18 3a3 3 0 0 1 2.995 2.824L21 6v12a3 3 0 0 1-2.824 2.995L18 21H6a3 3 0 0 1-2.995-2.824L3 18V6a3 3 0 0 1 2.824-2.995L6 3zM8.5 14a1.5 1.5 0 1 0 0 3a1.5 1.5 0 0 0 0-3M8 10.5a1 1 0 1 0 0 2a3.5 3.5 0 0 1 3.5 3.5a1 1 0 1 0 2 0A5.5 5.5 0 0 0 8 10.5M8.5 7q-.285 0-.566.019a1 1 0 0 0 .132 1.995a6.5 6.5 0 0 1 6.92 6.92a1 1 0 1 0 1.995.132A8.5 8.5 0 0 0 8.5 7" /> </g> </svg> </button > </a> {% endif %} <div id="user_description">{{ user.description }}</div> <div id="user_details"> <label>Karma</label> <label>Created</label> <div>{{ user.karma }}</div> <div>{{ user.created }}</div> </div> <div id="user_actions"> {% let name = ["u_", user.name.as_str()].join("") %} <div id="user_subscription"> {% if prefs.subscriptions.contains(name) %} <form action="/r/{{ name }}/unsubscribe?redirect={{ redirect_url }}" method="POST" > <button class="unsubscribe">Unfollow</button> </form> {% else %} <form action="/r/{{ name }}/subscribe?redirect={{ redirect_url }}" method="POST" > <button class="subscribe">Follow</button> </form> {% endif %} </div> <div id="user_filter"> {% if prefs.filters.contains(name) %} <form action="/r/{{ name }}/unfilter?redirect={{ redirect_url }}" method="POST" > <button class="unfilter">Unfilter</button> </form> {% else %} <form action="/r/{{ name }}/filter?redirect={{ redirect_url }}" method="POST" > <button class="filter">Filter</button> </form> {% endif %} </div> <div id="user_quicklist"> {% if prefs.quicklist.contains(name) %} <form action="/r/{{ name }}/unquicklist?redirect={{ redirect_url }}" method="POST"> <button> <svg class="unquick" xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"> <g fill="none"> <path d="m12.594 23.258l-.012.002l-.071.035l-.02.004l-.014-.004l-.071-.036q-.016-.004-.024.006l-.004.01l-.017.428l.005.02l.01.013l.104.074l.015.004l.012-.004l.104-.074l.012-.016l.004-.017l-.017-.427q-.004-.016-.016-.018m.264-.113l-.014.002l-.184.093l-.01.01l-.003.011l.018.43l.005.012l.008.008l.201.092q.019.005.029-.008l.004-.014l-.034-.614q-.005-.019-.02-.022m-.715.002a.02.02 0 0 0-.027.006l-.006.014l-.034.614q.001.018.017.024l.015-.002l.201-.093l.01-.008l.003-.011l.018-.43l-.003-.012l-.01-.01z" /> <path fill="currentColor" d="M16 2a3 3 0 0 1 3 3v11h-3a3 3 0 0 0-2.997 2.87L12 18.202l-4.668 3.112C6.335 21.978 5 21.264 5 20.066V5a3 3 0 0 1 3-3zm6 16a1 1 0 0 1 .117 1.993L22 20h-6a1 1 0 0 1-.117-1.993L16 18z" /> </g> </svg> </button> </form> {% else %} <form action="/r/{{ name }}/quicklist?redirect={{ redirect_url }}" method="POST"> <button> <svg class="quick" xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"> <g fill="none" fill-rule="evenodd"> <path d="m12.594 23.258l-.012.002l-.071.035l-.02.004l-.014-.004l-.071-.036q-.016-.004-.024.006l-.004.01l-.017.428l.005.02l.01.013l.104.074l.015.004l.012-.004l.104-.074l.012-.016l.004-.017l-.017-.427q-.004-.016-.016-.018m.264-.113l-.014.002l-.184.093l-.01.01l-.003.011l.018.43l.005.012l.008.008l.201.092q.019.005.029-.008l.004-.014l-.034-.614q-.005-.019-.02-.022m-.715.002a.02.02 0 0 0-.027.006l-.006.014l-.034.614q.001.018.017.024l.015-.002l.201-.093l.01-.008l.003-.011l.018-.43l-.003-.012l-.01-.01z" /> <path fill="currentColor" d="M10 2a3 3 0 0 0-3 3a3 3 0 0 0-3 3v13.018c0 1.226 1.39 1.934 2.382 1.213l4.118-2.995l4.118 2.995c.991.721 2.382.013 2.382-1.213v-2.236l.618.45c.991.72 2.382.012 2.382-1.214V5a3 3 0 0 0-3-3zm7 14.309l1 .727V5a1 1 0 0 0-1-1h-7a1 1 0 0 0-1 1h5a3 3 0 0 1 3 3z" /> </g> </svg> </button> </form> {% endif %} </div> </div> </div> </aside> </main> {% endblock %}