выбор времени
This commit is contained in:
@@ -97,6 +97,7 @@ https://t.me/+AbCdEfGhIjKlMn</i>`, [][]echotron.InlineKeyboardButton{
|
||||
// Удаляем медиа
|
||||
s.MediaType = ""
|
||||
s.MediaFileID = ""
|
||||
s.MediaChanged = true
|
||||
s.UpdateCreativePreview(b)
|
||||
s.ShowManagementPanel(b, "✓ Сохранить", "confirm_create", "cancel")
|
||||
|
||||
@@ -170,14 +171,17 @@ func (s *AddCreative) HandleMessage(b *bot.Bot, u *echotron.Update) {
|
||||
photo := u.Message.Photo[len(u.Message.Photo)-1]
|
||||
s.MediaType = "photo"
|
||||
s.MediaFileID = photo.FileID
|
||||
s.MediaChanged = true
|
||||
handled = true
|
||||
} else if u.Message.Video != nil {
|
||||
s.MediaType = "video"
|
||||
s.MediaFileID = u.Message.Video.FileID
|
||||
s.MediaChanged = true
|
||||
handled = true
|
||||
} else if u.Message.Animation != nil {
|
||||
s.MediaType = "animation"
|
||||
s.MediaFileID = u.Message.Animation.FileID
|
||||
s.MediaChanged = true
|
||||
handled = true
|
||||
}
|
||||
|
||||
@@ -307,6 +311,26 @@ func (s *AddCreative) createCreative(b *bot.Bot) {
|
||||
return
|
||||
}
|
||||
|
||||
var mediaData []byte
|
||||
if s.MediaFileID != "" {
|
||||
mediaData, err = b.DownloadFileBytes(s.MediaFileID)
|
||||
if err != nil {
|
||||
log.Error().Err(err).Msg("Failed to download creative media")
|
||||
b.SendNew("<b>❌ Не удалось загрузить медиа</b>", bot.Keyboard(
|
||||
bot.Row(bot.Button("← Назад", "cancel")),
|
||||
))
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
buttons := make([]backend.CreativeButton, 0, len(s.Buttons))
|
||||
for _, button := range s.Buttons {
|
||||
buttons = append(buttons, backend.CreativeButton{
|
||||
Text: button.Text,
|
||||
URL: button.URL,
|
||||
})
|
||||
}
|
||||
|
||||
// Создаём креатив через API
|
||||
creative, err := b.Backend.CreateCreative(
|
||||
context.Background(),
|
||||
@@ -314,8 +338,12 @@ func (s *AddCreative) createCreative(b *bot.Bot) {
|
||||
s.WorkspaceID,
|
||||
s.ProjectID,
|
||||
backend.CreateCreativeInput{
|
||||
Name: *s.Name,
|
||||
Text: *s.Text,
|
||||
Name: *s.Name,
|
||||
Text: *s.Text,
|
||||
MediaType: s.MediaType,
|
||||
MediaFileID: s.MediaFileID,
|
||||
MediaData: mediaData,
|
||||
Buttons: buttons,
|
||||
},
|
||||
)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user