This commit is contained in:
Daniel 2025-06-09 22:27:51 +08:00
parent 81c7931e0f
commit 5df063fbec
No known key found for this signature in database
GPG key ID: 86211BA83DF03017
2 changed files with 32 additions and 0 deletions

View file

@ -44,6 +44,36 @@ import (
"github.com/xrash/smetrics"
)
func (tx *Transaction) doSetAttrViewCoverFromAssetKeyID(operation *Operation) (ret *TxErr) {
err := setAttrViewCoverFromAssetKeyID(operation)
if err != nil {
return &TxErr{code: TxErrWriteAttributeView, id: operation.AvID, msg: err.Error()}
}
return
}
func setAttrViewCoverFromAssetKeyID(operation *Operation) (err error) {
attrView, err := av.ParseAttributeView(operation.AvID)
if err != nil {
return
}
view, err := getAttrViewViewByBlockID(attrView, operation.BlockID)
if err != nil {
return
}
switch view.LayoutType {
case av.LayoutTypeTable:
return
case av.LayoutTypeGallery:
view.Gallery.CoverFromAssetKeyID = operation.KeyID
}
err = av.SaveAttributeView(attrView)
return
}
func (tx *Transaction) doSetAttrViewCoverFrom(operation *Operation) (ret *TxErr) {
err := setAttrViewCoverFrom(operation)
if err != nil {

View file

@ -280,6 +280,8 @@ func performTx(tx *Transaction) (ret *TxErr) {
ret = tx.doDuplicateAttrViewKey(op)
case "setAttrViewCoverFrom":
ret = tx.doSetAttrViewCoverFrom(op)
case "setAttrViewCoverFromAssetKeyID":
ret = tx.doSetAttrViewCoverFromAssetKeyID(op)
}
if nil != ret {