{
  "pluginname": "Sync",
  "systemplugin": "1",
  "version": "1.4",
  "table_def": [
    {
      "name": "sync",
      "fields": [
        {
          "name": "pluginid",
          "type": "uniqueidentifier",
          "other": "UNIQUE NOT NULL"
        },
        {
          "name": "syncpermission",
          "type": "tinyint",
          "other": "DEFAULT 1"
        },
        {
          "name": "sync_date",
          "type": "date"
        },
        {
          "name": "status",
          "type": "tinyint",
          "other": "DEFAULT 1"
        }
      ]
    }
  ],
  "sqlcommands_oninstall": [],
  "form": {
    "name": "Sync",
    "formtype": "Default",
    "title": "Sync",
    "icon": "mif-move-up fg-yellow",
    "saveButton": "true",
    "cancelButton": "true",
    "flex_row": "false",
    "flex_justify": "center",
    "width": "410px",
    "field": [
      {
        "name": "pluginid",
        "label": "Select Plugin",
        "fieldtype": "u",
        "type": "select",
        "option": "SELECT id,pluginname FROM plugin WHERE status>0 and recordstatus=1",
        "required": "Yes"
      },
      {
        "name": "syncpermission",
        "label": "Permission",
        "fieldtype": "n",
        "type": "select",
        "option": "0:Sync Not Allowed,1:Sync Allowed",
        "required": "Yes"
      }
    ]
  },
  "form_html": "",
  "navbutton": [
    {
      "customid": "1",
      "caption": "Sync",
      "icon": "mif-import-export fg-magenta",
      "btntype": "ribbon-button",
      "btngroup": "Sync",
      "btntab": "Developer",
      "btnorder": "1",
      "onclick": "initializePlugin()"
    }
  ],
  "script": "",
  "formbuttons": [
    {
      "name": "addSync",
      "icon": "mif-plus fg-red",
      "onclick": "showNewForm('Sync')"
    },
    {
      "name": "activeSync",
      "caption": "Active Sync",
      "icon": "mif-move-up fg-green",
      "onclick": "getTableFromSqlStatement('1')"
    },
    {
      "name": "suspendedSync",
      "caption": "Inactive Sync",
      "icon": "mif-move-up fg-orange",
      "onclick": "getTableFromSqlStatement('2')"
    },
    {
      "name": "deletedSync",
      "caption": "Deleted Sync",
      "icon": "mif-move-up fg-red",
      "onclick": "getTableFromSqlStatement('3')"
    },
	{
      "name": "syncNow",
      "caption": "Sync Now",
      "icon": "mif-move-up fg-yellow",
      "onclick": "sync('','',true,false)"
    },
	{
      "name": "replicateNow",
      "caption": "Replicate",
      "icon": "mif-cloud-upload fg-yellow",
      "onclick": "sync('','',true,true)"
    }
  ],
  "sqlstatement": [
    {
      "customid": "1",
      "name": "activeSync",
      "sql": "SELECT b.pluginname,a.syncpermission,a.sync_date FROM sync a INNER JOIN plugin b ON a.pluginid=b.id WHERE a.status=1 and a.recordstatus=1",
      "header": "Plugin,Permission,Sync Date",
      "filter": "1",
      "filter_fields": "b.id",
      "filter_fields_operator": "=",
      "filter_fields_caption": "Plugin",
      "filter_fields_type": "s",
      "filter_fields_inputtype": "select",
      "filter_fields_option": {
        "name": "b.id",
        "option": "SELECT id,pluginname FROM plugin WHERE status=1 and recordstatus=1"
      },
      "edit_record": "1",
      "delete_record": "0",
      "restore_record": "0",
      "change_status": "0:Suspend:Sync Suspended:Sync Suspension Failed"
    },
    {
      "customid": "2",
      "name": "syspendedSync",
      "sql": "SELECT b.pluginname,a.syncpermission,a.sync_date FROM sync a INNER JOIN plugin b ON a.pluginid=b.id WHERE a.status=0 and a.recordstatus=1",
      "header": "Plugin,Permission,Sync Date",
      "filter": "1",
      "filter_fields": "b.id",
      "filter_fields_operator": "=",
      "filter_fields_caption": "Plugin",
      "filter_fields_type": "s",
      "filter_fields_inputtype": "select",
      "filter_fields_option": {
        "name": "b.id",
        "option": "SELECT id,pluginname FROM plugin WHERE status=1 and recordstatus=1"
      },
      "edit_record": "0",
      "delete_record": "1",
      "restore_record": "0",
      "change_status": "1:Activate:Sync Record Activated:Sync Record Activation Failed"
    },
    {
      "customid": "3",
      "name": "deletedSync",
      "sql": "SELECT b.pluginname,a.syncpermission,a.sync_date FROM sync a INNER JOIN plugin b ON a.pluginid=b.id WHERE a.recordstatus=0",
      "header": "Plugin,Permission,Sync Date",
      "filter": "1",
      "filter_fields": "b.id",
      "filter_fields_operator": "=",
      "filter_fields_caption": "Plugin",
      "filter_fields_type": "s",
      "filter_fields_inputtype": "select",
      "filter_fields_option": {
        "name": "b.id",
        "option": "SELECT id,pluginname FROM plugin WHERE status=1 and recordstatus=1"
      },
      "edit_record": "0",
      "delete_record": "1",
      "restore_record": "1"
    }
  ]
}