more tests for non-image submissions
This commit is contained in:
@@ -100,7 +100,7 @@ class Domain::Fa::Parser::SubmissionParserHelper < Domain::Fa::Parser::Base
|
||||
when VERSION_0, VERSION_1
|
||||
elem_after_text_match(info_children, /Category/).text.strip
|
||||
when VERSION_2
|
||||
info_text_value_redux("Category")
|
||||
category_full_str_redux.split(" / ").first.strip
|
||||
else unimplemented_version!
|
||||
end
|
||||
end
|
||||
@@ -109,6 +109,17 @@ class Domain::Fa::Parser::SubmissionParserHelper < Domain::Fa::Parser::Base
|
||||
@theme ||= case @page_version
|
||||
when VERSION_0, VERSION_1
|
||||
elem_after_text_match(info_children, /Theme/).text.strip
|
||||
when VERSION_2
|
||||
category_full_str_redux.split(" / ").last.strip
|
||||
else unimplemented_version!
|
||||
end
|
||||
end
|
||||
|
||||
# FA started combining "Category / Theme" string into one
|
||||
def category_full_str_redux
|
||||
@category_full_str_redux ||= case @page_version
|
||||
when VERSION_2
|
||||
info_text_value_redux("Category")
|
||||
else unimplemented_version!
|
||||
end
|
||||
end
|
||||
@@ -178,7 +189,13 @@ class Domain::Fa::Parser::SubmissionParserHelper < Domain::Fa::Parser::Base
|
||||
end
|
||||
|
||||
def keywords_array
|
||||
@keywords_array ||= @elem.css("#keywords a").map(&:text)
|
||||
@keywords_array ||= case @page_version
|
||||
when VERSION_0, VERSION_1
|
||||
@elem.css("#keywords a").map(&:text)
|
||||
when VERSION_2
|
||||
@elem.css(".tags-row .tags a").map(&:text).map(&:strip)
|
||||
else unimplemented_version!
|
||||
end
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
904
test/fixtures/files/domain/fa/parser/redux/submission_10327196_icyfoxy_text_only.html
vendored
Normal file
904
test/fixtures/files/domain/fa/parser/redux/submission_10327196_icyfoxy_text_only.html
vendored
Normal file
@@ -0,0 +1,904 @@
|
||||
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html lang="en" class="no-js" xmlns="http://www.w3.org/1999/xhtml">
|
||||
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
|
||||
<title>Ancient Awakening- Wereyena herm TF (By Wyraachur) by icyfoxy -- Fur Affinity [dot] net</title>
|
||||
|
||||
<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="keywords" content="fur furry furries fursuit fursuits cosplay brony bronies zootopia scalies kemono anthro anthropormophic art online gallery portfolio" />
|
||||
<meta name="distribution" content="global" />
|
||||
<meta name="copyright" content="Frost Dragon Art LLC" />
|
||||
<meta name="robots" content="noai, noimageai" />
|
||||
|
||||
<link rel="icon" href="/themes/beta/img/favicon.ico" type="image/x-icon" />
|
||||
<link rel="shortcut icon" href="/themes/beta/img/favicon.ico" type="image/x-icon" />
|
||||
<link href="https://fonts.googleapis.com/css?family=Open+Sans:300,300i,400,400i,500,500i,600,600i,700,700i" rel="stylesheet">
|
||||
|
||||
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=9; IE=EDGE" />
|
||||
|
||||
|
||||
<!-- generic -->
|
||||
<meta name="robots" content="noindex" />
|
||||
|
||||
<!-- og -->
|
||||
<meta property="og:type" content="website" />
|
||||
<meta property="og:title" content="Ancient Awakening- Wereyena herm TF (By Wyraachur) by icyfoxy" />
|
||||
<meta property="og:url" content="https://www.furaffinity.net/view/10327196/" />
|
||||
<meta property="og:description" content="((Edit: sorry for the re-upload was having trouble with the formatting.)). Sonya is born~. Enjoy and the link to the original story: htt ..." />
|
||||
<meta property="og:image" content="https://www.furaffinity.net/themes/beta/img/banners/fa_logo.png?v2" />
|
||||
|
||||
<!-- twitter -->
|
||||
<meta name="twitter:card" content="summary_large_image" />
|
||||
<meta name="twitter:domain" content="furaffinity.net" />
|
||||
<meta name="twitter:site" content="@furaffinity" />
|
||||
<meta name="twitter:title" content="Ancient Awakening- Wereyena herm TF (By Wyraachur) by icyfoxy" />
|
||||
<meta name="twitter:description" content="((Edit: sorry for the re-upload was having trouble with the formatting.)). Sonya is born~. Enjoy and the link to the original story: htt ..." />
|
||||
<meta name="twitter:url" content="https://www.furaffinity.net/view/10327196/" />
|
||||
<meta name="twitter:label1" content="Created On" />
|
||||
<meta name="twitter:data1" content="April 8, 2013" />
|
||||
<meta name="twitter:label2" content="Rating" />
|
||||
<meta name="twitter:data2" content="Adult" />
|
||||
<meta name="twitter:image" content="https://www.furaffinity.net/themes/beta/img/banners/fa_logo.png?v2" />
|
||||
|
||||
<script type="text/javascript">
|
||||
var _faurl={d:'//d.furaffinity.net',a:'//a.furaffinity.net',r:'//rv.furaffinity.net',t:'//t.furaffinity.net',pb:'/themes/beta/js/prebid-6.13.0-fa.js'};
|
||||
</script>
|
||||
<script type="text/javascript" src="/themes/beta/js/common.js?u=2023011700"></script>
|
||||
<link type="text/css" rel="stylesheet" href="/themes/beta/css/ui_theme_dark.css?u=2023011700" />
|
||||
|
||||
<!-- browser hints -->
|
||||
<link rel="preconnect" href="//t.furaffinity.net" />
|
||||
<link rel="preconnect" href="//a.furaffinity.net" />
|
||||
<link rel="preconnect" href="//rv.furaffinity.net" />
|
||||
<link rel="preconnect" href="https://www15.smartadserver.com" />
|
||||
|
||||
<link rel="preload" href="/themes/beta/js/prototype.1.7.3.min.js" as="script" />
|
||||
<link rel="preload" href="/themes/beta/js/script.js?u=2023011700" as="script" />
|
||||
|
||||
</head>
|
||||
|
||||
<!-- EU request: no -->
|
||||
<body data-static-path="/themes/beta" id="pageid-submission">
|
||||
|
||||
<!-- sidebar -->
|
||||
<div class="mobile-navigation">
|
||||
|
||||
<div class="mobile-nav-container">
|
||||
|
||||
<div class="mobile-nav-container-item left">
|
||||
<label for="mobile-menu-nav" class="css-menu-toggle only-one"><img class="burger-menu" src="/themes/beta/img/fa-burger-menu-icon.png"></label>
|
||||
</div>
|
||||
|
||||
<div class="mobile-nav-container-item center"><a class="mobile-nav-logo" href="/"><img class="site-logo" src="/themes/beta/img/banners/fa_logo.png?v2"></a></div>
|
||||
|
||||
<div class="mobile-nav-container-item right">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="nav-ac-container">
|
||||
<input id="mobile-menu-nav" name="accordion-1" type="checkbox" />
|
||||
<article class="nav-ac-content mobile-menu">
|
||||
|
||||
<div class="mobile-nav-content-container">
|
||||
<div class="aligncenter">
|
||||
<a href="/user/zzreg/"><img class="loggedin_user_avatar avatar" alt="zzreg" src="//a.furaffinity.net/1424255659/zzreg.gif"/></a>
|
||||
<h2 style="margin-bottom:0"><a href="/user/zzreg/">zzreg</a></h2>
|
||||
<a href="/user/zzreg/">Userpage</a> |
|
||||
<a href="/msg/pms/">Notes</a> |
|
||||
<a href="/controls/journal/">Journals</a> |
|
||||
<a href="/plus/"><img style="position:relative;top:4px" src="/themes/beta/img/the-golden-pawb.png"> FA+</a>
|
||||
<br>
|
||||
</div>
|
||||
<hr>
|
||||
<h2><a href="/browse/">Browse</a></h2>
|
||||
<h2><a href="/search/">Search</a></h2>
|
||||
<h2><a href="/submit/">Upload</a></h2>
|
||||
|
||||
<div class="nav-ac-container">
|
||||
<label for="mobile-menu-submenu-0"><h2 style="margin-top:0;padding-top:0">Support ▼</h2></label>
|
||||
<input id="mobile-menu-submenu-0" name="accordion-1" type="checkbox" />
|
||||
<article class="nav-ac-content nav-ac-content-dropdown">
|
||||
<a href="/journals/fender">News & Updates</a><br>
|
||||
<a href="/help/">Help & Support</a><br>
|
||||
<a href="/advertising.html">Advertising</a><br>
|
||||
<a href="/blm">Black Lives Matter</a>
|
||||
|
||||
<h3>SUPPORT FA</h3>
|
||||
<a href="/plus/">Subscribe to FA+ </a><br>
|
||||
<a href="https://shop.furaffinity.net/">FA Merch Store</a>
|
||||
|
||||
|
||||
<h3>RULES & POLICIES</h3>
|
||||
<a href="/tos">Terms of Service</a><br>
|
||||
<a href="/privacy">Privacy</a><br>
|
||||
<a href="/coc">Code of Conduct</a><br>
|
||||
<a href="/aup">Upload Policy</a>
|
||||
|
||||
<h3>SOCIAL</h3>
|
||||
<a href="https://discord.gg/fur-affinity">Discord</a><br>
|
||||
<a href="https://www.twitter.com/furaffinity/">Twitter</a>
|
||||
|
||||
<h3>Support</h3>
|
||||
<a href="/controls/troubletickets/">REPORT A PROBLEM</a>
|
||||
</article>
|
||||
</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">
|
||||
<div class="slider">
|
||||
<div class="slider-button"> </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 ▼</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>
|
||||
|
||||
<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>
|
||||
|
||||
<h2><form class="post-btn logout-link" method="post" action="/logout/"><button type="submit">Log Out</button><input type="hidden" name="key" value="3d571edd3040f6bd34d5c9de2c26f676a79464e8"/></form>
|
||||
<script type="text/javascript">
|
||||
_fajs.push(['init_logout_button', '.logout-link button']);
|
||||
</script>
|
||||
</h2>
|
||||
|
||||
|
||||
<h2></h2>
|
||||
</div>
|
||||
</article>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="mobile-notification-bar">
|
||||
<a class="notification-container inline" href="/msg/submissions/" title="31,496 Submission Notifications">31496S</a>
|
||||
<a class="notification-container inline" href="/msg/others/#journals" title="15,198 Journal Notifications">15198J</a>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<nav id="ddmenu">
|
||||
<div class="mobile-nav navhideondesktop hideonmobile hideontablet">
|
||||
<div class="mobile-nav-logo"><a class="mobile-nav-logo" href="/"><img src="/themes/beta/img/banners/fa_logo.png?v2"></a></div>
|
||||
<div class="mobile-nav-header-item"><a href="/browse/">Browse</a></div>
|
||||
<div class="mobile-nav-header-item"><a href="/search/">Search</a></div>
|
||||
</div>
|
||||
|
||||
<div class="menu-icon"></div>
|
||||
|
||||
<ul class="navhideonmobile">
|
||||
<li class="lileft"><div class="lileft hideonmobile" style="vertical-align:middle;line-height:0 !important" ><a class="top-heading" href="/"><img class="nav-bar-logo" src="/themes/beta/img/banners/fa_logo.png?v2"></a></div></li>
|
||||
<li class="lileft"><a class="top-heading" href="/browse/"><div class="sprite-paw menu-space-saver hideonmobile"></div>Browse</a></li>
|
||||
<li class="lileft"><a class="top-heading hideondesktop" href="/search/">Search</a></li>
|
||||
<li class="lileft"><a class="top-heading" href="/submit/"><div class="sprite-upload menu-space-saver hideonmobile"></div> Upload</a></li>
|
||||
<li class="lileft">
|
||||
<a class="top-heading" href="#"><div class="sprite-news menu-space-saver hideonmobile"></div>Support</a>
|
||||
<i class="caret"></i>
|
||||
<div class="dropdown dropdown-left ">
|
||||
<div class="dd-inner">
|
||||
<div class="column">
|
||||
<h3>Community</h3>
|
||||
<a href="/journals/fender">News & Updates</a>
|
||||
<a href="/help/">Help & Support</a>
|
||||
<a href="/advertising.html">Advertising</a>
|
||||
<a href="/blm/">Black Lives Matter</a>
|
||||
|
||||
<h3>Rules & Policies</h3>
|
||||
<a href="/tos">Terms of Service</a>
|
||||
<a href="/privacy">Privacy</a>
|
||||
<a href="/coc">Code of Conduct</a>
|
||||
<a href="/aup">Upload Policy</a>
|
||||
|
||||
<h3>Social</h3>
|
||||
<a href="https://discord.gg/fur-affinity">Discord</a>
|
||||
<a href="https://www.twitter.com/furaffinity/">Twitter</a>
|
||||
|
||||
<h3>Trouble Tickets</h3>
|
||||
<a href="/controls/troubletickets/">Report a Problem</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<li class="lileft menu-space-saver"><a class="top-heading hideontablet" href="/plus/"><img style="position:relative;top:3px" src="/themes/beta/img/the-golden-pawb.png"> FA+</a></li>
|
||||
|
||||
<div class="lileft hideonmobile">
|
||||
<form id="searchbox" method="get" action="/search/">
|
||||
<input type="search" name="q" placeholder="SEARCH">
|
||||
<a href="/search"> </a>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<li class="message-bar-desktop">
|
||||
|
||||
<a class="notification-container inline" href="/msg/submissions/" title="31,496 Submission Notifications">31496S</a>
|
||||
<a class="notification-container inline" href="/msg/others/#journals" title="15,198 Journal Notifications">15198J</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<div class="floatleft hideonmobile">
|
||||
<a href="/user/zzreg"><img class="loggedin_user_avatar menubar-icon-resize avatar" style="cursor:pointer" alt="zzreg" src="//a.furaffinity.net/1424255659/zzreg.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>zzreg<span class="hideondesktop"> )</span></a>
|
||||
|
||||
<div class="dropdown dropdown-right">
|
||||
<div class="dd-inner">
|
||||
<div class="column">
|
||||
<h3>Account</h3>
|
||||
<a href="/user/zzreg/">My Userpage</a>
|
||||
<a href="/msg/pms/">Check My Notes</a>
|
||||
<a href="/controls/journal/">Create a Journal</a>
|
||||
<a href="/commissions/zzreg/">My Commission Info</a>
|
||||
|
||||
<h3>Support Fur Affinity</h3>
|
||||
<a href="/plus/">Subscribe to FA+ </a>
|
||||
<a href="https://shop.furaffinity.net/">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">
|
||||
<div class="slider">
|
||||
<div class="slider-button"> </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="3d571edd3040f6bd34d5c9de2c26f676a79464e8"/></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>
|
||||
|
||||
<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>
|
||||
</li>
|
||||
</ul>
|
||||
<script type="text/javascript">
|
||||
_fajs.push(['init_sfw_button', '.sfw-toggle']);
|
||||
</script>
|
||||
</nav>
|
||||
|
||||
<script type="text/javascript">
|
||||
_fajs.push(function(){
|
||||
// all menus that should be opened only one at a time
|
||||
$$('.css-menu-toggle.only-one').invoke('observe', 'click', function(evt) {
|
||||
var curr_input = $(evt.findElement('label').getAttribute('for'));
|
||||
curr_input.next('.nav-ac-content').removeClassName('no-transition');
|
||||
if(curr_input.checked === false) {
|
||||
$$('.css-menu-toggle.only-one').each(function(elm){
|
||||
var elm_input = $(elm.getAttribute('for'));
|
||||
if(elm_input.checked === true) {
|
||||
elm_input.next('.nav-ac-content').addClassName('no-transition');
|
||||
elm_input.checked = false;
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
});
|
||||
</script>
|
||||
|
||||
<div class="news-block">
|
||||
</div>
|
||||
|
||||
|
||||
<div id="main-window" class="footer-mobile-tweak g-wrapper">
|
||||
<div id="header">
|
||||
|
||||
<!-- site banner -->
|
||||
<site-banner>
|
||||
<a href="/"><img src="/themes/beta/img/banners/logo/fa-banner-winter.jpg"></a>
|
||||
</site-banner>
|
||||
|
||||
<a name="top"></a>
|
||||
</div>
|
||||
|
||||
<div id="site-content">
|
||||
<!-- /header -->
|
||||
|
||||
|
||||
<div id="submission_page" class="page-content-type-text">
|
||||
|
||||
<div id="columnpage">
|
||||
|
||||
<div class="submission-sidebar">
|
||||
|
||||
|
||||
<div class="sidebarAds">
|
||||
<div data-id="sidebar_top" class="sidebarAds__slot format--faSmallRectangle jsAdSlot"></div>
|
||||
<div data-id="sidebar_bottom" class="sidebarAds__slot format--faSmallRectangle jsAdSlot"></div>
|
||||
</div>
|
||||
|
||||
<section class="stats-container text">
|
||||
<div class="views">
|
||||
<span class="font-large">819</span><br>
|
||||
<span class="font-small highlight">Views</span>
|
||||
</div>
|
||||
|
||||
<div class="comments">
|
||||
<span class="font-large">0</span><br>
|
||||
<span class="font-small highlight">Comments</span>
|
||||
</div>
|
||||
|
||||
<div class="favorites">
|
||||
<span class="font-large">12</span><br>
|
||||
<span class="font-small highlight">Favorites</span>
|
||||
</div>
|
||||
|
||||
<div class="rating">
|
||||
<span class="font-large rating-box inline adult"> Adult</span><br>
|
||||
<span class="font-small highlight">Rating</span>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<section class="buttons">
|
||||
<div class="fav"><a href="/fav/10327196/?key=77099b4373758ce8ba63cd028d5fdcead747e3d4">+ Fav</a></div>
|
||||
<div class="download"><a href="//d.furaffinity.net/art/icyfoxy/stories/1488278723/1365480658.icyfoxy_sonya_the_wereyena.txt">Download</a></div>
|
||||
<div class="note"><a href="/newpm/icyfoxy/">Note</a></div>
|
||||
</section>
|
||||
|
||||
<section class="info text">
|
||||
<div><strong class="highlight">Category</strong> <div><span class="category-name">Story</span> / <span class="type-name">General Furry Art</span></div></div> <div><strong class="highlight">Species</strong> <span>Hyena</span></div> <div><strong class="highlight">Gender</strong> <span>Other / Not Specified</span></div> <div><strong class="highlight">Size</strong> <span>50 x 50</span></div> </section>
|
||||
|
||||
<section class="tags-row">
|
||||
<span class="tags"><a href="/search/@keywords Transformation">Transformation</a></span>
|
||||
<span class="tags"><a href="/search/@keywords TF">TF</a></span>
|
||||
<span class="tags"><a href="/search/@keywords Change">Change</a></span>
|
||||
<span class="tags"><a href="/search/@keywords Male">Male</a></span>
|
||||
<span class="tags"><a href="/search/@keywords Herm">Herm</a></span>
|
||||
<span class="tags"><a href="/search/@keywords TFTG">TFTG</a></span>
|
||||
<span class="tags"><a href="/search/@keywords Transgender">Transgender</a></span>
|
||||
<span class="tags"><a href="/search/@keywords Growth">Growth</a></span>
|
||||
<span class="tags"><a href="/search/@keywords Fang">Fang</a></span>
|
||||
<span class="tags"><a href="/search/@keywords Breasts">Breasts</a></span>
|
||||
<span class="tags"><a href="/search/@keywords Ass">Ass</a></span>
|
||||
<span class="tags"><a href="/search/@keywords Cock">Cock</a></span>
|
||||
<span class="tags"><a href="/search/@keywords Balls">Balls</a></span>
|
||||
<span class="tags"><a href="/search/@keywords Icyfoxy">Icyfoxy</a></span>
|
||||
<span class="tags"><a href="/search/@keywords Wyraachur">Wyraachur</a></span>
|
||||
<span class="tags"><a href="/search/@keywords wereyena">wereyena</a></span>
|
||||
<span class="tags"><a href="/search/@keywords Sonya">Sonya</a></span>
|
||||
</section>
|
||||
|
||||
|
||||
<div class="rectangleAd">
|
||||
<div data-id="sidebar" class="rectangleAd__slot format--mediumRectangle jsAdSlot"></div>
|
||||
</div>
|
||||
|
||||
|
||||
<section class="minigallery-more">
|
||||
<h3>See more from <a href="/gallery/icyfoxy/">icyfoxy</a></h3>
|
||||
|
||||
<div class="preview-gallery hideonmobile">
|
||||
<div class="preview-gallery-container">
|
||||
<a href="/view/10626615/"><img class="preview-gallery-image" title="Corrupt Dragoness Icy pinup 3 (By Tesk-a-Sketch)" src="//t.furaffinity.net/10626615@200-1368898056.jpg"/></a>
|
||||
</div>
|
||||
<div class="preview-gallery-container">
|
||||
<a href="/view/10384025/"><img class="preview-gallery-image" title="Naftia Butt~ pt. 4 (By Squeeeshie)" src="//t.furaffinity.net/10384025@200-1366141285.jpg"/></a>
|
||||
</div>
|
||||
<div class="preview-gallery-container">
|
||||
<a href="/view/10380447/"><img class="preview-gallery-image" title="A Dance (By Mosa)" src="//t.furaffinity.net/10380447@200-1366085863.jpg"/></a>
|
||||
</div>
|
||||
<div class="preview-gallery-container">
|
||||
<a href="/view/10256330/"><img class="preview-gallery-image" title="Here Try A Taste (By Trunchbull)" src="//t.furaffinity.net/10256330@200-1364708755.jpg"/></a>
|
||||
</div>
|
||||
<div class="preview-gallery-container">
|
||||
<a href="/view/10255783/"><img class="preview-gallery-image" title="Naga~ (by mosa)" src="//t.furaffinity.net/10255783@200-1364704585.jpg"/></a>
|
||||
</div>
|
||||
<div class="preview-gallery-container">
|
||||
<a href="/view/10255766/"><img class="preview-gallery-image" title="Burnt Pizza - Herm Shark/Hyper Horse TF (by Wyraachur)" src="//t.furaffinity.net/10255766@200-1488278723.jpg"/></a>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div class="submission-content">
|
||||
|
||||
|
||||
<div class="leaderboardAd">
|
||||
<div data-id="header_middle" class="leaderboardAd__slot format--leaderboard jsAdSlot"></div>
|
||||
</div>
|
||||
|
||||
<div class="aligncenter submission-area submission-writing">
|
||||
<span class="aligncenter imgshad">
|
||||
<!-- submission preview -->
|
||||
<img id="submissionImg" class="imgresizer" title="Click to change the View" alt="Ancient Awakening- Wereyena herm TF (By Wyraachur)" data-fullview-src="//d.furaffinity.net/art/icyfoxy/stories/1488278723/1365480658.thumbnail.icyfoxy_sonya_the_wereyena.txt.gif" data-preview-src="//t.furaffinity.net/10327196@600-1488278723.jpg" src="//d.furaffinity.net/art/icyfoxy/stories/1488278723/1365480658.thumbnail.icyfoxy_sonya_the_wereyena.txt.gif" style="cursor: pointer;" />
|
||||
</span>
|
||||
<br />
|
||||
|
||||
<center class="p20l p20r">
|
||||
<div align="left" style="max-width:1024px">
|
||||
<strong>File type</strong>: Text File (.txt) [<a href="//d.furaffinity.net/art/icyfoxy/stories/1488278723/1365480658.icyfoxy_sonya_the_wereyena.txt">Download</a>]<br/>-----------------------------------------<br/><EFBFBD><EFBFBD>Brandon had just returned from home after a long day of college, throwing his bag aside as he unlocked his mailbox, taking a look what was inside. He was getting little time to relax now that he had started the second half of his year, the work he was getting coming at him hard and fast.<br />
|
||||
<br />
|
||||
Sheesh, you d think they d go easy on us after all the exams I had to do before the holidays... He sighed to himself as he looked through the letters he had received - it was pretty much the usual things, a few bills, and a book of vouchers for the nearby pizza place, some letters from friends, and a padded envelope.<br />
|
||||
<br />
|
||||
Huh... wonder what this is? He opened it, reaching into the envelope. He yelped as he felt something sink into his hand, pulling it back as he saw what looked like a semi-large fang attached to a string. GAH, that smarts! He plucked the fang out of his hand, wincing as the wound bled a little. He saw a note sticking out of the envelope, which he pulled out with his teeth, placing the envelope down as he took the note from his mouth.<br />
|
||||
<br />
|
||||
Hello there. I m pretty sure you have no idea who I am, but I know who you are. What I ve sent you is a little something that has run down in your family from generation to generation. I forgot all the details, but there is something about this fang that has been used by everyone else in your family. I apologies in advance if you reached in for this and got the fang stuck in your hand - maybe next time you ll carefully look into the envelope. <br />
|
||||
<br />
|
||||
Carefully look... did I just get insulted by a letter?! His eye twitched as he continued reading.<br />
|
||||
<br />
|
||||
You ll find out just what this fang is for this evening, it shouldn t take too long for the effects to become known, all I can say is don t bother fighting it. Goodbye. <br />
|
||||
<br />
|
||||
Ok... something about this doesn t seem right... someone s gotta be fooling me. He looked at the fang pendant, blood dripping from it. He turned back to his hand, looking at the puncture wound. Ghh... I better get this wrapped up! <br />
|
||||
<br />
|
||||
He headed to the bathroom, cleaning the wound up before wrapping it in a thin amount of bandages - unfortunately it had struck him in the palm, so there was a fair amount of pain. He couldn t move it around too much otherwise he d get a few nasty twinges.<br />
|
||||
<br />
|
||||
When he left the bathroom, he had a look at the pendant once more. Well... they ve sent it to me, I might as well put it on at the least, even after it made a hole in my hand. He grabbed it with his uninjured hand, placing it around his neck. The fang rested against his pectorals. Doesn t look too bad at the least. Better get dinner on before it gets much later. <br />
|
||||
<br />
|
||||
A couple of hours had passed - it took Brandon a little longer to get dinner ready thanks to only being able to use one hand, but he was still able to make a tasty meal. After he cleared everything up, he decided to head up to his room to use the computer for a couple of hours - after frying his brain with all the work he had to do earlier, he knew he had earned some free time.<br />
|
||||
<br />
|
||||
Might as well let a little atmosphere into the room! He said as he opened his curtains, looking up at the night sky. All the stars were sparkling bright in the sky, the full moon shining bright. In fact, it looked brighter than he remembered it.<br />
|
||||
<br />
|
||||
Nice moon tonight... really nice.... He groaned a little bit as he felt something stir below. His cock hardened, leaving a slight indent in his jeans. Mmm.... the computer can wait for a few minutes... He laid back on his bed, unzipping his jeans as he let his cock hang out. He ran a finger slowly along it, teasing it before wrapping his hand around it, beginning to pump it.<br />
|
||||
<br />
|
||||
Muhh....hehe....yeahhhh... He chuckled, brown fur starting to form around his hands and wrists. He felt the palms of his hands swell out, thick pads growing on them as the tips of his fingers sprouted sharpened claws. The pads added some nice sensations to his stroking, causing him to grunt and moan louder. The fur turned a deep grey as it grew up his arms, patches of black spots appearing over it.<br />
|
||||
<br />
|
||||
Hruhah......mmmmmmm.... He pumped harder, the sleeves of his shirt tearing as his biceps grew broader. His shirt began to get tighter as his muscles swelled all over his torso, pecs and abs growing broader and flatter. As his pectorals finished surging, they began to suddenly swell outwards, the nipples hardening as his shirt tore open. A large set of breasts were growing in along his front, the nipples turning a midnight black as light brown fur began to spread up his front, covering the large funbags.<br />
|
||||
<br />
|
||||
Ahhhh yessss.....get a load of thessseee! He growled, one hand moving to feel his new breasts as they grew a little larger with his arousal, the fur spreading down his legs. He could feel his thighs bulking up, gaining extra mass as grey and spotty black fur appeared over his legs, the limbs growing stronger, allowing him to run for longer and to jump further. <br />
|
||||
<br />
|
||||
Ghrrrrrrrr! He snarled in an inhuman tone as his feet burst through his socks, wriggling about as his big toes shrank back slightly, becoming dewclaws as sharp claws emerged from the other digits, all weight shifting to the balls of his feet as his feet stretched. He looked at his paws with a grin, groaning louder as he kept on pumping.<br />
|
||||
<br />
|
||||
Cllllose now......hruhghhhhh!! He howled as he came, his cock firing his human load all over him. As it fired across his body, his shaft expanded, turning a deep black to match his nipples. Veins formed along it as the head pushed to a slight point, the base swelling into a thick knot. His balls inflated slightly after this, a wet sensation forming between his legs as he felt something open up beneath his larger balls, making him a hir.<br />
|
||||
<br />
|
||||
Huhrhahahah! He laughed, hir ass trembling as it slowly expanded, gaining extra mass so it could match up to hir thighs. A thick, bushy tail grew from the base of hir spine, wagging behind hir as shi went back to stroking hir bigger cock, one finger on hir other hand moving to feel her thick lips.<br />
|
||||
<br />
|
||||
Yesshh....huruhrhrh.......yesssssss! Shi growled, tending to her knees as the changes finally reached hir head. Hir hair began to grow longer, flowing behind hir as hir jaws ached. Hir nose sank into hir upper jaw, nostrils flaring as it grew broader and damper, turning black as it mixed in with the black fur that was spreading over hir jaws. As the fur covered her mouth, her jaws thrusted forwards, growing out into a broad, hyena muzzle, the lips growing darker as hir teeth grew into razor sharp fangs like the one around hir neck, several more filling the empty spaces as hir ears twitched, moving to the top of hir head. To finish the transformation, hir eyes moved to the sides, turning from a soft brown to a feral yellow, pupils pulling into slits.<br />
|
||||
<br />
|
||||
GUHRAHAAHAHAHAHA! Shi roared as shi came once more, hir larger hyena cock spraying thick globs of contagious spunk everywhere. Shi was left panting as the orgasm died down, growling as shi got off the bed. Muhrahh....mmm I needed that... Shi smirked as shi turned to the window, looking at the night sky. I can t remember the last time I was set free like this... <br />
|
||||
<br />
|
||||
Shi could see people walking down the streets, minding their own business. I can t wait to have my fun once again! As Sonya the Wereyena laughed wildly as shi leapt out the window, taking to the night.<br />
|
||||
<br />
|
||||
</div>
|
||||
</center>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="aligncenter auto_link hideonfull1 favorite-nav">
|
||||
<a href="/view/10380447/" class="button standard mobile-fix">Prev</a>
|
||||
|
||||
<a class="button standard mobile-fix" href="/fav/10327196/?key=77099b4373758ce8ba63cd028d5fdcead747e3d4">+Fav</a>
|
||||
|
||||
<a class="button standard mobile-fix" href="/scraps/icyfoxy/" title=" submissions">Scraps</a>
|
||||
<a class="button standard mobile-fix" href="//d.furaffinity.net/download/art/icyfoxy/stories/1488278723/1365480658.icyfoxy_sonya_the_wereyena.txt">Download</a>
|
||||
|
||||
<a class="button standard mobile-fix" href="/newpm/icyfoxy/">Note</a>
|
||||
<a href="/view/10256330/" class="button standard mobile-fix">Next</a>
|
||||
</div>
|
||||
|
||||
<section>
|
||||
<div class="section-header">
|
||||
<div class="submission-id-container">
|
||||
<div class="submission-id-avatar">
|
||||
<a href="/user/icyfoxy/"><img class="submission-user-icon floatleft avatar" src="//a.furaffinity.net/1662878898/icyfoxy.gif"></a>
|
||||
</div>
|
||||
|
||||
<div class="submission-id-sub-container">
|
||||
<div class="submission-title">
|
||||
<h2><p>Ancient Awakening- Wereyena herm TF (By Wyraachur)</p></h2>
|
||||
</div>
|
||||
By <a href="/user/icyfoxy/"><strong>icyfoxy</strong></a>,
|
||||
<span class="hideontablet hideondesktop"><br> </span>
|
||||
<span class="hideonmobile">posted </span>
|
||||
<strong><span title="Apr 9, 2013 12:10 AM" class="popup_date">9 years ago</span></strong>
|
||||
DIGOS Unit 01 </div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="section-body">
|
||||
<div class="submission-description user-submitted-links">
|
||||
((Edit: sorry for the re-upload was having trouble with the formatting.))<br />
|
||||
Sonya is born~<br />
|
||||
Enjoy and the link to the original story: <a href="https://www.furaffinity.net/view/9765190/" title="https://www.furaffinity.net/view/9765190/" class="auto_link">https://www.furaffinity.net/view/9765190/</a><br />
|
||||
<br />
|
||||
<br />
|
||||
<br />
|
||||
<br />
|
||||
<br />
|
||||
Story © <a href="/user/wyraachur" class="iconusername"><img src="//a.furaffinity.net/20230218/wyraachur.gif" align="middle" title="Wyraachur" alt="Wyraachur" /> Wyraachur</a><br />
|
||||
Characters- <a href="/user/icyfoxy" class="iconusername"><img src="//a.furaffinity.net/20230218/icyfoxy.gif" align="middle" title="icyfoxy" alt="icyfoxy" /> icyfoxy</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- mobile view -->
|
||||
<div class="section-footer section-footer-padding hideonfull alignright">
|
||||
<div class="submission-stats-container">
|
||||
<div class="views">
|
||||
<span class="font-large">819</span><br>
|
||||
<span class="font-small highlight">Views</span>
|
||||
</div>
|
||||
|
||||
<div class="favorites">
|
||||
<span class="font-large">12</span><br>
|
||||
<span class="font-small highlight">Favorites</span>
|
||||
</div>
|
||||
|
||||
<div class="comments">
|
||||
<span class="font-large">0</span><br>
|
||||
<span class="font-small highlight">Comments</span>
|
||||
</div>
|
||||
|
||||
<div class="rating">
|
||||
<span class="font-large rating-box inline adult"> Adult</span><br>
|
||||
<span class="font-small highlight">Rating</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</section>
|
||||
|
||||
<!-- mobile view -->
|
||||
<div class="hideonfull">
|
||||
<section class="stats-mobile">
|
||||
<div class="section-body info">
|
||||
<div><strong class="highlight">Category</strong> <span class="category-name">Story</span> / <span class="type-name">General Furry Art</span></div> <div><strong class="highlight">Species</strong> <span>Hyena</span></div> <div><strong class="highlight">Gender</strong> <span>Other / Not Specified</span></div> <div><strong class="highlight">Size</strong> <span>50 x 50px</span></div> </div>
|
||||
</section>
|
||||
|
||||
<section class="tags-mobile">
|
||||
<div class="section-body">
|
||||
<span class="tags"><a href="/search/@keywords Transformation">Transformation</a></span>
|
||||
<span class="tags"><a href="/search/@keywords TF">TF</a></span>
|
||||
<span class="tags"><a href="/search/@keywords Change">Change</a></span>
|
||||
<span class="tags"><a href="/search/@keywords Male">Male</a></span>
|
||||
<span class="tags"><a href="/search/@keywords Herm">Herm</a></span>
|
||||
<span class="tags"><a href="/search/@keywords TFTG">TFTG</a></span>
|
||||
<span class="tags"><a href="/search/@keywords Transgender">Transgender</a></span>
|
||||
<span class="tags"><a href="/search/@keywords Growth">Growth</a></span>
|
||||
<span class="tags"><a href="/search/@keywords Fang">Fang</a></span>
|
||||
<span class="tags"><a href="/search/@keywords Breasts">Breasts</a></span>
|
||||
<span class="tags"><a href="/search/@keywords Ass">Ass</a></span>
|
||||
<span class="tags"><a href="/search/@keywords Cock">Cock</a></span>
|
||||
<span class="tags"><a href="/search/@keywords Balls">Balls</a></span>
|
||||
<span class="tags"><a href="/search/@keywords Icyfoxy">Icyfoxy</a></span>
|
||||
<span class="tags"><a href="/search/@keywords Wyraachur">Wyraachur</a></span>
|
||||
<span class="tags"><a href="/search/@keywords wereyena">wereyena</a></span>
|
||||
<span class="tags"><a href="/search/@keywords Sonya">Sonya</a></span>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div class="comments-list">
|
||||
|
||||
|
||||
<div id="responsebox" class="aligncenter">
|
||||
<form name="myform" method="post" action="/view/10327196/" id="add_comment_form">
|
||||
<div class="section-body no-padding">
|
||||
<input type="hidden" name="f" value="0"/>
|
||||
<input type="hidden" name="action" value="reply" id="form-action">
|
||||
<input type="hidden" name="replyto" id="form-replyto" value=""/>
|
||||
<textarea id="JSMessage" name="reply" class="textarea textarearesize" placeholder="Type your comment here."></textarea>
|
||||
</div>
|
||||
|
||||
<div class="section-footer alignright">
|
||||
<span class="floatleft" style="padding: 7px 0 0 0"><i class="bbcodeformat b hand" title="Bold (CTRL+B)" onclick="performInsert(this, '[b]', '[/b]');"></i>
|
||||
<i class="bbcodeformat i hand" title="Italic (CTRL+I)" onclick="performInsert(this, '[i]', '[/i]');"></i>
|
||||
<i class="bbcodeformat u hand" title="Underlined (CTRL+U)" onclick="performInsert(this, '[u]', '[/u]');"></i>
|
||||
|
||||
<i class="bbcodeformat align_left hand" title="Align Left" onclick="performInsert(this, '[left]', '[/left]');"></i>
|
||||
<i class="bbcodeformat align_center hand" title="Align Center" onclick="performInsert(this, '[center]', '[/center]');"></i>
|
||||
<i class="bbcodeformat align_right hand" title="Align Right" onclick="performInsert(this, '[right]', '[/right]');"></i>
|
||||
</span>
|
||||
<button class="go post-comment" type="submit" name="submit" value="Post Comment">Post Comment</button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<script type="text/javascript">
|
||||
_fajs.push(['init_bbcode_hotkeys', 'JSMessage']);
|
||||
</script>
|
||||
|
||||
|
||||
<div id="comments-submission">
|
||||
</div>
|
||||
<script type="text/javascript">
|
||||
_fajs.push(['init_reply_links', 'comments-submission']);
|
||||
</script>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script type="text/javascript">
|
||||
var ctrl_key_hold = false;
|
||||
var shift_key_hold = false;
|
||||
var comment_edit_window_sec = 300;
|
||||
|
||||
_fajs.push(function(){
|
||||
document.observe('keydown', function(evt){
|
||||
if(evt.keyCode == 16)
|
||||
shift_key_hold = true;
|
||||
if(evt.keyCode == 17)
|
||||
ctrl_key_hold = true;
|
||||
});
|
||||
document.observe('keyup', function(evt){
|
||||
var selected_tags = $$('#keywords .keyword-active');
|
||||
var search_keywords = '';
|
||||
|
||||
var delimiter = shift_key_hold ? ' | ' : ' ';
|
||||
for(var i=0, cnt=selected_tags.length; i<cnt; i++)
|
||||
search_keywords += selected_tags[i].innerHTML.replace(/[^-_\w\d ]+/, '') + delimiter;
|
||||
|
||||
if(search_keywords)
|
||||
{
|
||||
search_keywords = search_keywords.substr(0, search_keywords.length-(shift_key_hold?3:1));
|
||||
var url = '/search/@keywords '+escape(search_keywords);
|
||||
window.location.href = url;
|
||||
}
|
||||
|
||||
shift_key_hold = false;
|
||||
ctrl_key_hold = false;
|
||||
});
|
||||
|
||||
document.observe('click', function(evt){
|
||||
if(!evt.findElement('#keywords'))
|
||||
return true;
|
||||
|
||||
var elm = evt.element();
|
||||
if(elm.tagName.toLowerCase() != 'a')
|
||||
return true;
|
||||
|
||||
if(shift_key_hold || ctrl_key_hold)
|
||||
{
|
||||
evt.stop();
|
||||
elm.toggleClassName('keyword-active');
|
||||
}
|
||||
});
|
||||
|
||||
// hide comment edit links upon comment edit window expiring
|
||||
edit_links_hide_handler();
|
||||
});
|
||||
|
||||
_fajs.push(function(){
|
||||
$$('span.popup_date').each(function(elm){
|
||||
elm.observe('click',function(evt){
|
||||
var elm = evt.element();
|
||||
var tmp=elm.title;
|
||||
elm.title=elm.innerHTML;
|
||||
elm.innerHTML=tmp;
|
||||
})
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
</script>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
<!-- /<div id="site-content"> -->
|
||||
|
||||
|
||||
|
||||
<div id="footer">
|
||||
<div class="auto_link footer-links">
|
||||
<span class="hideonmobile">
|
||||
<a href="/advertising">Advertise</a> |
|
||||
<a href="/plus"><img style="position:relative;top:4px" src="/themes/beta/img/the-golden-pawb.png"> Get FA+</a> |
|
||||
<a href="https://shop.furaffinity.net/">Merch Store</a> |
|
||||
<a href="/tos">Terms of Service</a> |
|
||||
<a href="/privacy">Privacy</a> |
|
||||
<a href="/coc">Code of Conduct</a> |
|
||||
<a href="/aup">Upload Policy</a>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="footerAds">
|
||||
<div class="footerAds__column">
|
||||
<div class="footerAds__slot format--faMediumRectangle jsAdSlot" data-id="footer_left"></div>
|
||||
</div>
|
||||
|
||||
<div class="footerAds__column">
|
||||
<div class="footerAds__slot footerAds__slot--faLogo">
|
||||
<img src="/themes/beta/img/banners/fa_logo.png?v2">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footerAds__column">
|
||||
<div class="footerAds__slot format--faSmallRectangle jsAdSlot" data-id="footer_right_top"></div>
|
||||
<div class="footerAds__slot format--faSmallRectangle jsAdSlot" data-id="footer_right_bottom"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="online-stats">
|
||||
46272 <strong><span title="Measured in the last 900 seconds">Users online</span></strong> —
|
||||
2345 <strong>guests</strong>,
|
||||
16400 <strong>registered</strong>
|
||||
and 27527 <strong>other</strong>
|
||||
<!-- Online Counter Last Update: Sat, 18 Feb 2023 16:42:00 -0800 -->
|
||||
</div>
|
||||
<small>Limit bot activity to periods with less than 10k registered users online.</small>
|
||||
|
||||
<br><br>
|
||||
<strong>© 2005-2023 Frost Dragon Art LLC</strong>
|
||||
|
||||
<div class="footnote">
|
||||
Server Time: Feb 18, 2023 04:42 PM </div>
|
||||
</div>
|
||||
|
||||
|
||||
<div id="cookie-notification" class="default-hidden">
|
||||
<div class="text-container">This website uses cookies to enhance your browsing experience. <a href="/privacy" target="_blank">Learn More</a></div>
|
||||
<div class="button-container"><button class="accept">I Consent</button></div>
|
||||
</div>
|
||||
<script type="text/javascript">
|
||||
_fajs.push(function(){
|
||||
$$('#cookie-notification button').invoke('observe', 'click', function() {
|
||||
setCookie('cc', 1, expiryyear, '/');
|
||||
$('cookie-notification').addClassName('default-hidden');
|
||||
});
|
||||
$('cookie-notification').removeClassName('default-hidden');
|
||||
});
|
||||
</script>
|
||||
|
||||
|
||||
</div>
|
||||
<!-- <div id="main-window"> -->
|
||||
|
||||
<!--
|
||||
Server Local Time: Feb 18, 2023 04:42 PM <br />
|
||||
Page generated in 0.044 seconds [ 53.3% PHP, 46.7% SQL ] (24 queries) -->
|
||||
|
||||
|
||||
|
||||
<script type="text/javascript">
|
||||
_fajs.push(function() {
|
||||
var exists = getCookie('sz');
|
||||
var saved = save_viewport_size();
|
||||
if((!exists && saved) || (exists && saved && exists != saved)) {
|
||||
//window.location.reload();
|
||||
}
|
||||
});
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" src="/themes/beta/js/prototype.1.7.3.min.js"></script>
|
||||
<script type="text/javascript" src="/themes/beta/js/script.js?u=2023011700"></script>
|
||||
<script type="text/javascript">
|
||||
var server_timestamp = 1676767358;
|
||||
var client_timestamp = ((new Date()).getTime())/1000;
|
||||
var server_timestamp_delta = server_timestamp - client_timestamp;
|
||||
var sfw_cookie_name = 'sfw';
|
||||
var news_cookie_name = 'n';
|
||||
|
||||
|
||||
|
||||
|
||||
var adData = {"sizeConfig":[{"labels":["desktopWide"],"mediaQuery":"(min-width: 1065px)","sizesSupported":[[728,90],[300,250],[300,168],[300,600],[160,600]]},{"labels":["desktopNarrow"],"mediaQuery":"(min-width: 720px) and (max-width: 1064px)","sizesSupported":[[728,90],[300,250],[300,168]]},{"labels":["mobile"],"mediaQuery":"(min-width: 0px) and (max-width: 719px)","sizesSupported":[[320,50],[300,50],[320,100]]}],"slotConfig":{"header_middle":{"containerSize":{"desktopWide":[728,100],"desktopNarrow":[728,100],"mobile":[320,100]},"providerPriority":["inhouse"]},"above_content":{"containerSize":{"desktopWide":[728,100],"desktopNarrow":[728,100],"mobile":[320,100]},"providerPriority":["inhouse"]},"sidebar":{"containerSize":{"desktopWide":[300,250]},"providerPriority":["inhouse"]},"sidebar_tall":{"containerSize":{"desktopWide":[300,600]},"providerPriority":["inhouse"]},"footer_left":{"containerSize":{"desktopWide":[300,200],"desktopNarrow":[300,200],"mobile":[300,200]},"providerPriority":["inhouse"]},"footer_right_top":{"containerSize":{"desktopWide":[300,90],"desktopNarrow":[300,90],"mobile":[300,90]},"providerPriority":["inhouse"]},"footer_right_bottom":{"containerSize":{"desktopWide":[300,90],"desktopNarrow":[300,90],"mobile":[300,90]},"providerPriority":["inhouse"]},"header_right_left":{"containerSize":{"desktopWide":[300,90]},"providerPriority":["inhouse"]},"header_right_right":{"containerSize":{"desktopWide":[300,90]},"providerPriority":["inhouse"]},"sidebar_top":{"containerSize":{"desktopWide":[300,90]},"providerPriority":["inhouse"]},"sidebar_bottom":{"containerSize":{"desktopWide":[300,90]},"providerPriority":["inhouse"]}},"providerConfig":{"inhouse":{"domain":"https:\/\/rv.furaffinity.net","dataPath":"\/live\/www\/delivery\/spc.php","dataVariableName":"OA_output"}},"adConfig":{"inhouse":{"header_middle":{"default":{"tagId":11,"tagSize":[728,90]},"sizeOverride":{"mobile":{"tagId":19,"tagSize":[300,90]}}},"above_content":{"default":{"tagId":15,"tagSize":[728,90]},"sizeOverride":{"mobile":{"tagId":17,"tagSize":[300,90]}}},"sidebar":{"default":{"tagId":13,"tagSize":[300,250]}},"sidebar_tall":{"default":{"tagId":13,"tagSize":[300,250]}},"footer_left":{"default":{"tagId":10,"tagSize":[300,200]}},"footer_right_top":{"default":{"tagId":5,"tagSize":[300,90]}},"footer_right_bottom":{"default":{"tagId":6,"tagSize":[300,90]}},"header_right_left":{"default":{"tagId":2,"tagSize":[300,90]}},"header_right_right":{"default":{"tagId":4,"tagSize":[300,90]}},"sidebar_top":{"default":{"tagId":2,"tagSize":[300,90]}},"sidebar_bottom":{"default":{"tagId":4,"tagSize":[300,90]}}}}};
|
||||
window.fad = new adManager(adData.sizeConfig, adData.slotConfig, adData.providerConfig, adData.adConfig, 1);
|
||||
</script>
|
||||
|
||||
<script type="text/javascript">
|
||||
_fajs.push(function() {
|
||||
var ddmenuOptions = {
|
||||
menuId: "ddmenu",
|
||||
linkIdToMenuHtml: null,
|
||||
open: "onmouseover", // or "onclick"
|
||||
delay: 1,
|
||||
speed: 1,
|
||||
keysNav: true,
|
||||
license: "2c1f72"
|
||||
};
|
||||
var ddmenu = new Ddmenu(ddmenuOptions);
|
||||
});
|
||||
</script>
|
||||
|
||||
</body>
|
||||
|
||||
<!---
|
||||
|\ /|
|
||||
/_^ ^_\
|
||||
\v/
|
||||
|
||||
The fox goes "moo!"
|
||||
--->
|
||||
|
||||
</html>
|
||||
1928
test/fixtures/files/domain/fa/parser/redux/submission_19190013_korichi.html
vendored
Normal file
1928
test/fixtures/files/domain/fa/parser/redux/submission_19190013_korichi.html
vendored
Normal file
File diff suppressed because one or more lines are too long
@@ -130,7 +130,8 @@ class Domain::Fa::Parser::ReduxPageTest < ActiveSupport::TestCase
|
||||
assert_equal "//d.furaffinity.net/art/blauhaher/1676764049/1676764049.blauhaher_хорнь.png", sub.small_img
|
||||
assert_equal "//d.furaffinity.net/art/blauhaher/1676764049/1676764049.blauhaher_хорнь.png", sub.full_res_img
|
||||
assert_equal DateTime.new(2023, 2, 18, 18, 47), sub.posted_date
|
||||
assert_equal "Artwork (Digital) / Doodle", sub.category
|
||||
assert_equal "Artwork (Digital)", sub.category
|
||||
assert_equal "Doodle", sub.theme
|
||||
assert_equal "Unspecified / Any", sub.species
|
||||
assert_equal "Any", sub.gender
|
||||
assert_equal 1, sub.num_favorites
|
||||
@@ -139,21 +140,45 @@ class Domain::Fa::Parser::ReduxPageTest < ActiveSupport::TestCase
|
||||
assert_equal "1024x1024", sub.resolution_str
|
||||
assert_equal [], sub.keywords_array
|
||||
assert sub.description_html =~ /really adore at the way this/
|
||||
end
|
||||
|
||||
# parser = get_parser "submission_19190013_korichi.html"
|
||||
# assert parser.probably_submission?
|
||||
def test_submission_with_tags
|
||||
parser = get_parser "submission_19190013_korichi.html"
|
||||
assert parser.probably_submission?
|
||||
|
||||
# sub = parser.submission
|
||||
# assert_equal 19_190_013, sub.id
|
||||
# assert_equal "Korichi", sub.artist
|
||||
# assert_equal "General Furry Art", sub.theme
|
||||
# assert_equal "Artwork (Digital)", sub.category
|
||||
# assert_equal "1280x914", sub.resolution_str
|
||||
# assert_equal 82, sub.num_views
|
||||
# assert_equal "Male", sub.gender
|
||||
# assert_equal "Dragon (Other)", sub.species
|
||||
# assert_equal "Feb 24th, 2016 12:51 AM", sub.posted_date
|
||||
# assert_equal %w[kobold frog hunting male frog mighty hunter], sub.keywords_array
|
||||
sub = parser.submission
|
||||
assert_equal 19190013, sub.id
|
||||
assert_equal "Korichi", sub.artist
|
||||
assert_equal "General Furry Art", sub.theme
|
||||
assert_equal "Artwork (Digital)", sub.category
|
||||
assert_equal "1280x914", sub.resolution_str
|
||||
assert_equal 6272, sub.num_views
|
||||
assert_equal "Male", sub.gender
|
||||
assert_equal "Dragon (Other)", sub.species
|
||||
assert_equal DateTime.new(2016, 2, 24, 0, 51), sub.posted_date
|
||||
assert_equal %w[kobold frog hunting male frog mighty hunter], sub.keywords_array
|
||||
end
|
||||
|
||||
def test_text_only_submission
|
||||
parser = get_parser("submission_10327196_icyfoxy_text_only.html")
|
||||
assert parser.probably_submission?
|
||||
|
||||
sub = parser.submission
|
||||
assert_equal 10327196, sub.id
|
||||
assert_equal "icyfoxy", sub.artist
|
||||
assert_equal "/user/icyfoxy/", sub.artist_user_page_path
|
||||
assert_equal "Ancient Awakening- Wereyena herm TF (By Wyraachur)", sub.title
|
||||
assert_equal "//d.furaffinity.net/download/art/icyfoxy/stories/1488278723/1365480658.icyfoxy_sonya_the_wereyena.txt", sub.full_res_img
|
||||
assert_equal 819, sub.num_views
|
||||
assert_equal 0, sub.num_comments
|
||||
assert_equal 12, sub.num_favorites
|
||||
assert_equal "Hyena", sub.species
|
||||
assert_equal "Story", sub.category
|
||||
assert_equal "General Furry Art", sub.theme
|
||||
assert_equal "50x50", sub.resolution_str
|
||||
assert_equal %w[Transformation TF Change Male Herm TFTG Transgender Growth Fang Breasts Ass Cock Balls Icyfoxy Wyraachur wereyena Sonya], sub.keywords_array
|
||||
assert_equal "Other / Not Specified", sub.gender
|
||||
assert_equal DateTime.new(2013, 4, 9, 0, 10), sub.posted_date
|
||||
end
|
||||
|
||||
def get_parser(file, require_logged_in: true)
|
||||
|
||||
Reference in New Issue
Block a user