Skip to content

We.js plugin with widgets features, build sites with dynamic blocks

Notifications You must be signed in to change notification settings

wejs/we-plugin-widget

Repository files navigation

We.js widget plugin

npm version Build Status Coverage Status

Add widget features with API in any we.js project

Widgets are dynamic blocks how may be added in any url (layout) with regions

Installation

ẁe i we-plugin-widget

API

Add / create one widget

  $.ajax({
    headers: { 'we-widget-action': 'add' },
    url: location.pathname,
    method: 'POST',
    data: {
      widget: JSON.stringify(formData)`// new widget data`
    }
  }).then(function (html) {
    console.log('new widget html:',html);
  });

getCreateForm

  $.ajax({
    headers: { 'we-widget-action': 'getCreateForm' },
    url: location.pathname,
    method: 'POST'
  }).then(function (r) {
    console.log('html form:',r);
  });

getUpdateForm

  $.ajax({
    headers: { 'we-widget-action': 'getUpdateForm' },
    url: url,
    method: 'POST',
    data: {
      widget: JSON.stringify({ id: id }) // required
    }
  }).then(function (f) {
    console.log('html form:',r);
  });

update

  $.ajax({
    headers: { 'we-widget-action': 'update' },
    url: url+'?responseType=json',
    method: 'POST',
    data: {
      widget: JSON.stringify(formData) // data to update with widgetId
    }
  }).then(function (r) {
    console.log('updated widget data:',r);
  });

delete

    $.ajax({
      headers: { 'we-widget-action': 'delete' },
      url: location.pathname+'?responseType=json',
      method: 'POST',
      data: {
        widgetId: id
      }
    }).then(function (r) {
       console.log('deleted widget:', r);
    });

findOne

    $.ajax({
      headers: { 'we-widget-action': 'findOne' },
      url: location.pathname+'?responseType=json',
      method: 'POST',
      data: {
         widget: JSON.stringify({ id: 131231})
      }
    }).then(function (r) {
       console.log('Widget:', r.widget);
    });

find

    $.ajax({
      headers: { 'we-widget-action': 'find' },
      url: location.pathname+'?responseType=json',
      method: 'POST'
    }).then(function (r) {
       console.log('Widgets:', r);
    });

getWidgetsToSort , get widget sort form

  $.ajax({
    headers: { 'we-widget-action': 'getWidgetsToSort' },
    url: url+'?responseType=modal&skipHTML=true',
    method: 'POST',
    data: {
      params: JSON.stringify({
        regionName: regionName
      })
    }
  }).then(function (f) {
    console.log('html>', f);
  });

updateSort

    $.ajax({
      headers: { 'we-widget-action': 'updateSort' },
      url: location.pathname+'?responseType=json',
      method: 'POST',
      data: {
        params: JSON.stringify({
          regionName: regionName,
          layout: $('#we-layout').attr('data-we-layout') // layout name
        }),
        widgets: JSON.stringify(widgets)
      }
    }).then(function(r){
        console.log('updated widgets:', r.widget);
    })

getWidgetTypes

  $.ajax({
    headers: { 'we-widget-action': 'getWidgetTypes' },
    url: location.pathname,
    method: 'POST',
    data: {}
  }).then(function afterGetWidgetTypes(r) {
    console.log('widget types:', r);
  });

Links

NPM Info:

NPM

License

Under the MIT license.

About

We.js plugin with widgets features, build sites with dynamic blocks

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published