5912 Commits (552966a1f64a7f12b7286a4bd42bbfb82a4fc5d8)

Author SHA1 Message Date
yflory 2e81605c95 New kanban structure with drag&drop support 5 years ago
David Benqué 8fd8881085 remove XXX relating to translation keys 5 years ago
David Benqué e8fac0333a change order of contextual menu in Drive 5 years ago
yflory 60862d9f87 Fix isLoggedIn issue 5 years ago
ansuz 5eefc6d0aa Merge branch 'bigger-uploads' into staging 5 years ago
ansuz 0989595358 lint compliance 5 years ago
yflory e18c224db4 Faster sort function in drive 5 years ago
yflory e84503bd52 fixFiles optimizations 5 years ago
ansuz 59ad80d7f1 support larger upload sizes for users with premium accounts 5 years ago
ansuz 87ef2b0899 Merge branch 'user-admin-logout-everywhere' into staging 5 years ago
ansuz f951951077 merge communities-allow-list and lint compliance 5 years ago
yflory 4f9862de71 Fix trim history when owned by a team 5 years ago
ansuz 9c4693365a logout-everywhere from the userAdmin menu 5 years ago
David Benqué e328ae97fd change owner icon
- badge icon for owned pads
- no icons for pads owned by someone else or without an owner
5 years ago
yflory 8eaf197b5b Disable 'make a copy' for spreadsheets in the drive 5 years ago
yflory 99f04c3d6f Merge branch 'staging' of github.com:xwiki-labs/cryptpad into staging 5 years ago
yflory f103a0fb08 Fix dropping files in non-ROOT categories in the drive 5 years ago
Weblate 20b591a39c Translated using Weblate (German)
Currently translated at 100.0% (1215 of 1215 strings)

Translation: CryptPad/App
Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/de/
5 years ago
yflory 6e6ba73eca Remove XXX 5 years ago
yflory 59d23ef5ff Fix issues with trim history button 5 years ago
ansuz cac114bb52 merge staging into pending allow-list work 5 years ago
Weblate 78c292bc2e Translated using Weblate (Italian)
Currently translated at 41.3% (501 of 1213 strings)

Translation: CryptPad/App
Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/it/
5 years ago
Weblate e292a0b295 Translated using Weblate (French)
Currently translated at 100.0% (1215 of 1215 strings)

Translation: CryptPad/App
Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/fr/
5 years ago
Weblate 01ba2c4d40 Translated using Weblate (English)
Currently translated at 100.0% (1215 of 1215 strings)

Translation: CryptPad/App
Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/en/

Translated using Weblate (English)

Currently translated at 100.0% (1214 of 1214 strings)

Translation: CryptPad/App
Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/en/
5 years ago
Weblate 316d2a4689 Translated using Weblate (German)
Currently translated at 100.0% (1213 of 1213 strings)

Translation: CryptPad/App
Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/de/
5 years ago
yflory ff97c2cf63 Add (copy) to the title for copied pads 5 years ago
ansuz 77785e79af Merge branch 'communities-allow-list' of github.com:xwiki-labs/cryptpad into communities-allow-list 5 years ago
ansuz 075eddb1db guard against a typeError if there are no owners 5 years ago
yflory cebb2d3900 Merge branch 'communities-allow-list' of github.com:xwiki-labs/cryptpad into communities-allow-list 5 years ago
yflory 0990148810 Fix team ownership in the access modal 5 years ago
yflory 3abe522a9f Make a copy 5 years ago
ansuz ad7096d754 Merge branch 'communities-allow-list' of github.com:xwiki-labs/cryptpad into communities-allow-list 5 years ago
ansuz 42ffb4efb6 Merge branch 'staging' into communities-allow-list 5 years ago
yflory 2cceb54aac Fix cornerPopup timeout not always applied 5 years ago
yflory d0bce11c21 Fix errors when an anonymous user leaves the shared worker 5 years ago
yflory d3939e87b2 Fix readOnly mode in spreadsheets 5 years ago
yflory e6c948febb Display ERESTRICTED error in the UI 5 years ago
yflory 866ce6fb7d Add translation key 5 years ago
yflory 9d5bf7e1bb Disable allow list for files and shared folders 5 years ago
yflory 521db379a0 Add access button in all the apps 5 years ago
yflory 620995506e lint compliance 5 years ago
yflory 43492b6df5 Add mute pad option 5 years ago
yflory b4ca18d7c2 Fix access modal bug 5 years ago
yflory 57c360ebf6 Refresh access modal when other tabs make changes 5 years ago
yflory bd0e4e66bb Fix allow list issues 5 years ago
yflory d0eb96815d Merge remote-tracking branch 'origin/communities-allow-list' into communities-allow 5 years ago
yflory e861cd3ab7 lint compliance 5 years ago
yflory 5f8ae61bd4 Add request access button to the access modal 5 years ago
yflory ef4188db5b Fix translation keys and fix UI 5 years ago
yflory 175423fee4 Add translation keys 5 years ago
yflory 17113f298c Display allow list state in access modal 5 years ago
ansuz d5e8fc35f7 Merge branch 'mkTimeout' into communities-allow-list 5 years ago
yflory 04009bf9bb Merge branch 'staging' of github.com:xwiki-labs/cryptpad into staging 5 years ago
yflory d48cecf28e Load mailboxes after teams 5 years ago
David Benqué 72564a7cfe Merge remote-tracking branch 'origin/staging' into staging 5 years ago
Weblate 70b87f31dd Translated using Weblate (French)
Currently translated at 100.0% (1213 of 1213 strings)

Translation: CryptPad/App
Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/fr/
5 years ago
Weblate 7cf9758428 Translated using Weblate (English)
Currently translated at 100.0% (1213 of 1213 strings)

Translation: CryptPad/App
Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/en/

Translated using Weblate (English)

Currently translated at 100.0% (1212 of 1212 strings)

Translation: CryptPad/App
Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/en/

Translated using Weblate (English)

Currently translated at 100.0% (1211 of 1211 strings)

Translation: CryptPad/App
Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/en/

Translated using Weblate (English)

Currently translated at 100.0% (1210 of 1210 strings)

Translation: CryptPad/App
Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/en/

Translated using Weblate (English)

Currently translated at 100.0% (1209 of 1209 strings)

Translation: CryptPad/App
Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/en/

Translated using Weblate (English)

Currently translated at 100.0% (1208 of 1208 strings)

Translation: CryptPad/App
Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/en/

Translated using Weblate (English)

Currently translated at 100.0% (1207 of 1207 strings)

Translation: CryptPad/App
Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/en/

Translated using Weblate (English)

Currently translated at 100.0% (1206 of 1206 strings)

Translation: CryptPad/App
Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/en/

Translated using Weblate (English)

Currently translated at 100.0% (1205 of 1205 strings)

Translation: CryptPad/App
Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/en/

Translated using Weblate (English)

Currently translated at 100.0% (1204 of 1204 strings)

Translation: CryptPad/App
Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/en/

Translated using Weblate (English)

Currently translated at 100.0% (1203 of 1203 strings)

Translation: CryptPad/App
Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/en/

Translated using Weblate (English)

Currently translated at 100.0% (1202 of 1202 strings)

Translation: CryptPad/App
Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/en/
5 years ago
Weblate 9943e3be78 Translated using Weblate (Italian)
Currently translated at 41.6% (500 of 1201 strings)

Translation: CryptPad/App
Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/it/
5 years ago
yflory f04a6056ae Fix race condition with team access rights #497 5 years ago
yflory 3647d583f8 Add allowList tab 5 years ago
David Benqué 1f99c185f6 add new error key 5 years ago
David Benqué 64964e1f80 remove XXXs related to keys 5 years ago
yflory 0a45d48710 Improve ownership UI 5 years ago
yflory 81a0bbb0ef Add owners tab 5 years ago
yflory de820dc0d1 Split properties modal into 2 modals 5 years ago
yflory ff895bbc82 Move inner files 5 years ago
yflory 10f97354fe Fix text duplication bug #352 5 years ago
yflory adc64f0c6e Merge branch 'staging' of github.com:xwiki-labs/cryptpad into staging 5 years ago
yflory 1d24c85ca4 Add author and time of patches in debug app 5 years ago
ansuz 2df65ed446 implement 'mkTimeout' method in common-util 5 years ago
ansuz a172bad30f drop unnecessary reference to 'window' in Util.throttle 5 years ago
yflory 723ed5248f Fix double tippy in drive elements 5 years ago
yflory f8ddb6b7bc Fix anchor link in code 5 years ago
yflory a6e3208dff lint compliance 5 years ago
yflory d58244b4c4 Support relative url and anchor url in code 5 years ago
yflory bba769ef77 Use throttle to link to support tickets 5 years ago
yflory a9e4af1d12 Merge branch 'staging' of github.com:xwiki-labs/cryptpad into staging 5 years ago
yflory 5d1e1c975c Link to a support ticket 5 years ago
ansuz 672725629c Merge branch 'communities-trim' into merge-trim 5 years ago
yflory 093816cbb2 lint compliance 5 years ago
yflory 5a2b36d443 Merge branch 'soon' of github.com:xwiki-labs/cryptpad into soon 5 years ago
ansuz c9db3aae78 Merge branch 'staging' into soon 5 years ago
yflory 778be9446d Fix drive refreshing the UI twice at startup 5 years ago
yflory 415fc27539 Pin todo and trim its history 5 years ago
yflory 035707bd38 Fix freeze effect after typing a wrong password in login/register 5 years ago
yflory 72d41e34fe lint compliance 5 years ago
yflory 0617d9efc5 Change UI for account migration in settings 5 years ago
yflory b585cbba42 Improve trim history UI when completed 5 years ago
yflory 0f697ac865 Merge branch 'staging' into communities-trim 5 years ago
ansuz bd163e65f3 Merge branch 'staging' into soon 5 years ago
ansuz 9cac465b08 add missing font-awesome share icon to the safe link hint 5 years ago
yflory 7fdf67b438 Merge branch 'staging' of github.com:xwiki-labs/cryptpad into staging 5 years ago
yflory 44de8a41a1 Improve confirm modal keydown listeners 5 years ago
Weblate 4f9d0d71f9 Update translation files
Updated by "Cleanup translation files" hook in Weblate.

Translation: CryptPad/App
Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/
5 years ago
Weblate 8f06090626 Update translation files
Updated by "Cleanup translation files" hook in Weblate.

Translation: CryptPad/App
Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/
5 years ago
Weblate fbf1e287e9 Update translation files
Updated by "Cleanup translation files" hook in Weblate.

Translation: CryptPad/App
Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/
5 years ago
Weblate 985ed2505d Translated using Weblate (German)
Currently translated at 100.0% (1201 of 1201 strings)

Translation: CryptPad/App
Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/de/

Update translation files

Updated by "Cleanup translation files" hook in Weblate.

Translation: CryptPad/App
Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/
5 years ago
Weblate 80ae86cda3 Update translation files
Updated by "Cleanup translation files" hook in Weblate.

Translation: CryptPad/App
Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/
5 years ago
Weblate be929ecc8f Update translation files
Updated by "Cleanup translation files" hook in Weblate.

Translation: CryptPad/App
Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/
5 years ago
Weblate ac39a97a0f Update translation files
Updated by "Cleanup translation files" hook in Weblate.

Translation: CryptPad/App
Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/
5 years ago
Weblate 9c6109799e Update translation files
Updated by "Cleanup translation files" hook in Weblate.

Translation: CryptPad/App
Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/
5 years ago
Weblate b73ef31a2c Update translation files
Updated by "Cleanup translation files" hook in Weblate.

Translation: CryptPad/App
Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/
5 years ago
Weblate d372f436d8 Update translation files
Updated by "Cleanup translation files" hook in Weblate.

Translation: CryptPad/App
Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/
5 years ago
Weblate 67a837349b Update translation files
Updated by "Cleanup translation files" hook in Weblate.

Translation: CryptPad/App
Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/
5 years ago
yflory 532333d427 Fix keyboard shortcut in confirm 5 years ago
yflory a86469206e Fix horizontal scrollbar again 5 years ago
yflory bf7f2e5bcd Fix upload table horizontal scrollbar + add autoscroll 5 years ago
yflory 6a365da3d8 Merge branch 'sidebarlayout' into staging 5 years ago
yflory 4cd39f4f32 Merge branch 'staging' of github.com:xwiki-labs/cryptpad into staging 5 years ago
yflory 40b144f87b remove XXX 5 years ago
David Benqué 1c9132adcb Merge remote-tracking branch 'origin/staging' into staging 5 years ago
David Benqué a328dc6c08 fix text input color in team chat 5 years ago
yflory b69261d119 Display the share modal after folder conversion to sf 5 years ago
yflory 830c401f50 Remove invalid option in context menu 5 years ago
yflory d0f8458dd2 Fix openincode in anon shared folders 5 years ago
yflory 09076f39ff Fix and reenable folder to SF conversion 5 years ago
David Benqué fbd8700a18 fix highlighting of support messages 5 years ago
yflory 403867d4cd Merge branch 'staging' of github.com:xwiki-labs/cryptpad into staging 5 years ago
yflory 7ca92526e7 Remove 'Owned pads' category from the drive 5 years ago
yflory 243abc3e53 Change default settings for hidden hash 5 years ago
David Benqué 6c23afdcc6 fix max-width 5 years ago
David Benqué 961cb8e427 apply max-width only to settings 5 years ago
yflory 4d2538c796 Make hidden hashes disabled by default 5 years ago
David Benqué f23649c1ce remove obsolete keys 5 years ago
Weblate 1332f33a1a Translated using Weblate (French)
Currently translated at 100.0% (1204 of 1204 strings)

Translation: CryptPad/App
Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/fr/
5 years ago
Weblate 49294fc0c3 Translated using Weblate (English)
Currently translated at 100.0% (1204 of 1204 strings)

Translation: CryptPad/App
Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/en/
5 years ago
yflory 7d0dbe5d09 Remove XXX 5 years ago
yflory 1a1620f76d Merge branch 'staging' of github.com:xwiki-labs/cryptpad into staging 5 years ago
yflory ea5c6defe6 Fix import mediatag to the drive 5 years ago
David Benqué fede44c8e5 remove XXXs related to translation keys 5 years ago
David Benqué f9b101dcd9 use the same key to say 'don't show again' 5 years ago
Weblate 4cf834fb22 Translated using Weblate (English)
Currently translated at 100.0% (1204 of 1204 strings)

Translation: CryptPad/App
Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/en/

Translated using Weblate (English)

Currently translated at 100.0% (1204 of 1204 strings)

Translation: CryptPad/App
Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/en/

Translated using Weblate (English)

Currently translated at 100.0% (1203 of 1203 strings)

Translation: CryptPad/App
Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/en/

Translated using Weblate (English)

Currently translated at 100.0% (1202 of 1202 strings)

Translation: CryptPad/App
Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/en/

Translated using Weblate (English)

Currently translated at 100.0% (1201 of 1201 strings)

Translation: CryptPad/App
Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/en/

Translated using Weblate (English)

Currently translated at 100.0% (1200 of 1200 strings)

Translation: CryptPad/App
Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/en/

Translated using Weblate (English)

Currently translated at 100.0% (1199 of 1199 strings)

Translation: CryptPad/App
Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/en/

Translated using Weblate (English)

Currently translated at 100.0% (1198 of 1198 strings)

Translation: CryptPad/App
Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/en/
5 years ago
Weblate 164e5d63d2 Translated using Weblate (French)
Currently translated at 100.0% (1204 of 1204 strings)

Translation: CryptPad/App
Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/fr/
5 years ago
Weblate 961f475dcd Translated using Weblate (Catalan)
Currently translated at 51.5% (616 of 1197 strings)

Translation: CryptPad/App
Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/ca/
5 years ago
yflory 9ba786df4c Fix avatar in notification history 5 years ago
yflory 9e60c8eb93 Show more than 5 entries in the upload table 5 years ago
yflory 331054870f Better sidebar layout for mobile 5 years ago
yflory 12a45377e7 Fix password change issues with read-only pads or from the drive 5 years ago
yflory 086e500b8e Fix hidden hash error with password change 5 years ago
yflory 5d77857012 Merge branch 'staging' into communities-trim 5 years ago
yflory 753fdbdc12 Display error for pad history trim 5 years ago
yflory 8d01711244 Disable trim history is nothing to remove 5 years ago
yflory b8ee120b49 lint compliance 5 years ago
yflory 9c6ab86e4d Fix syntax error 5 years ago
yflory d8199b8274 Update UI for trim history 5 years ago
yflory 9a857ea058 Merge branch 'staging' into communities-trim 5 years ago
yflory b96079cd44 Remove hidden hash XXX 5 years ago
yflory 4079f1bfdb Fix RPC command 5 years ago
yflory e6709f03aa Add trim history RPC command 5 years ago
yflory 6db7fbac0f lint 5 years ago
yflory c9676e1c91 Merge branch 'staging' into communities-trim 5 years ago
yflory 1c013d8a4f Fix stacking disconnection alerts 5 years ago
yflory 768dc71803 Fix remote changes in codemirror hijacking cursor 5 years ago
yflory a973f907e5 Merge branch 'cornerPopup' into staging 5 years ago
yflory 78795a3b4d Login or register in profile for anonymous users 5 years ago
David Benqué 443fb6e22d use variable for password input height 5 years ago
yflory 2ee38ccc42 lint compliance 5 years ago
yflory 653d58433e Add link to profile in notifications 5 years ago
ansuz 6ae6445d95 fix merge conflict 5 years ago
yflory 2e631a8b5f New UI tool: confirm button 5 years ago
yflory 689ea40a92 Compute history size in the worker 5 years ago
yflory d736f783e7 Add txid in GET_HISTORY 5 years ago
yflory a9f8402110 Fix clear history in contacts 5 years ago
ansuz d1c6e67d17 throw if you try to mkAsync a non-function 5 years ago
ansuz 3601bd6429 leave an XXX note to make sure we fix this typeError 5 years ago
ansuz 24b4931816 Merge branch 'staging' of github.com:xwiki-labs/cryptpad into trim-history 5 years ago
yflory c58a50081b lint compliance 5 years ago
yflory 4ac2f64726 Add history trim in the properties modal 5 years ago
yflory 4680de12ee New UI for the corner popup 5 years ago
yflory 5ead391706 Add comments and improve trim history warnings 5 years ago
yflory 53f19920f0 History trimming in settings 5 years ago
yflory b28f262c86 History trimming placeholder 5 years ago
yflory 19c329f6e7 Trim history option in settings (UI only) 5 years ago
yflory 214d4e8e42 Remove deprecated option in settings 5 years ago
yflory cfa4c6e7bb Fix type error in mailbox 5 years ago
yflory 4e7bb57129 Fix debug app 5 years ago
yflory 5673aa687c Unlock onlyoffice's cells sooner 5 years ago
yflory 2060223edb Remove tippy in TOC 5 years ago
yflory 5e463258eb Test onlyoffice lock 5 years ago
yflory 9345747d19 OnlyOffice reconnect: force a page reload in we have pending changes 5 years ago
Weblate 69a08be7f9 Translated using Weblate (German)
Currently translated at 100.0% (1197 of 1197 strings)

Translation: CryptPad/App
Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/de/
5 years ago
Weblate d8f86b646a Translated using Weblate (French)
Currently translated at 100.0% (1197 of 1197 strings)

Translation: CryptPad/App
Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/fr/
5 years ago
yflory 29d4da13eb lint compliance 5 years ago
yflory e90bdb8b7e Fix indentation 5 years ago
yflory f253e19575 Merge branch 'communities-hash' into staging 5 years ago
yflory 464eaee49a Restore full hash when safe hash is deleted from the drive 5 years ago
yflory 9961bffd48 Fix XXX in sframe-common-outer 5 years ago
yflory d979131a85 Add XXX 5 years ago
yflory 31f05a591c Merge branch 'staging' of github.com:xwiki-labs/cryptpad into staging 5 years ago
yflory 0a543ae6ea Enable onlyoffice reconnection 5 years ago
yflory e32398b308 lint compliance 5 years ago
yflory 745bcd7363 Fix function name 5 years ago
Weblate 0008365f74 Update translation files
Updated by "Cleanup translation files" hook in Weblate.

Translation: CryptPad/App
Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/
5 years ago
Weblate a4f99c3114 Translated using Weblate (French)
Currently translated at 100.0% (1197 of 1197 strings)

Translation: CryptPad/App
Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/fr/

Update translation files

Updated by "Cleanup translation files" hook in Weblate.

Translation: CryptPad/App
Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/
5 years ago
Weblate 5ec884ad1c Update translation files
Updated by "Cleanup translation files" hook in Weblate.

Translation: CryptPad/App
Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/

Translated using Weblate (Finnish)

Currently translated at 75.9% (910 of 1199 strings)

Translation: CryptPad/App
Translate-URL: http://weblate.cryptpad.fr/projects/cryptpad/app/fi/
5 years ago
David Benqué 808317f8c1 Merge remote-tracking branch 'origin/staging' into staging 5 years ago
David Benqué 4d986cd60f corrections 5 years ago
ansuz 3e3c495e82
Merge pull request #495 from xwiki-labs/differentiate-admin-messages
Differentiate admin messages
5 years ago
yflory b84299ff89 Move elements in settings 5 years ago
yflory f0f91b7ab2 Create the folders recursively if a new pad path doesn't exist 5 years ago