Sto lavorando a alcuni plugin specifici per il nostro forum e vorremmo creare piccole azioni personalizzate simili a queste:
In particolare, ho solo bisogno di poter inserire avvisi come questi nei topic, con la possibilità di personalizzare l’icona e il testo.
Qualcuno potrebbe guidarmi attraverso le strutture, i moduli, i template, ecc., che dovrei utilizzare per implementare questa funzionalità sia sul back-end che sul front-end, oppure potreste indicarmi un plugin esistente che lo implementa già?
Grazie!
david
(David Taylor)
17 Marzo 2020, 3:35pm
2
discourse-assign è probabilmente il miglior esempio di questo:
# frozen_string_literal: true
class ::TopicAssigner
def self.backfill_auto_assign
deprecation_note
Assigner.backfill_auto_assign
end
def self.assigned_self?(text)
deprecation_note
Assigner.assigned_self?(text)
end
def self.auto_assign(post, force: false)
deprecation_note
Assigner.auto_assign(post, force)
end
def self.is_last_staff_post?(post)
deprecation_note
This file has been truncated. show original
E poi alcune aggiunte per l’icona e il contenuto
https://github.com/discourse/discourse-assign/blob/master/assets/javascripts/discourse-assign/initializers/extend-for-assigns.js.es6#L158-L169
Grazie, mi ha aiutato molto.
Qual è il modo migliore per rendere più ricco il testo visualizzato nella piccola azione?
Attuale:
Ciò che voglio: (l’ho ottenuto inserendo manualmente la classe cooked nel div con classe small-action-desc)
Ho sfogliato il codice sorgente riguardo ai trasformatori dei post, ma non ho trovato nulla di relativo a questo
MODIFICA: ho finito per aggiungere semplicemente questo come .scss
.custom-message {
ins {
background-color: dark-light-choose(
$success-low,
scale-color($success, $lightness: -60%)
);
}
del {
background-color: dark-light-choose(
$danger-low,
scale-color($danger, $lightness: -60%)
);
}
}