Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@

[![Gitter](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/haystack/murmur?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge) [![Django version](https://img.shields.io/badge/Django-1.7-blue)](https://docs.djangoproject.com/en/3.0/releases/1.7/) [![python version](https://img.shields.io/badge/python-2.7-yellowgreen.svg)](https://www.python.org/download/releases/2.7/)
[![Gitter](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/haystack/murmur?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge) [![Django version](https://img.shields.io/badge/Django-1.8-blue)](https://docs.djangoproject.com/en/3.0/releases/1.8/) [![python version](https://img.shields.io/badge/python-2.7-yellowgreen.svg)](https://www.python.org/download/releases/2.7/)

Murmur
=
Expand Down
10 changes: 5 additions & 5 deletions browser/views.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
from django.conf import global_settings
from django.contrib.auth.decorators import login_required
from django.contrib.auth.forms import AuthenticationForm
from django.core.context_processors import csrf
from django.template.context_processors import csrf
from django.core.files.base import ContentFile
from django.core.files.storage import default_storage
from django.db.models.aggregates import Count
Expand Down Expand Up @@ -85,10 +85,10 @@ def error(request):
def index(request):
homepage = "%s/home.html" % WEBSITE
if not request.user.is_authenticated():
return render_to_response(homepage,
{'form': AuthenticationForm(),
'reg_form': RegistrationForm()},
context_instance=RequestContext(request))
return render(request,
homepage,
{'form': AuthenticationForm(),
'reg_form': RegistrationForm()})
else:
if WEBSITE == 'murmur':
return HttpResponseRedirect('/posts')
Expand Down
3 changes: 3 additions & 0 deletions config/settings.py
Original file line number Diff line number Diff line change
Expand Up @@ -19,4 +19,7 @@
# hook django
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "http_handler.settings")

import django
django.setup()

# the config/boot.py will turn these values into variables set in settings
1 change: 1 addition & 0 deletions docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@ services:
ports:
- "8825"
environment:
- RELAY_HOST=${RELAY_HOST}
- GMAIL_USER=${GMAIL_USER}
- GMAIL_PASSWORD=${GMAIL_PASSWORD}
- PORT=8825
Expand Down
7 changes: 3 additions & 4 deletions gmail_setup/urls.py
Original file line number Diff line number Diff line change
@@ -1,13 +1,12 @@
from django.conf.urls import patterns, include, url
from django.conf.urls import url
from . import views

urlpatterns = patterns(
'',
urlpatterns = [
url(r'^$', views.index, name='index'),
url(r'authorize', views.auth, name='auth'),
url(r'callback', views.auth_return, name='return'),
url(r'import', views.import_start, name='import'),
url(r'initial_filters', views.initial_filters, name='initial_filters'),
url(r'done', views.index, name='done'),
url(r'forget', views.deauth, name='forget'),
)
]
54 changes: 27 additions & 27 deletions http_handler/settings.py
Original file line number Diff line number Diff line change
Expand Up @@ -77,16 +77,12 @@ def _get_website():
BASE_URL = 'localhost:8000'
MYSQL = MYSQL_LOCAL

TEMPLATE_DEBUG = DEBUG

LOGIN_REDIRECT_URL = "/"

EMAIL_HOST = 'localhost'

EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
EMAIL_HOST_USER = ''
EMAIL_HOST_PASSWORD = ''
EMAIL_USE_TLS = False
DEFAULT_EMAIL = 'no-reply@' + BASE_URL
EMAIL_USE_TLS = True
DEFAULT_EMAIL = 'no-reply@' + "localhost" if "localhost" in BASE_URL else BASE_URL
DEFAULT_FROM_EMAIL = DEFAULT_EMAIL


Expand Down Expand Up @@ -167,23 +163,34 @@ def _get_website():
# Make this unique, and don't share it with anybody.
SECRET_KEY = 'fr&qg*+c!z6q_^v6o1kzd6lxj-3m3q-=oku8f52*c+@)+1hnx+'

# List of callables that know how to import templates from various sources.
TEMPLATE_LOADERS = (
'django_mobile.loader.Loader',

'django.template.loaders.filesystem.Loader',
'django.template.loaders.app_directories.Loader',
# 'django.template.loaders.eggs.Loader',
)

TEMPLATE_CONTEXT_PROCESSORS = (
'django_mobile.context_processors.flavour',

)
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [
PROJECT_DIR + "browser/templates",
# Put strings here, like "/home/html/django_templates" or "C:/www/django/templates".
# Always use forward slashes, even on Windows.
# Don't forget to use absolute paths, not relative paths.
],
'OPTIONS': {
'context_processors': [
'django_mobile.context_processors.flavour',
],
# List of callables that know how to import templates from various sources.
'loaders': [
'django.template.loaders.filesystem.Loader',
'django.template.loaders.app_directories.Loader',
# 'django_mobile.loader.Loader',
# 'django.template.loaders.eggs.Loader',
]
},
},
]

MIDDLEWARE_CLASSES = (
'django.middleware.common.CommonMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.contrib.auth.middleware.SessionAuthenticationMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
Expand All @@ -200,13 +207,6 @@ def _get_website():
# Python dotted path to the WSGI application used by Django's runserver.
WSGI_APPLICATION = 'http_handler.wsgi.application'

TEMPLATE_DIRS = (
PROJECT_DIR + "browser/templates",
# Put strings here, like "/home/html/django_templates" or "C:/www/django/templates".
# Always use forward slashes, even on Windows.
# Don't forget to use absolute paths, not relative paths.
)

# one week activation window after a user signs up for an account
ACCOUNT_ACTIVATION_DAYS = 7

Expand Down
175 changes: 87 additions & 88 deletions http_handler/urls.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
from django.conf.urls import patterns, include, url
from django.conf.urls import include, url
from django.contrib.auth import views as auth_views
from django.views.generic.base import TemplateView
from browser.views import *
Expand All @@ -11,9 +11,8 @@

website_context = {'website' : WEBSITE}

# shared URL patterns
urlpatterns = patterns('',

#shared URL patterns
urlpatterns = [
url(r'^$', 'browser.views.index'),
url(r'^lamson_status', 'browser.views.lamson_status'),
url(r'^settings', 'browser.views.settings'),
Expand Down Expand Up @@ -99,108 +98,108 @@

url(r'^activate_group', 'browser.views.activate_group'),
url(r'^deactivate_group', 'browser.views.deactivate_group'),
)
]

# murmur-only patterns
if WEBSITE == 'murmur':
new_patterns = [
url(r'^about', 'browser.views.about'),
url(r'^posts$', 'browser.views.post_list'),
url(r'^unsubscribe_get', 'browser.views.unsubscribe_get'),
url(r'^subscribe_get', 'browser.views.subscribe_get'),

url(r'^post_list', 'browser.views.post_list'),
url(r'^pub_group_list', 'browser.views.pub_group_list'),
url(r'^group_list', 'browser.views.group_list'),
url(r'^groups/(?P<group_name>[\w-]+)/add_list', 'browser.views.add_list_view'),
url(r'^groups/(?P<group_name>[\w-]+)/create_post', 'browser.views.my_group_create_post_view'),
url(r'^my_groups', 'browser.views.my_groups'),
url(r'^list_my_groups', 'browser.views.list_my_groups'),

url(r'^load_post', 'browser.views.load_post'),
url(r'^load_thread', 'browser.views.load_thread'),

url(r'^list_posts', 'browser.views.list_posts'),
url(r'^refresh_posts', 'browser.views.refresh_posts'),
url(r'^insert_post', 'browser.views.insert_post'),
url(r'^insert_reply', 'browser.views.insert_reply'),
url(r'^upvote_get', 'browser.views.upvote_get'),
url(r'^unupvote_get', 'browser.views.unupvote_get'),

url(r'^upvote', 'browser.views.upvote'),
url(r'^unupvote', 'browser.views.unupvote'),
url(r'^follow_tag_get', 'browser.views.follow_tag_get'),
url(r'^unfollow_tag_get', 'browser.views.unfollow_tag_get'),
url(r'^mute_tag_get', 'browser.views.mute_tag_get'),
url(r'^unmute_tag_get', 'browser.views.unmute_tag_get'),
url(r'^follow_tag', 'browser.views.follow_tag'),
url(r'^unfollow_tag', 'browser.views.unfollow_tag'),
url(r'^mute_tag', 'browser.views.mute_tag'),
url(r'^unmute_tag', 'browser.views.unmute_tag'),
url(r'^follow_thread', 'browser.views.follow_thread'),
url(r'^unfollow_thread', 'browser.views.unfollow_thread'),
url(r'^mute_thread', 'browser.views.mute_thread'),
url(r'^unmute_thread', 'browser.views.unmute_thread'),
url(r'^follow', 'browser.views.follow_thread_get'),
url(r'^unfollow', 'browser.views.unfollow_thread_get'),

url(r'^mute', 'browser.views.mute_thread_get'),
url(r'^unmute', 'browser.views.unmute_thread_get'),

url(r'^add_list', 'browser.views.add_list'),
url(r'^delete_list', 'browser.views.delete_list'),
url(r'^adjust_list_can_post', 'browser.views.adjust_list_can_post'),
url(r'^adjust_list_can_receive', 'browser.views.adjust_list_can_receive'),

url(r'^login_email', 'browser.views.login_imap_view'),
url(r'^login_imap', 'browser.views.login_imap'),
url(r'^groups/(?P<group_name>[\w-]+)/add_donotsend', 'browser.views.add_dissimulate_view'),
url(r'^edit_donotsend', 'browser.views.edit_donotsend'),
url(r'^donotsend_list', 'browser.views.donotsend_list'),
]
url(r'^about', 'browser.views.about'),
url(r'^posts$', 'browser.views.post_list'),

url(r'^unsubscribe_get', 'browser.views.unsubscribe_get'),
url(r'^subscribe_get', 'browser.views.subscribe_get'),

url(r'^post_list', 'browser.views.post_list'),
url(r'^pub_group_list', 'browser.views.pub_group_list'),
url(r'^group_list', 'browser.views.group_list'),
url(r'^groups/(?P<group_name>[\w-]+)/add_list', 'browser.views.add_list_view'),
url(r'^groups/(?P<group_name>[\w-]+)/create_post', 'browser.views.my_group_create_post_view'),
url(r'^my_groups', 'browser.views.my_groups'),
url(r'^list_my_groups', 'browser.views.list_my_groups'),

url(r'^load_post', 'browser.views.load_post'),
url(r'^load_thread', 'browser.views.load_thread'),

url(r'^list_posts', 'browser.views.list_posts'),
url(r'^refresh_posts', 'browser.views.refresh_posts'),

url(r'^insert_post', 'browser.views.insert_post'),
url(r'^insert_reply', 'browser.views.insert_reply'),

url(r'^upvote_get', 'browser.views.upvote_get'),
url(r'^unupvote_get', 'browser.views.unupvote_get'),

url(r'^upvote', 'browser.views.upvote'),
url(r'^unupvote', 'browser.views.unupvote'),

url(r'^follow_tag_get', 'browser.views.follow_tag_get'),
url(r'^unfollow_tag_get', 'browser.views.unfollow_tag_get'),

url(r'^mute_tag_get', 'browser.views.mute_tag_get'),
url(r'^unmute_tag_get', 'browser.views.unmute_tag_get'),

url(r'^follow_tag', 'browser.views.follow_tag'),
url(r'^unfollow_tag', 'browser.views.unfollow_tag'),

url(r'^mute_tag', 'browser.views.mute_tag'),
url(r'^unmute_tag', 'browser.views.unmute_tag'),

url(r'^follow_thread', 'browser.views.follow_thread'),
url(r'^unfollow_thread', 'browser.views.unfollow_thread'),

url(r'^mute_thread', 'browser.views.mute_thread'),
url(r'^unmute_thread', 'browser.views.unmute_thread'),

url(r'^follow', 'browser.views.follow_thread_get'),
url(r'^unfollow', 'browser.views.unfollow_thread_get'),

url(r'^mute', 'browser.views.mute_thread_get'),
url(r'^unmute', 'browser.views.unmute_thread_get'),

url(r'^add_list', 'browser.views.add_list'),
url(r'^delete_list', 'browser.views.delete_list'),

url(r'^adjust_list_can_post', 'browser.views.adjust_list_can_post'),
url(r'^adjust_list_can_receive', 'browser.views.adjust_list_can_receive'),

url(r'^login_email', 'browser.views.login_imap_view'),
url(r'^login_imap', 'browser.views.login_imap'),
url(r'^groups/(?P<group_name>[\w-]+)/add_donotsend', 'browser.views.add_dissimulate_view'),
url(r'^edit_donotsend', 'browser.views.edit_donotsend'),
url(r'^donotsend_list', 'browser.views.donotsend_list'),
]

urlpatterns.extend(new_patterns)

# squadbox-only patterns
elif WEBSITE == 'squadbox':

new_patterns = [
url(r'^mod_queue/(?P<group_name>[\w-]+)', 'browser.views.mod_queue'),
url(r'^mod_queue/(?P<group_name>[\w-]+)', 'browser.views.mod_queue'),

# url(r'^approve_get', 'browser.views.approve_get'),
# url(r'^reject_get', 'browser.views.reject_get'),
# url(r'^approve_get', 'browser.views.approve_get'),
# url(r'^reject_get', 'browser.views.reject_get'),

url(r'^approve_post', 'browser.views.approve_post'),
url(r'^reject_post', 'browser.views.reject_post'),
url(r'^approve_post', 'browser.views.approve_post'),
url(r'^reject_post', 'browser.views.reject_post'),

url(r'^delete_posts', 'browser.views.delete_posts'),
url(r'^delete_post', 'browser.views.delete_post'),
url(r'^delete_posts', 'browser.views.delete_posts'),
url(r'^delete_post', 'browser.views.delete_post'),

url(r'^whitelist_get', 'browser.views.whitelist_get'),
url(r'^whitelist', 'browser.views.whitelist'),
url(r'^groups/(?P<group_name>[\w-]+)/add_whitelist', 'browser.views.add_whitelist_view'),
url(r'^whitelist_get', 'browser.views.whitelist_get'),
url(r'^whitelist', 'browser.views.whitelist'),
url(r'^groups/(?P<group_name>[\w-]+)/add_whitelist', 'browser.views.add_whitelist_view'),

url(r'^unblacklist_unwhitelist', 'browser.views.unblacklist_unwhitelist'),
url(r'^unblacklist_unwhitelist', 'browser.views.unblacklist_unwhitelist'),

url(r'^blacklist_get', 'browser.views.blacklist_get'),
url(r'^blacklist', 'browser.views.blacklist'),
url(r'^groups/(?P<group_name>[\w-]+)/add_blacklist', 'browser.views.add_blacklist_view'),
url(r'^blacklist_get', 'browser.views.blacklist_get'),
url(r'^blacklist', 'browser.views.blacklist'),
url(r'^groups/(?P<group_name>[\w-]+)/add_blacklist', 'browser.views.add_blacklist_view'),

url(r'^groups/(?P<group_name>[\w-]+)/rejected', 'browser.views.rejected'),
url(r'^rejected_thread$', 'browser.views.rejected_thread'),
url(r'^groups/(?P<group_name>[\w-]+)/rejected', 'browser.views.rejected'),
url(r'^rejected_thread$', 'browser.views.rejected_thread'),

url(r'^moderate_user_for_thread_get', 'browser.views.moderate_user_for_thread_get'),
]
url(r'^moderate_user_for_thread_get', 'browser.views.moderate_user_for_thread_get'),
]

urlpatterns.extend(new_patterns)
Loading