Commit graph

593 commits

Author SHA1 Message Date
Timo Tijhof
fee4bd1354 Update and enhance javascript code
* Use shorthand notation for `$(document).ready`. This isn't
  just shorter but also slightly faster as it uses a cached
  instance or $(document) instead of re-instantiating jQuery.
* Use .prop('checked') instead of .attr('checked').
  Form fields reflect live state in properties, attributes are
  only used when parsing the HTML to set the initial values of
  the DOM properties. In the past (upto jQuery 1.6) jQuery
  would cover you by secretly calling .prop() for common mistakes
  but this has been deprecated and removed.
* Use .toggleClass instead of `if hasClass/addClass/removeClass`.
* Cancel previous AJAX request before starting another one.
  This fixes the bug where using the "Guess lexer" or "Diff" button
  twice in a row can sometimes result in the second push being
  ignored. Since the requests are asynchronous, one can arrive
  before or after the other and the callback called in a different
  order. It also saves a bit on the network I guess.
* DiffAjax: Moved location.hash assignment to before the request.
  It is asynchronous anyway, so the assignment happened before
  the request already. But now it is more obvious that this is
  the case.
* Simplified various selectors to just an ID instead of element
  with ID. IDs are unique. If you have more than one of them
  with a different element, there's something wrong. I suppose
  in a way it also saves potential maintenance in the future if
  a minor detail changes (e.g. from <div> to <p>).
* Removed weird variable conflict that was incorrectly
  copy-pasted in 1f863b345f.
  `var a;` when `a` already exists does nothing. It doesn't clear
  or reset it. It just weird syntax that should throw an error
  but is instead silently ignored. And `curLine` is already set
  and continues to be there.
2013-04-23 06:57:57 +02:00
Timo Tijhof
b6ac14cd1a Readme: Promote dpaste.de instead of www.dpaste.de
This doesn't fix #16, but I figured I could at least make it
consistent within the code. A grep count tells me dpaste.de
is used everywhere except here.

(www.)dpaste.org is not mentioned anywhere.
2013-04-23 06:33:19 +02:00
Timo Tijhof
b2265b1af8 Clean up: Drop redundant attributes, minor JS clean up, gitignore
* Dropped redundant `type` attribute from script elements
  (some had them removed already).
* Dropped redundant `media` attribute from link elements.
* <div> is not a valid self-closing tag.
* Dropped redundant / in self-closing tags in <hr/>, <br/>, <input/>.
  Just like was done for <img> and <link> already).
* Aliasing $ to jQuery (local reference is cheaper and using
  jQuery as global seems more stable, bootstrap.js does this too).
* Unminified it a bit (nothing extreme, just more consistent
  other code here already).
* Consistently used single quotes in the js code
  (most code used singled quotes already).
* Quoting attribute selectors $('input[name="foo"]').
  Unquoted selectors have been deprecated.
* Ignore .pyc files (so they don't show up in `git status`, and
  aren't accidentally committed with `git add`).
2013-04-23 06:33:06 +02:00
Timo Tijhof
32dc8e5928 Use protocol-relative url for jQuery. Fixes #15.
HTTP urls are blocked in modern browsers when accessing the page
over HTTPS (https://dpaste.de/), so jQuery wasn't being loaded
and the rest of the javascript failed on various ReferenceError
and TypeError exceptions around "$ is undefined".
2013-04-23 06:03:21 +02:00
Martin Mahner
3c30cdb599 Update README.md 2013-03-30 13:46:13 +01:00
Martin Mahner
820a5343d5 Fixed travis settings 2013-03-29 19:27:40 +01:00
Martin Mahner
4aaa2973be Streamlined settings. Removed test settings and moved defaults to settings.py 2013-03-29 19:25:27 +01:00
Martin Mahner
241180a350 Updated to Django 1.5.1 2013-03-29 19:09:59 +01:00
Martin Mahner
4978538a97 Removed Django-Piston, added a very simple view to handle API calls. Fully backwards compatible. Fixes all tests. 2013-03-29 19:09:22 +01:00
Martin Mahner
c595d99e6d Added a test hint 2013-03-28 22:56:41 +01:00
Martin Mahner
cf4b59b22d Upgraded Piston to support correct contenttype syntax. 2013-03-28 22:46:18 +01:00
Martin Mahner
ad7f7ccf49 Restructured the about page 2013-03-28 21:52:48 +01:00
Martin Mahner
16b4f0fc0a Better visual error display. Fixes issue #13 2013-03-28 21:45:32 +01:00
Martin Mahner
2996bb9a3b Increased contrast for text and diff text 2013-03-28 21:38:25 +01:00
Martin Mahner
04e54be2aa Added a simple README [ci skip] 2013-03-22 22:54:41 +01:00
Martin Mahner
d3b2ff8f37 Just do an editable install for the package 2013-03-22 22:48:25 +01:00
Martin Mahner
1f173efd7e Custom test settings 2013-03-22 22:45:16 +01:00
Martin Mahner
bcdea97073 Snippet tests 2013-03-22 22:38:50 +01:00
Martin Mahner
ce29409340 Strip content before putting it in the db. 2013-03-22 22:38:39 +01:00
Martin Mahner
a4a3b38a5b Added travis conf file 2013-03-22 21:13:01 +01:00
Martin Mahner
6302145007 Unittests for the API 2013-03-22 21:03:10 +01:00
Martin Mahner
4a2ddc4e99 Merge branch 'master' into develop 2013-03-22 19:49:14 +01:00
Martin Mahner
198e5252fb Set a max_length for all snippets. Nobody needs more than 256k of space. 2013-03-22 19:41:39 +01:00
Martin Mahner
e9770293bb Autofocus the textfield for a new snippet. 2013-03-22 19:41:39 +01:00
Martin Mahner
9321195ff4 Now that there is no admin anymore I need a quick way to check the total snippet count, to see if something goes wrong or I'm DOSed. 2013-03-22 19:41:39 +01:00
Martin Mahner
4e4463faf7 Removed auth, sites and content types. Without the admin we no longer need em. 2013-03-22 19:41:39 +01:00
Martin Mahner
22bce7a008 Removed Django admin. It was never useful anyway. 2013-03-22 19:41:39 +01:00
Martin Mahner
ecf7653bf9 Added a smtp comment 2013-03-22 19:41:39 +01:00
Martin Mahner
9b7a252bc9 Updated mysqldb 2013-03-22 19:41:39 +01:00
Martin Mahner
c922a30dca Removed Raven/Sentry 2013-03-22 19:41:39 +01:00
Martin Mahner
2ec3614693 Set a max_length for all snippets. Nobody needs more than 256k of space. 2013-03-22 19:41:00 +01:00
Martin Mahner
a1e44486d2 Autofocus the textfield for a new snippet. 2013-03-22 19:40:31 +01:00
Martin Mahner
368c8101ce Now that there is no admin anymore I need a quick way to check the total snippet count, to see if something goes wrong or I'm DOSed. 2013-03-22 19:33:11 +01:00
Martin Mahner
cad4589b0a Removed auth, sites and content types. Without the admin we no longer need em. 2013-03-21 19:41:21 +01:00
Martin Mahner
1e0b32b7d1 Removed Django admin. It was never useful anyway. 2013-03-21 19:40:48 +01:00
Martin Mahner
ed29279b0a Added dpaste.org to ALLOWED_HOSTS 2013-03-21 18:26:35 +00:00
Martin Mahner
8089e829fc Added a smtp comment 2013-03-21 19:25:28 +01:00
Martin Mahner
9f178c00e7 Updated mysqldb 2013-03-21 19:16:20 +01:00
Martin Mahner
d9dbfda1d0 Removed Raven/Sentry 2013-03-21 19:14:27 +01:00
Martin Mahner
da66c18479 No left and right padding, looks better on mobile 2013-03-20 13:45:52 +01:00
Martin Mahner
1f863b345f Ability to link and open to diffs directly. Fixes issue #2. 2013-03-20 13:41:31 +01:00
Martin Mahner
e14192d2d1 Save the recently used lexer to use it next time again. Fixes issue #3 2013-03-20 13:08:41 +01:00
Martin Mahner
d42a2d3c79 Don't display the compare button if the snippet has no replies. Fixes issue #6. 2013-03-20 12:58:07 +01:00
Martin Mahner
ca1e12596c Fixed curl example 2013-03-20 12:49:44 +01:00
Martin Mahner
a202d88324 Highlight the API example. Fixes issue #7 2013-03-20 12:09:11 +01:00
Martin Mahner
638a62d775 Line numbers are 1 based. Fixes issue #5. 2013-03-20 12:03:39 +01:00
Martin Mahner
faf840a113 Decoupled functions 2013-03-19 21:13:13 +01:00
Martin Mahner
f3b5bad47c Merge branch 'master' of github.com:bartTC/dpaste 2013-03-19 19:37:18 +00:00
Martin Mahner
cdc4bc49bd enabled all lexers 2013-03-19 20:37:01 +01:00
Martin Mahner
8142f3476b Merge branch 'master' of github.com:bartTC/dpaste 2013-03-19 19:30:05 +00:00