test: refresh authenticated HTML fixtures

Re-captures testdata/html/*.html against the live site with valid
session cookies; the previous user.html was the logged-out interstitial,
which broke TestParseUser_RealFixture entirely. Bumps the expected
Stats.Views in that test to match the new fixture.
This commit is contained in:
2026-06-02 21:23:52 +02:00
parent 20fcad7fbb
commit 25800bc753
12 changed files with 16881 additions and 2142 deletions

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

View File

@@ -4,7 +4,7 @@
<head> <head>
<meta charset="utf-8" /> <meta charset="utf-8" />
<title>Scraps Gallery for KazuCreations -- Fur Affinity [dot] net</title> <title>Scraps Gallery for SoXX-TheFennec -- Fur Affinity [dot] net</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta name="description" content="Fur Affinity | For all things fluff, scaled, and feathered!" /> <meta name="description" content="Fur Affinity | For all things fluff, scaled, and feathered!" />
@@ -20,26 +20,22 @@
<meta http-equiv="X-UA-Compatible" content="IE=9; IE=EDGE" /> <meta http-equiv="X-UA-Compatible" content="IE=9; IE=EDGE" />
<!-- generic -->
<meta name="robots" content="noindex" />
<!-- og --> <!-- og -->
<meta property="og:type" content="website" /> <meta property="og:type" content="website" />
<meta property="og:title" content="Scraps Gallery for KazuCreations -- Fur Affinity [dot] net" /> <meta property="og:title" content="Scraps Gallery for SoXX-TheFennec -- Fur Affinity [dot] net" />
<meta property="og:url" content="https://www.furaffinity.net/gallery/kazucreations/" /> <meta property="og:url" content="https://www.furaffinity.net/gallery/soxx-thefennec/" />
<meta property="og:description" content="moved to featherworks.studio" /> <meta property="og:description" content=". . . ╭━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╮. . . . Well hi there^^. . I'm the friendly Fenn ..." />
<meta property="og:image" content="https://t.furaffinity.net/30549394@600-1550693644.jpg" /> <meta property="og:image" content="https://www.furaffinity.net/themes/beta/img/banners/fa_logo.png?v2" />
<meta property="og:image:secure_url" content="https://t.furaffinity.net/30549394@600-1550693644.jpg" />
<meta property="og:image:type" content="image/jpeg" />
<meta property="og:image:width" content="423" />
<meta property="og:image:height" content="600" />
<!-- twitter --> <!-- twitter -->
<meta name="twitter:card" content="summary_large_image" /> <meta name="twitter:card" content="summary_large_image" />
<meta name="twitter:domain" content="furaffinity.net" /> <meta name="twitter:domain" content="furaffinity.net" />
<meta name="twitter:site" content="@furaffinity" /> <meta name="twitter:site" content="@furaffinity" />
<meta name="twitter:title" content="Scraps Gallery for KazuCreations -- Fur Affinity [dot] net" /> <meta name="twitter:title" content="Scraps Gallery for SoXX-TheFennec -- Fur Affinity [dot] net" />
<meta name="twitter:description" content="moved to featherworks.studio" /> <meta name="twitter:description" content=". . . ╭━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╮. . . . Well hi there^^. . I'm the friendly Fenn ..." />
<meta name="twitter:url" content="https://www.furaffinity.net/gallery/kazucreations/" /> <meta name="twitter:url" content="https://www.furaffinity.net/gallery/soxx-thefennec/" />
<meta name="twitter:image" content="https://t.furaffinity.net/30549394@600-1550693644.jpg" /> <meta name="twitter:image" content="https://www.furaffinity.net/themes/beta/img/banners/fa_logo.png?v2" />
<meta name="twitter:label1" content="Submission Title" />
<meta name="twitter:data1" content="[NDS] #1 Octopus" />
<script type="text/javascript"> <script type="text/javascript">
var _faurl = { var _faurl = {
@@ -84,6 +80,11 @@
<!-- EU request: yes --> <!-- EU request: yes -->
<body class="c-bodyColor" <body class="c-bodyColor"
id="pageid-gallery" data-static-path="/themes/beta" id="pageid-gallery" data-static-path="/themes/beta"
data-user-blocklist=""
data-user-logged-in="1"
data-tag-blocklist="music"
data-tag-blocklist-hide-tagless="0"
data-tag-blocklist-nonce="9c0b6abe200b079665c4007b29c9378e7370ed7cba9e20619971471cf50ea5c8"
> >
<script type="text/javascript"> <script type="text/javascript">
@@ -120,6 +121,11 @@
<div class="mobile-nav-content-container"> <div class="mobile-nav-content-container">
<div class="aligncenter"> <div class="aligncenter">
<a href="/user/soxx-thefennec/"><img class="loggedin_user_avatar avatar" alt="SoXX-TheFennec" src="//a.furaffinity.net/1515442832/soxx-thefennec.gif"/></a>
<h2 style="margin-bottom:0"><a href="/user/soxx-thefennec/">SoXX-TheFennec</a></h2>
<a href="/user/soxx-thefennec/">Userpage</a> |
<a href="/msg/pms/">Notes</a> |
<a href="/controls/journal/">Journals</a> |
<a href="/plus/"><img class="menu-mini-icon" src="/themes/beta/img/the-golden-pawb.png"> FA+</a> | <a href="/plus/"><img class="menu-mini-icon" src="/themes/beta/img/the-golden-pawb.png"> FA+</a> |
<a href="https://shop.furaffinity.net" target="_blank"><img class="menu-mini-icon" src="/themes/beta/img/icons/merch_store_icon.png"> Shop</a> <a href="https://shop.furaffinity.net" target="_blank"><img class="menu-mini-icon" src="/themes/beta/img/icons/merch_store_icon.png"> Shop</a>
<br /> <br />
@@ -127,6 +133,7 @@
<hr> <hr>
<h2><a href="/browse/">Browse</a></h2> <h2><a href="/browse/">Browse</a></h2>
<h2><a href="/search/">Search</a></h2> <h2><a href="/search/">Search</a></h2>
<h2><a href="/submit/">Upload</a></h2>
<div class="nav-ac-container"> <div class="nav-ac-container">
<label for="mobile-menu-submenu-0"><h2 style="margin-top:0;padding-top:0">Support &#x25BC;</h2></label> <label for="mobile-menu-submenu-0"><h2 style="margin-top:0;padding-top:0">Support &#x25BC;</h2></label>
@@ -158,22 +165,65 @@
<h3>SUPPORT</h3> <h3>SUPPORT</h3>
<a href="/help/#contact">Contact Us</a><br /> <a href="/help/#contact">Contact Us</a><br />
<a href="/controls/troubletickets/">REPORT A PROBLEM</a><br />
<a href="https://status.furaffinity.net/">Site Status</a> <a href="https://status.furaffinity.net/">Site Status</a>
</article> </article>
</div> </div>
<div class="mobile-sfw-toggle">
<h2>SFW Mode</h2>
<div class="sfw-toggle type-slider slider-button-wrapper">
<input type="checkbox" id="sfw-toggle-mobile" class="slider-toggle" />
<label class="slider-viewport" for="sfw-toggle-mobile" title="Quick toggle to show or hide Mature and Adult submissions">
<div class="slider">
<div class="slider-button">&nbsp;</div>
<div class="slider-content left"><span>SFW</span></div>
<div class="slider-content right"><span>NSFW</span></div>
</div>
</label>
</div>
</div>
<div class="nav-ac-container">
<label for="mobile-menu-submenu-1"><h2 style="margin-top:0;padding-top:0">Settings &#x25BC;</h2></label>
<input id="mobile-menu-submenu-1" name="accordion-1" type="checkbox" />
<article class="nav-ac-content nav-ac-content-dropdown">
<h3>ACCOUNT INFORMATION</h3>
<a href="/controls/settings/">Account Settings</a><br>
<a href="/controls/site-settings/">Global Site Settings</a><br>
<a href="/controls/user-settings/">User Settings</a>
<h3>CUSTOMIZE USER PROFILE</h3>
<a href="/controls/profile/">Profile Info</a><br>
<a href="/controls/profilebanner/">Profile Banner</a><br>
<a href="/controls/contacts/">Contacts and Social Media</a><br>
<a href="/controls/avatar/">Avatar Management</a>
<h3>MANAGE MY CONTENT</h3>
<a href="/controls/submissions/">Submissions</a><br>
<a href="/controls/folders/submissions/">Folders</a><br>
<a href="/controls/journal/">Journals</a><br>
<a href="/controls/favorites/">Favorites</a><br>
<a href="/controls/buddylist/">Watches</a><br>
<a href="/controls/shouts/">Shouts</a><br>
<a href="/controls/badges/">Badges</a><br>
<a href="/controls/user-icons/">User Icons</a>
<h3>SECURITY</h3>
<a href="/controls/sessions/logins/">Active Sessions</a><br>
<a href="/controls/sessions/logs/">Activity Log</a><br>
<a href="/controls/sessions/labels/">Browser Labels</a>
</article>
</div>
<hr>
<hr> <hr>
<h2><div class="inline hideonmobile hideontablet"> <h2><form class="post-btn logout-link" method="post" action="/logout/"><button type="submit">Log Out</button><input type="hidden" name="key" value="0d42e70dd0a66ac4fc09e91e680fa1c47b564d429c3bc222c090e4f47f3132b4"/></form>
<a href="/login"><strong>Log In</strong></a> or <a href="/register"><strong>Create an Account</strong></a> <script type="text/javascript">
</div> _fajs.push(['init_logout_button', '.logout-link button']);
</script>
<div class="inline hideondesktop">
<a href="/login">Log In</a><br>
<a href="/register">Create an Account</a>
</div>
</h2> </h2>
@@ -186,6 +236,11 @@
<div class="mobile-notification-bar">
<a class="notification-container inline" href="/msg/submissions/" title="5,161 Submission Notifications">5161S</a>
<a class="notification-container inline" href="/msg/others/#journals" title="75 Journal Notifications">75J</a>
</div>
@@ -245,6 +300,7 @@
<h3>Support</h3> <h3>Support</h3>
<a href="/help/#contact">Contact Us</a> <a href="/help/#contact">Contact Us</a>
<a href="/controls/troubletickets/">Report a Problem</a>
<a href="https://status.furaffinity.net/">Site Status</a> <a href="https://status.furaffinity.net/">Site Status</a>
</div> </div>
</div> </div>
@@ -270,16 +326,96 @@
<li class="no-sub"> <li class="message-bar-desktop">
<span class="top-heading"><div class="inline hideonmobile hideontablet"> <a class="notification-container inline" href="/msg/submissions/" title="5,161 Submission Notifications">5161S</a>
<a href="/login"><strong>Log In</strong></a> or <a href="/register"><strong>Create an Account</strong></a> <a class="notification-container inline" href="/msg/others/#journals" title="75 Journal Notifications">75J</a>
</div> </li>
<div class="inline hideondesktop"> <li>
<a href="/login">Log In</a><br> <div class="floatleft hideonmobile">
<a href="/register">Create an Account</a> <a href="/user/soxx-thefennec"><img class="loggedin_user_avatar menubar-icon-resize avatar" style="cursor:pointer" alt="SoXX-TheFennec" src="//a.furaffinity.net/1515442832/soxx-thefennec.gif"/></a>
</div>
</li>
<li class="submenu-trigger">
<div class="floatleft hideonmobile">
<svg class="avatar-submenu-trigger banner-svg" xmlns="http://www.w3.org/2000/svg" width="36" height="36" viewBox="0 0 24 24"><path d="M4 6h16v2H4zm0 5h16v2H4zm0 5h16v2H4z"></path></svg>
</div>
<a id="my-username" class="top-heading hideondesktop" href="#"><span class="hideondesktop">My FA ( </span>SoXX-TheFennec<span class="hideondesktop"> )</span></a>
<div class="dropdown dropdown-right">
<div class="dd-inner">
<div class="column">
<h3>Account</h3>
<a href="/user/soxx-thefennec/">My Userpage</a>
<a href="/msg/pms/">Check My Notes</a>
<a href="/controls/journal/">Create a Journal</a>
<a href="/commissions/soxx-thefennec/">My Commission Info</a>
<h3>Support Fur Affinity</h3>
<a href="/plus/">Subscribe to FA+ </a>
<a href="https://shop.furaffinity.net/" target="_blank">Merch Store</a>
<h3>Trouble Tickets</h3>
<a href="/controls/troubletickets/">Report a Problem</a>
<div class="mobile-sfw-toggle">
<h3 class="padding-top:10px">Toggle SFW</h3>
<div class="sfw-toggle type-slider slider-button-wrapper" style="position:relative;top:5px">
<input type="checkbox" id="sfw-toggle-mobile" class="slider-toggle" />
<label class="slider-viewport" for="sfw-toggle-mobile" title="Quick toggle to show or hide Mature and Adult submissions">
<div class="slider">
<div class="slider-button">&nbsp;</div>
<div class="slider-content left"><span>SFW</span></div>
<div class="slider-content right"><span>NSFW</span></div>
</div>
</label>
</div>
</div>
<hr>
<form class="post-btn logout-link" method="post" action="/logout/"><button type="submit">Log Out</button><input type="hidden" name="key" value="0d42e70dd0a66ac4fc09e91e680fa1c47b564d429c3bc222c090e4f47f3132b4"/></form>
<script type="text/javascript">
_fajs.push(['init_logout_button', '.logout-link button']);
</script>
</div>
</div>
</div>
</li>
<li class="submenu-trigger">
<a class="top-heading" href="#"><svg class="banner-svg" xmlns="http://www.w3.org/2000/svg" width="36" height="36" viewBox="0 0 24 24" style="transform: ;msFilter:;"><path d="M12 16c2.206 0 4-1.794 4-4s-1.794-4-4-4-4 1.794-4 4 1.794 4 4 4zm0-6c1.084 0 2 .916 2 2s-.916 2-2 2-2-.916-2-2 .916-2 2-2z"></path><path d="m2.845 16.136 1 1.73c.531.917 1.809 1.261 2.73.73l.529-.306A8.1 8.1 0 0 0 9 19.402V20c0 1.103.897 2 2 2h2c1.103 0 2-.897 2-2v-.598a8.132 8.132 0 0 0 1.896-1.111l.529.306c.923.53 2.198.188 2.731-.731l.999-1.729a2.001 2.001 0 0 0-.731-2.732l-.505-.292a7.718 7.718 0 0 0 0-2.224l.505-.292a2.002 2.002 0 0 0 .731-2.732l-.999-1.729c-.531-.92-1.808-1.265-2.731-.732l-.529.306A8.1 8.1 0 0 0 15 4.598V4c0-1.103-.897-2-2-2h-2c-1.103 0-2 .897-2 2v.598a8.132 8.132 0 0 0-1.896 1.111l-.529-.306c-.924-.531-2.2-.187-2.731.732l-.999 1.729a2.001 2.001 0 0 0 .731 2.732l.505.292a7.683 7.683 0 0 0 0 2.223l-.505.292a2.003 2.003 0 0 0-.731 2.733zm3.326-2.758A5.703 5.703 0 0 1 6 12c0-.462.058-.926.17-1.378a.999.999 0 0 0-.47-1.108l-1.123-.65.998-1.729 1.145.662a.997.997 0 0 0 1.188-.142 6.071 6.071 0 0 1 2.384-1.399A1 1 0 0 0 11 5.3V4h2v1.3a1 1 0 0 0 .708.956 6.083 6.083 0 0 1 2.384 1.399.999.999 0 0 0 1.188.142l1.144-.661 1 1.729-1.124.649a1 1 0 0 0-.47 1.108c.112.452.17.916.17 1.378 0 .461-.058.925-.171 1.378a1 1 0 0 0 .471 1.108l1.123.649-.998 1.729-1.145-.661a.996.996 0 0 0-1.188.142 6.071 6.071 0 0 1-2.384 1.399A1 1 0 0 0 13 18.7l.002 1.3H11v-1.3a1 1 0 0 0-.708-.956 6.083 6.083 0 0 1-2.384-1.399.992.992 0 0 0-1.188-.141l-1.144.662-1-1.729 1.124-.651a1 1 0 0 0 .471-1.108z"></path></svg></a>
<div class="dropdown dropdown-right">
<div class="dd-inner">
<div class="column">
<h3>Account Information</h3>
<a href="/controls/settings/">Account Settings</a>
<a href="/controls/site-settings/">Global Site Settings</a>
<a href="/controls/user-settings/">User Settings</a>
<h3>Customize User Profile</h3>
<a href="/controls/profile/">Profile Info</a>
<a href="/controls/profilebanner/">Profile Banner</a>
<a href="/controls/contacts/">Contacts & Social Media</a>
<a href="/controls/avatar/">Avatar Management</a>
<h3>Manage My Content</h3>
<a href="/controls/submissions/">Submissions</a>
<a href="/controls/folders/submissions/">Folders</a>
<a href="/controls/journal/">Journals</a>
<a href="/controls/favorites/">Favorites</a>
<a href="/controls/buddylist/">Watches</a>
<a href="/controls/shouts/">Shouts</a>
<a href="/controls/badges/">Badges</a>
<a href="/controls/user-icons/">User Icons</a>
<h3>Security</h3>
<a href="/controls/sessions/logins/">Active Sessions</a>
<a href="/controls/sessions/logs/">Activity Log</a>
<a href="/controls/sessions/labels/">Browser Labels</a>
</div>
</div>
</div> </div>
</span>
</li> </li>
</ul> </ul>
<script type="text/javascript"> <script type="text/javascript">
@@ -307,19 +443,26 @@
</script> </script>
<div class="news-block"> <div class="news-block">
<div id="news" class="newsBlock" data-date="1779756930">
<strong>News:</strong><span class="hideondesktop hideontablet"><br></span> <a class="journal-news-link" href="/journal/11365688">VGen Challenge 6 Day Reminder + Swag Pickup (<span class="c-contentRating--general" alt="General rating" title="General rating">G</span>)</a>
<span class="jsClose newsBlock__closeBtn" title="Close"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" style="transform: ;msFilter:;" title="Dismiss" ><path d="M20 3H4c-1.103 0-2 .897-2 2v14c0 1.103.897 2 2 2h16c1.103 0 2-.897 2-2V5c0-1.103-.897-2-2-2zM4 19V7h16l.001 12H4z"></path><path d="m15.707 10.707-1.414-1.414L12 11.586 9.707 9.293l-1.414 1.414L10.586 13l-2.293 2.293 1.414 1.414L12 14.414l2.293 2.293 1.414-1.414L13.414 13z"></path></svg></span>
</div>
<script type="text/javascript">
_fajs.push(['init_news_block', 'news']);
</script>
</div> </div>
<div id="main-window" class="footer-mobile-tweak g-wrapper"> <div id="main-window" class="footer-mobile-tweak g-wrapper">
<div id="header"> <div id="header">
<!-- user profile banner --> <!-- site banner -->
<site-banner > <site-banner >
<a href="/"> <a href="/">
<picture> <picture>
<source media="(max-width: 799px)" srcset="//d.furaffinity.net/art/kazucreations/1770312990/profile_banner_mobile.jpg"> <source srcset="//d.furaffinity.net/media/banners/modern/fa-banner-spring-furality-20260531.webp" type="image/webp">
<source media="(min-width: 800px)" srcset="//d.furaffinity.net/art/kazucreations/1770312990/profile_banner.jpg"> <img usemap="#banner-map" src="//d.furaffinity.net/media/banners/modern/fa-banner-spring-furality-20260531.jpg">
<img src="//d.furaffinity.net/art/kazucreations/1770312990/profile_banner.jpg" alt="Profile Banner image">
</picture> </picture>
</a> </a>
</site-banner> </site-banner>
@@ -334,7 +477,7 @@
<userpage-nav-header> <userpage-nav-header>
<userpage-nav-avatar> <userpage-nav-avatar>
<a class="current" href="/user/kazucreations/"><img alt="kazucreations" src="//a.furaffinity.net/1770312952/kazucreations.gif"/></a> <a class="current" href="/user/soxx-thefennec/"><img alt="soxx-thefennec" src="//a.furaffinity.net/1515442832/soxx-thefennec.gif"/></a>
</userpage-nav-avatar> </userpage-nav-avatar>
@@ -343,12 +486,12 @@
<username> <username>
<div class="c-usernameBlock username-in-nav-bar"> <div class="c-usernameBlock username-in-nav-bar">
<a class="c-usernameBlock__displayName js-displayName-block" href="/user/kazucreations/"> <a class="c-usernameBlock__displayName js-displayName-block" href="/user/soxx-thefennec/">
<span class="js-displayName">KazuCreations</span> <span class="js-displayName">SoXX-TheFennec</span>
</a> </a>
<a class="c-usernameBlock__userName js-userName-block" href="/user/kazucreations/"> <a class="c-usernameBlock__userName js-userName-block" href="/user/soxx-thefennec/">
<span><span class="c-usernameBlock__symbol" title="Member" alt="Member">~</span>kazucreations</span> <span><span class="c-usernameBlock__symbol" title="Member" alt="Member">~</span>soxx-thefennec</span>
</a> </a>
</div> </div>
@@ -357,32 +500,27 @@
<div class="font-small"> <div class="font-small">
<span class="user-title"> <span class="user-title">
Fursuit Maker | <span class="hideonmobile">Registered:</span> <span class="popup_date" data-title-date="0" data-24-hour="0" data-time="1443468107" title="10 years ago" disabled>September 28, 2015 03:21:47 PM</span> </span> Photographer | <span class="hideonmobile">Registered:</span> <span class="popup_date" data-title-date="0" data-24-hour="0" data-time="1471699250" title="10 years ago" disabled>August 20, 2016 02:20:50 PM</span> </span>
</div> </div>
<userpage-nav-links> <userpage-nav-links>
<ul class="user-nav-page-links"> <ul class="user-nav-page-links">
<li><h3><a href="/user/kazucreations/">Home</a></h3></li> <li><h3><a href="/user/soxx-thefennec/">Home</a></h3></li>
<li><h3><a href="/gallery/kazucreations/">Gallery</a></h3></li> <li><h3><a href="/gallery/soxx-thefennec/">Gallery</a></h3></li>
<li><h3><a class="current" href="/scraps/kazucreations/">Scraps</a></h3></li> <li><h3><a class="current" href="/scraps/soxx-thefennec/">Scraps</a></h3></li>
<li><h3><a href="/favorites/kazucreations/">Favs</a></h3></li> <li><h3><a href="/favorites/soxx-thefennec/">Favs</a></h3></li>
<li><h3><a href="/journals/kazucreations/">Journals</a></h3></li> <li><h3><a href="/journals/soxx-thefennec/">Journals</a></h3></li>
<li><h3><a href="/commissions/kazucreations/">Commissions</a></h3></li> <li><h3><a href="/commissions/soxx-thefennec/">Commissions</a></h3></li>
<li><h3><a class="stats " href="/stats/soxx-thefennec/submissions/">Stats</a></h3></li>
<li><h3><a href="/controls/profile/">Edit Profile</a></h3></li>
</ul> </ul>
</userpage-nav-links> </userpage-nav-links>
</userpage-nav-user-details> </userpage-nav-user-details>
<userpage-nav-interface-buttons>
<a class="button standard samewidth go" style="text-transform: capitalize;" id="watch-button" href="/watch/kazucreations/?key=">Watch</a>
<a class="button standard" href="/newpm/kazucreations/"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" style="transform: ;msFilter:;"><path d="M20 4H4c-1.103 0-2 .897-2 2v12c0 1.103.897 2 2 2h16c1.103 0 2-.897 2-2V6c0-1.103-.897-2-2-2zm0 2v.511l-8 6.223-8-6.222V6h16zM4 18V9.044l7.386 5.745a.994.994 0 0 0 1.228 0L20 9.044 20.002 18H4z"></path></svg></a>
</userpage-nav-interface-buttons>
<script src="/themes/beta/js/widgets/user-nav-block-watch.js?u=2026050915"></script>
</userpage-nav-header> </userpage-nav-header>
@@ -404,7 +542,7 @@
<div class="default-folders"> <div class="default-folders">
<ul style="list-style-type:none"> <ul style="list-style-type:none">
<li> <li>
<a href="/gallery/kazucreations/" class="dotted">Main Gallery</a> <a href="/gallery/soxx-thefennec/" class="dotted">Main Gallery</a>
</li> </li>
<li class="active"> <li class="active">
&#x276f;&#x276f; <strong>Scraps</strong> &#x276f;&#x276f; <strong>Scraps</strong>
@@ -412,48 +550,32 @@
</ul> </ul>
</div> </div>
<div class="container-item-top">
<h4>OCs and Characters</h4>
</div>
<ul style="list-style-type:none">
<li style="padding-left:22px;">
<a href="/gallery/soxx-thefennec/folder/461478/Naos" title="1 submissions" class="dotted">Naos</a>
</li>
<li style="padding-left:22px;">
<a href="/gallery/soxx-thefennec/folder/461479/Maru" title="0 submissions" class="dotted">Maru</a>
</li>
<li style="padding-left:22px;">
<a href="/gallery/soxx-thefennec/folder/461480/Tex" title="0 submissions" class="dotted">Tex</a>
</li>
<li style="padding-left:22px;">
<a href="/gallery/soxx-thefennec/folder/461481/Thrust" title="3 submissions" class="dotted">Thrust</a>
</li>
</ul>
<ul class="default-group" style="list-style-type:none"> <ul class="default-group" style="list-style-type:none">
<li> <li>
<a href="/gallery/kazucreations/folder/88225/Headshots" title="25 submissions" class="dotted">Headshots</a> <a href="/gallery/soxx-thefennec/folder/461482/Gaming-and-Stuff" title="3 submissions" class="dotted">Gaming and Stuff</a>
</li> </li>
<li> <li>
<a href="/gallery/kazucreations/folder/89257/Badges" title="23 submissions" class="dotted">Badges</a> <a href="/gallery/soxx-thefennec/folder/461483/Me-and-my-Love" title="8 submissions" class="dotted">Me and my Love</a>
</li> </li>
<li> <li>
<a href="/gallery/kazucreations/folder/104407/Multiple-Characters" title="9 submissions" class="dotted">Multiple Characters</a> <a href="/gallery/soxx-thefennec/folder/545965/SoXX" title="20 submissions" class="dotted">SoXX</a>
</li>
<li>
<a href="/gallery/kazucreations/folder/176479/Digital-Art" title="55 submissions" class="dotted">Digital Art</a>
</li>
<li>
<a href="/gallery/kazucreations/folder/191089/Fullbody" title="21 submissions" class="dotted">Fullbody</a>
</li>
<li>
<a href="/gallery/kazucreations/folder/196612/Photos" title="6 submissions" class="dotted">Photos</a>
</li>
<li>
<a href="/gallery/kazucreations/folder/294235/My-Suits" title="6 submissions" class="dotted">My Suits</a>
</li>
<li>
<a href="/gallery/kazucreations/folder/312886/Traditional-Art" title="23 submissions" class="dotted">Traditional Art</a>
</li>
<li>
<a href="/gallery/kazucreations/folder/442425/Videos" title="2 submissions" class="dotted">Videos</a>
</li>
<li>
<a href="/gallery/kazucreations/folder/534625/Plushies" title="6 submissions" class="dotted">Plushies</a>
</li>
<li>
<a href="/gallery/kazucreations/folder/537118/Clothing" title="1 submissions" class="dotted">Clothing</a>
</li>
<li>
<a href="/gallery/kazucreations/folder/538750/Fursuit" title="8 submissions" class="dotted">Fursuit</a>
</li>
<li>
<a href="/gallery/kazucreations/folder/559610/Inktober" title="13 submissions" class="dotted">Inktober</a>
</li>
<li>
<a href="/gallery/kazucreations/folder/620685/NDS" title="1 submissions" class="dotted">NDS</a>
</li> </li>
</ul> </ul>
</div> </div>
@@ -492,27 +614,7 @@
</div> </div>
<section id="gallery-gallery" class="gallery no-padding aligncenter no-artistname s-200 "> <section id="gallery-gallery" class="gallery no-padding aligncenter no-artistname s-200 ">
<figure id="sid-30549394" class="r-general t-image"> <div id="no-images"><b><i>There are no submissions to list</i></b></div> </section>
<b>
<u>
<a href="/view/30549394/">
<noscript><span class="is-noScriptEnabled"></span></noscript>
<img class="blocked-content" data-tags="u_kazucreations c_artwork_digital t_all s_aquatic_other octopus sketch" alt="" src="//t.furaffinity.net/30549394@200-1550693644.jpg" data-width="141.406" data-height="200" style="width:141.406px; height:200px" loading="lazy" decoding="async" />
<i title="Click for description"></i>
</a>
</u>
</b>
<figcaption>
<p>
<a href="/view/30549394/" title="[NDS] #1 Octopus">[NDS] #1 Octopus</a>
</p>
<p>
<i>by</i> <a href="/user/kazucreations/" title="KazuCreations">KazuCreations</a>
</p>
</figcaption>
</figure>
</section>
<script type="text/javascript"> <script type="text/javascript">
_fajs.push(['init_gallery', 'gallery-gallery']); _fajs.push(['init_gallery', 'gallery-gallery']);
@@ -544,10 +646,6 @@
</div> </div>
<script id="js-submissionData" type="application/json">{"30549394":{"title":"[NDS] #1 Octopus","description":"asked a classmate what to draw and she said octopus,so yeah, have some xD","username":"KazuCreations","lower":"kazucreations"}}</script>
<script type="text/javascript">
var descriptions = JSON.parse(document.getElementById('js-submissionData').textContent);
</script>
</div> </div>
@@ -578,17 +676,16 @@
</div> </div>
<div class="footerAds__column"> <div class="footerAds__column">
<ins class="footerAds__slot format--faSmallRectangle jsAdSlot hidden" data-id="footer_right_top"></ins> <ins class="footerAds__slot format--faMediumRectangle jsAdSlot hidden" data-id="footer_right"></ins>
<ins class="footerAds__slot format--faSmallRectangle jsAdSlot hidden" data-id="footer_right_bottom"></ins>
</div> </div>
</div> </div>
<div class="online-stats"> <div class="online-stats">
88574 <strong><span title="Measured in the last 900 seconds">Users online</span></strong> &mdash; 96487 <strong><span title="Measured in the last 900 seconds">Users online</span></strong> &mdash;
3334 <strong>guests</strong>, 4522 <strong>guests</strong>,
8900 <strong>registered</strong> 14157 <strong>registered</strong>
and 76340 <strong>other</strong> and 77808 <strong>other</strong>
<!-- Online Counter Last Update: Sun, 24 May 2026 04:31:01 -0700 --> <!-- Online Counter Last Update: Tue, 02 Jun 2026 12:18:00 -0700 -->
</div> </div>
<small>Limit bot activity to periods with less than 10k registered users online.</small> <small>Limit bot activity to periods with less than 10k registered users online.</small>
@@ -596,8 +693,8 @@
<strong>&copy; 2005-2026 Frost Dragon Art LLC</strong> <strong>&copy; 2005-2026 Frost Dragon Art LLC</strong>
<div class="footnote"> <div class="footnote">
Server Time: May 24, 2026 04:31 AM<br /> Server Time: Jun 2, 2026 12:18 PM<br />
Page generated in 0.015 seconds<br />[ 38.7% PHP, 61.3% SQL ] (21 queries)<br /> Page generated in 0.023 seconds<br />[ 41.4% PHP, 58.6% SQL ] (29 queries)<br />
</div> </div>
</div> </div>
</div> </div>
@@ -628,7 +725,7 @@
<script src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js" crossorigin="anonymous"></script> <script src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js" crossorigin="anonymous"></script>
<script type="text/javascript"> <script type="text/javascript">
var server_timestamp = 1779622302; var server_timestamp = 1780427913;
var client_timestamp = Date.now() / 1000; var client_timestamp = Date.now() / 1000;
var server_timestamp_delta = server_timestamp - client_timestamp; var server_timestamp_delta = server_timestamp - client_timestamp;
var sfw_cookie_name = 'sfw'; var sfw_cookie_name = 'sfw';
@@ -637,7 +734,7 @@
// //
document.addEventListener("DOMContentLoaded", (event) => { document.addEventListener("DOMContentLoaded", (event) => {
// //
const ad_manager = new adManager({"sizeConfig":[{"labels":["desktopWide"],"mediaQuery":"(min-width: 1090px)","sizesSupported":[[728,90],[300,250],[300,168],[300,600],[160,600]]},{"labels":["desktopNarrow"],"mediaQuery":"(min-width: 740px) and (max-width: 1089px)","sizesSupported":[[728,90],[300,250],[300,168]]},{"labels":["mobile"],"mediaQuery":"(min-width: 0px) and (max-width: 739px)","sizesSupported":[[320,50],[300,50],[320,100]]}],"slotConfig":{"header_middle":{"containerSize":{"desktopWide":[728,90],"desktopNarrow":[728,90],"mobile":[320,50]},"providerPriority":["inhouse"]},"above_content":{"containerSize":{"desktopWide":[728,90],"desktopNarrow":[728,90],"mobile":[320,50]},"providerPriority":["inhouse"]},"sidebar":{"containerSize":{"desktopWide":[300,250]},"providerPriority":["inhouse"]},"sidebar_tall":{"containerSize":{"desktopWide":[300,600],"desktopNarrow":[300,600],"mobile":[300,250]},"providerPriority":["inhouse"]},"footer_left":{"containerSize":{"desktopWide":[300,250],"desktopNarrow":[300,250],"mobile":[300,250]},"providerPriority":["inhouse"]},"footer_right":{"containerSize":{"desktopWide":[300,250],"desktopNarrow":[300,250],"mobile":[300,250]},"providerPriority":["inhouse"]},"footer_right_top":{"containerSize":{"desktopWide":[320,50],"desktopNarrow":[320,50],"mobile":[320,50]},"providerPriority":["inhouse"]},"footer_right_bottom":{"containerSize":{"desktopWide":[320,50],"desktopNarrow":[320,50],"mobile":[320,50]},"providerPriority":["inhouse"]},"header_right_left":{"containerSize":{"desktopWide":[320,50]},"providerPriority":["inhouse"]},"header_right_right":{"containerSize":{"desktopWide":[320,50]},"providerPriority":["inhouse"]},"sidebar_top":{"containerSize":{"desktopWide":[320,50]},"providerPriority":["inhouse"]},"sidebar_bottom":{"containerSize":{"desktopWide":[320,50]},"providerPriority":["inhouse"]},"front_page":{"containerSize":{"desktopWide":[728,90],"desktopNarrow":[728,90],"mobile":[320,50]},"providerPriority":["inhouse"]},"c-videoAd":{"containerSize":{"desktopWide":[300,250]},"providerPriority":["inhouse"]}},"providerConfig":{"inhouse":{"domain":"https:\/\/rv.furaffinity.net","dataPath":"\/live\/www\/delivery\/spc.php","dataVariableName":"OA_output"}},"adConfig":{"inhouse":{"header_middle":{"default":{"tagId":40,"tagSize":[728,90]},"sizeOverride":{"mobile":{"tagId":56,"tagSize":[320,50]}}},"above_content":{"default":{"tagId":25,"tagSize":[728,90]},"sizeOverride":{"mobile":{"tagId":53,"tagSize":[320,50]}}},"sidebar":{"default":{"tagId":49,"tagSize":[300,250]}},"sidebar_tall":{"default":{"tagId":49,"tagSize":[300,250]}},"footer_left":{"default":{"tagId":28,"tagSize":[300,250]}},"footer_right":{"default":{"tagId":74,"tagSize":[300,250]}},"footer_right_top":{"default":{"tagId":62,"tagSize":[320,50]}},"footer_right_bottom":{"default":{"tagId":59,"tagSize":[320,50]}},"header_right_left":{"default":{"tagId":65,"tagSize":[320,50]}},"header_right_right":{"default":{"tagId":68,"tagSize":[320,50]}},"sidebar_top":{"default":{"tagId":65,"tagSize":[320,50]}},"sidebar_bottom":{"default":{"tagId":68,"tagSize":[320,50]}},"front_page":{"default":{"tagId":77,"tagSize":[728,90]},"sizeOverride":{"mobile":{"tagId":78,"tagSize":[320,50]}}},"c-videoAd":{"default":{"tagId":71,"tagSize":[320,50]}}}},"extraMetadata":{"adsenseClient":"ca-pub-3495616356562362","forceLoadConfigs":["c-videoAd"]}}, true); const ad_manager = new adManager({"sizeConfig":[{"labels":["desktopWide"],"mediaQuery":"(min-width: 1090px)","sizesSupported":[[728,90],[300,250],[300,168],[300,600],[160,600]]},{"labels":["desktopNarrow"],"mediaQuery":"(min-width: 740px) and (max-width: 1089px)","sizesSupported":[[728,90],[300,250],[300,168]]},{"labels":["mobile"],"mediaQuery":"(min-width: 0px) and (max-width: 739px)","sizesSupported":[[320,50],[300,50],[320,100]]}],"slotConfig":{"header_middle":{"containerSize":{"desktopWide":[728,90],"desktopNarrow":[728,90],"mobile":[320,50]},"providerPriority":["inhouse"]},"above_content":{"containerSize":{"desktopWide":[728,90],"desktopNarrow":[728,90],"mobile":[320,50]},"providerPriority":["inhouse"]},"sidebar":{"containerSize":{"desktopWide":[300,250]},"providerPriority":["inhouse"]},"sidebar_tall":{"containerSize":{"desktopWide":[300,600],"desktopNarrow":[300,600],"mobile":[300,250]},"providerPriority":["inhouse"]},"footer_left":{"containerSize":{"desktopWide":[300,250],"desktopNarrow":[300,250],"mobile":[300,250]},"providerPriority":["inhouse"]},"footer_right":{"containerSize":{"desktopWide":[300,250],"desktopNarrow":[300,250],"mobile":[300,250]},"providerPriority":["inhouse"]},"footer_right_top":{"containerSize":{"desktopWide":[320,50],"desktopNarrow":[320,50],"mobile":[320,50]},"providerPriority":["inhouse"]},"footer_right_bottom":{"containerSize":{"desktopWide":[320,50],"desktopNarrow":[320,50],"mobile":[320,50]},"providerPriority":["inhouse"]},"header_right_left":{"containerSize":{"desktopWide":[320,50]},"providerPriority":["inhouse"]},"header_right_right":{"containerSize":{"desktopWide":[320,50]},"providerPriority":["inhouse"]},"sidebar_top":{"containerSize":{"desktopWide":[320,50]},"providerPriority":["inhouse"]},"sidebar_bottom":{"containerSize":{"desktopWide":[320,50]},"providerPriority":["inhouse"]},"front_page":{"containerSize":{"desktopWide":[728,90],"desktopNarrow":[728,90],"mobile":[320,50]},"providerPriority":["inhouse"]},"c-videoAd":{"containerSize":{"desktopWide":[300,250]},"providerPriority":["inhouse"]}},"providerConfig":{"inhouse":{"domain":"https:\/\/rv.furaffinity.net","dataPath":"\/live\/www\/delivery\/spc.php","dataVariableName":"OA_output"}},"adConfig":{"inhouse":{"header_middle":{"default":{"tagId":42,"tagSize":[728,90]},"sizeOverride":{"mobile":{"tagId":58,"tagSize":[320,50]}}},"above_content":{"default":{"tagId":27,"tagSize":[728,90]},"sizeOverride":{"mobile":{"tagId":55,"tagSize":[320,50]}}},"sidebar":{"default":{"tagId":51,"tagSize":[300,250]}},"sidebar_tall":{"default":{"tagId":51,"tagSize":[300,250]}},"footer_left":{"default":{"tagId":30,"tagSize":[300,250]}},"footer_right":{"default":{"tagId":72,"tagSize":[300,250]}},"footer_right_top":{"default":{"tagId":64,"tagSize":[320,50]}},"footer_right_bottom":{"default":{"tagId":61,"tagSize":[320,50]}},"header_right_left":{"default":{"tagId":67,"tagSize":[320,50]}},"header_right_right":{"default":{"tagId":70,"tagSize":[320,50]}},"sidebar_top":{"default":{"tagId":67,"tagSize":[320,50]}},"sidebar_bottom":{"default":{"tagId":70,"tagSize":[320,50]}},"front_page":{"default":{"tagId":75,"tagSize":[728,90]},"sizeOverride":{"mobile":{"tagId":80,"tagSize":[320,50]}}},"c-videoAd":{"default":{"tagId":71,"tagSize":[320,50]}}}},"extraMetadata":{"adsenseClient":"ca-pub-3495616356562362","forceLoadConfigs":["c-videoAd"]}}, true);
}); });
</script> </script>

File diff suppressed because one or more lines are too long

1774
testdata/html/user.html vendored

File diff suppressed because one or more lines are too long

View File

@@ -148,8 +148,8 @@ func TestParseUser_RealFixture(t *testing.T) {
if u.Stats.Favorites != 180 { if u.Stats.Favorites != 180 {
t.Errorf("Stats.Favorites = %d; want 180", u.Stats.Favorites) t.Errorf("Stats.Favorites = %d; want 180", u.Stats.Favorites)
} }
if u.Stats.Views != 1176 { if u.Stats.Views != 1184 {
t.Errorf("Stats.Views = %d; want 1176", u.Stats.Views) t.Errorf("Stats.Views = %d; want 1184", u.Stats.Views)
} }
if u.Stats.Comments != 85 { if u.Stats.Comments != 85 {
t.Errorf("Stats.Comments = %d; want 85", u.Stats.Comments) t.Errorf("Stats.Comments = %d; want 85", u.Stats.Comments)