Code Monkey home page Code Monkey logo

etools's People

Contributors

achamseddine avatar acory avatar caktus-philip avatar csabadenes avatar czue avatar domdinicola avatar dpoirier avatar emaciupe avatar ewheeler avatar foochris avatar ilcsik avatar itsjustbrian avatar jamescw avatar marko911 avatar maximlomakin avatar n1207n avatar nikita-gorodeckij avatar ntrncic avatar ntrncic-babafi avatar reinbach avatar robertavram avatar roman-karpovich avatar saxix avatar simon-the-sloth avatar tmoubarak avatar v-urbanovich avatar vkurup avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

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

etools's Issues

Move django admin back to stock UI

Instead of custom ui.

Once exports are moved out and the pmp / e2tf are stable (post release 3 / early in release 4) deprecate any custom django admin functionality for everyone and used by staff/superusers only.

See #241

Don't use LocMemCache as caching config in production

CACHES = {
    'default': {
        'BACKEND': 'django.core.cache.backends.locmem.LocMemCache',
    }
}

Doesn't seem like its overriden in prod config? This poses issues with eTag caching etc. we've implemented and marking the cache as dirty.

Instead should use django-redish-cache

change date-time to UTC

Currently timezone is set to Eastern Europe Time, changing will have a small impact on times rolling back a few hours

Interventions list serializer

Some additions are needed for filtering on interventions list:

-Country Program Output (etools 3.4.1) -> id(s). Unsure if there can be multiple, if so, an array of id's

-UNICEF Focal Point (etools 3.2.9) -> name. Don't know where this field comes from, unicef_managers? partner_focal_point? But either way, need the name / array of names.

-Office (etools 3.2.8) -> id.

-Location (etools 3.3.6) -> name . No id necessary here, will be searching for it in the search bar rather than using a dropdown.

A couple things unrelated to filtering:

-Need intervention id

-DON'T need excess info for sector set. Just id and name. However if there's a reason that info is there let me know and i'll edit this out.

Upgrade DRF to 3.5.X

Depends on #215 of course, but opening separate one here since it'll take some effort from current DRF version being used.

Partner Staff Member API

Change PartnerStaffMembersViewSet and PartnerStaffMemberPropertiesView to a View with custom methods for get, post, patch, delete
Change the permissions according to requirements doc
Be able to list staff memebers per partner partner/pk/staff-members
Get one staff member /staff-members/pk
For save validations and creating users refer to PArtnerStaffMemberForm and PartnerStaffMember model. There are post save signals for activating and de-activating users. Do not send a response until signal is done.

Remove django-reversion?

Useful for version tracking of one model and reverting back to older versions. Is this a use-case anywhere?

See #239 - where we need activity stream and model data diff tracking.

modify Result Api Endpoint

one get endpoint that takes in and returns:

nothing in -> all outputs serialized with result-type as string (result_type.name) (not ids)

country_programme (values: year : String) -> all results that apply for that year's country programme

result_type in (string values [Output, Activity, Outcome]) -> all results filtered by that result type

filters can be combined.

Would it be possible to have countries (id's) in the urls instead of session based

Benefit is that a user with multiple country access would be able access data from different countries in parallel (browser tabs).

urls would be /country//....

Might have to do same for all django admin urls as well and modify middleware that handles country switching. Same would need to be done in the API's then as well (either in url or as a header passed in?)

Remove Results.country_programme?

Seems like the Result.country_programme = models.ForeignKey(CountryProgramme, null=True, blank=True) is unnecessary since Result Structure (to be renamed to Response Plan) already points to it.

Users and permission

  1. Add Supersvisor and vendor number on the profile,

  2. Map supervisor from api

  3. Map vision roles to etools groups.. @kasfaw please provide a mapping logic

Refactor Indicator Model

Indicator models should be normalized and reports should be directly associated with the Applied Indicators.

IndicatorBlueprint -> AppliedIndicator -> IndicatorReports

Data Exports: move to using a custom renderer, DRF based serializer etc. rather than django-import-export library

Look into using CSV renderer for example https://github.com/mjumbewu/django-rest-framework-csv

Goal would be to leverage the API views and serializers we already have for the functionality we already have, as much as possible.

Q: Can we do StreamingHttpResponse ( https://docs.djangoproject.com/en/1.10/ref/request-response/#django.http.StreamingHttpResponse ) See also: http://www.django-rest-framework.org/api-guide/responses/

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.