Fix incorre check on template deletion.
This commit is contained in:
parent
9fe78d6247
commit
aa5eff915d
|
@ -1,7 +1,6 @@
|
||||||
package main
|
package main
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"database/sql"
|
|
||||||
"errors"
|
"errors"
|
||||||
"fmt"
|
"fmt"
|
||||||
"net/http"
|
"net/http"
|
||||||
|
@ -222,23 +221,15 @@ func handleDeleteTemplate(c echo.Context) error {
|
||||||
|
|
||||||
if id < 1 {
|
if id < 1 {
|
||||||
return echo.NewHTTPError(http.StatusBadRequest, app.i18n.T("globals.messages.invalidID"))
|
return echo.NewHTTPError(http.StatusBadRequest, app.i18n.T("globals.messages.invalidID"))
|
||||||
} else if id == 1 {
|
|
||||||
return echo.NewHTTPError(http.StatusBadRequest,
|
|
||||||
app.i18n.T("templates.cantDeleteDefault"))
|
|
||||||
}
|
}
|
||||||
|
|
||||||
var delID int
|
var delID int
|
||||||
err := app.queries.DeleteTemplate.Get(&delID, id)
|
err := app.queries.DeleteTemplate.Get(&delID, id)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
if err == sql.ErrNoRows {
|
|
||||||
return c.JSON(http.StatusOK, okResp{true})
|
|
||||||
}
|
|
||||||
|
|
||||||
return echo.NewHTTPError(http.StatusInternalServerError,
|
return echo.NewHTTPError(http.StatusInternalServerError,
|
||||||
app.i18n.Ts("globals.messages.errorCreating",
|
app.i18n.Ts("globals.messages.errorDeleting",
|
||||||
"name", "{globals.terms.template}", "error", pqErrMsg(err)))
|
"name", "{globals.terms.template}", "error", pqErrMsg(err)))
|
||||||
}
|
}
|
||||||
|
|
||||||
if delID == 0 {
|
if delID == 0 {
|
||||||
return echo.NewHTTPError(http.StatusBadRequest,
|
return echo.NewHTTPError(http.StatusBadRequest,
|
||||||
app.i18n.T("templates.cantDeleteDefault"))
|
app.i18n.T("templates.cantDeleteDefault"))
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
{
|
{
|
||||||
"baseUrl": "http://localhost:9000",
|
"baseUrl": "http://localhost:8080",
|
||||||
"env": {
|
"env": {
|
||||||
"server_init_command": "pkill -9 listmonk | cd ../ && ./listmonk --install --yes && ./listmonk > /dev/null 2>/dev/null &",
|
"server_init_command": "pkill -9 listmonk | cd ../ && ./listmonk --install --yes && ./listmonk > /dev/null 2>/dev/null &",
|
||||||
"username": "listmonk",
|
"username": "listmonk",
|
||||||
|
|
|
@ -26,7 +26,7 @@ describe('Templates', () => {
|
||||||
cy.get('input[name=name]').clear().type('edited');
|
cy.get('input[name=name]').clear().type('edited');
|
||||||
cy.get('textarea[name=body]').clear().type('<span>test</span> {{ template "content" . }}',
|
cy.get('textarea[name=body]').clear().type('<span>test</span> {{ template "content" . }}',
|
||||||
{ parseSpecialCharSequences: false, delay: 0 });
|
{ parseSpecialCharSequences: false, delay: 0 });
|
||||||
cy.get('footer.modal-card-foot button.is-primary').click();
|
cy.get('.modal-card-foot button.is-primary').click();
|
||||||
cy.wait(250);
|
cy.wait(250);
|
||||||
cy.get('tbody td[data-label="Name"] a').contains('edited');
|
cy.get('tbody td[data-label="Name"] a').contains('edited');
|
||||||
});
|
});
|
||||||
|
@ -40,7 +40,7 @@ describe('Templates', () => {
|
||||||
cy.get('span').first().contains('test');
|
cy.get('span').first().contains('test');
|
||||||
cy.get('p').first().contains('Hi there');
|
cy.get('p').first().contains('Hi there');
|
||||||
});
|
});
|
||||||
cy.get('footer.modal-card-foot button').click();
|
cy.get('.modal-card-foot button').click();
|
||||||
|
|
||||||
// Cloned one should have the full template.
|
// Cloned one should have the full template.
|
||||||
cy.get('tbody [data-cy=btn-preview').eq(1).click();
|
cy.get('tbody [data-cy=btn-preview').eq(1).click();
|
||||||
|
@ -49,7 +49,7 @@ describe('Templates', () => {
|
||||||
cy.get('.wrap p').first().contains('Hi there');
|
cy.get('.wrap p').first().contains('Hi there');
|
||||||
cy.get('.footer a').first().contains('Unsubscribe');
|
cy.get('.footer a').first().contains('Unsubscribe');
|
||||||
});
|
});
|
||||||
cy.get('footer.modal-card-foot button').click();
|
cy.get('.modal-card-foot button').click();
|
||||||
});
|
});
|
||||||
|
|
||||||
it('Sets default', () => {
|
it('Sets default', () => {
|
||||||
|
@ -69,6 +69,7 @@ describe('Templates', () => {
|
||||||
|
|
||||||
|
|
||||||
it('Deletes template', () => {
|
it('Deletes template', () => {
|
||||||
|
cy.wait(250);
|
||||||
cy.get('tbody td.actions [data-cy=btn-delete]').first().click();
|
cy.get('tbody td.actions [data-cy=btn-delete]').first().click();
|
||||||
cy.get('.modal button.is-primary').click();
|
cy.get('.modal button.is-primary').click();
|
||||||
cy.wait(250);
|
cy.wait(250);
|
||||||
|
|
|
@ -244,7 +244,7 @@ section {
|
||||||
padding: 15px 10px;
|
padding: 15px 10px;
|
||||||
border-color: $grey-lightest;
|
border-color: $grey-lightest;
|
||||||
}
|
}
|
||||||
.actions a {
|
.actions a, .actions .a {
|
||||||
margin: 0 10px;
|
margin: 0 10px;
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
}
|
}
|
||||||
|
|
|
@ -17,7 +17,7 @@
|
||||||
</b-field>
|
</b-field>
|
||||||
|
|
||||||
<b-field :label="$t('templates.rawHTML')" label-position="on-border">
|
<b-field :label="$t('templates.rawHTML')" label-position="on-border">
|
||||||
<b-input v-model="form.body" type="textarea" required />
|
<b-input v-model="form.body" type="textarea" name="body" required />
|
||||||
</b-field>
|
</b-field>
|
||||||
|
|
||||||
<p class="is-size-7">
|
<p class="is-size-7">
|
||||||
|
|
Loading…
Reference in New Issue