Code Monkey home page Code Monkey logo

djang0byte's Introduction

Djang0byte

Lightweight social networks engine written in python+django, that aims to bear great workloads. Features:

  • Tree comments with rating;
  • Blogs that contain posts, have their own rating, which in turn affects owner's rating;
  • Posts (articles) with rating and tags;
  • Notify system with last action feed;
  • Private messages;
  • Full text search;
  • Code highlighting.

Install

For install copy settings/dist.py to settings/local.py, set db settings and run deploy.py.

Using VirtualEnv

To use virtualenv with Djang0byte you can do the following:

  • Create a virtual environment, e.g.:

    $ virtualenv /var/tmp/djang0byte-env
  • Configure database in settings/local.py as stated above, e.g.:

    DATABASE_ENGINE = 'sqlite3'
    DATABASE_NAME = '/var/tmp/djang0byte.sqlite3'
  • Make sure that xapian module is available in the virtual environment (it is not available on PyPI), e.g.:

    $ ln -s /usr/lib/python2.7/dist-packages/xapian/ /var/tmp/djang0byte-env/lib/python2.7/site-packages/
  • Switch to the virtual environment:

    $ . /var/tmp/djang0byte-env/bin/activate
  • Deploy all required components:

    $ python deploy.py

Here it is!

RPC API

Interface -- /json/

Objects

Post
  • author -- User
  • title -- unicode
  • date -- datetime
  • blog -- Blog
  • rate -- int
  • rate_count -- int
Draft
  • author -- User
  • title -- unicode
  • blog -- Blog
Blog
  • name -- unicode
  • description -- unicode
  • rate -- int
  • rate_count -- int
Comment
  • post -- Post
  • text -- unicode
  • rate -- int
  • rate_count -- int
  • created -- datetime

Methods

  • main.rate_post(id=int, value=bool) -> {error=str} -- Rate post
  • main.rate_comment(id=int, value=bool) -> {error=str} -- Rate comment
  • main.rate_blog(id=int, value=bool) -> {error=str} -- Rate blog
  • main.preview_comment(text=unicode) -> {text=unicode} -- Get comment preview
  • main.change_favourite(post_id=int) -> Post -- change favourite
  • main.change_spy(post_id=int) -> Post -- change spy
  • main.get_last_comments(count=int, panel=bool) -> [Comment] -- Get last comments
  • main.get_last_posts(count=int, panel=bool) -> [Post] -- Get last posts
  • main.get_users(count=int, panel=bool) -> [User] -- Get users
  • main.get_blogs(count=int, panel=bool) -> [Blog] -- Get blogs
  • main.get_favourites(count=int, panel=bool) -> [Post] -- Get favourites
  • main.get_spies(count=int, panel=bool) -> [Post] -- Get spied posts
  • main.get_drafts(count=int, panel=bool) -> [Draft] -- Get drafts
  • main.join_blog(blog_id=int) -> {status=bool} -- Join or withdraw blog
  • main.post_options(post_id=int, disable_rate=bool, disable_reply=bool, pinch=bool) -> Post -- Change post options

djang0byte's People

Contributors

dtantsur avatar fr0mer avatar nvbn avatar vfedyk avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

djang0byte's Issues

[FR] Возможность игнорировать пользователя

Можно сделать возможность игнорировать пользователя?

В профиле пользователя добавить кнопку "игнорировать"
При генерации страницы, если комментарий/пост пользователя игнорируется, заменять его чем-то вроде "Вы игнорируете данного пользователя"

Модераторы не могут игнорировать пользователей.

Проблемы при разворачивании сего творения

При клонировании с github не оказалось файлика deps.
Далее потребовалось ставить ещё ряд пакетов: jsonrpc, lxml, simplejson, django-mptt
И это ещё только запуск deploy.py

Помимо этого main.models пытается импортировать из неких djang0parser и baseutils, которых и в помине нет.

Более того, import mptt срабатывает без ошибок, но при работе deploy.py вылезает ImportError: cannot import name MPTTModel

Такие дела.

Страница "Что-то пошло не так, назад?"

Добавить проверку на наличие истории переходов.
Сейчас считается, что человек открыл эту страницу в той же вкладке:
назад

Получается если я перехожу на статью из гуглоридера, то данная страница для меня абсолюто бесполезна, так как через нее даже не попасть на сам сайт.

Предлагаю немого изменить
<a href="javascript:history.back(1)?history.back(1):location.href='/'>назад
или так:
назад
не знаю как лучше

Не приходят уведомления на e-mail

В профиле указан верный e-mail, проставлены все галочки касаемо уведомлений, но ни одного уведомления мне никогда не приходило.
Кстати, при регистрации мне тоже не пришло письмо для активации - активировал аккаунт через общение по e-mail с одним из разработчиков.

Ник на сайте: uscr

Не работает регистрация в Google Chrome

Не смог зарегистрироваться на сайте из Google Chrome 26.0.1410.43. Кликаем на "зарегистрироваться" и ничего не происходит. Пришлось грузиться в Windows... печалька. Может я конечно один такой(.

Некорректно отображаются блоки кода под спойлером.

Запостил конфиг как код, который спрятал под спойлер. Изначально в конфиге использовалась табуляцияю На предпросмотре я увидел теги "

", которые предваряли каждую строку - мне это не понравилось и я решил заменить табы пробелами. Эта замена ничего не изменила. Тогда я удалил даже пробелы - ничего не изменилось.

Пост тут: http://welinux.ru/post/6730/
Смотреть спойлеры.

[fr] результаты поиска

Добавить к результатам поиска: рейтинг, количество коментов, блог из которого пост

[косметика] лишний пробел в списке голосов

Если у поста или комментария кликнуть на рейтинг, открывается список проголосовавших, между аватаркой и именем пользователя есть пробел, который подчёркивается, т.к. находится между тегом img и именем пользователя

div += '<a href="/user/' + raters[i].username + '/"><img class="mini_av" src="' + raters[i].avatar +'" /> '_←лишний пробел тут_ +
raters[i].username + ' поставил <span class="';

Не видно кармы, количества новых комментариев.

Не отображаются цифры рейтинга в верхнем правом углу, возле ника. Не отображается рейтинг пользователей. Не отображается рейтинг в профиле пользователей.

Crome 19.0.1084.46 Ubuntu 12.04

В огнелисе всё нормально.

В исходном коде страницы виден такой "косяк": http://dn90.ru/share/nokarma_ans.png
"Косяк" виден и в огнелисе и в хроме, но в хроме это приводит к НЕотображению цифер.

[fr] Удобства для анонимов

Предлагаю на основе куков для незарегеных пользователей сделать удобные плюшки:

  • Выделение цветом новых комментариев;
  • панелька справа для проверки новых комментариев, как у зарегестрированных пользователей

P.S. Да, я всё ещё надеюсь на удовлетворение фичреквестов и исправление багов. Слабо правда.

"Что-то пошло не так?"

После регистрации при попытке авторизации появляется данное сообщение и после этого уже зайти на сайт возможно лишь после очистки cookies.
логин - yasorrat

Выбор часового пояса

Сделайте сортировку списка часовых поясов не по названию Континент/Страна, а по номеру GMT/Континент/Страна, как во всех известных мне системах. Ато неудобно до жути.

Старые посты-ссылки не редактируются

Новые не проверял. Суть бага (копипаст слов Anrock'a)

  1. Изменил текст.
  2. Нажал отправить.
  3. Страничка обновилась, оставшись на форме редактирования.
  4. Второе и далее нажатие на "отправить" перекидывают на страничку "что-то пошло не так".
    По возвращению на страничку с постом изменений в тексте нет.

Проблемы с парсером

Там с ним много проблем. Во-первых, в старых постах он часто поел угловые скобки.
При редактировании этих старых постов иногда вставляются лишние

Ну и пара ссылок с частными багами.
http://welinux.ru/post/7444/
Вот здесь, например,
'ов лишних понавставлял и [] поменял на <>: http://welinux.ru/post/3289/
Вот тут съел угловые скобки и всё, что внутри: http://welinux.ru/post/7323/#cmnt118084 , http://welinux.ru/post/7187/#cmnt117014
В общем, он сильно много глючит.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.