Browse Source

Revert "Snipt -> Siftie, first pass."

This reverts commit c12e294599.
master
Nick Sergeant 2 years ago
parent
commit
6ea91c3b0e
27 changed files with 111 additions and 130 deletions
  1. +5
    -5
      README.md
  2. +2
    -2
      accounts/models.py
  3. +1
    -1
      accounts/templates/stats.html
  4. +3
    -3
      app.json
  5. +6
    -8
      blogs/middleware.py
  6. +1
    -1
      blogs/templates/blogs/themes/default/base.html
  7. +3
    -3
      blogs/templates/blogs/themes/default/rss.xml
  8. +1
    -1
      media/js/src/modules/partials/blogging.html
  9. +15
    -22
      settings.py
  10. +3
    -8
      snipts/management/commands/import_snipts.py
  11. +16
    -19
      snipts/models.py
  12. +2
    -2
      snipts/templates/snipts/embed.html
  13. +4
    -4
      snipts/templates/snipts/list.html
  14. +1
    -1
      snipts/templates/snipts/snipt-edit-js-template.html
  15. +1
    -1
      snipts/templates/snipts/snipt-list.html
  16. +24
    -26
      snipts/tests.py
  17. +3
    -3
      teams/migrations/0002_team_email.py
  18. +1
    -1
      teams/templates/teams/for-teams-complete.html
  19. +4
    -4
      teams/templates/teams/for-teams.html
  20. +1
    -1
      teams/templates/teams/team-members.html
  21. +1
    -1
      templates/add-snipt.html
  22. +2
    -2
      templates/base.html
  23. +3
    -3
      templates/profile.html
  24. +1
    -1
      templates/registration/activation_email.txt
  25. +1
    -1
      templates/registration/activation_email_subject.txt
  26. +1
    -1
      templates/registration/password_reset_email.html
  27. +5
    -5
      templates/rss.xml

+ 5
- 5
README.md View File

@@ -1,4 +1,4 @@
# Siftie Snippets
# Snipt

## Running locally

@@ -31,9 +31,9 @@

## Automatic deploy to Heroku

You can click the button below to automatically deploy Siftie Snippets to Heroku.
You can click the button below to automatically deploy Snipt to Heroku.

[![Deploy](https://www.herokucdn.com/deploy/button.svg)](https://heroku.com/deploy?template=https://github.com/siftie/snippets)
[![Deploy](https://www.herokucdn.com/deploy/button.svg)](https://heroku.com/deploy?template=https://github.com/nicksergeant/snipt)

## Manual deploy to Heroku

@@ -49,8 +49,8 @@ You can click the button below to automatically deploy Siftie Snippets to Heroku

## Updating your Heroku instance after an automatic deploy

- `git clone https://github.com/siftie/snippets`
- `cd snippets`
- `git clone https://github.com/nicksergeant/snipt`
- `cd snipt`
- `git checkout heroku`
- `heroku git:remote -a <your-instance-name>`
- `git push heroku heroku:master`


+ 2
- 2
accounts/models.py View File

@@ -97,11 +97,11 @@ class UserProfile(models.Model):

# Otherwise, if they have blog posts, use their Snipt blog URL.
elif self.get_blog_posts():
url = "https://{}.snippets.siftie.com/".format(self.user.username)
url = 'https://{}.snipt.net/'.format(self.user.username)

# Otherwise, use their regular Snipt profile page.
else:
url = "https://snippets.siftie.com/{}/".format(self.user.username)
url = 'https://snipt.net/{}/'.format(self.user.username)

return url



+ 1
- 1
accounts/templates/stats.html View File

@@ -18,7 +18,7 @@
<table class="table">
<thead>
<tr>
<th>Snippet</th>
<th>Snipt</th>
<th>Views</th>
<th>Favs</th>
</tr>


+ 3
- 3
app.json View File

@@ -1,12 +1,12 @@
{
"name": "Siftie Snippets",
"name": "Snipt",
"description": "Code snippets for teams and individuals.",
"keywords": [
"snipt",
"code snippets"
],
"website": "https://snippets.siftie.com",
"repository": "https://github.com/siftie/snippets",
"website": "https://snipt.net",
"repository": "https://github.com/nicksergeant/snipt",
"logo": "https://snipt.s3.amazonaws.com/logo.png",
"success_url": "/",
"scripts": {


+ 6
- 8
blogs/middleware.py View File

@@ -8,14 +8,12 @@ class BlogMiddleware:
def process_request(self, request):
request.blog_user = None

host = request.META.get("HTTP_HOST", "")
host_s = host.replace("www.", "").split(".")

if (
host != "snippets.siftie.com"
and host != "snipt.localhost"
and host != "local.snippets.siftie.com"
):
host = request.META.get('HTTP_HOST', '')
host_s = host.replace('www.', '').split('.')

if host != 'snipt.net' and \
host != 'snipt.localhost' and \
host != 'local.snipt.net':
if len(host_s) > 2:
if host_s[1] == "snipt":



+ 1
- 1
blogs/templates/blogs/themes/default/base.html View File

@@ -76,7 +76,7 @@
{% endif %}
<nav class="footer {% if sidebar %}with-sidebar{% endif %}">
<ul class="powered">
<li class="snipt"><a href="https://snippets.siftie.com/blogging/">Blog powered by Siftie Snippets</a></li>
<li class="snipt"><a href="https://snipt.net/blogging/">Blog powered by Snipt</a></li>
</ul>
</nav>
</aside>


+ 3
- 3
blogs/templates/blogs/themes/default/rss.xml View File

@@ -1,9 +1,9 @@
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<atom:link href="{% if request.blog_user.profile.get_primary_blog_domain and request.blog_user.profile.blog_domain != '' %}http://{{ request.blog_user.profile.blog_domain }}/?rss{% else %}https://{{ request.blog_user.username }}.snippets.siftie.com/?rss{% endif %}" rel="self" type="application/rss+xml" />
<atom:link href="{% if request.blog_user.profile.get_primary_blog_domain and request.blog_user.profile.blog_domain != '' %}http://{{ request.blog_user.profile.blog_domain }}/?rss{% else %}https://{{ request.blog_user.username }}.snipt.net/?rss{% endif %}" rel="self" type="application/rss+xml" />
<description>{% firstof request.blog_user.profile.blog_title request.blog_user.username %}</description>
<title>{% firstof request.blog_user.profile.blog_title request.blog_user.username %}</title>
<link>{% if request.blog_user.profile.get_primary_blog_domain %}http://{{ request.blog_user.profile.blog_domain }}/?rss{% else %}https://{{ request.blog_user.username }}.snippets.siftie.com/?rss{% endif %}</link>
<link>{% if request.blog_user.profile.get_primary_blog_domain %}http://{{ request.blog_user.profile.blog_domain }}/?rss{% else %}https://{{ request.blog_user.username }}.snipt.net/?rss{% endif %}</link>
{% for snipt in snipts %}
<item>
<title>{{ snipt.title }}</title>
@@ -11,7 +11,7 @@
<description><![CDATA[{{ snipt.stylized|safe }}]]></description>
<tags>{% for tag in snipt.tags.all %}{{ tag }}{% if not forloop.last %}, {% endif %}{% endfor %}</tags>
<pubDate>{{ snipt.created|date:"r" }}</pubDate>
<guid isPermaLink="false">siftie-snippets-com-{{ snipt.id }}</guid>
<guid isPermaLink="false">snipt-net-{{ snipt.id }}</guid>
</item>
{% endfor %}
</channel>


+ 1
- 1
media/js/src/modules/partials/blogging.html View File

@@ -18,7 +18,7 @@
<label class="control-label" for="id_blog_domain">Blog domain:</label>
<div class="controls">
<input id="id_blog_domain" type="text" ng-model="user.blog_domain" maxlength="250">
<span class="help-block">Like 'snipt.nicksergeant.com' or 'nicksergeant.com' (without quotes). Set your CNAME to `snippets.siftie.com` or A-record to `96.126.110.160`. You can use multiple domains here: separate each domain with a space. The first domain will be your primary domain. All other domains will redirect to your primary domain.</span>
<span class="help-block">Like 'snipt.nicksergeant.com' or 'nicksergeant.com' (without quotes). Set your CNAME to `snipt.net` or A-record to `96.126.110.160`. You can use multiple domains here: separate each domain with a space. The first domain will be your primary domain. All other domains will redirect to your primary domain.</span>
</div>
</div>
</div>


+ 15
- 22
settings.py View File

@@ -8,29 +8,22 @@ if "DATABASE_URL" in os.environ:

ABSOLUTE_URL_OVERRIDES = {"auth.user": lambda u: "/%s/" % u.username}
ACCOUNT_ACTIVATION_DAYS = 0
ADMINS = (("Siftie", "team@siftie.com"),)
ALLOWED_HOSTS = ["*"]
AUTH_PROFILE_MODULE = "accounts.UserProfile"
AUTHENTICATION_BACKENDS = ("utils.backends.EmailOrUsernameModelBackend",)
ADMINS = (('Nick Sergeant', 'nick@snipt.net'),)
ALLOWED_HOSTS = ['*']
AUTH_PROFILE_MODULE = 'accounts.UserProfile'
AUTHENTICATION_BACKENDS = ('utils.backends.EmailOrUsernameModelBackend',)
BASE_PATH = os.path.dirname(__file__)
CSRF_COOKIE_SECURE = True if "USE_SSL" in os.environ else False
CORS_ORIGIN_ALLOW_ALL = True
DEBUG = True if "DEBUG" in os.environ else False
DEFAULT_FROM_EMAIL = os.environ.get("POSTMARK_EMAIL", "team@siftie.com")
EMAIL_BACKEND = "postmark.django_backend.EmailBackend"
# HAYSTACK_CONNECTIONS = {
# "default": {
# "ENGINE": "haystack.backends.whoosh_backend.WhooshEngine",
# "PATH": os.environ.get("WHOOSH_PATH", "./.whoosh_index"),
# "STORAGE": "file",
# }
# }
# HAYSTACK_SIGNAL_PROCESSOR = "haystack.signals.RealtimeSignalProcessor"
INTERNAL_IPS = ("127.0.0.1",)
LANGUAGE_CODE = "en-us"
LOGIN_REDIRECT_URL = "/login-redirect/"
LOGIN_URL = "/login/"
LOGOUT_URL = "/logout/"
DEBUG = True if 'DEBUG' in os.environ else False
DEFAULT_FROM_EMAIL = os.environ.get('POSTMARK_EMAIL', 'support@snipt.net')
EMAIL_BACKEND = 'postmark.django_backend.EmailBackend'
HAYSTACK_SIGNAL_PROCESSOR = 'haystack.signals.RealtimeSignalProcessor'
INTERNAL_IPS = ('127.0.0.1',)
LANGUAGE_CODE = 'en-us'
LOGIN_REDIRECT_URL = '/login-redirect/'
LOGIN_URL = '/login/'
LOGOUT_URL = '/logout/'
MANAGERS = ADMINS
MEDIA_ROOT = os.path.join(BASE_PATH, "media/uploads")
MEDIA_URL = "/media/uploads/"
@@ -52,7 +45,7 @@ SECRET_KEY = os.environ.get("SECRET_KEY", "changeme")
SECURE_PROXY_SSL_HEADER = ("HTTP_X_FORWARDED_PROTO", "https")
SECURE_SSL_REDIRECT = True if "USE_SSL" in os.environ else False
SEND_BROKEN_LINK_EMAILS = False
SERVER_EMAIL = os.environ.get("POSTMARK_EMAIL", "team@siftie.com")
SERVER_EMAIL = os.environ.get('POSTMARK_EMAIL', 'support@snipt.net')
SESSION_COOKIE_AGE = 15801100
SESSION_COOKIE_SECURE = True if "USE_SSL" in os.environ else False
SITE_ID = 1
@@ -65,7 +58,7 @@ STATICFILES_STORAGE = "whitenoise.django.GzipManifestStaticFilesStorage"
STATIC_ROOT = os.path.join(BASE_PATH, "static")
STATIC_URL = "/static/"
TASTYPIE_CANNED_ERROR = """There was an error with your request. The site
developers have a record of this error, please email team@siftie.com and
developers have a record of this error, please email api@snipt.net and
we'll help you out."""

TEMPLATES = [


+ 3
- 8
snipts/management/commands/import_snipts.py View File

@@ -8,13 +8,8 @@ import requests


def get_snipts(api_key, from_username, url=None, snipts=[]):
path = (
url
or "/api/private/snipt/?limit=50&api_key={}&username={}&format=json".format(
api_key, from_username
)
)
res = requests.get("https://snippets.siftie.com" + path)
path = url or '/api/private/snipt/?limit=50&api_key={}&username={}&format=json'.format(api_key, from_username)
res = requests.get('https://snipt.net' + path)
json = res.json()

print(
@@ -34,7 +29,7 @@ def get_snipts(api_key, from_username, url=None, snipts=[]):


class Command(BaseCommand):
help = u"Import snipts from Siftie Snippets."
help = u"Import snipts from snipt.net."

def add_arguments(self, parser):
parser.add_argument("api_key", nargs="+", type=str)


+ 16
- 19
snipts/models.py View File

@@ -83,13 +83,12 @@ class Snipt(models.Model):
if self.lexer == "markdown":
self.stylized = markdown(self.code, "default")

# Snippet embeds
for match in re.findall("\[\[(\w{32})\]\]", self.stylized):
self.stylized = self.stylized.replace(
"[[" + str(match) + "]]",
"""
# Snipt embeds
for match in re.findall('\[\[(\w{32})\]\]', self.stylized):
self.stylized = self.stylized.replace('[[' + str(match) + ']]',
"""
<script type="text/javascript"
src="https://snippets.siftie.com/embed/{}/?snipt">
src="https://snipt.net/embed/{}/?snipt">
</script>
<div id="snipt-embed-{}"></div>""".format(
match, match
@@ -134,10 +133,10 @@ class Snipt(models.Model):
),
)

# Parse usernames
for match in re.findall("@(\w+) ", self.stylized):
# Parse Snipt usernames
for match in re.findall('@(\w+) ', self.stylized):

# Try and get the user by username.
# Try and get the Snipt user by username.
user = get_object_or_None(User, username=match)

if user:
@@ -228,9 +227,8 @@ class Snipt(models.Model):
self.user.profile.blog_domain.split(" ")[0], self.slug
)
else:
return u"https://{}.snippets.siftie.com/{}/".format(
self.user.username.replace("_", "-"), self.slug
)
return u'https://{}.snipt.net/{}/'.format(
self.user.username.replace('_', '-'), self.slug)

if self.custom_slug:
return u"/{}/".format(self.custom_slug)
@@ -248,9 +246,8 @@ class Snipt(models.Model):
self.user.profile.blog_domain.split(" ")[0], self.slug
)
else:
return u"https://{}.snippets.siftie.com/{}/".format(
self.user.username, self.slug
)
return u'https://{}.snipt.net/{}/'.format(
self.user.username, self.slug)

if self.public:
return u"/{}/{}/".format(self.user.username, self.slug)
@@ -277,9 +274,9 @@ class Snipt(models.Model):
def get_embed_url(self):

if settings.DEBUG:
root = "http://local.snippets.siftie.com"
root = 'http://local.snipt.net'
else:
root = "https://snippets.siftie.com"
root = 'https://snipt.net'

return "{}/embed/{}/".format(root, self.key)

@@ -311,7 +308,7 @@ class Snipt(models.Model):


class SniptLogEntry(models.Model):
"""An individual log entry for a snippet changeset."""
"""An individual log entry for a Snipt changeset."""

user = models.ForeignKey(User, on_delete=models.CASCADE)
snipt = models.ForeignKey(Snipt, on_delete=models.CASCADE)
@@ -328,7 +325,7 @@ class SniptLogEntry(models.Model):


class SniptSecureView(models.Model):
"""A single view to a secure snippet."""
"""A single view to a secure snipt."""

user = models.ForeignKey(User, on_delete=models.CASCADE)
snipt = models.ForeignKey(Snipt, on_delete=models.CASCADE)


+ 2
- 2
snipts/templates/snipts/embed.html View File

@@ -1,2 +1,2 @@
{% if 'snipt' in request.GET %}document.addEventListener('DOMContentLoaded', function() { document.getElementById('snipt-embed-{{ snipt.key }}').innerHTML = '<div class="snipt-embed" onmouseover="document.getElementById(\'snipt-flag-{{ snipt.id }}\').style.display = \'block\'; return false;" onmouseout="document.getElementById(\'snipt-flag-{{ snipt.id }}\').style.display = \'none\'; return false;" style="position: relative;">{% for line in lines %}{{ line|safe }}\n{% endfor %}<div style="background-color: #111; color: #D0D0D0; float: right; padding: 5px 10px; -moz-border-radius-topleft: 5px; -webkit-border-top-left-radius: 5px; border-top-left-radius: 5px; -moz-border-radius-bottomright: 5px; -webkit-border-bottom-right-radius: 5px; border-bottom-right-radius: 5px; font: 11px Arial,Sans-Serif; display: none; position: absolute; bottom: 0; right: 0;" id="snipt-flag-{{ snipt.id }}">code hosted by <a href="https://snippets.siftie.com/{{ snipt.user }}/{{ snipt.slug }}{% if not snipt.public %}?key={{ snipt.key }}{% endif %}" style="color: #0084FF; text-decoration: none;">snippets.siftie.com</a></div></div>'; });
{% else %}document.open();document.writeln('<div class="snipt-embed" onmouseover="document.getElementById(\'snipt-{{ snipt.id }}\').style.display = \'block\'; return false;" onmouseout="document.getElementById(\'snipt-{{ snipt.id }}\').style.display = \'none\'; return false;" style="position: relative;">');{% for line in lines %}document.writeln('{{ line|safe }}');{% endfor %}document.writeln('<div style="background-color: #111; color: #D0D0D0; float: right; padding: 5px 10px; -moz-border-radius-topleft: 5px; -webkit-border-top-left-radius: 5px; border-top-left-radius: 5px; -moz-border-radius-bottomright: 5px; -webkit-border-bottom-right-radius: 5px; border-bottom-right-radius: 5px; font: 11px Arial,Sans-Serif; display: none; position: absolute; bottom: 0; right: 0;" id="snipt-{{ snipt.id }}">code hosted by <a href="https://snippets.siftie.com/{{ snipt.user }}/{{ snipt.slug }}{% if not snipt.public %}?key={{ snipt.key }}{% endif %}" style="color: #0084FF; text-decoration: none;">snippets.siftie.com</a></div>');document.writeln('</div>');document.close();{% endif %}
{% if 'snipt' in request.GET %}document.addEventListener('DOMContentLoaded', function() { document.getElementById('snipt-embed-{{ snipt.key }}').innerHTML = '<div class="snipt-embed" onmouseover="document.getElementById(\'snipt-flag-{{ snipt.id }}\').style.display = \'block\'; return false;" onmouseout="document.getElementById(\'snipt-flag-{{ snipt.id }}\').style.display = \'none\'; return false;" style="position: relative;">{% for line in lines %}{{ line|safe }}\n{% endfor %}<div style="background-color: #111; color: #D0D0D0; float: right; padding: 5px 10px; -moz-border-radius-topleft: 5px; -webkit-border-top-left-radius: 5px; border-top-left-radius: 5px; -moz-border-radius-bottomright: 5px; -webkit-border-bottom-right-radius: 5px; border-bottom-right-radius: 5px; font: 11px Arial,Sans-Serif; display: none; position: absolute; bottom: 0; right: 0;" id="snipt-flag-{{ snipt.id }}">code hosted by <a href="https://snipt.net/{{ snipt.user }}/{{ snipt.slug }}{% if not snipt.public %}?key={{ snipt.key }}{% endif %}" style="color: #0084FF; text-decoration: none;">snipt.net</a></div></div>'; });
{% else %}document.open();document.writeln('<div class="snipt-embed" onmouseover="document.getElementById(\'snipt-{{ snipt.id }}\').style.display = \'block\'; return false;" onmouseout="document.getElementById(\'snipt-{{ snipt.id }}\').style.display = \'none\'; return false;" style="position: relative;">');{% for line in lines %}document.writeln('{{ line|safe }}');{% endfor %}document.writeln('<div style="background-color: #111; color: #D0D0D0; float: right; padding: 5px 10px; -moz-border-radius-topleft: 5px; -webkit-border-top-left-radius: 5px; border-top-left-radius: 5px; -moz-border-radius-bottomright: 5px; -webkit-border-bottom-right-radius: 5px; border-bottom-right-radius: 5px; font: 11px Arial,Sans-Serif; display: none; position: absolute; bottom: 0; right: 0;" id="snipt-{{ snipt.id }}">code hosted by <a href="https://snipt.net/{{ snipt.user }}/{{ snipt.slug }}{% if not snipt.public %}?key={{ snipt.key }}{% endif %}" style="color: #0084FF; text-decoration: none;">snipt.net</a></div>');document.writeln('</div>');document.close();{% endif %}

+ 4
- 4
snipts/templates/snipts/list.html View File

@@ -27,10 +27,10 @@
{% empty %}
<div class="empty-snipts">
{% if request.user == user and not request.user.is_active and not public %}
Welcome! Please <a target="_self" href="/account/activate/">activate your account</a> to create your first snippet.
Welcome! Please <a target="_self" href="/account/activate/">activate your account</a> to create your first snipt.
{% else %}
{% if request.user == user and request.user.is_authenticated %}
Welcome! Create your first snippet by clicking "Add Snippet" above.
Welcome! Create your first snipt by clicking "Add Snipt" above.
{% else %}
No snipts to show here. Sorry!
{% endif %}
@@ -44,10 +44,10 @@
{% empty %}
<div class="empty-snipts">
{% if request.user == user and not request.user.is_active and not public %}
Welcome! Please <a target="_self" href="/account/activate/">activate your account</a> to create your first snippet.
Welcome! Please <a target="_self" href="/account/activate/">activate your account</a> to create your first snipt.
{% else %}
{% if request.user == user and request.user.is_authenticated %}
Welcome! Create your first snippet by clicking "Add Snippet" above.
Welcome! Create your first snipt by clicking "Add Snipt" above.
{% else %}
No snipts to show here. Sorry!
{% endif %}


+ 1
- 1
snipts/templates/snipts/snipt-edit-js-template.html View File

@@ -70,7 +70,7 @@
Private snipts do not appear in the public listing, but are accessible via the direct URL.
</div>
<div class="info public">
Public snipts are accessible by all Siftie Snippets users and appear in the public listing.
Public snipts are accessible by all Snipt.net users and appear in the public listing.
</div>
</label>
<label class="secure">


+ 1
- 1
snipts/templates/snipts/snipt-list.html View File

@@ -213,7 +213,7 @@
{% endif %}
{% if detail and snipt.public %}
<li class="tweet">
<a href="https://twitter.com/share" class="twitter-share-button" data-dnt="true" data-count="none" data-url="{{ snipt.get_full_absolute_url }}" data-text="&ldquo;{{ snipt.title }}&rdquo; on @SiftieSnippets">Tweet</a>
<a href="https://twitter.com/share" class="twitter-share-button" data-dnt="true" data-count="none" data-url="{{ snipt.get_full_absolute_url }}" data-text="&ldquo;{{ snipt.title }}&rdquo; on @Snipt">Tweet</a>
</li>
{% endif %}
</ul>


+ 24
- 26
snipts/tests.py View File

@@ -11,36 +11,34 @@ class SniptResourceTest(ResourceTestCase):
super(SniptResourceTest, self).setUp()

# Johnny
self.johnny = User.objects.create_user(
"johnny", "johnny@siftie.com", "password"
)
self.johnny = User.objects.create_user('johnny', 'johnny@snipt.net',
'password')
ApiKey.objects.get_or_create(user=self.johnny)
self.johnny_auth = self.create_apikey(self.johnny, self.johnny.api_key.key)
self.johnny_private = Snipt(
title="Private snippet for Johnny",
lexer="text",
public=False,
user=self.johnny,
)
self.johnny_public = Snipt(
title="Public snippet for Johnny",
lexer="text",
public=True,
user=self.johnny,
)
self.johnny_auth = self.create_apikey(self.johnny,
self.johnny.api_key.key)
self.johnny_private = Snipt(title='Private snipt for Johnny',
lexer='text',
public=False,
user=self.johnny)
self.johnny_public = Snipt(title='Public snipt for Johnny',
lexer='text',
public=True,
user=self.johnny)
self.johnny_private.save()
self.johnny_public.save()

# Bob
self.bob = User.objects.create_user("bob", "bob@siftie.com", "password")
self.bob = User.objects.create_user('bob', 'bob@snipt.net', 'password')
ApiKey.objects.get_or_create(user=self.bob)
self.bob_auth = self.create_apikey(self.bob, self.bob.api_key.key)
self.bob_private = Snipt(
title="Private snippet for Bob", lexer="text", public=False, user=self.bob
)
self.bob_public = Snipt(
title="Public snippet for Bob", lexer="text", public=True, user=self.bob
)
self.bob_private = Snipt(title='Private snipt for Bob',
lexer='text',
public=False,
user=self.bob)
self.bob_public = Snipt(title='Public snipt for Bob',
lexer='text',
public=True,
user=self.bob)
self.bob_private.save()
self.bob_public.save()

@@ -83,9 +81,9 @@ class SniptResourceTest(ResourceTestCase):
def test_post_private_list(self):

new_snipt = {
"title": "A new private snippet.",
"lexer": "text",
"public": False,
'title': 'A new private snipt.',
'lexer': 'text',
'public': False,
}

resp = self.api_client.post(


+ 3
- 3
teams/migrations/0002_team_email.py View File

@@ -10,9 +10,9 @@ class Migration(migrations.Migration):

operations = [
migrations.AddField(
model_name="team",
name="email",
field=models.EmailField(default="nick@siftie.com", max_length=255),
model_name='team',
name='email',
field=models.EmailField(default='nick@snipt.net', max_length=255),
preserve_default=False,
)
]

+ 1
- 1
teams/templates/teams/for-teams-complete.html View File

@@ -1,6 +1,6 @@
{% extends "base.html" %}

{% block page-title %}Sign up for Siftie Snippets Pro{% endblock %}
{% block page-title %}Sign up for Snipt Pro{% endblock %}

{% block body-class %}{{ block.super }} static pro signup pro-signup pro-signup-complete{% endblock %}



+ 4
- 4
teams/templates/teams/for-teams.html View File

@@ -1,6 +1,6 @@
{% extends "base.html" %}

{% block page-title %}Siftie Snippets for Teams{% endblock %}
{% block page-title %}Snipt for Teams{% endblock %}

{% block body-class %}{{ block.super }} static signup pro pro-signup{% endblock %}

@@ -9,7 +9,7 @@
{% endblock %}

{% block breadcrumb %}
<li><a href="/for-teams/">Siftie Snippets for Teams</a></li>
<li><a href="/for-teams/">Snipt for Teams</a></li>
{% endblock %}

{% block content %}
@@ -21,9 +21,9 @@
<form class="form-horizontal static-box" id="pro-signup" method="post" action="/for-teams/complete/">
<fieldset>
<div class="info">
Siftie Snippets for Teams
Snipt for Teams
<ul class="features">
<li>Team profile at snippets.siftie.com/{team-name}.</li>
<li>Team profile at snipt.net/{team-name}.</li>
<li>Members can create and edit public and private snippets on a team.</li>
<li>Detailed log of changes on a snippet, including user and code diffs.</li>
<li>Maintain a public team profile by posting public snippets.</li>


+ 1
- 1
teams/templates/teams/team-members.html View File

@@ -30,7 +30,7 @@
{% if 'limit-reached' in request.GET %}
<p class="alert alert-error group">
You have no seats available to add this member.
To upgrade your plan, contact <a href="mailto:support@siftie.com">support@siftie.com</a>.
To upgrade your plan, contact <a href="mailto:support@snipt.net">support@snipt.net</a>.
</p>
{% endif %}
<div class="def" data-title="Owner">


+ 1
- 1
templates/add-snipt.html View File

@@ -1,7 +1,7 @@
<li class="add-snipt">
{% if request.user.is_active %}
<button class="btn btn-info btn-large" id="add-snipt">
Add {% if request.user.username == 'blog' %}Post{% else %}Snippet{% endif %}
Add {% if request.user.username == 'blog' %}Post{% else %}Snipt{% endif %}
<i class="icon-search icon-plus icon-white"></i>
</button>
{% endif %}


+ 2
- 2
templates/base.html View File

@@ -6,7 +6,7 @@
<html lang="en" class="{% block html-class %}{% endblock %}" ng-app="Snipt">
<head>

<title>{% block page-title %}Siftie Snippets{% endblock %} - Code snippet app for teams and individuals.</title>
<title>{% block page-title %}Snipt{% endblock %} - Code snippet app for teams and individuals.</title>

<meta charset="utf-8" />
<meta name="google-site-verification" content="BantFMmY6nSP8wFvb_SDKwYZo08HglaCpNMXQqTyOuk" />
@@ -146,7 +146,7 @@
{% if request.user.profile.has_pro %}
<span class="is-pro">Pro</span>
{% else %}
Snippets user
Snipt user
{% endif %}
</span>
</span>


+ 3
- 3
templates/profile.html View File

@@ -14,7 +14,7 @@
<div class="member-since">Team since {{ user.date_joined|date:"Y" }}</div>
{% if user.profile.get_blog_posts %}
<div class="urls">
Siftie Snippets Blog:
Snipt Blog:
<a href="{{ user.profile.get_user_profile_url }}">
{{ user.profile.get_user_profile_url }}
</a>
@@ -61,13 +61,13 @@
</a>
</div>
{% if user.username == 'nick' %}
<div class="member-since">Snippets Founder in {{ user.date_joined|date:"Y" }}</div>
<div class="member-since">Snipt Founder in {{ user.date_joined|date:"Y" }}</div>
{% else %}
<div class="member-since">Member since {{ user.date_joined|date:"Y" }}</div>
{% endif %}
{% if user.profile.get_blog_posts %}
<div class="urls">
Snippets Blog:
Snipt Blog:
<a href="{{ user.profile.get_user_profile_url }}">
{{ user.profile.get_user_profile_url }}
</a>


+ 1
- 1
templates/registration/activation_email.txt View File

@@ -1 +1 @@
Welcome to Siftie Snippets!
Welcome to Snipt!

+ 1
- 1
templates/registration/activation_email_subject.txt View File

@@ -1 +1 @@
Welcome to Siftie Snippets!
Welcome to Snipt!

+ 1
- 1
templates/registration/password_reset_email.html View File

@@ -1 +1 @@
Reset your Siftie Snippets password here: {{ protocol }}://{{ domain }}{% url 'auth_password_reset_confirm' uid token %}
Reset your Snipt password here: {{ protocol }}://{{ domain }}{% url 'auth_password_reset_confirm' uid token %}

+ 5
- 5
templates/rss.xml View File

@@ -2,10 +2,10 @@

<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<atom:link href="https://snippets.siftie.com{{ request.get_full_path }}" rel="self" type="application/rss+xml" />
<description>{% if public and not public_user %}Public snipts{% else %}Snippets by {{ user.username }}{% endif %}{% if tag %} tagged with "{{ tag }}"{% endif %}</description>
<title>/ {% if public and not public_user %}public{% else %}{{ user.username }}{% endif %}{% if tag %} / {{ tag }}{% endif %} - Siftie Snippets</title>
<link>https://snippets.siftie.com{{ request.path }}</link>
<atom:link href="https://snipt.net{{ request.get_full_path }}" rel="self" type="application/rss+xml" />
<description>{% if public and not public_user %}Public snipts{% else %}Snipts by {{ user.username }}{% endif %}{% if tag %} tagged with "{{ tag }}"{% endif %}</description>
<title>/ {% if public and not public_user %}public{% else %}{{ user.username }}{% endif %}{% if tag %} / {{ tag }}{% endif %} - Snipt</title>
<link>https://snipt.net{{ request.path }}</link>
{% for snipt in snipts %}
<item>
<title>{{ snipt.title }}</title>
@@ -17,7 +17,7 @@
{% endif %}
<tags>{% for tag in snipt.tags.all %}{{ tag }}{% if not forloop.last %}, {% endif %}{% endfor %}</tags>
<pubDate>{{ snipt.created|date:"r" }}</pubDate>
<guid isPermaLink="false">siftie-snippets-com-{{ snipt.id }}</guid>
<guid isPermaLink="false">snipt-net-{{ snipt.id }}</guid>
</item>
{% endfor %}
</channel>


Loading…
Cancel
Save