read(1) returns b'' on EOF, which wasn't checked for in a couple cases,
which could cause empty/truncated input to enter one of the `while True`
loops without hope of exit. programming is hard.
This changes the tracker announce URL message to be one of those
bootstrap alert bubbles, and adds an additional warning which tells
people to read the rules and not upload off-topic crap.
* Make rfc822 filters compatible with Windows systems.
.strftime() is relative to the system it's being run on.
UNIX has '%s' for seconds since the EPOCH, Windows doesn't (ValueError).
Solution: use .timestamp() to achieve the same result on both platforms.
This also allows us to drop the float() around it, since it returns a float.
* Start testing filters
* Add placeholders for more tests
* Make 'tests' folder a Python package
Now you can run tests with just `pytest tests`
* Update readme and travis config
* Test timesince()
* Update and organize .gitignore
Deleted: (nothing)
Added: Coverage files, .idea\
* Test filter_truthy, category_name
* Tests for backend.py
* Tests for bencode.py
* Move (empty) test_models.py to tests package
* Tests for utils.py
* Fixes for flattenDict
* Change name to `flatten_dict`
* `newkey` was assigned but never used
* Add a helper class for testing
* Show coverage on Travis
(only Travis for now...)
* Remove IDE
* Use correct assert functions
* Update README.md
* Admin log added
* Add admin log to top bar
* Fixed some admin log bugs
* Remove comment_id column because comments die when they are killed
* Fix tabs in admin log template
* Fixed sort of admin logs to be created_time desc
* Fix navbar wrapping to a new line
when 992px <= width <= 1200px
* Put reports and admin log in "Admin" dropdown
Applied ./lint.sh fixes
Fixed long lines
* Updated log to be text instead of id based to account for future deletions
* Small fix in log message formatting
Without a shebang, the shell tries to interpret the file as a shell
script if you issue the ./run.py command; setting chmod +x on the
file without a proper shebang is useless.
The responsive table actually does *worse* in narrow layouts because
the action column fucks off out of view and needs to be scrolled to
if the report reason is long. With a normal table you may not get
consistent row heights, but at least you don't have to horizontally
scroll to perform an action.
Also fixed a goof where I used a style attribute instead of making
the max-width for the action column a class.
Condense the table, vertically align the text inside rows, use a
bootstrap styled select, group it together with the review button
and shrink it down a little.
Apparently some people don't understand what the report button
is for. Adding this small warning can be considered a success even
if it just leads to one less stupid report.
* Fix markdown renderer
Use a simple for loop instead of `for (var target of markdownTargets)`, because it's unsupported in IE.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/for...of#Browser_compatibility
* view.html : HTML Fixes
- Remove unmatched `</a>`
- Add missing `</div>`
- Use single quotes in {{ }}
- Closing tags comments
* layout.html
- Use single quotes in {{ }}
- Closing tags comments
* help.html: Convert all `<p>` to `<div>`
HTML spec doesn't allow lists inside `<p>` elements.
* Missing semicolon in `<script>`