Branch: refs/heads/master Author: Enrico Tröger enrico.troeger@uvena.de Committer: Enrico Tröger enrico.troeger@uvena.de Date: Thu, 23 May 2013 20:29:38 UTC Commit: 8d3b1d413060d72fa2230313120ec8f2df49c171 https://github.com/geany/www.geany.org/commit/8d3b1d413060d72fa2230313120ec8...
Log Message: ----------- Drop userprefs and 'guess lexer' to simplify usage
Modified Paths: -------------- pastebin/forms.py pastebin/highlight.py pastebin/templates/pastebin/base.html pastebin/templates/pastebin/snippet_details.html pastebin/templates/pastebin/snippet_form.html pastebin/templates/pastebin/snippet_new.html pastebin/templates/pastebin/userprefs.html pastebin/urls.py pastebin/views.py
Modified: pastebin/forms.py 24 files changed, 2 insertions(+), 22 deletions(-) =================================================================== @@ -12,10 +12,9 @@ # You should have received a copy of the GNU Affero General Public License # along with this program. If not, see http://www.gnu.org/licenses/.
- from django import forms from django.utils.translation import ugettext_lazy as _ -from pastebin.highlight import LEXER_LIST_ALL, LEXER_LIST, LEXER_DEFAULT +from pastebin.highlight import LEXER_LIST, LEXER_DEFAULT from pastebin.models import Snippet, Spamword import datetime
@@ -54,13 +53,7 @@ class SnippetForm(forms.ModelForm): def __init__(self, request, *args, **kwargs): forms.ModelForm.__init__(self, *args, **kwargs) self.request = request - - try: - if self.request.session['userprefs'].get('display_all_lexer', False): - self.fields['lexer'].choices = LEXER_LIST_ALL - except KeyError: - pass - + # set author self.fields['author'].initial = self.request.session.get('author', '')
#---------------------------------------------------------------------- @@ -74,7 +67,6 @@ def clean_content(self):
#---------------------------------------------------------------------- def save(self, parent=None, *args, **kwargs): - # Set parent snippet if parent: self.instance.parent = parent @@ -104,15 +96,3 @@ class Meta: 'title', 'author', 'lexer',) - - -######################################################################## -class UserSettingsForm(forms.Form): - - default_name = forms.CharField(label=_(u'Default Name'), required=False) - display_all_lexer = forms.BooleanField( - label=_(u'Display all lexers'), - required=False, - widget=forms.CheckboxInput, - help_text=_(u'This also enables the super secret 'guess lexer' function.'), - )
Modified: pastebin/highlight.py 22 files changed, 5 insertions(+), 17 deletions(-) =================================================================== @@ -3,12 +3,12 @@ # it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. -# +# # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU Affero General Public License for more details. -# +# # You should have received a copy of the GNU Affero General Public License # along with this program. If not, see http://www.gnu.org/licenses/.
@@ -19,8 +19,7 @@ from pygments.lexers import ( PythonLexer, get_all_lexers, - get_lexer_by_name, - guess_lexer) + get_lexer_by_name)
LEXER_LIST_ALL = sorted([(i[1][0], i[0]) for i in get_all_lexers()]) @@ -65,22 +64,11 @@ def pygmentize(code_string, lexer_name=LEXER_DEFAULT): if lexer_name: lexer = get_lexer_by_name(lexer_name) else: - raise Exception + raise Exception(u'Unknown lexer') except: - try: - lexer = guess_lexer(code_string) - except: - lexer = PythonLexer() + lexer = PythonLexer()
try: return highlight(code_string, lexer, NakedHtmlFormatter()) except: return escape(code_string) - - -#---------------------------------------------------------------------- -def guess_code_lexer(code_string, default_lexer='unknown'): - try: - return guess_lexer(code_string).name - except ValueError: - return default_lexer
Modified: pastebin/templates/pastebin/base.html 4 files changed, 0 insertions(+), 4 deletions(-) =================================================================== @@ -13,7 +13,6 @@ {% url 'about' as url_about %} {% url 'api' as url_api %} {% url 'snippet_list' as url_snippet_list %} -{% url 'snippet_userprefs' as url_snippet_userprefs %}
<div class="row"> <div class="navbar"> @@ -31,9 +30,6 @@ <li class="{% if request.path = url_snippet_list %} active{% endif %}"> <a href="{{ url_snippet_list }}">Recent snippets</a> </li> - <li class="{% if request.path = url_snippet_userprefs %} active{% endif %}"> - <a href="{{ url_snippet_userprefs }}">Settings</a> - </li> </ul> </div> </div>
Modified: pastebin/templates/pastebin/snippet_details.html 18 files changed, 0 insertions(+), 18 deletions(-) =================================================================== @@ -82,24 +82,6 @@ $('div.snippet div.line#l'+j).toggleClass('marked'); }); }); - - {% if request.session.userprefs.display_all_lexer %} - /** - * Lexer Guessing - */ - $('#guess_lexer_btn').click(function(){ - $.getJSON('{% url 'snippet_guess_lexer' %}', - {'codestring': $('#id_content').val()}, - function(data){ - if(data.lexer == "unknown"){ - $('#guess_lexer_btn').css('color', 'red'); - }else{ - $('#id_lexer').val(data.lexer); - $('#guess_lexer_btn').css('color', 'inherit'); - } - }); - }); - {% endif %} }); </script> {% endblock %}
Modified: pastebin/templates/pastebin/snippet_form.html 3 files changed, 0 insertions(+), 3 deletions(-) =================================================================== @@ -28,9 +28,6 @@ {% endfor %} <div class="control-group"> <div class="controls"> - {% if request.session.userprefs.display_all_lexer %} - <input class="btn" type="button" value="Guess lexer" id="guess_lexer_btn"/> - {% endif %} <input type="submit" value="Paste it" class="btn"/> </div> </div>
Modified: pastebin/templates/pastebin/snippet_new.html 23 files changed, 0 insertions(+), 23 deletions(-) =================================================================== @@ -15,26 +15,3 @@
</div> {% endblock %} - - - -{% block footer_js %} -<script type="text/javascript"> -jQuery(document).ready(function(){ - {% if request.session.userprefs.display_all_lexer %} - $('#guess_lexer_btn').click(function(){ - $.getJSON('{% url 'snippet_guess_lexer' %}', - {'codestring': $('#id_content').val()}, - function(data){ - if(data.lexer == "unknown"){ - $('#guess_lexer_btn').css('color', 'red'); - }else{ - $('#id_lexer').val(data.lexer); - $('#guess_lexer_btn').css('color', 'inherit'); - } - }); - }); - {% endif %} -}); -</script> -{% endblock %}
Modified: pastebin/templates/pastebin/userprefs.html 42 files changed, 0 insertions(+), 42 deletions(-) =================================================================== @@ -1,42 +0,0 @@ -{% extends "pastebin/base.html" %} - - -{% block meta_title %} - User settings | {{ block.super }} -{% endblock %} - - -{% block main %} -<div class="well"> - <h2>User Settings</h2> - - {% if settings_saved %} - <p class="label label-success"> - Your preferences were successfully saved. - </p> - {% endif %} - - <form class="form-horizontal" method="post" action="{% url 'snippet_userprefs' %}"> - {% csrf_token %} - {% for field in settings_form %} - <div> - <div class="control-group"> - {{ field.label_tag }} - <div class="controls"> - {{ field }} - </div> - </div> - </div> - {% endfor %} - <div class="control-group"> - <div class="controls"> - <input type="submit" value="Save settings" class="btn"/> - </div> - </div> - </form> - - <p class="label label-info"> - Remember: Your data is stored in a cookie. - </p> -</div> -{% endblock %}
Modified: pastebin/urls.py 6 files changed, 2 insertions(+), 4 deletions(-) =================================================================== @@ -3,12 +3,12 @@ # it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. -# +# # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU Affero General Public License for more details. -# +# # You should have received a copy of the GNU Affero General Public License # along with this program. If not, see http://www.gnu.org/licenses/.
@@ -27,9 +27,7 @@ url(r'^api/$', 'pastebin.views.api_create'),
url(r'^$', 'pastebin.views.snippet_new', name='home'), - url(r'^guess/$', 'pastebin.views.guess_lexer', name='snippet_guess_lexer'), url(r'^latest/$', 'pastebin.views.snippet_list', name='snippet_list'), - url(r'^your-settings/$', 'pastebin.views.userprefs', name='snippet_userprefs'), url(r'^(?P<snippet_id>[a-zA-Z0-9]+)/$', 'pastebin.views.snippet_details', name='snippet_details'), url(r'^(?P<snippet_id>[a-zA-Z0-9]+)/delete/$', 'pastebin.views.snippet_delete', name='snippet_delete'), url(r'^(?P<snippet_id>[a-zA-Z0-9]+)/raw/$', 'pastebin.views.snippet_details', {'template_name': 'pastebin/snippet_details_raw.html', 'is_raw': True}, name='snippet_details_raw'),
Modified: pastebin/views.py 74 files changed, 1 insertions(+), 73 deletions(-) =================================================================== @@ -21,16 +21,12 @@ HttpResponse, HttpResponseForbidden from django.shortcuts import render_to_response, get_object_or_404 from django.template.context import RequestContext -from django.utils import simplejson -from django.utils.translation import ugettext_lazy as _ from django.views.decorators.csrf import csrf_exempt from django.views.decorators.http import require_POST from honeypot.decorators import check_honeypot from pastebin.api.create import CreateSnippetApiController, SnippetValidationError -from pastebin.forms import SnippetForm, UserSettingsForm -from pastebin.highlight import pygmentize, guess_code_lexer +from pastebin.forms import SnippetForm from pastebin.models import Snippet -import difflib
#---------------------------------------------------------------------- @@ -166,74 +162,6 @@ def snippet_list(request, template_name='pastebin/snippet_list.html'):
#---------------------------------------------------------------------- -def userprefs(request, template_name='pastebin/userprefs.html'): - - if request.method == 'POST': - settings_form = UserSettingsForm(request.POST, initial=request.session.get('userprefs', None)) - if settings_form.is_valid(): - request.session['userprefs'] = settings_form.cleaned_data - settings_saved = True - else: - settings_form = UserSettingsForm(initial=request.session.get('userprefs', None)) - settings_saved = False - - template_context = { - 'settings_form': settings_form, - 'settings_saved': settings_saved, - } - - return render_to_response( - template_name, - template_context, - RequestContext(request)) - - -#---------------------------------------------------------------------- -def snippet_diff(request, template_name='pastebin/snippet_diff.html'): - - if request.GET.get('a') and request.GET.get('a').isdigit() \ - and request.GET.get('b') and request.GET.get('b').isdigit(): - try: - fileA = Snippet.objects.get(pk=int(request.GET.get('a'))) - fileB = Snippet.objects.get(pk=int(request.GET.get('b'))) - except ObjectDoesNotExist: - return HttpResponseBadRequest(u'Selected file(s) does not exist.') - else: - return HttpResponseBadRequest(u'You must select two snippets.') - - if fileA.content != fileB.content: - d = difflib.unified_diff( - fileA.content.splitlines(), - fileB.content.splitlines(), - 'Original', - 'Current', - lineterm='' - ) - difftext = '\n'.join(d) - difftext = pygmentize(difftext, 'diff') - else: - difftext = _(u'No changes were made between this two files.') - - template_context = { - 'difftext': difftext, - 'fileA': fileA, - 'fileB': fileB, - } - - return render_to_response( - template_name, - template_context, - RequestContext(request)) - - -#---------------------------------------------------------------------- -def guess_lexer(request): - code_string = request.GET.get('codestring', False) - response = simplejson.dumps({'lexer': guess_code_lexer(code_string)}) - return HttpResponse(response) - - -#---------------------------------------------------------------------- def _get_site(request): if hasattr(request, 'site'): return request.site
-------------- This E-Mail was brought to you by github_commit_mail.py (Source: https://github.com/geany/infrastructure).