Commit graph

631 commits

Author SHA1 Message Date
Aurélien Delobelle
885e40fd05 cleaner scales
- References to `Stat` in `Scale` objects are deleted (because scales
  are independent of stats)
- KFET_WAKES_UP_AT is now a time object insted of an hour
- Proper use of date, datetime, timedelta, etc (django.utils.timezone
  provides neither datetime nor timedelta)
2017-04-04 18:11:15 +02:00
Aurélien Delobelle
ddd71c7ac1 add missing __init__ 2017-04-04 17:29:54 +02:00
Aurélien Delobelle
714903210c Add kfet_config tests
- KFetConfig `set` method now takes model instance instead of their pk
  for this type of entries.
- Add tests for KFetConfig class: tests against types currently used by
  kfet app (duration, modelinstance, decimal).
- These tests are located in `kfet/tests/test_config.py`. We should
  separate tests suites by file like this, considering what they are about.
- KFetConfig method `set_many` renamed to `set` (because it also updates
  only one).
2017-04-04 17:05:55 +02:00
Qwann
72615bf400 small fixes 2017-04-04 16:57:17 +02:00
Aurélien Delobelle
278459e80f typo....... 2017-04-04 11:05:49 +02:00
Aurélien Delobelle
0405eee7a7 Merge branch 'Aufinal/inventaires' into 'master'
K-Fêt - Création d'inventaires
- Amélioration de l'interface
- Ajout de colonnes intermédiaires pour faciliter le calcul
- Ajout d'indication de conflits possibles avec les opérations en cours
- Résolution semi-automatique de ces conflits

Closes #141

See merge request !200
2017-04-04 10:59:09 +02:00
Martin Pépin
b383923d49 Merge branch 'Kerl/test_stats' into aureplop/fix_stats 2017-04-04 09:39:26 +01:00
Aurélien Delobelle
7989a07b5f cleaner fix 2017-04-04 01:36:19 +02:00
Aurélien Delobelle
df467767f4 fix default GET param 'types' on operations stats 2017-04-04 01:29:19 +02:00
Martin Pépin
f13d1072c7 Add simple tests for the stat views
We check that we can get all the stats views with the appropriate
permissions.
2017-04-03 23:21:42 +01:00
Aurélien Delobelle
ce2a05766d Add set_many methods to kfet_config
- Fix addcost updates (from K-Psul)
2017-04-03 23:06:47 +02:00
Ludovic Stephan
51acb4e00a Use new WS class 2017-04-03 16:05:18 -03:00
Ludovic Stephan
32474a6865 Don't update input when unchecking 2017-04-03 16:03:22 -03:00
Ludovic Stephan
f46ba0dd6c Merge branch 'master' into Aufinal/inventaires 2017-04-03 16:01:51 -03:00
Aurélien Delobelle
7384465cbd fix migrations order 2017-04-03 21:01:36 +02:00
Aurélien Delobelle
921dce1f35 Merge branch 'master' into aureplop/kfet_config 2017-04-03 20:58:57 +02:00
Ludovic Stephan
5607d7c9a4 Migration pour kfet_forms 2017-04-03 15:54:02 -03:00
Ludovic Stephan
ad2c8537e3 Add Runpython (oops) 2017-04-03 15:50:18 -03:00
Aurélien Delobelle
85caa6b058 Use django-djconfig for kfet app.
Old configuration(/settings), based on Settings model, system is
deleted: SettingsForm, Settings.
New system use `django-djconfig` module.

- `kfet.config` module provides `kfet_config` to access configuration concerning
kfet app.
- Views, forms, models, etc now use this object to retrieve conf values.
- Views no longer add config values to context, instead templates use
  `kfet_config` provided by a new context_processor.
- Enhance list and update views of settings.
- Fix: settings can directly be used without having to visit a specific
  page...

Misc
- Delete some py2/3 imports
- Delete unused imports in kfet.models and kfet.views
- Some PEP8 compliance
2017-04-03 20:32:16 +02:00
Aurélien Delobelle
10d2b58fa7 clean some comments
- fix: error if actions are empty in balance stats
2017-04-03 17:06:32 +02:00
Aurélien Delobelle
6d2e150aa0 clean align 2017-04-03 16:56:44 +02:00
Aurélien Delobelle
903da795ab clean kfet statistic.js
- no longer dictToArray where it isn't necessary (because already an
  array)
- fix chart height:
  - previous charts were causing bugs
  - height is fixed (even with window resizing)
- clean whitespaces
2017-04-03 16:53:28 +02:00
Ludovic Stephan
40da3bc299 Listen on input 2017-04-03 11:21:05 -03:00
Ludovic Stephan
b113a57b74 Fix update function 2017-04-03 11:20:56 -03:00
Aurélien Delobelle
87bc90ec8b Begin/end balance stat graph
- Anytime begin at account creation datetime
- Others doesn't take care of account creation
- Add check to avoid to bug on actions list length
2017-04-03 16:07:31 +02:00
Aurélien Delobelle
769c37634d delete debug msg 2017-04-03 15:43:56 +02:00
Aurélien Delobelle
1bb83ccdd7 simplify StatScale 2017-04-03 15:10:53 +02:00
Aurélien Delobelle
7dc233c0e2 Merge branch 'Aufinal/editions' into 'master'
K-Fêt
- Fix: Les éditions ne touchent plus la caisse
- Fix: Seuls les achats sont possibles sur LIQ

See merge request !198
2017-04-03 14:39:53 +02:00
Aurélien Delobelle
b157ffac4c Merge branch 'Aufinal/kfet_forms' into 'master'
K-Fêt
- Affichage des formulaires amélioré

See merge request !203
2017-04-03 13:40:41 +02:00
Aurélien Delobelle
b3a9ad8a96 clean mixin 2017-04-03 13:24:04 +02:00
Aurélien Delobelle
d97a7be819 stats: fix begin of balances graphs
- graph begin at first operation or later
2017-04-03 03:15:07 +02:00
Aurélien Delobelle
c01de558e1 Clean Article stats
kfet.statistic
- delete no longer used defs
- new mixin - ScaleMixin
  - get scale args from GET params
  - chunkify querysets according to a scale

Article stats
- use SingleResumeStat for manifest
- use ScaleMixin for sales
- update urls
- update permission required: teamkfet

Account stats
- update permission required: teamkfet
- operations use ScaleMixin
- fix manifests urls
2017-04-03 03:12:52 +02:00
Aurélien Delobelle
f585247224 Refactor Account Operations stats
K-Fêt - Statistics

New base class - StatScale
- create scale, given chunk size (timedelta), start and end times
- get labels of
- get start and end datetimes of chunks

DayStatScale: Scale whose chunks interval is 1 day
WeekStatScale: same with 1 week
MonthStatScale: same with 1 month

AccountStatOperationList: manifest of operations stats of an account
- renamed from AccountStatLastAll
- updated according to SingleResumeStat

AccountStatOperation:
- renamed from AccountStatLast
- remove scale logic with use of StatScale objects
- used scale is given by `scale` and `scale_args` GET params
- add filter on operations types with `types` GET param

AccountStatLast(Day,Week,Month) are deleted ("merged" in
AccountStatOperation)
2017-04-03 00:40:52 +02:00
Aurélien Delobelle
31261fd376 set height canvas graph & fix graph display 2017-04-02 23:38:42 +02:00
Aurélien Delobelle
6ebea6557c Merge branch 'Aufinal/graph_size' into aureplop/fix_stats 2017-04-02 23:19:34 +02:00
Ludovic Stephan
48721b7dca Reduce graph size 2017-04-02 17:54:13 -03:00
Aurélien Delobelle
df7e935390 Clean GET params in ajax calls
- Use `data` arg of `$.getJSON` for `format` param
- Delete `dictToArray` call on data returned by `SingleResumeStat` class view since this view now returns stats manifest as an array
2017-04-02 17:16:05 +02:00
Aurélien Delobelle
1ee993e1e1 Add permission check to AccountStatBalance
Only connected user can get its balance data
2017-04-02 17:14:36 +02:00
Aurélien Delobelle
87b9db520f Refactor py base stats and account balance stats
New mixin: PkUrlMixin
- use with SingleObjectMixin standard django mixin (used by
  DetailView...)
- `get_object` use field declared in `pk_url_kwarg` to get... the object

SingleResumeStat
- clean (part of) py code

AccountStatBalanceList
- renamed from `AccountStatBalanceAll`
- url modified
- add permission checking (only the connected user can get balance
  stats manifest)
- clean py code

AccountStatBalance
- cleaner filtering management
- merge urls using this class
- clean py code
2017-04-02 17:03:20 +02:00
Aurélien Delobelle
f6022ecf7d Add str to Transfer model
+ PEP8 this model
2017-04-02 16:49:41 +02:00
Aurélien Delobelle
78aa5df350 fix template error 2017-04-02 12:55:44 +02:00
Aurélien Delobelle
e8fdd083aa delete unused class-views 2017-04-02 05:34:34 +02:00
Aurélien Delobelle
96597aa146 clean some kfet templates 2017-04-02 05:17:26 +02:00
Ludovic Stephan
c9973cde75 Help text for password length 2017-04-01 23:25:47 -03:00
Aurélien Delobelle
55116f7179 Merge branch 'Aufinal/stat_article' into 'master'
Fix article stat display

See merge request !207
2017-04-02 02:49:54 +02:00
Martin Pépin
e4d51de569 Merge branch 'hotfix/autocomplete_no_value' 2017-04-01 22:11:36 +01:00
Ludovic Stephan
91a057873d Merge migrations 2017-04-01 18:10:51 -03:00
Ludovic Stephan
944a73eef7 Merge remote-tracking branch 'origin/master' into Aufinal/editions 2017-04-01 18:09:23 -03:00
Martin Pépin
a793e9a2e7 exclude empty strings from ldap results
The uid attribute in a LDAP's entry cannot be an empty string. We need
to get an actual identifier.
2017-04-01 22:07:32 +01:00
Martin Pépin
9cdf064005 Handle incomplete values from the LDAP
Sometime `uid` is not set in the objects fetched from the LDAP. This
case has to be handled. Also, the `.uid` and `.cn` attributes of these
objects in the python abstractions have a `.value` method which we
should use.
2017-04-01 21:45:05 +01:00
Ludovic Stephan
cce0411ee9 Merge both 0048 migrations 2017-04-01 17:37:29 -03:00
Ludovic Stephan
bbb517fbd3 Fix article stat display 2017-04-01 10:37:40 -03:00
Ludovic Stephan
6797c92a1f Ok ok je me rends 2017-04-01 09:35:37 -03:00
Ludovic Stephan
e20ab2f352 Use set delete() 2017-04-01 09:18:40 -03:00
Ludovic Stephan
271654b447 No need for intermediate error reporting 2017-04-01 08:47:09 -03:00
Ludovic Stephan
ccf5f80685 Merge remote-tracking branch 'origin/master' into Aufinal/editions 2017-04-01 02:43:19 -03:00
Ludovic Stephan
8da832c1f7 Use nice authentication in orders too 2017-04-01 00:36:39 -03:00
Ludovic Stephan
063446efb5 Use columns for authentication and submit 2017-04-01 00:32:09 -03:00
Ludovic Stephan
cf03fba1cc Remove whitespace by using elif 2017-03-31 23:54:38 -03:00
Ludovic Stephan
9c9ad21d73 Add variable for article line 2017-03-31 23:46:10 -03:00
Ludovic Stephan
92fd94d1f9 Merge remote-tracking branch 'origin/master' into Aufinal/fix_stock_ws 2017-03-31 23:43:19 -03:00
Aurélien Delobelle
1286606f7a Merge branch 'Aufinal/hotfix/liq_withdraw' into 'master'
K-Fêt :
- Empêche les retraits/charges sur LIQ

See merge request !205
2017-03-31 23:49:33 +02:00
Ludovic Stephan
aa29621c7c Prevents special opes on LIQ 2017-03-31 18:28:03 -03:00
Ludovic Stephan
ab15dbae76 Add handler management 2017-03-31 17:37:39 -03:00
Ludovic Stephan
38bfccf331 Change class name 2017-03-31 15:57:15 -03:00
Ludovic Stephan
8bf1bd5343 Websocket as member 2017-03-31 15:45:15 -03:00
Ludovic Stephan
413df0806d Add url get method 2017-03-31 15:10:41 -03:00
Ludovic Stephan
49c84076de Manage help_text and errors 2017-03-31 15:01:31 -03:00
Ludovic Stephan
1d8e084a19 websocket update when addcost 2017-03-31 14:37:00 -03:00
Ludovic Stephan
499c081565 Websocket class and instance 2017-03-31 12:23:27 -03:00
Ludovic Stephan
fdcd2e864c Use widget_tweaks everywhere 2017-03-31 11:24:38 -03:00
Ludovic Stephan
530aafad19 Use widget_tweaks 2017-03-31 11:07:37 -03:00
Ludovic Stephan
6ac1241bd3 Listen to submit instead 2017-03-31 10:07:42 -03:00
Ludovic Stephan
50cb6e51a1 Use Set() natively 2017-03-31 10:06:02 -03:00
Ludovic Stephan
e54324e9f1 Use col-offset 2017-03-31 09:50:37 -03:00
Ludovic Stephan
ebf133d9af Lowercase model verbose names 2017-03-30 21:38:16 -03:00
Ludovic Stephan
20561eb515 Idem for account_update 2017-03-30 21:31:16 -03:00
Ludovic Stephan
c1b8849cb8 Idem for supplier_form 2017-03-30 21:16:47 -03:00
Ludovic Stephan
91d5fe234c Idem for checkoutstatements 2017-03-30 21:10:50 -03:00
Ludovic Stephan
8e65298c7c Idem for article_update 2017-03-30 19:34:22 -03:00
Ludovic Stephan
079666c0db Use verbose names and form snippets for article_create 2017-03-30 19:32:11 -03:00
Ludovic Stephan
0c21238391 Change misc field when updating 2017-03-30 18:39:13 -03:00
Ludovic Stephan
998838ca3e Add update button 2017-03-30 13:31:16 -03:00
Ludovic Stephan
31888e33ce simpler jquery selection 2017-03-30 13:30:55 -03:00
Ludovic Stephan
56b5fd6279 Always randomize supplier articles 2017-03-29 23:22:18 -03:00
Ludovic Stephan
95c59de4fc Add supplier to dev data 2017-03-29 23:16:40 -03:00
Ludovic Stephan
eb7d436b90 Add "count finished" checkbox 2017-03-29 20:43:48 -03:00
Ludovic Stephan
ca6e120a38 Fix ws stock update 2017-03-29 09:43:10 -03:00
Ludovic Stephan
e6a1d16860 Websocket to manage possible kpsul conflicts 2017-03-29 00:58:47 -03:00
Ludovic Stephan
3b793dc726 Add first improvements for inventory 2017-03-28 23:47:41 -03:00
Ludovic Stephan
946182f1fe Simpler migration revert 2017-03-26 15:06:45 -03:00
Ludovic Stephan
06a89055c4 Simpler migration 2017-03-25 10:46:18 -03:00
Ludovic Stephan
9a081ddae0 PEP8 on Operation model 2017-03-25 10:43:02 -03:00
Ludovic Stephan
f645121fb1 Add error when editing LIQ 2017-03-25 10:39:53 -03:00
Ludovic Stephan
14e0d8090f Add euros symbols 2017-03-25 10:01:35 -03:00
Ludovic Stephan
d8f572bb01 Remove group check in is_checkout 2017-03-25 09:57:44 -03:00
Ludovic Stephan
bc0affc038 Remove autocomplete leftovers 2017-03-25 09:56:36 -03:00
Aurélien Delobelle
ae82c34023 add missing migration 2017-03-25 11:21:21 +01:00
Aurélien Delobelle
215d4a63ad Merge branch 'Aufinal/create_opes' into 'master'
K-Fêt - Dev :
- new command - createopes: Création d'opérations et transferts aléatoires

See merge request !193
2017-03-25 11:08:22 +01:00
Ludovic Stephan
794527772f Add more explicit migration name 2017-03-24 23:41:33 -03:00
Ludovic Stephan
5f3f044084 Add revert function to migration 2017-03-24 23:27:55 -03:00
Ludovic Stephan
608e67fe6a Add RunPython script to migration 2017-03-24 21:23:04 -03:00
Ludovic Stephan
44fbc92893 Merge branch 'master' of git.eleves.ens.fr:cof-geek/gestioCOF into Aufinal/editions 2017-03-24 21:07:32 -03:00
Ludovic Stephan
d7740e66fe adapt code to is_checkout removal 2017-03-24 20:52:49 -03:00
Ludovic Stephan
cadaf43131 Remove is_checkout field from Operation model 2017-03-24 18:50:57 -03:00
Aurélien Delobelle
f063c3470c Merge branch 'Aufinal/fix_password_freeze' into 'master'
K-Psul:
- fix freeze when no-team password

Closes #153

See merge request !196
2017-03-24 20:53:44 +01:00
Aurélien Delobelle
ff5959638b fix missing bracket 2017-03-24 20:32:04 +01:00
Aurélien Delobelle
cb13280458 Merge branch 'master' into 'Aufinal/merge_k-fet'
# Conflicts:
#   kfet/static/kfet/css/index.css
2017-03-24 20:23:32 +01:00
Ludovic Stephan
7520effe53 Fix K-Psul freeze when no-team password
L'erreur 403 est renvoyée dans ce cas par le décorateur
`@teamkfet_required`, donc sans data associé, ce qui faisait buguer
`getErrorsHtml`. On rajoute donc le cas correspondant.
2017-03-24 15:45:47 -03:00
Martin Pepin
33b3d558b5 Merge branch 'Aufinal/decorators' into 'master'
Utilise les bons décorateurs

See merge request !195
2017-03-21 00:25:50 +01:00
Ludovic Stephan
5e802217fd Remove lambda operators 2017-03-20 20:24:44 -03:00
Ludovic Stephan
dd4d1f3061 Improves creation efficiency 2017-03-20 20:19:04 -03:00
Ludovic Stephan
aa247b465a Fix search box (hackish) 2017-03-20 19:08:48 -03:00
Martin Pepin
ae38b5d1e7 Merge branch 'hotfix/prevent_ldap_injection' into 'master'
Hotfix/prevent ldap injection

Closes #150

See merge request !188
2017-03-20 23:06:59 +01:00
Martin Pépin
59f57793ba typo 2017-03-20 22:05:48 +00:00
Martin Pépin
0aed975615 Fix the empty-query test in autocomplete
If there is no valid word to search in the LDAP database, no query is
performed. Since 74f0b63e, that behaviour was broken because of a typo
2017-03-20 08:14:20 +00:00
Ludovic Stephan
6d36d50e9a Fix 'at' property for transfergroups 2017-03-20 01:56:59 -03:00
Ludovic Stephan
2c63e6b667 Use django.contrib.auth decorators 2017-03-20 00:11:50 -03:00
Ludovic Stephan
36dc6439a8 Plug createopes into loadkfetdevdata 2017-03-19 16:03:39 -03:00
Ludovic Stephan
0356ec34ae Add createopes command 2017-03-19 16:03:19 -03:00
Martin Pépin
74f0b63e96 Change ldap query behaviour if multiple inputs
It is now consistent with the other lookups over the User database
2017-03-19 15:10:08 +00:00
Martin Pépin
dc50a23b10 Escape the content of the regex in highligh_text 2017-03-19 14:48:04 +00:00
Martin Pépin
4899bba1f7 Replace list comprehensions by iterators in dal 2017-03-19 14:05:25 +00:00
Ludovic Stephan
51fba4da21 Log messages 2017-03-18 19:02:08 -03:00
Ludovic Stephan
47b7d934e0 PEP8 on imports 2017-03-18 19:01:51 -03:00
Ludovic Stephan
29d7654052 Root kfet account 2017-03-18 18:02:33 -03:00
Ludovic Stephan
f512c1bdd7 Add better checkout creation 2017-03-18 18:02:23 -03:00
Qwann
de724a2c0d PEP8 for perform_operation 2017-03-17 19:53:23 +01:00
Qwann
a107fa0309 migration renamed 2017-03-17 19:23:44 +01:00
Qwann
fcc2ab8810 frontend working 2017-03-17 19:17:36 +01:00
Martin Pépin
55b67f38c8 Notice the users about the α-numeric restriction
Add a help text above the two autocompletion inputs letting the users
know that non-alphanumeric characters will not be used.
2017-03-16 23:16:56 +00:00
Martin Pépin
741f0183e6 Prevent ldap injections in autocompletion views
We only allow alphanumeric characters in the query in order to avoid
injections
2017-03-16 22:43:43 +00:00
Ludovic Stephan
3793863bab Merge remote-tracking branch 'origin/k-fet' into Aufinal/merge_k-fet 2017-03-15 22:58:54 -03:00
Martin Pépin
3acc8bca75 s/username/clipper in highlight_clipper
There was typo, the `Clipper` object has no `username` attribute. We
want to use the `clipper` attribute
2017-03-15 19:11:38 +00:00
Martin Pépin
e98a407982 Rename bits -> search_words in kfet.autocomplete
This is typo, this variable has not the same name in
`gestioncof.autocomplete` and `kfet.autocomplete`
2017-03-15 19:02:31 +00:00
Qwann
d0938dfae7 Merge branch 'k-fet' into qwann/k-fet/category_addcost 2017-03-11 15:10:04 +01:00
Qwann
b0643c0928 typo 2017-03-11 02:04:30 +01:00
Qwann
ee6de35627 category addcost added 2017-03-10 18:29:15 +01:00
Qwann
52dda7be9a Merge branch 'qwann/k-fet/home' into qwann/k-fet/kfet_open 2017-03-10 16:58:46 +01:00
Qwann
5ddcd2f1ff Merge branch 'k-fet' into qwann/k-fet/home 2017-03-10 16:58:10 +01:00
Qwann
cd31c55254 permission working 2017-03-10 16:40:36 +01:00
Qwann
f18bb9f336 permission added 2017-03-09 17:27:58 +01:00
Qwann
8e7b9e2fd3 force close working 2017-03-09 15:05:47 +01:00
Qwann
5694e4b9bc migrations merged 2017-03-09 11:11:31 +01:00
Qwann
ce96bc4b67 Status added on home page 2017-03-07 17:31:43 +01:00
Qwann
f8e09cf257 unknow status updated every 30s 2017-03-07 14:12:23 +01:00
Qwann
0f96d3bc46 moving kfet_open url 2017-03-07 14:02:08 +01:00
Qwann
392338eddd indent 2017-03-06 09:30:58 +01:00
Qwann
b7040d5867 adding KFET_FORCE_CLOSE in cache 2017-03-06 02:25:18 +01:00
Qwann
8e462134c7 home base html 2017-03-06 02:08:33 +01:00