Add related antennas edit link to list page
This commit is contained in:
parent
6ea0697699
commit
0dd1238157
5 changed files with 43 additions and 0 deletions
|
@ -144,6 +144,11 @@ class ListTimeline extends PureComponent {
|
|||
}));
|
||||
};
|
||||
|
||||
handleEditAntennaClick = (e) => {
|
||||
const id = e.currentTarget.getAttribute('data-id');
|
||||
window.open(`/antennas/${id}/edit`, '_blank');
|
||||
}
|
||||
|
||||
handleRepliesPolicyChange = ({ target }) => {
|
||||
const { dispatch } = this.props;
|
||||
const { id } = this.props.params;
|
||||
|
@ -163,6 +168,7 @@ class ListTimeline extends PureComponent {
|
|||
const title = list ? list.get('title') : id;
|
||||
const replies_policy = list ? list.get('replies_policy') : undefined;
|
||||
const isExclusive = list ? list.get('exclusive') : undefined;
|
||||
const antennas = list ? (list.get('antennas')?.toArray() || []) : [];
|
||||
|
||||
if (typeof list === 'undefined') {
|
||||
return (
|
||||
|
@ -219,6 +225,23 @@ class ListTimeline extends PureComponent {
|
|||
</div>
|
||||
</div>
|
||||
)}
|
||||
|
||||
{ antennas.length > 0 && (
|
||||
<div>
|
||||
<span className='column-settings__section column-settings__section--with-margin'>
|
||||
<FormattedMessage id='lists.antennas' defaultMessage='Related antennas:' />
|
||||
</span>
|
||||
<ul className='column-settings__row'>
|
||||
{ antennas.map(antenna => (
|
||||
<li key={antenna.get('id')} className='column-settings__row__antenna'>
|
||||
<button type='button' className='text-btn column-header__setting-btn' data-id={antenna.get('id')} onClick={this.handleEditAntennaClick}>
|
||||
{antenna.get('title')}{antenna.get('stl') && ' [STL]'}
|
||||
</button>
|
||||
</li>
|
||||
))}
|
||||
</ul>
|
||||
</div>
|
||||
)}
|
||||
</ColumnHeader>
|
||||
|
||||
<StatusListContainer
|
||||
|
|
|
@ -361,6 +361,7 @@
|
|||
"limited_account_hint.title": "This profile has been hidden by the moderators of {domain}.",
|
||||
"lists.account.add": "Add to list",
|
||||
"lists.account.remove": "Remove from list",
|
||||
"lists.antennas": "Related antennas",
|
||||
"lists.delete": "Delete list",
|
||||
"lists.edit": "Edit list",
|
||||
"lists.edit.submit": "Change title",
|
||||
|
|
|
@ -357,6 +357,7 @@
|
|||
"limited_account_hint.title": "このプロフィールは{domain}のモデレーターによって非表示にされています。",
|
||||
"lists.account.add": "リストに追加",
|
||||
"lists.account.remove": "リストから外す",
|
||||
"lists.antennas": "関連付けられたアンテナ",
|
||||
"lists.delete": "リストを削除",
|
||||
"lists.edit": "リストを編集",
|
||||
"lists.edit.submit": "タイトルを変更",
|
||||
|
|
|
@ -4534,6 +4534,10 @@ a.status-card.compact:hover {
|
|||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
.column-settings__section--with-margin {
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
.column-settings__row--with-margin {
|
||||
margin-bottom: 15px;
|
||||
}
|
||||
|
@ -4646,6 +4650,10 @@ a.status-card.compact:hover {
|
|||
.text-btn:not(.column-header__permission-btn) {
|
||||
margin-bottom: 15px;
|
||||
}
|
||||
|
||||
&__antenna {
|
||||
margin-left: 12px;
|
||||
}
|
||||
}
|
||||
|
||||
.relationship-tag {
|
||||
|
|
|
@ -6,4 +6,14 @@ class REST::ListSerializer < ActiveModel::Serializer
|
|||
def id
|
||||
object.id.to_s
|
||||
end
|
||||
|
||||
class AntennaSerializer < ActiveModel::Serializer
|
||||
attributes :id, :title, :stl
|
||||
|
||||
def id
|
||||
object.id.to_s
|
||||
end
|
||||
end
|
||||
|
||||
has_many :antennas, serializer: AntennaSerializer
|
||||
end
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue