<feed xmlns='http://www.w3.org/2005/Atom'>
<title>FreshRSS (Customized)/lib/core-extensions/UserJS/extension.php, branch 1.28.1</title>
<subtitle>Customized version of FreshRSS, a self-hosted RSS feed aggregator</subtitle>
<id>https://git.rdnlsmith.com/fresh-rss-custom/atom?h=1.28.1</id>
<link rel='self' href='https://git.rdnlsmith.com/fresh-rss-custom/atom?h=1.28.1'/>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/'/>
<updated>2025-07-31T11:53:14+00:00</updated>
<entry>
<title>Implement sudo mode / reauthentication (#7753)</title>
<updated>2025-07-31T11:53:14+00:00</updated>
<author>
<name>Inverle</name>
<email>inverle@proton.me</email>
</author>
<published>2025-07-31T11:53:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=3ce64d271b2b470bd6c9f7294946347dcdfed9b9'/>
<id>urn:sha1:3ce64d271b2b470bd6c9f7294946347dcdfed9b9</id>
<content type='text'>
* Implement sudo mode / reauthentication

* i18n: fr

* generate flags

* Improvements

* Remove HMAC check
* Don't require reauth to access logs when signed in as admin
* Notify user of bad login via notification instead

---------

Co-authored-by: Alexandre Alapetite &lt;alexandre@alapetite.fr&gt;</content>
</entry>
<entry>
<title>Secure serving of user files from extensions (#7495)</title>
<updated>2025-04-07T06:47:42+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2025-04-07T06:47:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=0c33d2713957eaf6cc0222150df7ebbcb53beaed'/>
<id>urn:sha1:0c33d2713957eaf6cc0222150df7ebbcb53beaed</id>
<content type='text'>
* Secure serving of user files from extensions
fix https://github.com/FreshRSS/FreshRSS/issues/4930

* More fixes

* Typo</content>
</entry>
<entry>
<title>Fix HTML encodings in e.g. cURL options (#6821)</title>
<updated>2024-09-22T09:05:06+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2024-09-22T09:05:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=1c09408c6459eb8d719d94ba593edfa44883cb85'/>
<id>urn:sha1:1c09408c6459eb8d719d94ba593edfa44883cb85</id>
<content type='text'>
* Fix HTML encodings in e.g. cURL options

* Trim headers whitespace</content>
</entry>
<entry>
<title>Add core extensions: UserCSS, UserJS (#6267)</title>
<updated>2024-06-05T18:58:19+00:00</updated>
<author>
<name>hkcomori</name>
<email>hkcomori@gmail.com</email>
</author>
<published>2024-06-05T18:58:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=99b1d551e61adb5cbd014677f151f443b0c6c35f'/>
<id>urn:sha1:99b1d551e61adb5cbd014677f151f443b0c6c35f</id>
<content type='text'>
* Copy CustomCSS and CustomJS

Original: FreshRSS/Extensions@9f21984

* Rename CustomCSS -&gt; UserCSS

* Rename CustomJS -&gt; UserJS

* Change metadata

The name is used for the directory where the configuration
is stored and should not contain spaces.
Since the name was changed, I reset the version number and
changed to semantic versioning.

* Change data directory

Changed the location of the configuration file to
the user data directory, because it is not `static`.
That way, the user's configurations are gathered
in the user directory, which makes it easier to backup them.

* Edit documentations

Remove procedures to install the extension
because it is no longer necessary.

* Fix wrong variables in the configuration page

Remove permission error indication because the storage location
is now in the user data directory managed by the application.

* Remove the `xExtension-` prefix for core extensions

* Set version to 1.0.0 for UserCSS, UserJS

* Refactoring

* Remove unused variables

* Remove version 0.0.1 in Changelog

Version 0.0.1 will not be merged, so only version 1.0.0 will remain.

* public getFileUrl

* Revert more protected

* Use entrypoint for extension user path instead of name

* Add space to extension name

* Add `#[\Override]`

* Add explains of User CSS and User JS to docs

* Remove README of User CSS and User JS

* Add migration code for extension user path

---------

Co-authored-by: Alexandre Alapetite &lt;alexandre@alapetite.fr&gt;</content>
</entry>
</feed>
