mirror of
https://github.com/reddit-archive/reddit.git
synced 2026-01-24 06:18:08 -05:00
Add a /rules page
This commit is contained in:
committed by
Neil Williams
parent
82ee08fc5d
commit
bcac640369
@@ -50,6 +50,7 @@ def make_map():
|
||||
|
||||
mc('/search', controller='front', action='search')
|
||||
|
||||
mc('/rules', controller='front', action='rules')
|
||||
mc('/sup', controller='front', action='sup')
|
||||
mc('/traffic', controller='front', action='site_traffic')
|
||||
mc('/account-activity', controller='front', action='account_activity')
|
||||
|
||||
@@ -940,6 +940,11 @@ class FrontController(RedditController):
|
||||
@validate(VUser())
|
||||
def GET_account_activity(self):
|
||||
return AccountActivityPage().render()
|
||||
|
||||
def GET_rules(self):
|
||||
return BoringPage(_("rules of reddit"), show_sidebar=False,
|
||||
content=RulesPage(), page_classes=["rulespage-body"]
|
||||
).render()
|
||||
|
||||
|
||||
class FormsController(RedditController):
|
||||
|
||||
@@ -3903,3 +3903,6 @@ class ApiHelp(Templated):
|
||||
def __init__(self, api_docs, *a, **kw):
|
||||
self.api_docs = api_docs
|
||||
super(ApiHelp, self).__init__(*a, **kw)
|
||||
|
||||
class RulesPage(Templated):
|
||||
pass
|
||||
|
||||
BIN
r2/r2/public/static/brick.png
Normal file
BIN
r2/r2/public/static/brick.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 39 KiB |
@@ -1991,6 +1991,92 @@ li.searchfacet {
|
||||
display: inline;
|
||||
}
|
||||
|
||||
body.rulespage-body {
|
||||
overflow-y: scroll;
|
||||
}
|
||||
|
||||
.rulespage {
|
||||
margin: 0 auto;
|
||||
position: relative;
|
||||
vertical-align: middle;
|
||||
width: 600px;
|
||||
}
|
||||
|
||||
.rulespage h1 {
|
||||
font-size: xx-large;
|
||||
text-align: center;
|
||||
margin-top: 20px;
|
||||
}
|
||||
|
||||
.rulespage .info {
|
||||
font-size: larger;
|
||||
padding-top: 10px;
|
||||
}
|
||||
|
||||
.rulespage .rule-list {
|
||||
margin:10px;
|
||||
padding:10px;
|
||||
font-size: medium;
|
||||
}
|
||||
|
||||
.rulespage li {
|
||||
border-bottom: 1px solid #ddd;
|
||||
padding: 10px;
|
||||
margin: 10px;
|
||||
-webkit-background-clip: padding-box;
|
||||
-moz-background-clip: padding-box;
|
||||
background-clip: padding-box;
|
||||
}
|
||||
|
||||
.rulespage li.first-rule {
|
||||
border-top: 1px solid #ddd;
|
||||
padding-top: 18px;
|
||||
}
|
||||
|
||||
.rulespage li#minors {
|
||||
padding-bottom: 18px;
|
||||
}
|
||||
|
||||
.rulespage .expander {
|
||||
color: gray;
|
||||
cursor: help;
|
||||
padding: 10px;
|
||||
}
|
||||
|
||||
.rulespage .examples {
|
||||
font-size: small;
|
||||
}
|
||||
|
||||
.rulespage li.example {
|
||||
border: none;
|
||||
}
|
||||
|
||||
.rulespage li.good-example {
|
||||
background: #bcf5a9;
|
||||
}
|
||||
|
||||
.rulespage li.bad-example {
|
||||
background: #f5a9a9;
|
||||
}
|
||||
|
||||
.rulespage em {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.rulespage em.toggle {
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
.rulespage .info {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.rulespage img.bottom {
|
||||
margin-top: 30px;
|
||||
text-align: center;
|
||||
padding-bottom: -40px;
|
||||
}
|
||||
|
||||
.aboutpage { margin-right: 320px; }
|
||||
.aboutpage p { margin: 5px; }
|
||||
.aboutpage h1, .aboutpage h2 { margin: 10px;}
|
||||
|
||||
112
r2/r2/templates/rulespage.html
Normal file
112
r2/r2/templates/rulespage.html
Normal file
@@ -0,0 +1,112 @@
|
||||
## The contents of this file are subject to the Common Public Attribution
|
||||
## License Version 1.0. (the "License"); you may not use this file except in
|
||||
## compliance with the License. You may obtain a copy of the License at
|
||||
## http://code.reddit.com/LICENSE. The License is based on the Mozilla Public
|
||||
## License Version 1.1, but Sections 14 and 15 have been added to cover use of
|
||||
## software over a computer network and provide for limited attribution for the
|
||||
## Original Developer. In addition, Exhibit A has been modified to be consistent
|
||||
## with Exhibit B.
|
||||
##
|
||||
## Software distributed under the License is distributed on an "AS IS" basis,
|
||||
## WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
|
||||
## the specific language governing rights and limitations under the License.
|
||||
##
|
||||
## The Original Code is Reddit.
|
||||
##
|
||||
## The Original Developer is the Initial Developer. The Initial Developer of
|
||||
## the Original Code is CondeNet, Inc.
|
||||
##
|
||||
## All portions of the code written by CondeNet are Copyright (c) 2006-2010
|
||||
## CondeNet, Inc. All Rights Reserved.
|
||||
################################################################################
|
||||
<%!
|
||||
from r2.lib.template_helpers import static
|
||||
%>
|
||||
|
||||
<%def name="expando_start(phrase)">
|
||||
<div class="examples">
|
||||
<p class="expander" onClick="return toggle_expando(this);"><em class="toggle">[+]</em> ${phrase}</p>
|
||||
<div class="rule-examples" style="display:none;">
|
||||
<ul>
|
||||
</%def>
|
||||
|
||||
<%def name="expando_end()">
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</%def>
|
||||
|
||||
<%def name="good_example(phrase, leadin='OK:')">
|
||||
<li class="example good-example"><em>${leadin}</em> ${unsafe(phrase)}</li>
|
||||
</%def>
|
||||
|
||||
<%def name="bad_example(phrase, leadin='NOT OK:')">
|
||||
<li class="example bad-example"><em>${leadin}</em> ${unsafe(phrase)}</li>
|
||||
</%def>
|
||||
|
||||
<script type="text/javascript">
|
||||
function toggle_expando(elem){
|
||||
var examples = $(elem).siblings(".rule-examples");
|
||||
var toggle = $(elem).find(".toggle");
|
||||
if (examples.is(":visible")){
|
||||
toggle.text("[+]");
|
||||
examples.slideUp();
|
||||
} else {
|
||||
toggle.text("[\u2013]");
|
||||
examples.slideDown();
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<div class="rulespage">
|
||||
<h1>rules of reddit</h1>
|
||||
<div>
|
||||
<p class="info">reddit is a pretty open platform and free speech place, but there are a few rules:</p>
|
||||
<ol class="rule-list">
|
||||
<li id="spam" class="first-rule">
|
||||
<p>Don't <a href="http://www.reddit.com/help/faq#Whatconstitutesspam">spam</a>.</p>
|
||||
${expando_start("What is spam?")}
|
||||
${bad_example('Submitting only links to your blog or personal website.')}
|
||||
${good_example('Submitting links from a variety of sites and sources.')}
|
||||
${good_example('Submitting links from your own site, talking with redditors in the comments, and also submitting cool stuff from other sites.')}
|
||||
${bad_example('Posting the same comment repeatedly in multiple subreddits.')}
|
||||
${expando_end()}
|
||||
</li>
|
||||
<li id="votecheating">
|
||||
<p>Don't engage in vote <a href="http://www.reddit.com/help/faq#Whatconstitutescheating">cheating or manipulation</a>.</p>
|
||||
${expando_start("What does vote cheating look like?")}
|
||||
${bad_example('Buying upvotes from other people.')}
|
||||
${good_example('Sharing reddit links with your friends.')}
|
||||
${bad_example('Sharing only <b> your </b> reddit links with your friends — then asking them to register and upvote them.')}
|
||||
${bad_example('Creating submissions that start with "For every upvote I will ______," regardless of cause.')}
|
||||
${expando_end()}
|
||||
</li>
|
||||
<li id="personalinfo">
|
||||
<p>Don't post <a href="http://www.reddit.com/help/faq#Ispostingpersonalinformationok">personal information</a>.</p>
|
||||
${expando_start("What might be personal information?")}
|
||||
${bad_example("Posting a link to your friend's facebook profile.")}
|
||||
${good_example("Posting your senator's publicly available contact information")}
|
||||
${bad_example("Posting the full name, employer, or other real-life details of another redditor")}
|
||||
${good_example("Posting a link to a public page maintained by a celebrity.")}
|
||||
${expando_end()}
|
||||
</li>
|
||||
<li id="minors">
|
||||
<p>No <a href="http://www.missingkids.com/missingkids/servlet/PageServlet?PageId=1504" rel="nofollow">child pornography</a> or <a href="http://www.reddit.com/r/blog/comments/pmj7f/a_necessary_change_in_policy/" rel="nofollow">sexually suggestive content featuring minors</a>.</p>
|
||||
</li>
|
||||
<li id="breakthesite">
|
||||
<p>Don't break the site or do anything that interferes with normal use of the site.</p>
|
||||
${expando_start("Tell me more.")}
|
||||
${bad_example('Creating programs that request information more than once every 2 seconds or violate any of our other <a href="https://github.com/reddit/reddit/wiki/API"> API rules</a>.')}
|
||||
${good_example('Responsibly <a href="/help/whitehat"> reporting security </a> issues to us.', leadin="AWESOME:")}
|
||||
${expando_end()}
|
||||
</li>
|
||||
<!-- Also, 'reddit' is STRICTLY lowercase -->
|
||||
</ol>
|
||||
</div>
|
||||
<div id="followreddiquette" class="info">
|
||||
<p>This last bit isn't a rule, but you should also be mindful of <a href="/help/reddiquette"> reddiquette</a>, an <em>informal</em> expression of reddit's community values as written by the community itself. Please abide by it the best you can.</p>
|
||||
</div>
|
||||
<div class="info">
|
||||
<img id="brick" class="bottom" alt="" src="${static('brick.png')}">
|
||||
</div>
|
||||
</div>
|
||||
Reference in New Issue
Block a user