Commit graph

3851 commits

Author SHA1 Message Date
Ivan Tashkinov
c8d3c3bfec Merge remote-tracking branch 'remotes/upstream/develop' into 1335-user-api-id-fields-relations
# Conflicts:
#	lib/pleroma/web/activity_pub/activity_pub.ex
2019-11-26 10:42:36 +03:00
Maxim Filippov
b62be2564c Merge branch 'develop' into feature/admin-api-render-whole-status 2019-11-26 00:25:43 +09:00
lain
dc9090810d Merge branch 'fix/ap-disable-remote-render' into 'develop'
Disable rendering AP representation for remote users and objects

See merge request pleroma/pleroma!2010
2019-11-25 15:23:45 +00:00
Maxim Filippov
b3b4e5ca80 AdminAPI: Grouped reports old/new fix
If some status received reports both in the "new" format and "old" format it was considered reports on two different statuses (in the context of grouped reports)
2019-11-26 00:20:46 +09:00
Maxim Filippov
1364d303f8 AdminAPI: Fix grouped reports for closed/resolved reports 2019-11-26 00:13:11 +09:00
rinpatch
4b10804f21 OStatus controller: don't serve json at /notice/, redirect instead 2019-11-25 17:55:17 +03:00
rinpatch
02f7383891 ActivityPub controller: do not render remote users 2019-11-25 17:19:33 +03:00
5f981178d0 Merge branch 'feature/admin-api-list-statuses-for-a-given-instance' into 'develop'
Admin API: list all statuses from a given instance

See merge request pleroma/pleroma!1981
2019-11-25 13:29:53 +00:00
9374b52756 Merge branch 'fix/update-reports-old-format' into 'develop'
Admin API: Fix error when trying to update reports in the "old" format

See merge request pleroma/pleroma!1986
2019-11-25 13:29:22 +00:00
Maxim Filippov
82f4e4760e Merge branch 'develop' into feature/admin-api-list-statuses-for-a-given-instance 2019-11-25 01:46:18 +09:00
Maxim Filippov
fd24467b92 Merge branch 'develop' into feature/admin-api-list-statuses-for-a-given-instance 2019-11-25 01:43:11 +09:00
Maxim Filippov
40059c9b1e Typo 2019-11-25 00:05:52 +09:00
Maxim Filippov
2b341627da Admin API: Render whole status in grouped reports 2019-11-25 00:04:29 +09:00
lain
bd62946020 Merge branch 'feature/confirm-user-acc-resend-confirmation' into 'develop'
AdminAPI: Confirm user account, resend confirmation email

See merge request pleroma/pleroma!1994
2019-11-22 15:39:19 +00:00
Ivan Tashkinov
cad9b325e5 Merge remote-tracking branch 'remotes/upstream/develop' into 1335-user-api-id-fields-relations
# Conflicts:
#	lib/pleroma/user/search.ex
#	test/user_test.exs
2019-11-21 16:47:52 +03:00
lain
8feb5dcb42 Merge branch 'issue/1348' into 'develop'
[#1348] excluded invisible actors from gets  /api/v1/accounts/:id

See merge request pleroma/pleroma!1937
2019-11-21 13:13:14 +00:00
Ivan Tashkinov
de892d2fe1 [#1335] Reorganized users.subscribers as UserRelationship. Added tests for UserRelationship-related functionality. 2019-11-20 15:46:11 +03:00
Ivan Tashkinov
555edd01ab [#1335] User AP ID relations fetching performance optimizations. 2019-11-20 12:19:07 +03:00
Ivan Tashkinov
ba5cc30165 [#1335] Implemented notification mutes and reblog mutes as UserRelationships. User to UserRelationship relations and functions refactoring. 2019-11-19 23:22:10 +03:00
Maksim Pechnikov
708fd234bd fix order favorites activites 2019-11-19 20:19:41 +03:00
Maxim Filippov
46eb160135 AdminAPI: Confirm user account, resend confirmation email 2019-11-19 20:14:02 +09:00
Maksim Pechnikov
5cee51fac5 fix order by for fetch_favorites 2019-11-18 21:34:54 +03:00
Ivan Tashkinov
3aaf3aa2c2 Merge remote-tracking branch 'remotes/upstream/develop' into 1335-user-api-id-fields-relations 2019-11-18 20:43:19 +03:00
Ivan Tashkinov
aad6576130 [#1335] Refactored UserMute and UserBlock into UserRelationship, introduced EctoEnum. 2019-11-18 20:38:56 +03:00
Maksim Pechnikov
0937895182 updated fetch_favorites 2019-11-18 16:56:47 +03:00
Maksim Pechnikov
9da4c88b49 fix test 2019-11-18 10:00:48 +03:00
Maksim Pechnikov
4beb3ce5c5 /api/v1/favourites: added sorting for activites by adds to favorites 2019-11-18 09:44:08 +03:00
Maxim Filippov
c506cc48ef Admin API: Error when trying to update reports in the "old" format 2019-11-16 18:44:48 +09:00
kaniini
81cba405af Merge branch 'nodeinfo-fields-limit' into 'develop'
Add fieldsLimit to metadata of nodeinfo

See merge request pleroma/pleroma!1983
2019-11-15 20:29:38 +00:00
Ivan Tashkinov
01d9c093c3 Merge remote-tracking branch 'remotes/upstream/develop' into 1335-user-api-id-fields-relations 2019-11-15 21:40:14 +03:00
Ivan Tashkinov
c31ddce51e [#1335] Reorganized users.mutes as relation to UserMute entity. 2019-11-15 21:38:54 +03:00
rinpatch
22554ac5ca Merge branch 'bugfix/1395-email-activation' into 'develop'
Bugfix/1395 email activation

Closes #1395

See merge request pleroma/pleroma!1965
2019-11-15 14:11:48 +00:00
lain
f17e0f8e4f OAuthPlug, Router: Handle deactivated users in the UserEnabledPlug 2019-11-15 14:13:21 +01:00
kPherox
72d2557e11 Add fieldsLimit to metadata of nodeinfo 2019-11-15 18:52:31 +09:00
Ariadne Conill
eecd64cc07 object age policy: remove debug logging 2019-11-14 19:56:14 -06:00
Ariadne Conill
5705cf0e3e MRF: add ObjectAgePolicy which deals with old posts being imported 2019-11-14 19:48:10 -06:00
Maxim Filippov
114930b5fd Merge branch 'develop' into feature/admin-api-list-statuses-for-a-given-instance 2019-11-14 23:45:29 +09:00
Maxim Filippov
30af5da330 Admin API: list all statuses from a given instance 2019-11-14 23:44:07 +09:00
rinpatch
09b4f7269e Merge branch 'fix/conversations-rendering' into 'develop'
Fix rendering conversations when there's a malformed status

Closes #1401

See merge request pleroma/pleroma!1973
2019-11-14 14:40:37 +00:00
rinpatch
94f1cfced8 format the code 2019-11-14 17:26:59 +03:00
1afeaf82fa Merge branch 'feature/reports-groups-and-multiple-state-update' into 'develop'
Admin API: Grouped reports, update multiple reports in one query

Closes admin-fe#43

See merge request pleroma/pleroma!1815
2019-11-14 13:35:41 +00:00
Egor Kislitsyn
3c0abfca53
Merge remote-tracking branch 'upstream/develop' into feature/move-activity 2019-11-14 16:39:45 +07:00
rinpatch
6085c71bd1 Merge branch 'reactions' into 'develop'
Emoji Reactions

See merge request pleroma/pleroma!1662
2019-11-14 08:47:10 +00:00
Phil Hagelberg
3c60adbc1f Support redirecting by activity UUID in static FE as well. 2019-11-13 08:22:11 -08:00
Phil Hagelberg
0867cb083e Support redirecting by object ID in static FE.
This matches the behavior of pleroma-fe better.

Fixes #1412.
2019-11-13 08:02:02 -08:00
Phil Hagelberg
62f3a93049 For remote notices, redirect to the original instead of 404.
We shouldn't treat these like local statuses, but I don't think a 404
is the right choice either here, because within pleroma-fe, these are
valid URLs. So with remote notices you have the awkward situation
where clicking a link will behave differently depending on whether you
open it in a new tab or not; the new tab will 404 if it hits static-fe.

This new redirecting behavior should improve that situation.
2019-11-12 09:40:29 -08:00
Egor Kislitsyn
768c1a5de1
Fix tests 2019-11-12 19:13:19 +07:00
Egor Kislitsyn
27cd1374e3
Add a notification for Move activities 2019-11-12 18:48:14 +07:00
Egor Kislitsyn
e6d7e27bd6
Add allow_following_move setting to User 2019-11-12 18:45:28 +07:00
Mark Felder
7d101bc9c5 Fix rendering conversations when there's a malformed status 2019-11-11 18:29:55 -06:00
e27d78e768 Merge branch 'nodeinfo-federation-enabled' into 'develop'
report federating status in nodeinfo

See merge request pleroma/pleroma!1971
2019-11-11 19:14:06 +00:00
kaniini
2cc043591c Merge branch 'feature/static-fe' into 'develop'
Static frontend

See merge request pleroma/pleroma!1917
2019-11-11 19:10:44 +00:00
href
b39b49cc14 report federating status in nodeinfo 2019-11-11 19:03:43 +01:00
lain
1ca7b877a1 Merge branch 'iss-1376' into 'develop'
Check client and token in GET /oauth/authorize

See merge request pleroma/pleroma!1940
2019-11-11 12:27:33 +00:00
Steven Fuchs
94627baa5c New rate limiter 2019-11-11 12:13:06 +00:00
Maxim Filippov
46787b9fe1 Merge branch 'develop' into feature/reports-groups-and-multiple-state-update 2019-11-11 19:18:12 +09:00
Ivan Tashkinov
3db988250b [#1335] User: refactored :blocks field into :blocked_users relation.
Introduced UserBlock.
2019-11-10 16:30:21 +03:00
lain
a88e834dba Merge branch 'develop' into 'reactions'
# Conflicts:
#   CHANGELOG.md
2019-11-10 11:32:50 +00:00
lain
3a1aaadc18 Merge branch 'issue/1339' into 'develop'
[#1339] add subject to atom feed

See merge request pleroma/pleroma!1961
2019-11-10 11:20:20 +00:00
Maksim Pechnikov
9d0b989521 add subject to atom feed 2019-11-10 11:10:20 +03:00
Phil Hagelberg
3cc49cdb78 Formatter moved to new module. 2019-11-09 18:30:23 -08:00
Phil Hagelberg
ef7c3bdc7a Add some further test cases.
Including like ... private visibility, cos that's super important.
2019-11-09 18:08:45 -08:00
Phil Hagelberg
4729027f91 Prevent non-local notices from rendering. 2019-11-09 18:08:45 -08:00
Phil Hagelberg
b0080fa730 Render errors in HTML, not with JS. 2019-11-09 18:08:08 -08:00
Phil Hagelberg
e27c61218d Expand subject content automatically when config is set. 2019-11-09 18:08:08 -08:00
Phil Hagelberg
bfd5d79826 Include metadata in static FE conversations and profiles. 2019-11-09 18:08:08 -08:00
Phil Hagelberg
828259fb65 Catch 404s. 2019-11-09 18:08:08 -08:00
Phil Hagelberg
df2f59be91 Pagination for user profiles. 2019-11-09 18:08:08 -08:00
Phil Hagelberg
8969c5522d Make many of the improvements suggested in review. 2019-11-09 18:08:08 -08:00
Phil Hagelberg
dc3b87d153 Move static FE routing into its own plug.
Previously it was piggybacking on FallbackRedirectController for users
and OStatusController for notices; now it's all in one place.
2019-11-09 18:08:08 -08:00
Phil Hagelberg
c6c706161e Make sure notice link is remote if the post is remote. 2019-11-09 18:08:08 -08:00
Phil Hagelberg
274cc18e8a Visually separate header. 2019-11-09 18:08:08 -08:00
Phil Hagelberg
2ac1ece652 Fix a bug where reblogs were displayed under the wrong user. 2019-11-09 18:08:08 -08:00
Phil Hagelberg
5d7c44266b Change date formatting. 2019-11-09 18:08:08 -08:00
Phil Hagelberg
1dc785b74b Move static-fe CSS to a separate file. 2019-11-09 18:07:50 -08:00
Phil Hagelberg
e4b9784c39 Show counts for replies, likes, and announces for selected notice.
Using text instead of an icon, for now.
2019-11-09 18:07:50 -08:00
Phil Hagelberg
93e9c0cedf Format dates using CommonAPI utils. 2019-11-09 18:07:50 -08:00
Phil Hagelberg
918e1353f6 Add header to profile/notice pages linking to pleroma-fe. 2019-11-09 18:07:50 -08:00
Phil Hagelberg
33a26b61c3 Remove activity/user representer; move logic to controller. 2019-11-09 18:07:50 -08:00
Phil Hagelberg
41fde63def Get rid of @data in views and use separate fields. 2019-11-09 18:07:50 -08:00
Phil Hagelberg
e944a2213d Use gettext for sensitive media warning. 2019-11-09 18:07:50 -08:00
Phil Hagelberg
2d1897e8a7 Apply all suggested changes from reviewers. 2019-11-09 18:07:50 -08:00
Phil Hagelberg
cc1b07132f Notices should show entire thread from context. 2019-11-09 18:07:08 -08:00
Phil Hagelberg
748d800acb Show images, video, and audio attachments to notices. 2019-11-09 18:07:08 -08:00
Phil Hagelberg
1d8950798c Fix activity_representer to work with User.get_or_fetch returning tuple. 2019-11-09 18:06:51 -08:00
Phil Hagelberg
0cf04e1088 Fix OStatus controller to know about StaticFEController.
But only when it's configured to be on.
2019-11-09 18:06:51 -08:00
Phil Hagelberg
e79d8985ab Don't show 404 in static-fe controller unless it's actually not found. 2019-11-09 18:06:51 -08:00
Phil Hagelberg
c1fc139986 Add permalinks to the static-fe notice rendering. 2019-11-09 18:06:51 -08:00
Phil Hagelberg
d1320160f4 Looks like source_data is on user directly now. 2019-11-09 18:06:51 -08:00
William Pitcock
ca5ef201ef static fe: add remote follow button 2019-11-09 18:06:51 -08:00
William Pitcock
b33fbd58e3 static fe: add support for message subjects 2019-11-09 18:06:51 -08:00
William Pitcock
e2904b5777 static fe: reformat activity representer 2019-11-09 18:06:51 -08:00
William Pitcock
2b5bd5236d static fe: add user profile rendering 2019-11-09 18:06:51 -08:00
William Pitcock
8f08da750a static fe: use a generic activity representer to render activities 2019-11-09 18:06:51 -08:00
William Pitcock
ff8d0902f3 static fe: formatting 2019-11-09 18:06:51 -08:00
William Pitcock
a4d3a8ec03 static fe: proof of concept 2019-11-09 18:06:51 -08:00
Ariadne Conill
532fd38b12 nodeinfo: add multifetch feature (ref pleroma-fe!977). 2019-11-08 12:48:28 -06:00
lain
b22ee9d966 Merge remote-tracking branch 'origin/develop' into reactions 2019-11-08 13:27:11 +01:00
Maxim Filippov
b14bf9044f Merge branch 'develop' into feature/reports-groups-and-multiple-state-update 2019-11-08 18:30:49 +09:00
Maxim Filippov
7258db023e Support old flag format 2019-11-08 18:21:29 +09:00
rinpatch
84175fe30e Set better Cache-Control header for static content
Closes #1382
2019-11-06 16:41:19 +03:00
Maxim Filippov
f171095960 Grouped reports with status data baked in 2019-11-06 21:25:46 +10:00
AkiraFukushima
e1fc6cb78f Check client and token in GET /oauth/authorize 2019-11-05 23:52:47 +09:00
Maxim Filippov
2cbfa256fd Merge branch 'develop' into feature/multiple-users-force-password-reset 2019-11-05 11:36:47 +10:00
Maxim Filippov
43ea16870f Merge branch 'develop' into feature/reports-groups-and-multiple-state-update 2019-11-05 02:12:48 +03:00
Maksim Pechnikov
4b7c11e3f9 excluded invisible actors from gets /api/v1/accounts/:id 2019-11-04 20:44:24 +03:00
eugenijm
ed29be24cb Mastodon API, streaming: Add pleroma.direct_conversation_id to the conversation stream event payload. 2019-11-04 18:36:16 +03:00
Steven Fuchs
5271bbcf11 add missing tesla mocks 2019-11-04 15:18:32 +00:00
lain
556da92902 Merge branch 'feature/store-statuses-data-inside-flag' into 'develop'
Store status data inside flag activity

See merge request pleroma/pleroma!1849
2019-11-04 14:11:44 +00:00
rinpatch
8dd7c099a7 Merge branch 'bugfix/streamer-follows' into 'develop'
streamer: use direct object for filter checks when there is no valid child object in an activity

Closes #1291

See merge request pleroma/pleroma!1931
2019-11-03 17:09:57 +00:00
Ariadne Conill
4bf942583f streamer: use direct object for filter checks when there is no valid child object in an activity
We call Object.normalize/1 to get the child object for situations like Announce.
However, the check is flawed and immediately fails if Object.normalize/1 fails.
Instead, we should use the activity itself in those cases to allow activities which
never have a child object to pass through the filter.

Closes #1291
2019-11-03 09:05:12 -06:00
Maxim Filippov
743b622b7b Force password reset for multiple users 2019-11-01 18:45:47 +03:00
Maxim Filippov
d75934b0d0 Undo dialyzer fix 2019-11-01 15:14:43 +03:00
Maxim Filippov
ced9f92327 Fix count 2019-10-31 15:34:49 +03:00
Maxim Filippov
6f9d3d30fa AdminAPI: Omit relay user from users list 2019-10-31 02:26:02 +03:00
Maxim Filippov
59a149c69a Fix "the call ... will never return" warning 2019-10-31 02:25:15 +03:00
Egor Kislitsyn
61fc739ab8
Handle "Move" activity 2019-10-30 18:21:49 +07:00
kPherox
0c361eeb25
Add pending to handle incoming for Follow activity 2019-10-29 17:12:49 +09:00
Egor Kislitsyn
4270861085
Merge branch 'develop' into feature/move-activity 2019-10-28 15:10:47 +07:00
lain
2480200759 Merge branch 'refactor/following-relationships' into 'develop'
Move following relationships to a separate table

Closes #1233

See merge request pleroma/pleroma!1814
2019-10-28 07:27:45 +00:00
Maxim Filippov
d56bc62275 Fix report parsing 2019-10-27 16:33:58 +03:00
Maxim Filippov
791bcfd90f Merge branch 'develop' into feature/store-statuses-data-inside-flag 2019-10-27 16:11:25 +03:00
Maxim Filippov
8eff05d4c6 Strip status data from Flag (when federating or closing/resolving report) 2019-10-27 16:05:32 +03:00
eugenijm
0580654485 Mark the conversations with the blocked user as read and update the blocking user's unread_conversation_count.
Since the conversations with the blocked user are invisible, they are excluded
from the blocking user's `unread_conversation_count`.
2019-10-26 02:29:18 +03:00
Egor Kislitsyn
b777083f3f
Add also_known_as field to Pleroma.User 2019-10-25 19:14:18 +07:00
Egor Kislitsyn
4c1dd55c48 Merge remote-tracking branch 'upstream/develop' into refactor/following-relationships 2019-10-24 14:55:36 +07:00
Maxim Filippov
b08b1d5d91 Store status data inside Flag activity 2019-10-23 21:27:22 +02:00
Ivan Tashkinov
c0246309a5 [#1304] Extra bullet-proofing. 2019-10-23 19:30:02 +03:00
Ivan Tashkinov
8cc809e44e Merge remote-tracking branch 'remotes/upstream/develop' into 1304-user-info-deprecation
# Conflicts:
#	lib/pleroma/notification.ex
2019-10-23 17:22:42 +03:00
Ariadne Conill
3f6a596922 activitypub: visibility: refactor is_public?() to use JSON-LD safe accessors 2019-10-22 20:50:46 -05:00
kaniini
6281e4795a Merge branch 'feature/push-subject-for-dm' into 'develop'
Direct messages should provide a distinct push notification subject

See merge request pleroma/pleroma!1864
2019-10-21 23:50:01 +00:00
Ivan Tashkinov
7c7f90bc4f [#1304] Merged develop, handled User.Info.invisible. 2019-10-21 11:58:22 +03:00
Maksim Pechnikov
243719a965 Merge branch 'develop' into feature/masto_api_markers 2019-10-21 11:32:28 +03:00
Ivan Tashkinov
a11a7176d5 Merge remote-tracking branch 'remotes/upstream/develop' into 1304-user-info-deprecation
# Conflicts:
#	lib/pleroma/user/info.ex
#	lib/pleroma/web/activity_pub/activity_pub.ex
#	lib/pleroma/web/activity_pub/transmogrifier.ex
2019-10-21 11:05:09 +03:00
Egor Kislitsyn
c6fba62666
Fix Relay 2019-10-21 14:47:07 +07:00
Egor Kislitsyn
4ea1a61b00
Merge branch 'develop' into refactor/following-relationships 2019-10-21 14:19:15 +07:00
Ivan Tashkinov
ee04fbc35a [#1304]. Post-merge fixes. Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into 1304-user-info-deprecation
# Conflicts:
#	CHANGELOG.md
#	lib/pleroma/notification.ex
#	lib/pleroma/user.ex
#	lib/pleroma/user/info.ex
#	lib/pleroma/web/admin_api/admin_api_controller.ex
#	lib/pleroma/web/ostatus/handlers/follow_handler.ex
#	lib/pleroma/web/ostatus/ostatus.ex
#	lib/pleroma/web/salmon/salmon.ex
#	lib/pleroma/web/websub/websub.ex
#	test/web/admin_api/admin_api_controller_test.exs
#	test/web/federator_test.exs
#	test/web/mastodon_api/controllers/conversation_controller_test.exs
#	test/web/ostatus/ostatus_controller_test.exs
#	test/web/ostatus/ostatus_test.exs
#	test/web/salmon/salmon_test.exs
#	test/web/websub/websub_test.exs
2019-10-20 22:29:56 +03:00
Ivan Tashkinov
c6fdfbc4f1 Merge remote-tracking branch 'remotes/upstream/develop' into 1304-user-info-deprecation
# Conflicts:
#	CHANGELOG.md
#	lib/pleroma/notification.ex
#	lib/pleroma/user.ex
#	lib/pleroma/user/info.ex
#	lib/pleroma/web/activity_pub/activity_pub.ex
#	lib/pleroma/web/admin_api/admin_api_controller.ex
#	lib/pleroma/web/ostatus/handlers/follow_handler.ex
#	lib/pleroma/web/ostatus/ostatus.ex
#	lib/pleroma/web/salmon/salmon.ex
#	lib/pleroma/web/websub/websub.ex
#	test/web/admin_api/admin_api_controller_test.exs
#	test/web/federator_test.exs
#	test/web/mastodon_api/controllers/conversation_controller_test.exs
#	test/web/ostatus/ostatus_controller_test.exs
#	test/web/ostatus/ostatus_test.exs
#	test/web/salmon/salmon_test.exs
#	test/web/websub/websub_test.exs
2019-10-20 20:43:18 +03:00
Ivan Tashkinov
e8843974cb [#1304] Moved remaining fields from User.Info to User.
Misc. fixes / improvements.
2019-10-20 13:42:42 +03:00
Ariadne Conill
c9280b9730 rework to use properties instead of compound typing, per SocialCG 2019-10-19 23:21:37 +00:00
Ariadne Conill
ef659331b0 implement invisible support for remote users 2019-10-19 23:21:37 +00:00
Ariadne Conill
1469a084d4 relay: set invisible to true 2019-10-19 23:21:37 +00:00
Haelwenn
f01dbc450c Merge branch 'feature/mastofe-pwa' into 'develop'
MastoFE: Add PWA manifest.

See merge request pleroma/pleroma!1834
2019-10-19 20:11:58 +00:00
eugenijm
52ed2f8f2d Pleroma API: POST /api/v1/pleroma/conversations/read to mark all user's conversations as read 2019-10-19 15:24:06 +03:00
KokaKiwi
638457ba94 MastoFE: Add PWA manifest. 2019-10-19 12:15:14 +02:00
Mark Felder
dcb23a85b6 Merge branch 'develop' into feature/push-subject-for-dm 2019-10-18 17:56:15 -05:00
Mark Felder
152caef51d Direct messages should provide a distinct push notification subject 2019-10-18 17:51:34 -05:00
Maxim Filippov
019147f115 Merge branch 'develop' into feature/relay-list 2019-10-18 18:35:58 +02:00
Ariadne Conill
bae96de273 activitypub: tag containment checks for better error tracing 2019-10-18 14:50:10 +00:00
Ariadne Conill
48059c03c9 fix up some tests 2019-10-18 14:50:09 +00:00