Commit Graph

63 Commits (bd519b3d64241909be92efbe3c05525f356443ab)

Author SHA1 Message Date
Alejandro Alonso 4b859bbde9 Removing cancel_token and using django.core.signing stuff 2014-10-10 09:29:51 +02:00
David Barragán Merino bcb2948417 US #954: Task #1115: Create feedback endpoint 2014-10-04 17:14:04 +02:00
Damien ef82bc62cf Typo in local_settings: Githup -> Github
Kebap ou Kebab ?
2014-10-01 23:31:42 +02:00
David Barragán Merino 5e7a7c5eaa 💩 -> 🚽 2014-09-30 09:20:05 +02:00
Jesús Espino 85901336e9 Changed default events queue to postgresql queue 2014-09-29 18:33:55 +02:00
David Barragán Merino 6725a43a4f Merge pull request #76 from taigaio/events-improvements
Taiga-events integration (realtime taiga)
2014-09-29 18:06:38 +02:00
Andrey Antukh 43e16c2c13 Taiga-events integration (realtime taiga) 2014-09-29 17:49:47 +02:00
Andrey Antukh 2e3abe60f0 Minor improvements on avatar/gravatar settings. 2014-09-29 12:16:35 +02:00
Alejandro Alonso bfecc26158 Avatar refactoring 2014-09-29 12:16:35 +02:00
David Barragán Merino 8c5695974d 👻 Fix a strange behavior with get_model in taiga.projects.history.services 2014-09-25 11:32:49 +02:00
Andrey Antukh 91296886a5 Change the way to generate attachment resource path. 2014-09-17 15:02:54 +02:00
Andrey Antukh 3061425a67 Improvements and fixes on tests. 2014-09-16 10:48:43 +02:00
Andrey Antukh 186ff67b01 Remove south and reversion from INSTALLED_APPS. 2014-09-16 10:48:42 +02:00
Andrey Antukh c3c706ce5d Fix settings compatibility. 2014-09-16 10:48:42 +02:00
Jesús Espino 6d78c79018 Adding import api 2014-09-08 12:33:32 +02:00
Jesús Espino 1e48340c48 Adding initial version of exporter/importer 2014-08-28 17:33:41 +02:00
Jesús Espino 195bdd2523 Adding colorize tags on server functionality 2014-08-11 11:51:08 +02:00
Jesús Espino b513a6277d Task #435: Now the attachments verify user permissions 2014-08-08 14:27:05 +02:00
Jesús Espino 57659d72df Adding big avatar image and change avatar endpoint 2014-07-30 13:52:51 +02:00
Anler Hp 8eed0d03e5 Task #399 - Memberships' resend-invitation handler
In order to resend and invitation email you just POST to detail-url
`memberships-resend-invitation`
2014-07-25 10:50:30 +02:00
David Barragán Merino 2e6ddbf98f Merge pull request #55 from taigaio/attachments
Check permissions when accessing attachments
2014-07-22 23:32:54 +02:00
Yamila 20d895406e Update common.py
Deleted context_processor because it's for development purposes. It's already in development settings.
2014-07-09 17:40:46 +02:00
Yamila 0b4612de68 Update celery.py 2014-07-09 15:41:13 +02:00
Anler Hp 52f476fb34 Check permissions when accessing attachments
Attachment files dispatching is now done through `RawAttachmentView`
view that checks for appropiate permissions.

When using the development server this view just redirects to the real
media path of the file.

When using the production server the special redirection header
`X-Accel-Redirect` is used instead to improve efficiency by instructing
the server to dispatch the file instead of django, but you also need the
following configuration (Nginx):

location /attachment-files {
    internal;
    alias /path/to/taiga/media/attachment-files;
}

It's recommended to also restrict the direct access from outside to the
`attachment-files` directory by using some configuration like this:

location /media/attachment-files {
    deny all;
}
2014-07-04 12:15:48 +02:00
Anler Hp 0ff888df53 Support for CELERY_ALWAYS_EAGER 2014-07-02 13:40:36 +02:00
Anler Hp 0e414267db Integration with RabbitMQ and Celery
First update taiga-vagrant vm if you're using it, you will have access
to the rabbit management console at port 8001 of the host machine.

* Defining tasks
- Tasks must be defined in a `deferred` module of an app, for example,
`taiga.projects.deferred` module.
- Tasks must be decorated and given the name "<app>.<task-name>", for
example in `taiga.projects.deferred` module:
```
from taiga.celery import app

@app.task(name="projects.add")
def add(x, y):
    return x + y
```
- Tasks should be at most just wrappers around service functions to
promote re-usability of those functions from other parts of the code,
say, management commands and the like.

* Calling tasks
Tasks should be called using one of the three functions defined in
`taiga.deferred` module:

- `defer`: Use this function if you need to perform some task
asynchronously and GET THE RESULT back later, for example:
```
result = defer("projects.add", x=1, y=2)
...
result.get() # => 3
```

- `call_async`: Use this function when you want to fire off some
task. No result is get back. For example:
```
call_async("projects.email_user", user)
```

- `apply_async`: Is the same as `call_async` but since it's a function
application and you must pass the args and kwargs together as one
parameter each you are allowed to pass celery-specific
extra-options (but bear in mind this is not recommended!)
```
apply_async("projects.email_user", args=(user,), kwargs={}, routing_key="tasks.email")
```
2014-07-02 09:49:56 +02:00
Anler Hp a8085a2feb Return user photo cropped and with absolute url
Remember to run `pip install -r requirements.txt` to install the
additional dependencies.
2014-07-01 14:38:26 +02:00
Anler Hp 5ff7ec1c00 Return user's gravatar if has no photo set
If the user has no photo set use her gravatar image if available
otherwise use the default avatar image defined in
`settings.DEFAULT_AVATAR_URL`
2014-07-01 12:46:58 +02:00
David Barragán Merino d6546dc518 Refactor searches module 2014-06-17 15:10:00 +02:00
David Barragán Merino 2c8524e146 Delete the rest of django test 2014-06-15 11:18:16 +02:00
David Barragán Merino f9327c7069 Fix User model: delete first_name, last_name, permisions and groups, add full_name, and github_id, change description to bio 2014-06-12 12:16:36 +02:00
Jesús Espino 813239c601 Now emails are sended with wiki rendering information 2014-06-05 12:32:52 +02:00
Jesús Espino a16143d915 Adding django_jinja to installed apps 2014-06-05 11:43:09 +02:00
Jesús Espino 262776043f Timeline service implementation 2014-06-05 10:08:42 +02:00
Anler Hp 9923e50603 Generic voting application
The stars application has been removed in favor of a more generic voting
application that works with any model. Starring a project is just a
special case of voting a project.

Usage.

Add a vote:

    votes.add_vote(<model instance>, user)

Remove a vote:

    votes.remove_vote(<model instance>, user)

Get the queryset of users that voted an object:

    votes.get_voters(<model instance>)

Get the number of votes an object has:

    votes.get_votes(<model instance>)

Get the objects of type <model> voted by an user:

    votes.get_voted(user, <model>)

The issues application is already making use of the votes application
through the following urls:

        /api/v1/issues/<id>/upvote      <- url name is "issues-upvote"
        /api/v1/issues/<id>/downvote    <- url name is "issues-downvote"
2014-06-02 12:03:09 +02:00
Anler Hp fcf4747e93 Service for adding, removing and listing votes 2014-05-30 12:43:34 +02:00
Andrey Antukh 051f9d6966 Remove wrong usage of BASE_DIR on settings. 2014-05-28 12:51:19 +02:00
Anler Hp b56dfe7cf5 Star/Unstar projects 2014-05-27 14:40:56 +02:00
Andrey Antukh 2b087678b9 Remove domains. 2014-05-26 17:33:12 +02:00
Andrey Antukh bb595b8fdd Reference refactor.
(Merged from stable/reference-refactor)
2014-05-19 13:25:40 +02:00
David Barragán Merino d786a1ba95 US #73: Create a user schemaless storage system 2014-05-14 14:01:31 +02:00
Andrey Antukh 19537cac36 Set default email backend to console on common settings. 2014-05-13 18:12:47 +02:00
David Barragán Merino 77c9a4757d Fix settings 2014-05-09 12:39:41 +02:00
David Barragán Merino 43750c3a19 Fixup history 2014-05-09 12:31:42 +02:00
David Barragán Merino 1a9ef0fe04 Remove code of questions and documents 2014-05-09 09:42:14 +02:00
David Barragán Merino 234ee7a2bc Remove the coding lines 2014-04-25 12:33:16 +02:00
Jesús Espino ee75818a18 US#45: Working the base of the proyect template system 2014-04-25 07:13:17 +02:00
David Barragán Merino 342a764f47 Delete an i 2014-04-23 13:12:35 +02:00
David Barragán Merino 2c973f50cd Change license to AGPL-3.0 (minor fixes) 2014-04-23 13:03:47 +02:00
Andrey Antukh 9d41a48a46 Move taiga/base/users to taiga/users 2014-04-21 17:27:22 +02:00