-
Notifications
You must be signed in to change notification settings - Fork 0
/
TODO
225 lines (143 loc) · 8.58 KB
/
TODO
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
1.when sign_in fails, typing in the email field, causes credential_check to be performed.
2.Add a loading indicator to the calendar while the images are loading
3.Add a navigation element, like small circles side by side, to indicate when were the last months were the user was active, and this needs to be stored in a correct way, and showed
4.show a message saying that he has or hasnt been active this month.
5.on clicking enter on sign up form, it submits the sign in form.
6.sometimes the sign in modal just doesnt open
10.shift the email_required? to the user_concern
11.the css label in the login form for login => which says "email or mobile" , will have to be customizable from the user side.
14.on selecting autocomplete from drop-down , validation does not occur.
15.shift devise mailer to sidekiq
16.additional param name e.g mobile should be visible in all forms.
17.if they sign up with oauth, how to handle mobile number verification.
20.show counter while waiting for otp to be seeen.
23.the fields do not match thing gets triggered in the sign in form, if after registering a new user, we go back to the sign in form.
24.variabilize the js_erb partials for the whole otp_controller.
27.add recaptcha to update form.
29.user signed in by oauth, goes to forgot password, then what happens?
30.unconfirmed account -> goes to forgot password.
31. email confirmation being sent with mobile sign up.
34. sign out authenticity error
35. resend otp when account already confirmed.
36. after it shows message saying you need to confirm email, it wipes out the email and also does not show pending email. need to work on this. ? maybe call reload?
37. rate limit.
38. abstract otp_controller into a concern
39. sidekiq is down error?
42. permitted params have to be hard coded somewhere in the devise_concern, to allow the app_id and the api_key.
50.what if client id becomes nil.
51.remember to allow in the website only permitted client ids(i.e the one from the app.)
THINGS TO BE DONE:
1. add i18n translations for marathi, hindi.
2. validation for email, is returning cant be blank for additional login param in scenario of signing up for admins with a mobile number instead of an email.
3. on signing up with a mobile, shows "your email is pending confirmation on the edit.html.erb page ->should not show this."
4. otp job, require path is hardcoded at top of file, and also in payment_controller_concern.
4b. add secure compare of the auth token in the authenticate_scope method overriden in devise in registrations controller.
5. receipt
6. payment receipient resolver in case of salaries -> hooked into notifications
7. refund
8. cash on delivery
9. order acceptance post payment resolver - order status, eta
10. payment acknowledgement in case of any payment
11. on removing a test from the cart, refund should get triggered, only if it is past the cancellation point.
12. specs
13. what happens to cart items after they are added to a cart? should they still be seen , no, -> that query has to be modified.
14. deep linking + test android
15. email and mobile webhooks and notification retry
16. verify payment test.
17. endpoint to return custom jwt token for firebase sign in
18. image/video upload using firebase cloud storage.
19. create a pathofast app implementing the auth engine
20. geo location api
21. custom user and test creation -> admin ui, and shopping cart for admin
22. write test suite for shopping module
23. after this there will all the stuff to create -> user , collection agent interaction, test updates.
24.
--->
while running shopping tests : notify has to be false, investigate why getting some weird error inside the notification lib file.
while running authentication tests : the notify has to be set to true, also there is the issue of the queue adapter, and stub sms otp calls as well as recaptcha and other configuration options.
plan would be as follows:
1. materialize is being used by default -> provide option.
2. oauth routes are drawn whether oauth resources are specified or not.
-->
CARD NUMBER
5123456789012346
CVV:
123
EXPIRY:
MAY 2017
create -> then you go to show -> go to payu -> update -> verify if not verified.
- whats the best way to do this?
- they can be made to choose from a drop down?
- the user for whom they are proxying
- basically a general purpose search box
- search query will go to a search query controller
- from there will be controlled by permissions
- then will fire to elasticsearch for autocomplete
- then will return details
- if user is selected will be another controller action
called select user
- this can be in profiles controller
- this will add the "proxy" to the session
- this will be used everywhere in token concern.
- it will also display in the layout on the top, which
- user is being proxied for.
------------
1. create the search response partial
2. for both unauth and normal.
3. inside the erb partials use content_for() so that it can be overridden.
4. also give a button to set the user
5. write a test to see the user is set corretly.
6. write a test to see that user is unset correctly.
7. make all shopping tests pass with the new paths
8. finish views for cart, cart item and product, and payment.
basically today we finish the whole shopping shit.
While creating the sop's
it should show the base sop sequence on the screen.
We can create a flow of SOP
Then we can add alternative sop's at every stage.
and we can go on doing that.
So we will get a big array of arrays
For each sop, should add id of previous sop.
Now we have to correlate to existing base sop flow.
So let us assume that for step 2 we have four possibilities for hemogram.
and urine is already there with just one possibilty for step 2.
now what happens?
First see if any of them is applicable to any subsequent sop?
If not then where to add them?
We can just add them all one after the other before the next step, creating base sop's out of them wherever possible, and thats it.
So at scheduling, they will have a relative time frame,
At every stage a next stage can be repeat.
In that case how to arrange it wrt base sop? It's not necessary to create a new base sop , it will be the same base sop. But while scheduling we will have to ignore the repeat ones,
What if its necessary to repeat everything till then?
- this will invovle - creation of a new plan document -> somehow need to figure out this, and cancelling the existing test from the existing plan document.
But the next question is how to modify on the fly scheduling changes?
For ex in eventuality a -> now do b (so we have to always assume while scheduling the longest sop at each stage.)
So basically while scheduling we need to gather by base sop right.
so we have gathered -> but that doesnt give the correct plan document -> it has to also know which of the base sop groups are to be considered together while deciding what sop duration to consider at each stage.
SOP IDS IN THE TEST DEFINITION.
[a],[b,c,d],[e,f,g],[h,i,j]
BASE SOP SEQUENCE:
a,b,c,d,e,f,g,h,i,j
now if we gather by base sop, we will not get the above groups, of sop id.
We need to know for each test, inside its each stage, which SOP to consider and which to ignore while calculating the time taken.
So maybe we land up considering : a,d,e,j
Rest of base sop may be relevant only if some other test has that as its longest sop for a particular stage.
So while scheduling we provision for the longest sop.
And if that one is not needed, or finishes early, then he can jump straight to the next step.
--------------------------
1)create a cart item from product, how to deal with it if an admin wants to create a cart item for himself?
Pass in a proxy resource id, and resource class of the admin, if the user is an admin, and there is no proxy-user at the moment, i.e in the session.
2)view all such cart items without a cart as the wish-list(index cart items)
3)give link to remove them from wishlist - done
4)click "finalize" to add them to a cart.
5)show cart -> to see all the items in it.
6)remove cart items from cart -> by clicking remove.
7)make a cash/card/cheque payment to the cart, only as admin, with a proxy user, cant make a payment without this proxy user
8)make a gateway payment -> get redirected to update the payment as success or failure.
9)on showing payment, update it internally.
10) remove items from cart as admin.
11) make 5 refund requests
12) admin accepts last one.
13) show the status of the refund request, as well as on viewing the refund, auto updates the status.
--------------------------------------------------------------------------
1. start_minute and end_minute (null) how to solve this. #update_overlap_hash -- add_start_end_minute