UserProNetMediaZaliczka.php.fetchData.js 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. // @require var SYNC_URL
  2. function zaliczkaFetchData(query, fieldType, resultCallback) {
  3. console.warn('TODO: zaliczkaFetchData(query, fieldType, resultCallback) query('+query+') fieldType:', fieldType);
  4. // fieldType: Object {"@namespace": "default_db:IN7_DZIENNIK_KORESP", id: "xsd:integer", title: "xsd:string", kategoriaKosztu: "xsd:string"}
  5. if ('object' === typeof fieldType) {
  6. if (!fieldType['@namespace']) {
  7. // TODO: log error
  8. console.error("BUG: Missing typeName in fieldType");
  9. return;
  10. }
  11. switch (fieldType['@namespace']) {
  12. case 'default_db/IN7_MK_BAZA_DYSTRYBUCJI/ZaliczkaProjekt':
  13. case 'default_db/IN7_DZIENNIK_KORESP/ZaliczkaKoresp':
  14. {
  15. superagent
  16. .post(SYNC_URL)
  17. .type('json') // header ĺapplication/x-www-form-urlencoded' requires type('form');
  18. .send({
  19. schema: fieldType,
  20. query: query
  21. })
  22. .set('Accept', 'application/json')
  23. .end(function(err, res) {
  24. var payload = (err || !res.ok || 'application/json' !== res.type)
  25. ? {type: 'warning', msg: (res.body && res.body.msg) ? res.body.msg : 'Request error', body: res.body}
  26. : {type: 'success', msg: res.body.msg || '', body: res.body}
  27. jQuery(document).trigger('DBG:notify', payload)
  28. console.log('F.fetchDataAjax res.body', res.body)
  29. console.log('F.fetchDataAjax payload', payload)
  30. jQuery.notify(payload.msg, payload.type)
  31. resultCallback(payload.body)
  32. });
  33. }
  34. break;
  35. default: {
  36. console.log("BUG: Unsupported type namespace '" + fieldType['@namespace'] + "'");
  37. }
  38. }
  39. } else {
  40. console.log("BUG: Unsupported type '" + fieldType + "'");
  41. return;
  42. }
  43. }
  44. global.zaliczkaFetchData = zaliczkaFetchData