fipamo/themes/dash/src/com/controllers/NavIndex.js

66 lines
1.8 KiB
JavaScript
Raw Normal View History

import NavActions from "../actions/NavActions";
import DataUtils,
{
REQUEST_TYPE_GET,
REQUEST_TYPE_PUT,
REQUEST_TYPE_POST,
REQUEST_TYPE_DELETE,
CONTENT_TYPE_JSON,
CONTENT_TYPE_FORM
}
from "../../../../../brain/tools/utilities/DataUtils";
import * as DataEvent from '../../../../../brain/tools/events/DataEvent';
import DBUtils from "../../../../../brain/tools/utilities/DBUtils";
export default class NavIndex
{
//--------------------------
// constructor
//--------------------------
constructor()
{
this.start();
this.dataUtils = new DataUtils();
this.dbutils = new DBUtils();
}
//--------------------------
// methods
//--------------------------
start()
{
let self = this;
let menu = Sortable.create(document.getElementById("nav-pages"),
{
onUpdate: e =>
{
new NavActions().save().then(r=>{
console.log(r);
}).catch(err=>{
console.log(err)
})
}
});
var nav = document.querySelectorAll('.nav-btn');
for (var i = 0, length = nav.length; i < length; i++)
{
nav[i].addEventListener('click', e => this.handleNavButton(e), false);
}
}
//--------------------------
// event handlers
//--------------------------
handleNavButton(e)
{
let self = this;
switch (e.target.id)
{
case "remove-item":
let id = e.target.getAttribute('data-id');
new NavActions().removeItem(id);
break
case "edit-item":
window.location = "/@/dashboard/posts/edit/" + e.target.getAttribute('data-id');
break
}
}
}