Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Related links #1054

Open
wants to merge 28 commits into
base: dev/new_features
Choose a base branch
from
Open
Changes from 1 commit
Commits
Show all changes
28 commits
Select commit Hold shift + click to select a range
31c2f5d
related links
Aug 21, 2024
7debca3
related links
Aug 22, 2024
5e61bb1
related links
Aug 22, 2024
09a1a0d
php fixer
Aug 22, 2024
eb2daa7
Merge branch 'main' into related-links
Aug 22, 2024
8a3275b
cleaning
Aug 22, 2024
6c2ca55
Required changes.
Sep 2, 2024
8174113
docs(contributor): contrib-readme-action has updated readme
github-actions[bot] Sep 2, 2024
b750fa1
Merge remote-tracking branch 'origin/main' into related-links
Sep 2, 2024
3055403
Merge branch 'main' into related-links
JaviviJR Sep 3, 2024
3f043fd
Related links
JaviviJR Sep 4, 2024
68d6d11
Changes requested
JaviviJR Sep 16, 2024
a5b7f85
Changes requested
JaviviJR Sep 16, 2024
1d0f707
Changes requested
JaviviJR Sep 16, 2024
09a90b4
Introducing bookmarks (#1095)
BentiGorlich Oct 6, 2024
85bd770
Make related panels respect blocks (#1183)
BentiGorlich Oct 13, 2024
55cc85a
Improve search (#1167)
BentiGorlich Oct 16, 2024
f282a29
Merge branch 'dev/new_features' into related-links
melroy89 Nov 8, 2024
77b9631
Merge branch 'main' into dev/new_features
melroy89 Nov 8, 2024
552e4bf
Merge branch 'dev/new_features' into related-links
melroy89 Nov 8, 2024
498b961
Fix php cs fixer
melroy89 Nov 8, 2024
cf72318
Merge branch 'main' into dev/new_features
melroy89 Nov 8, 2024
f34d504
Merge branch 'dev/new_features' into related-links
melroy89 Nov 8, 2024
a8ea966
Introducing bookmarks (#1095)
BentiGorlich Oct 6, 2024
6992f10
Make related panels respect blocks (#1183)
BentiGorlich Oct 13, 2024
5fec24b
Improve search (#1167)
BentiGorlich Oct 16, 2024
9b44612
Fix checkmarks not being rendered correctly anymore (#1233)
BentiGorlich Nov 20, 2024
679d683
Merge branch 'dev/new_features' into related-links
BentiGorlich Nov 24, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
related links
Javivi committed Aug 22, 2024

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
commit 5e61bb1c33430fd1cbb35fa8233bda6ee7033cfb
Original file line number Diff line number Diff line change
@@ -5,28 +5,23 @@ export default class extends Controller {

static values = {
index: Number,
name: String,
link: String,
};

connect() {
const container = this.element;
container
.querySelectorAll('.related-link-group')
.querySelectorAll('.related-link-item')
.forEach((item) => {
this.#addButtonDeleteLink(item);
});
}

addRelatedElement() {
const item = document.createElement('span');
item.className = 'flex related-link-group';
console.log('addRelatedElement method');

const nodeName = this.#htmlToNode(this.nameValue.replace(
/__name__/g,
this.indexValue,
));
item.append(nodeName);
const item = document.createElement('span');
item.className = 'flex related-link-item';

const nodeLink = this.#htmlToNode(this.linkValue.replace(
/__name__/g,
@@ -41,14 +36,11 @@ export default class extends Controller {
}

#addButtonDeleteLink(item) {
const div = document.createElement('div');

const removeFormButton = document.createElement('button');
removeFormButton.innerText = 'Delete'; // TODO - Translation
removeFormButton.className = 'btn btn__secondry';
removeFormButton.innerText = '⌫';
removeFormButton.className = 'btn';

div.append(removeFormButton);
item.append(div);
item.append(removeFormButton);

removeFormButton.addEventListener('click', (e) => {
e.preventDefault();
13 changes: 13 additions & 0 deletions assets/styles/layout/_forms.scss
Original file line number Diff line number Diff line change
@@ -531,3 +531,16 @@ div.input-box {
margin: 0;
padding: 0;
}

.related-link-item {
align-items: center;
}

.related-link-item button {
padding: 0;
background: none;
font-size: 1.5rem;
border: 0;
color: var(--kbin-input-text-color);

}
4 changes: 4 additions & 0 deletions assets/styles/layout/_layout.scss
Original file line number Diff line number Diff line change
@@ -365,6 +365,10 @@ figure {
flex-wrap: wrap;
}

.flex-grow-1 {
flex-grow: 1;
}

pre, code {
white-space: pre-wrap;
word-wrap: break-word;
1 change: 1 addition & 0 deletions src/Controller/User/Profile/UserEditController.php
Original file line number Diff line number Diff line change
@@ -77,6 +77,7 @@ public function profile(Request $request): Response
);
} catch (Error | Exception $e) {
$para = '';
throw $e;
}
}

18 changes: 3 additions & 15 deletions src/Form/UserBasicType.php
Original file line number Diff line number Diff line change
@@ -10,11 +10,11 @@
use App\Form\EventListener\DisableFieldsOnUserEdit;
use App\Form\EventListener\ImageListener;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\CallbackTransformer;
use Symfony\Component\Form\Extension\Core\Type\CollectionType;
use Symfony\Component\Form\Extension\Core\Type\SubmitType;
use Symfony\Component\Form\Extension\Core\Type\TextareaType;
use Symfony\Component\Form\Extension\Core\Type\TextType;
use Symfony\Component\Form\Extension\Core\Type\UrlType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolver;

@@ -34,26 +34,14 @@ public function buildForm(FormBuilderInterface $builder, array $options): void
->add('username', TextType::class, ['required' => false])
->add('about', TextareaType::class, ['required' => false])
->add('relatedLinks', CollectionType::class , [
'entry_type' => UserRelatedLinkType::class,
'entry_type' => UrlType::class,
'entry_options' => ['label' => false],
'label' => false,
'allow_add' => true,
'allow_delete' => true,
// 'by_reference' => false,
'allow_delete' => true
])
->add('submit', SubmitType::class)
;

// $builder->addModelTransformer(new CallbackTransformer(
// function ($associativeArrayData) {
// $para = '';
// return $associativeArrayData;
// },
// function ($dtoData) {
// $para = '';
// return $dtoData;
// }
// ));

$builder->addEventSubscriber($this->disableUsernameFieldOnUserEdit);
$builder->addEventSubscriber($this->addAvatarFieldOnUserEdit);
20 changes: 0 additions & 20 deletions src/Form/UserRelatedLinkType.php

This file was deleted.

71 changes: 31 additions & 40 deletions templates/user/settings/profile.html.twig
Original file line number Diff line number Diff line change
@@ -43,48 +43,39 @@
}}) }}
{{ form_row(form.avatar, {label: 'avatar'}) }}
{{ form_row(form.cover, {label: 'cover'}) }}


<fieldset class='related-link-fieldset'>
<legend>Related links</legend>
<span
{{ stimulus_controller('form-related-social') }}
data-form-related-social-index-value="{{ form.relatedLinks|length }}"
data-form-related-social-name-value="{{
form_row(form.relatedLinks.vars.prototype.relatedName, {
label: false,
row_attr: { class: 'flex-grow-1' }
})|e('html_attr')
}}"
data-form-related-social-link-value="{{
form_row(form.relatedLinks.vars.prototype.relatedLink, {
label: false,
row_attr: { class: 'flex-grow-1' }
})|e('html_attr')
}}"

<fieldset class='related-link-fieldset'
{{ stimulus_controller('form-related-links') }}
data-form-related-links-index-value="{{ form.relatedLinks|length }}"
data-form-related-links-link-value="{{
form_widget(form.relatedLinks.vars.prototype, {
label: false,
row_attr: { class: 'flex-grow-1' }
})|e('html_attr')
}}"

>
<legend>{{ 'related_links'|trans }}</legend>

<div
class='related-links-group'
data-form-related-links-target="relatedContainer"
>
<span {{ stimulus_target('form-related-social', 'relatedContainer') }}
class='relatedlinks'>
{% for item_form in form.relatedLinks %}
<span class='flex related-link-group'>
{{ form_row(item_form.relatedName, {
label: false,
row_attr: { class: 'flex-grow-1' }
}) }}
{% for item_form in form.relatedLinks %}
<span class='flex related-link-item'>
{{ form_widget(item_form, {
label: false,
row_attr: { class: 'flex-grow-1' }
}) }}
</span>
{% endfor %}
</div>

{{ form_row(item_form.relatedLink, {
label: false,
row_attr: { class: 'flex-grow-1' }
}) }}
</span>
{% endfor %}
</span>
<button
type="button"
class="btn btn__primary"
{{ stimulus_action('form-related-social', 'addRelatedElement') }}
>Add link</button>
</span>
<button
type="button"
class="btn btn__primary"
{{ stimulus_action('form-related-links', 'addRelatedElement') }}
>Add link</button>
</fieldset>

<div class="row actions">
1 change: 1 addition & 0 deletions translations/messages.en.yaml
Original file line number Diff line number Diff line change
@@ -890,3 +890,4 @@ admin_users_suspended: Suspended
admin_users_banned: Banned
user_verify: Activate account
max_image_size: Maximum file size
related_links: Related links
1 change: 1 addition & 0 deletions translations/messages.es.yaml
Original file line number Diff line number Diff line change
@@ -532,3 +532,4 @@ marked_for_deletion_at: Marcado para eliminar el %date%
sort_by: Ordenar por
filter_by_subscription: Filtrar por suscripción
filter_by_federation: Filtrar por estado de la federación
related_links: Enlaces relacionados