Compare commits

...

12 Commits

Author SHA1 Message Date
Jonas 15bbc841e6
Merge 537964ee8b into c2e61304c1 2024-11-30 19:06:16 +00:00
Baptiste Fotia c2e61304c1
Merge pull request #307 from arawa/release/2.7.3
Release/2.7.3
2024-11-28 16:22:15 +01:00
Sébastien Marinier c5f8eab5e5
Merge branch 'master' into release/2.7.3 2024-11-19 18:04:01 +01:00
Jonas 537964ee8b
Merge branch 'master' into fix/copy-as-plaintext 2024-11-19 12:42:30 +01:00
Sebastien Marinier 632ea4a0f5 chore: can't test 8.3 2024-11-13 15:58:35 +01:00
Sébastien Marinier e70ddcc322
Merge branch 'littleredbutton:master' into release/2.7.3 2024-11-13 14:49:58 +01:00
Sebastien Marinier 6226921652 fix: gitactions (psalm warnings NC < 28) 2024-10-28 15:14:22 +01:00
Sebastien Marinier bbf0abfa75 fix: gitactions psalm warnings 2024-10-28 14:59:01 +01:00
Sebastien Marinier 63982ac2e7 fix: gitactions psr 1.1.2 OR 2.0.2 2024-10-28 14:46:51 +01:00
Sebastien Marinier 9f2d820d63 fix: gitactions (psr 1.1.2 / NC 26) 2024-10-28 14:36:09 +01:00
Sebastien Marinier 9fd051ac3b release: 2.7.3 2024-10-28 12:30:22 +01:00
brtbr d63c4dbba3 fix: copy to clipboard as plain/text
The default behavior for CopyToClipboard is to choose the output format
text/html. This causes issues when pasting into HTML messages in
Thunderbird. Therefore this commit changes the output format to
text/plain which seems to solve the issue.
2024-06-01 23:16:41 +02:00
9 changed files with 28 additions and 9 deletions

View File

@ -12,7 +12,10 @@ jobs:
strategy: strategy:
matrix: matrix:
php-versions: ['8.0', '8.1', '8.2'] php-versions: ['8.0', '8.1', '8.2']
nextcloud-versions: ['stable26', 'stable27', 'stable28'] nextcloud-versions: ['stable26', 'stable27', 'stable28', 'stable29', 'stable30']
exclude:
- php-versions: '8.0'
nextcloud-versions: 'stable30'
name: php${{ matrix.php-versions }} on ${{ matrix.nextcloud-versions }} unit tests name: php${{ matrix.php-versions }} on ${{ matrix.nextcloud-versions }} unit tests
env: env:
CI: true CI: true

View File

@ -6,7 +6,11 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
strategy: strategy:
matrix: matrix:
ocp-version: [ '^28', '^27', '^26'] ocp-version: [ "^30", "^29", '^28', '^27', '^26']
include:
- psrcontainer: "psr/container"
- psrcontainer: "psr/container:^1.1.2"
ocp-version: '^26'
name: Nextcloud ${{ matrix.ocp-version }} name: Nextcloud ${{ matrix.ocp-version }}
steps: steps:
- name: Checkout - name: Checkout
@ -21,7 +25,7 @@ jobs:
- name: Install dependencies - name: Install dependencies
run: composer i run: composer i
- name: Install dependencies - name: Install dependencies
run: composer require --dev nextcloud/ocp:${{ matrix.ocp-version }} symfony/service-contracts run: composer require --dev nextcloud/ocp:${{ matrix.ocp-version }} ${{ matrix.psrcontainer }} symfony/service-contracts
- name: Run coding standards check - name: Run coding standards check
run: composer run psalm run: composer run psalm

View File

@ -22,7 +22,7 @@ Contributors are welcome! If you have time it would be awesome if you could help
*This app integrates BigBlueButton and is not endorsed or certified by BigBlueButton Inc. BigBlueButton and the BigBlueButton Logo are trademarks of BigBlueButton Inc.* *This app integrates BigBlueButton and is not endorsed or certified by BigBlueButton Inc. BigBlueButton and the BigBlueButton Logo are trademarks of BigBlueButton Inc.*
]]></description> ]]></description>
<version>2.7.2</version> <version>2.7.3</version>
<licence>agpl</licence> <licence>agpl</licence>
<author mail="cloud_bbb@arawa.fr" homepage="https://arawa.fr/">Arawa</author> <author mail="cloud_bbb@arawa.fr" homepage="https://arawa.fr/">Arawa</author>
<author>Klaus Herberth</author> <author>Klaus Herberth</author>
@ -44,7 +44,7 @@ Contributors are welcome! If you have time it would be awesome if you could help
<lib>curl</lib> <lib>curl</lib>
<lib>mbstring</lib> <lib>mbstring</lib>
<lib>SimpleXML</lib> <lib>SimpleXML</lib>
<nextcloud min-version="26" max-version="28"/> <nextcloud min-version="26" max-version="30"/>
</dependencies> </dependencies>
<commands> <commands>
<command>OCA\BigBlueButton\Command\ClearAvatarCache</command> <command>OCA\BigBlueButton\Command\ClearAvatarCache</command>

View File

@ -18,7 +18,7 @@
"phpstan/phpstan": "^0.12.29", "phpstan/phpstan": "^0.12.29",
"nextcloud/ocp": "^25.0 || ^26.0 || ^27.0", "nextcloud/ocp": "^25.0 || ^26.0 || ^27.0",
"vimeo/psalm": "^5.0", "vimeo/psalm": "^5.0",
"psr/container": "^1.1.2" "psr/container": "^1.1.2 || ^2.0.2"
}, },
"config": { "config": {
"optimize-autoloader": true, "optimize-autoloader": true,

View File

@ -6,6 +6,12 @@ use OCP\AppFramework\Http\ContentSecurityPolicy;
use OCP\AppFramework\Http\Response; use OCP\AppFramework\Http\Response;
use OCP\Template; use OCP\Template;
/**
* @template-extends Response<int, array<string, mixed>>
*
* (NC < 28)
* @psalm-suppress TooManyTemplateParams
*/
class NoPermissionResponse extends Response { class NoPermissionResponse extends Response {
public function __construct() { public function __construct() {
parent::__construct(); parent::__construct();

View File

@ -6,6 +6,12 @@ use OCP\AppFramework\Http\ContentSecurityPolicy;
use OCP\AppFramework\Http\Response; use OCP\AppFramework\Http\Response;
use OCP\Template; use OCP\Template;
/**
* @template-extends Response<int, array<string, mixed>>
*
* (NC < 28)
* @psalm-suppress TooManyTemplateParams
*/
class NotFoundResponse extends Response { class NotFoundResponse extends Response {
public function __construct() { public function __construct() {
parent::__construct(); parent::__construct();

View File

@ -89,7 +89,7 @@ const EditRoomDialog: React.FC<Props> = ({ room, restriction, updateProperty, op
return <option key={key} value={key}>{label}</option>; return <option key={key} value={key}>{label}</option>;
})} })}
</select> </select>
{(value === Access.Password && room.password) && <CopyToClipboard text={room.password}><input type="text" readOnly={true} className="icon-clippy" value={room.password} /></CopyToClipboard>} {(value === Access.Password && room.password) && <CopyToClipboard text={room.password} options={{format:'text/plain'}}><input type="text" readOnly={true} className="icon-clippy" value={room.password} /></CopyToClipboard>}
{descriptions[field] && <em>{descriptions[field]}</em>} {descriptions[field] && <em>{descriptions[field]}</em>}
</div> </div>
); );

View File

@ -35,7 +35,7 @@ const RecordingRow: React.FC<Props> = ({recording, isAdmin, deleteRecording, sto
</a> </a>
</td> </td>
<td className="share icon-col"> <td className="share icon-col">
<CopyToClipboard text={recording.url}> <CopyToClipboard text={recording.url} options={{format:'text/plain'}}>
<button className="action-item copy-to-clipboard" title={t('bbb', 'Copy to clipboard')}> <button className="action-item copy-to-clipboard" title={t('bbb', 'Copy to clipboard')}>
<span className="icon icon-clippy icon-visible" ></span> <span className="icon icon-clippy icon-visible" ></span>
</button> </button>

View File

@ -230,7 +230,7 @@ const RoomRow: React.FC<Props> = (props) => {
</a> </a>
</td> </td>
<td className="share icon-col"> <td className="share icon-col">
<CopyToClipboard text={api.getRoomUrl(room)}> <CopyToClipboard text={api.getRoomUrl(room)} options={{format:'text/plain'}}>
<button className="action-item copy-to-clipboard" title={t('bbb', 'Copy to clipboard')}> <button className="action-item copy-to-clipboard" title={t('bbb', 'Copy to clipboard')}>
<span className="icon icon-clippy icon-visible" ></span> <span className="icon icon-clippy icon-visible" ></span>
</button> </button>