Du Peng
7c86adde4b
Ability to configure allowing or preventing member book a machine/formation/event slot if he already have a reservation the same day at the same time
2020-02-05 16:53:47 +01:00
Du Peng
c3965b28cf
remove rebocop disable
2020-02-03 10:53:54 +01:00
Du Peng
05073d5a28
fix bug for update event recurrent
2020-01-30 12:03:50 +01:00
Sylvain
fd0f49f132
rubocop: ruby syntax
2020-01-29 17:50:06 +01:00
Sylvain
5b97ef03a9
rubocop: ruby syntax
2020-01-29 17:49:05 +01:00
Sylvain
b1a98d3574
improved texts
2020-01-29 17:44:17 +01:00
Du Peng
35d9bec8a5
update event recurrent
2020-01-29 17:20:19 +01:00
Du Peng
de02bb1c72
update all attributes of event
2020-01-28 18:34:32 +01:00
Sylvain
81a42e5935
customize home page : full texts
2020-01-28 10:12:29 +01:00
Sylvain
8d8c9a8af5
fix double insertion of widgets button in home page editor
2020-01-28 09:24:55 +01:00
Sylvain
49b3a54afb
allow display widgets multiple times on home page
2020-01-28 09:21:39 +01:00
Du Peng
b1419271e6
edit event recurrent in progress
2020-01-27 18:21:46 +01:00
Sylvain
656a603d6c
customize home page css
2020-01-27 17:10:29 +01:00
Sylvain
37c90b1d54
ruby syntax
2020-01-22 14:34:45 +01:00
Sylvain
34a3286870
fix homepage layout
2020-01-22 14:16:35 +01:00
Sylvain
898a18ed46
display customized home page html
2020-01-22 13:25:22 +01:00
Sylvain
75c49c06f2
move homepage components to standalone directives
...
- events
2020-01-22 12:52:51 +01:00
Sylvain
89e146d419
[ongoing] move homepage components to standalone directives
...
- twitter
- members
2020-01-22 12:43:08 +01:00
Sylvain
fd1778b465
renamed twitter template file
2020-01-22 12:24:45 +01:00
Sylvain
1968ba601d
[ongoing] move homepage components to standalone directives
2020-01-22 12:23:51 +01:00
Sylvain
b85c7ac00b
admin set its customized html template for the home page & can reset it to factory value
2020-01-22 11:53:40 +01:00
Sylvain
b1e6154cc9
POC for custom home page
2020-01-21 18:03:15 +01:00
Sylvain
15ab3c1305
Ability to customize the title of the link to the about page
2020-01-21 16:16:12 +01:00
Sylvain
45e4b5c4bc
Create machine availabilities: select all/none in a click
2020-01-21 12:09:24 +01:00
Sylvain
97660924cb
fix typo and wording
2020-01-21 11:16:49 +01:00
Sylvain
146ba97766
Merge remote-tracking branch 'origin/reserve_slots_passed' into dev
2020-01-21 11:01:48 +01:00
Sylvain
57e5da61de
remove unused helper
2020-01-21 11:01:23 +01:00
Du Peng
3c26c6d4bd
disable add plan with reserve slot in the past
2020-01-20 16:17:10 +01:00
Du Peng
0143c3d495
allow admin reserve machine/space in the past time
2020-01-20 16:17:10 +01:00
Sylvain
c214ae3beb
Merge branch 'dev' of git.sleede.com:projets/fab-manager into dev
2020-01-15 12:49:07 +01:00
Sylvain
7929d3b198
detailled view of collected data in fabanalytics
2020-01-15 12:48:55 +01:00
Du Peng
fe387cbe3c
Merge branch 'twitter' into dev
2020-01-15 12:40:01 +01:00
Du Peng
db29673a4c
remove twitter api for get latest tweet
2020-01-15 12:34:51 +01:00
Du Peng
900d84f3c6
get latest twitter by twitter search without twitter api
2020-01-15 12:04:07 +01:00
Sylvain
059096c2dd
privacy option for fab-analytics
2020-01-15 10:46:04 +01:00
Sylvain
a67b2ff29c
do not show version modal if system if up-to-date
2020-01-14 18:03:57 +01:00
Sylvain
774060d9ab
FORCE_VERSION_CHECK for dev env + do not save hub public key if duplicate
2020-01-14 17:59:30 +01:00
Sylvain
19502c8231
fix display version on home page
2020-01-14 17:39:13 +01:00
Sylvain
1f3d9cf88d
display upgrade infos directly on the interface
2020-01-14 17:12:36 +01:00
Sylvain
a564ec62b5
updated version check worker
2020-01-14 16:16:31 +01:00
Sylvain
bb48a13f83
health endpoint & automated version check
2020-01-14 14:33:00 +01:00
Sylvain
64764e5498
check version on hub & [ongoing] health endpoint
2020-01-13 17:05:53 +01:00
Sylvain
54be21729b
batch delete periodic events
2020-01-07 17:18:49 +01:00
Sylvain
1c4f144b8d
Merge branch 'members-filters' into dev
2020-01-07 10:44:55 +01:00
Sylvain
f778ee9016
fix syntax + add missing translations
2020-01-07 10:44:29 +01:00
Sylvain
3c3e806a29
Merge branch 'user-confirmation' into dev
2020-01-07 10:34:25 +01:00
Sylvain
b6ee4e92a4
change falsy value + updated changelog
2020-01-07 10:34:12 +01:00
Sylvain
6d0cc201c4
remove: send abuse with ENTER
2020-01-06 17:08:50 +01:00
Nicolas Florentin
9cc090e4bc
typo
2019-12-30 13:48:40 +01:00
Nicolas Florentin
60e063a15b
fix currentUser value after successfull sign up when confirmation is needed, plus improves translations
2019-12-30 13:45:25 +01:00
Nicolas Florentin
6550428f72
fix AUthService factory, isAuthenticated was called from scope and not from the factory itself
2019-12-30 13:44:24 +01:00
Nicolas Florentin
0b899fe183
Merge branch 'dev' into user-confirmation
2019-12-30 09:36:43 +01:00
Sylvain
3412d9e35c
fix checking enable_in_context_translation
2019-12-23 13:49:46 +01:00
Sylvain
f05547e46e
change ach pluralization location
2019-12-23 11:29:02 +01:00
Sylvain
40e8b60a0a
add ach pluralization fonction for messageFormat
2019-12-23 10:28:12 +01:00
Nicolas Florentin
62c979cfc0
members filters, translations for other languages are still needed
2019-12-20 15:47:42 +01:00
Nicolas Florentin
518511ab3b
Merge branch 'dev' of git.sleede.com:projets/fab-manager into dev
2019-12-19 12:06:54 +01:00
Nicolas Florentin
7ea3e5ce32
fix translation key path app.public.projects_list.the_fablab_projects
2019-12-19 12:06:45 +01:00
Sylvain
bcd0e6833d
integrate crowdin in-context translation code
2019-12-18 16:50:16 +01:00
Nicolas Florentin
0a3a6d034a
env variable USER_CONFIRMATION_NEEDED_TO_SIGN_IN can force user to confirm his account to sign in
2019-12-18 16:02:47 +01:00
Sylvain
14c3abb449
refactoring i18n keys: trainings + modals + various missings
2019-12-18 13:04:38 +01:00
Sylvain
1124159f2e
refactoring i18n keys: projects
2019-12-18 11:08:14 +01:00
Sylvain
a8e8ffa1d4
refactoring i18n keys: export stats
2019-12-17 18:09:36 +01:00
Sylvain
a7b423b151
refactoring i18n keys - admin
2019-12-17 18:06:56 +01:00
Sylvain
88c48e4e69
[ongoing] refactoring i18n keys - admin
2019-12-17 12:40:36 +01:00
Sylvain
d21f616283
[ongoing] refactoring i18n keys
2019-12-16 16:54:40 +01:00
Sylvain
c565d9ff2b
unified front-end i18n interpolations syntax to messageformat
2019-12-16 10:16:11 +01:00
Sylvain
0c11f61010
Prevent event reservation in the past
2019-12-10 12:16:26 +01:00
Sylvain
6aa3c0caeb
Notify all admins on the creation of a refund invoice
2019-12-09 11:55:31 +01:00
Sylvain
510c802ab1
messages variations depending on slot duration
2019-12-09 10:27:50 +01:00
Sylvain
f50e45d2de
rake task to sync users with stripe
2019-12-03 16:32:59 +01:00
Sylvain
60755a2c2a
Merge remote-tracking branch 'origin/fix-time-now' into dev
2019-12-03 15:51:22 +01:00
Sylvain
11e74c6859
Merge branch 'ics' into dev
2019-12-03 15:30:28 +01:00
Sylvain
64fe68b2b0
icalendar source sync: create/update/delete ical events
2019-12-03 12:16:07 +01:00
Sylvain
538b5cef78
add/remove ical imports in public agenda
...
also: a little of refacftoring in CalendarController
2019-12-03 11:27:20 +01:00
Sylvain
32e7fc3900
confirm delete icalendar imports + fix display + add translations
2019-12-03 10:48:53 +01:00
Sylvain
d93ce15a47
external calendars legend
2019-12-03 10:23:19 +01:00
Sylvain
122ff54cd8
fix colors in ics imports
2019-12-03 10:17:29 +01:00
Sylvain
5215d0643d
Merge branch 'ics' of git.sleede.com:projets/fab-manager into ics
2019-12-03 09:56:37 +01:00
Sylvain
22be9f6a08
display external calendars list in public calendar + pull availabilities
2019-12-02 16:49:20 +01:00
Sylvain
cca6b14f58
import events asyncronously from icalendar
2019-12-02 15:53:24 +01:00
Nicolas Florentin
db41e846dd
uses DateTime#current instead of Time.now in tests
2019-12-02 15:29:05 +01:00
Nicolas Florentin
b17bcfde86
comment model slot.rb
2019-12-02 12:39:20 +01:00
Nicolas Florentin
6ff6c71060
rm dead code Slot#can_be_modified?
2019-12-02 12:32:52 +01:00
Sylvain
55d2c88134
delete & sync ical sources
2019-12-02 12:19:30 +01:00
Nicolas Florentin
77cf8c8218
replaces almost all Time.now by DateTime.current
2019-12-02 11:57:25 +01:00
Sylvain
36eba99808
[bug] report errors on admin creation
2019-12-02 10:39:42 +01:00
Sylvain
f72ae98109
do not show title if calendar is configured to hide them
2019-11-27 17:50:38 +01:00
Sylvain
85d17d62f3
fix events endpoint
2019-11-27 17:44:01 +01:00
Sylvain
97d93cd622
added a name to imported calendar
2019-11-27 17:39:19 +01:00
Sylvain
baf8cfb487
iCalendar server api & db model
2019-11-27 17:05:19 +01:00
Sylvain
9e2134c9cf
ics sources configuration interface
2019-11-27 16:17:42 +01:00
Sylvain
bb777227d6
display events of external ics in calendar
2019-11-27 13:59:56 +01:00
Sylvain
a9b1eabb2c
[poc] show google agenda events in the public calendar
2019-11-27 13:51:23 +01:00
Sylvain
90b3564138
admin calendar: surround select item by shadow-box
2019-11-27 12:31:32 +01:00
Sylvain
91008b3df1
improved calendar legend
2019-11-27 11:52:37 +01:00
Sylvain
eb3c78a61d
[poc] show google agenda events in the public calendar
2019-11-26 13:44:43 +01:00
Sylvain
48b811d2b5
Added freeCAD files as default allowed extensions
...
also: refactored some ruby code
2019-11-25 16:12:23 +01:00
Sylvain
68b17cbe9a
Ability to show the scheduled events in the admin calendar
2019-11-25 14:49:39 +01:00
Sylvain
563de29b9d
Calendar management: improved legend style
2019-11-25 11:59:34 +01:00
Sylvain
1182822d8b
show correct seats nb in canceled reservation
2019-11-25 10:45:54 +01:00
Sylvain
bbd613f2a5
compute right nb of free seats for event reservation
...
also: copy nb_total_places to n+1 instances when creating recurrent
availabilities
2019-11-25 10:30:12 +01:00
Sylvain
ce366beaa2
display that an event reservation was canceled
...
also: fixed transtions files
2019-11-21 11:15:05 +01:00
Sylvain
cabe2e5604
update free places after cancel event reservation
2019-11-20 17:06:42 +01:00
Sylvain
b725a5a071
Merge branch 'cancel' into dev
2019-11-20 10:27:56 +01:00
Sylvain
37d6c84cc6
[bug] unable to remove training picture
...
also: removed some invalid href=# in the templates
2019-11-19 15:18:00 +01:00
Sylvain
ad928bd4e6
ability to set phone number optional or required
...
also: show stars on required fields in new admin form
2019-11-19 11:44:32 +01:00
Sylvain
9ec736e6b5
delete recursive slots
2019-11-18 17:29:51 +01:00
Sylvain
26738563bd
create reccursive events
2019-11-18 11:50:20 +01:00
Sylvain
a60a39ff9e
[ongoing] create multiple availabilities according to UI
2019-11-13 12:13:22 +01:00
Sylvain
0d740c95a9
recapitulative screen
2019-11-13 10:59:10 +01:00
Sylvain
22251e6516
summary screen
...
TODO: eventModal.html.erb:167
2019-11-12 16:28:10 +01:00
Sylvain
2cccbd3486
recurrence UI
2019-11-12 14:25:28 +01:00
Sylvain
96a2f6e426
create availablities with slots duration ne 60
2019-10-30 15:09:44 +01:00
Sylvain
cdc30e0da2
configure the slots duration with an environment variable
2019-10-29 16:52:52 +01:00
Nicolas Florentin
12b9155b43
try to fix edge cases of VatHistoryService, related to issue #156
2019-10-29 15:20:25 +01:00
Sylvain
1ed3eba129
[feature] export last connection date to members.xlsx
2019-10-29 11:09:17 +01:00
Sylvain
f94d8feba6
[feature] admin can delete an user
2019-10-29 09:59:21 +01:00
Sylvain
35fb991cdb
Improved user experience in defining slots in the calendar management
2019-10-23 17:48:31 +02:00
Sylvain
d7aed3fa1f
Improved notification email to the member when a rolling subscription is taken
2019-10-23 11:43:42 +02:00
Sylvain
58821555fe
Ability to set the default view in project gallery: openLab or local
2019-10-22 14:42:45 +02:00
Sylvain
d48e5602ce
[bug] admins can't edit members projects
2019-10-22 14:42:35 +02:00
Sylvain
fdcec06345
CVE-2019-16892 + #49
...
- updated rubyzip to fix a security issue
- updated axlsx and file writing method as a possible fix for #49
2019-10-21 16:11:49 +02:00
Sylvain
528e6f5e55
admin invoices interface: default selected tab depending on FABLAB_WITHOUT_INVOICES value
2019-10-21 15:24:27 +02:00
Sylvain
e8930924e4
[bug] do not display each days in invoices for multiple days event reservation
2019-10-16 16:11:37 +02:00
Sylvain
9e1e23f268
[bug] unauthorized user can see the edit project form
2019-10-16 15:21:50 +02:00
Sylvain
ab5ee0f2d8
[bug] invoices list is not shown by default in 'manage invoices' section
2019-10-14 10:59:56 +02:00
Sylvain
bc36b78719
[bug] public calendar won't show anything if the current date range include a reserved space availability ( #151 )
2019-10-14 10:38:13 +02:00
Sylvain
2897eec723
various bugfixes
...
- in profile_complete form, the user's group is not selected by default
- missing asterisks on some required fields in profile_complete form
- renamed default DatabaseProvider from Fablab to FabManager
2019-10-09 14:41:32 +02:00
Sylvain
7dbfbc4868
fix typo
2019-10-07 17:12:49 +02:00
Sylvain
38847844fb
display label on all rows in accounting export
2019-10-07 14:02:47 +02:00
Sylvain
19a125bd67
[bug] accounting export: on subscription + reservation invoice, the subscription item is exported twice
2019-10-07 12:08:08 +02:00
Sylvain
86f4c132b0
Merge branch 'cve-2015-9284' into dev
2019-10-02 16:08:40 +02:00
Sylvain
5fcf9968cb
Updated Omniauth & Omniauth-oauth2 + fixed oauth2 callback url
2019-10-02 16:06:27 +02:00
Sylvain
927479733b
migrated links to /users/auth from GET to POST
...
see https://github.com/omniauth/omniauth/wiki/Resolving-CVE-2015-9284 for more info
2019-10-02 14:37:47 +02:00
Sylvain
2cc7fb0e44
accounting export: display lable on all lignes
2019-10-02 10:25:06 +02:00
Sylvain
35b069a4db
added gem omniauth-rails_csrf_protection + [ongoing] moving from GET /users/auth/... to POST
2019-10-01 17:14:16 +02:00
Sylvain
877506b26a
[bug] unable to dissociate the last machine from a formation
2019-10-01 15:27:59 +02:00
Sylvain
29d6a1daa4
Merge branch 'uvsq' into dev
2019-10-01 14:32:58 +02:00
Sylvain
a7a929ddbc
integration unit test for imports + fixed import result colors in UI + fixed test fixtures
2019-10-01 14:32:30 +02:00
Sylvain
193e81e711
Merge branch 'uvsq' into dev
2019-09-30 15:34:21 +02:00
Sylvain
0d3cc0fe40
[feature] Ability to disable invoices generation and interfaces
2019-09-30 15:29:20 +02:00
Sylvain
8bd1d72fdf
improved results page
2019-09-30 12:49:50 +02:00
Sylvain
ba3161589c
update users through CSV import
2019-09-30 12:19:33 +02:00
Sylvain
ff5de97c92
import new users from CSV and view results in app
...
TODO:
- update users though CSV
2019-09-26 17:05:57 +02:00
Sylvain
4deaf1f75a
[ongoing] import members from csv
2019-09-25 16:37:42 +02:00
Sylvain
a532efd198
upload csv file to the server through the API and save it on the disk
2019-09-24 17:42:50 +02:00
Sylvain
ede53ad761
[feature] Ability to set project's CAO attachement maximum upload size
2019-09-24 16:40:38 +02:00
Sylvain
ad1b7baa05
import members interface
2019-09-24 15:21:18 +02:00
Sylvain
8eda1e673f
Merge remote-tracking branch 'origin/hotfixes' into dev
2019-09-24 14:43:14 +02:00
Sylvain
e7bb41f38d
[ongoing] import users from csv file: admin inteface
2019-09-24 12:21:19 +02:00
Sylvain
f75633e64e
[bug] create a plan does not set its name
2019-09-24 11:41:07 +02:00
Sylvain
588010ac0b
[feature] Optional reCaptcha checkbox in sign-up form
2019-09-23 17:46:46 +02:00
Nicolas Florentin
c49db3b512
fix api/reservations#index find statistic_profile_id from the user_id because user_id is not a column of reservations table anymore
2019-09-20 15:23:53 +02:00
Nicolas Florentin
22d4d3a78a
method date_range, test on all_day was never truthy
2019-09-20 15:03:49 +02:00
Nicolas Florentin
401df4cb77
delay_for does not exist anymore in sidekiq 5
2019-09-20 15:01:27 +02:00
Sylvain
de1cc2013a
[bug] after disabling a group, its associated plans are hidden from the interface
...
+ validate server-side that there's no more user in the group to disable
2019-09-19 15:34:21 +02:00
Sylvain
668eb43959
[bug] in case of unexpected server error during stripe payment process, the confirm button is not unlocked
2019-09-19 15:00:27 +02:00
Sylvain
a7dc3b2431
factorized invoice reference & order number code
2019-09-19 14:59:22 +02:00
Sylvain
2d6f5c3e81
wallet client line in accounting export + factorized accountingExportService
2019-09-19 13:57:33 +02:00
Sylvain
7d26932f6c
configure accounting codes & labels for wallet clients and other means clients
2019-09-19 11:51:14 +02:00
Sylvain
c76563f22f
wallet label in accounting export
2019-09-19 11:25:12 +02:00
Sylvain
f81a2e4343
wallet credit in accounting export
2019-09-19 11:10:26 +02:00
Sylvain
c905d3fbc5
use correct VAT infos in accounting export
2019-09-18 17:25:53 +02:00
Sylvain
cd2c8488c2
Compute the VAT per item in each invoices, instead of globally
2019-09-18 17:14:59 +02:00
Sylvain
02c7cb801f
factorized footprint computation
2019-09-18 15:09:14 +02:00
Sylvain
276a99c068
improved VAT history service + display dates when VAT was enabled in invoice configuration panel + do not render vat row in accouting export if vat was disabled
2019-09-18 13:28:53 +02:00
Sylvain
46c3497c85
ventilate coupon codes on items
2019-09-17 17:39:05 +02:00
Sylvain
30e7ce8377
[bug] invoices with total = 0, are marked as paid on site even if paid by card
2019-09-17 15:16:11 +02:00
Sylvain
1fa36d4029
renamed avoir_mode to payment_method
2019-09-17 14:48:06 +02:00
Sylvain
aef4cc49f2
fixes accounting codes setting + improved error handling
2019-09-17 13:00:25 +02:00
Sylvain
3348539fdf
export labels: user name + reference + summary, only on client line. Also: handling new export parameters (decimal separator, label length, export zeros)
2019-09-17 12:35:34 +02:00
Sylvain
f06bdaaf21
provide additional settings to export api
2019-09-16 16:31:16 +02:00
Sylvain
02d28e0b8c
improved accounting codes settings page (1 click saves all) + improved export file name
2019-09-16 14:39:47 +02:00
Sylvain
224b0d6dee
Merge branch 'sca' into dev
2019-09-12 12:53:56 +02:00
Sylvain
9d2e17d5d6
[bug] once a reservation was made, the reminder of the paid price is always 0 if a coupon was used
2019-09-12 12:25:13 +02:00
Sylvain
52afb6ef07
[bug] extend a current subscription for a member, does not reset his credits
2019-09-12 11:37:03 +02:00
Sylvain
53e02622b9
[bug] disabled groups still appears as available in sign-up modal
2019-09-12 11:14:04 +02:00
Nicolas Florentin
3c486e4b93
[Bug] unable to create the first user because role member was missing
2019-09-11 17:11:43 +02:00
Sylvain
539eb08b89
ability to disable the online payments through an env var
2019-09-11 17:08:00 +02:00
Sylvain
d977838d52
fix tests according to changes for stripe SCA
2019-09-11 16:20:47 +02:00
Sylvain
78e6392f60
do not display invoice update logs in test mode + updated reservations fixtures w/o stp_invoice_id column + helper script to run tests
2019-09-11 14:29:35 +02:00
Sylvain
9fc3c7f61c
[bug] Wallet credit inputs does not allow to put zeros at the end of the decimal part of the amount
2019-09-11 13:05:10 +02:00
Sylvain
3320ee103b
Log changes in Invoices or InvoiceItems records for better handling of accounting certification issues
2019-09-11 12:22:14 +02:00
Sylvain
f60d19fa27
allow reservations & subscriptions at price of zero
2019-09-11 11:51:04 +02:00
Sylvain
75f483a7a6
compute subscription price server-side for payments
2019-09-11 10:31:22 +02:00
Sylvain
ac0489a496
[bug] wallet usage is noted on subscription invoices even if wallet was not used + use payment confirm API for subscriptions only (sca)
2019-09-10 17:57:46 +02:00
Sylvain
4d0ac9b3ca
using stp_payment_intent_id instead of stp_invoice_id on new invoices
2019-09-10 16:45:45 +02:00
Sylvain
5a75db394c
[bug] Users with role 'member' cannot download their invoices
2019-09-10 14:46:07 +02:00
Sylvain
04f17d44d8
handle sca in js frontend
2019-09-10 12:46:02 +02:00
Sylvain
a96050a2e9
refactor payment process for sca
2019-09-10 11:46:14 +02:00
Sylvain
e9e27663cd
quick coding rules checking with rubocop
2019-09-09 18:04:31 +02:00
Nicolas Florentin
e94cf46fa4
ongoing work on sca stripe
2019-09-09 17:37:54 +02:00
Nicolas Florentin
f1958a300b
[Bug] unable to create the first user because role member was missing
2019-09-09 14:34:00 +02:00
Sylvain
510533e080
handle 2nd confirmation on server + display confirmation modal on the client
2019-09-05 17:17:51 +02:00
Sylvain
12447698f8
collect card details on the client & create a paymentIntent on the server
2019-09-05 16:17:02 +02:00
Sylvain
a0961314a4
[ongoing] upgrade stripe gem & api version to allow SCA
2019-09-05 11:03:22 +02:00
Sylvain
967f539ad9
[ongoing] update to stripe-js:v3 to use strong customer authentication
2019-09-04 17:20:18 +02:00
Sylvain
bebb3354fb
[bug] ( #140 ) VAT rate is erronous in invoices
2019-08-14 10:56:30 +02:00
Sylvain
92d79bc9c7
[bug] ( #140 ) VAT rate is erronous in invoices
2019-08-14 10:54:23 +02:00