PageRenderTime 45ms CodeModel.GetById 12ms RepoModel.GetById 1ms app.codeStats 0ms

/portal/patient/scripts/model.js

https://bitbucket.org/openemr/openemr
JavaScript | 822 lines | 691 code | 35 blank | 96 comment | 14 complexity | a4d9eb071abda92cd9b91c8421be01d2 MD5 | raw file
Possible License(s): Apache-2.0, AGPL-1.0, GPL-2.0, LGPL-3.0, BSD-3-Clause, Unlicense, MPL-2.0, GPL-3.0, LGPL-2.1
  1. /**
  2. * backbone model definitions for Patient Portal
  3. *
  4. * From phreeze package
  5. * @license http://www.gnu.org/copyleft/lesser.html LGPL
  6. *
  7. */
  8. /**
  9. * Use emulated HTTP if the server doesn't support PUT/DELETE or application/json requests
  10. */
  11. Backbone.emulateHTTP = false;
  12. Backbone.emulateJSON = false;
  13. var model = {};
  14. /**
  15. * long polling duration in miliseconds. (5000 = recommended, 0 = disabled)
  16. * warning: setting this to a low number will increase server load
  17. */
  18. model.longPollDuration = 0;
  19. /**
  20. * whether to refresh the collection immediately after a model is updated
  21. */
  22. model.reloadCollectionOnModelUpdate = true;
  23. /**
  24. * a default sort method for sorting collection items. this will sort the collection
  25. * based on the orderBy and orderDesc property that was used on the last fetch call
  26. * to the server.
  27. */
  28. model.AbstractCollection = Backbone.Collection.extend({
  29. totalResults: 0,
  30. totalPages: 0,
  31. currentPage: 0,
  32. pageSize: 0,
  33. orderBy: '',
  34. orderDesc: false,
  35. lastResponseText: null,
  36. lastRequestParams: null,
  37. collectionHasChanged: true,
  38. /**
  39. * fetch the collection from the server using the same options and
  40. * parameters as the previous fetch
  41. */
  42. refetch: function() {
  43. this.fetch({ data: this.lastRequestParams })
  44. },
  45. /* uncomment to debug fetch event triggers
  46. fetch: function(options) {
  47. this.constructor.__super__.fetch.apply(this, arguments);
  48. },
  49. // */
  50. /**
  51. * client-side sorting baesd on the orderBy and orderDesc parameters that
  52. * were used to fetch the data from the server. Backbone ignores the
  53. * order of records coming from the server so we have to sort them ourselves
  54. */
  55. comparator: function(a,b) {
  56. var result = 0;
  57. var options = this.lastRequestParams;
  58. if (options && options.orderBy) {
  59. // lcase the first letter of the property name
  60. var propName = options.orderBy.charAt(0).toLowerCase() + options.orderBy.slice(1);
  61. var aVal = a.get(propName);
  62. var bVal = b.get(propName);
  63. if (isNaN(aVal) || isNaN(bVal)) {
  64. // treat comparison as case-insensitive strings
  65. aVal = aVal ? aVal.toLowerCase() : '';
  66. bVal = bVal ? bVal.toLowerCase() : '';
  67. } else {
  68. // treat comparision as a number
  69. aVal = Number(aVal);
  70. bVal = Number(bVal);
  71. }
  72. if (aVal < bVal) {
  73. result = options.orderDesc ? 1 : -1;
  74. } else if (aVal > bVal) {
  75. result = options.orderDesc ? -1 : 1;
  76. }
  77. }
  78. return result;
  79. },
  80. /**
  81. * override parse to track changes and handle pagination
  82. * if the server call has returned page data
  83. */
  84. parse: function(response, options) {
  85. // the response is already decoded into object form, but it's easier to
  86. // compary the stringified version. some earlier versions of backbone did
  87. // not include the raw response so there is some legacy support here
  88. var responseText = options && options.xhr ? options.xhr.responseText : JSON.stringify(response);
  89. this.collectionHasChanged = (this.lastResponseText != responseText);
  90. this.lastRequestParams = options ? options.data : undefined;
  91. // if the collection has changed then we need to force a re-sort because backbone will
  92. // only resort the data if a property in the model has changed
  93. if (this.lastResponseText && this.collectionHasChanged) this.sort({ silent:true });
  94. this.lastResponseText = responseText;
  95. var rows;
  96. if (response.currentPage) {
  97. rows = response.rows;
  98. this.totalResults = response.totalResults;
  99. this.totalPages = response.totalPages;
  100. this.currentPage = response.currentPage;
  101. this.pageSize = response.pageSize;
  102. this.orderBy = response.orderBy;
  103. this.orderDesc = response.orderDesc;
  104. } else {
  105. rows = response;
  106. this.totalResults = rows.length;
  107. this.totalPages = 1;
  108. this.currentPage = 1;
  109. this.pageSize = this.totalResults;
  110. this.orderBy = response.orderBy;
  111. this.orderDesc = response.orderDesc;
  112. }
  113. return rows;
  114. }
  115. });
  116. /**
  117. * OnsiteDocument Backbone Model
  118. */
  119. model.OnsiteDocumentModel = Backbone.Model.extend({
  120. urlRoot: 'api/onsitedocument',
  121. idAttribute: 'id',
  122. id: '',
  123. pid: '',
  124. facility: '',
  125. provider: '',
  126. encounter: '',
  127. createDate: '',
  128. docType: '',
  129. patientSignedStatus: '',
  130. patientSignedTime: '',
  131. authorizeSignedTime: '',
  132. acceptSignedStatus: '',
  133. authorizingSignator: '',
  134. reviewDate: '',
  135. denialReason: '',
  136. authorizedSignature: '',
  137. patientSignature: '',
  138. fullDocument: '',
  139. fileName: '',
  140. filePath: '',
  141. defaults: {
  142. 'id': null,
  143. 'pid': 0,
  144. 'facility': 0,
  145. 'provider': 0,
  146. 'encounter': 0,
  147. 'createDate':new Date(),
  148. 'docType': '',
  149. 'patientSignedStatus': '0',
  150. 'patientSignedTime': '0000-00-00',
  151. 'authorizeSignedTime': '0000-00-00',
  152. 'acceptSignedStatus': '0',
  153. 'authorizingSignator': '',
  154. 'reviewDate': '0000-00-00',
  155. 'denialReason': 'New',
  156. 'authorizedSignature': '',
  157. 'patientSignature': '',
  158. 'fullDocument': '',
  159. 'fileName': '',
  160. 'filePath': ''
  161. }
  162. });
  163. /**
  164. * OnsiteDocument Backbone Collection
  165. */
  166. model.OnsiteDocumentCollection = model.AbstractCollection.extend({
  167. url: 'api/onsitedocuments',
  168. model: model.OnsiteDocumentModel
  169. });
  170. /**
  171. * OnsitePortalActivity Backbone Model
  172. */
  173. model.OnsitePortalActivityModel = Backbone.Model.extend({
  174. urlRoot: 'api/onsiteportalactivity',
  175. idAttribute: 'id',
  176. id: '',
  177. date: '',
  178. patientId: '',
  179. activity: '',
  180. requireAudit: '',
  181. pendingAction: '',
  182. actionTaken: '',
  183. status: '',
  184. narrative: '',
  185. tableAction: '',
  186. tableArgs: '',
  187. actionUser: '',
  188. actionTakenTime: '',
  189. checksum: '',
  190. defaults: {
  191. 'id': null,
  192. 'date': '0000-00-0000',
  193. 'patientId': '0',
  194. 'activity': '',
  195. 'requireAudit': '1',
  196. 'pendingAction': 'review',
  197. 'actionTaken': '',
  198. 'status': 'waiting',
  199. 'narrative': '',
  200. 'tableAction': '',
  201. 'tableArgs': '',
  202. 'actionUser': '0',
  203. 'actionTakenTime': '0000-00-0000',
  204. 'checksum': '0'
  205. }
  206. });
  207. /**
  208. * OnsitePortalActivity Backbone Collection
  209. */
  210. model.OnsitePortalActivityCollection = model.AbstractCollection.extend({
  211. url: 'api/onsiteportalactivities',
  212. model: model.OnsitePortalActivityModel
  213. });
  214. /**
  215. * OnsiteActivityView Backbone Model
  216. */
  217. model.OnsiteActivityViewModel = Backbone.Model.extend({
  218. urlRoot: 'api/onsiteactivityview',
  219. idAttribute: 'id',
  220. id: '',
  221. date: '',
  222. patientId: '',
  223. activity: '',
  224. requireAudit: '',
  225. pendingAction: '',
  226. actionTaken: '',
  227. status: '',
  228. narrative: '',
  229. tableAction: '',
  230. tableArgs: '',
  231. actionUser: '',
  232. actionTakenTime: '',
  233. checksum: '',
  234. title: '',
  235. fname: '',
  236. lname: '',
  237. mname: '',
  238. dob: '',
  239. ss: '',
  240. street: '',
  241. postalCode: '',
  242. city: '',
  243. state: '',
  244. referrerid: '',
  245. providerid: '',
  246. refProviderid: '',
  247. pubpid: '',
  248. careTeam: '',
  249. username: '',
  250. authorized: '',
  251. ufname: '',
  252. umname: '',
  253. ulname: '',
  254. facility: '',
  255. active: '',
  256. utitle: '',
  257. physicianType: '',
  258. defaults: {
  259. 'id': null,
  260. 'date': new Date(),
  261. 'patientId': '',
  262. 'activity': '',
  263. 'requireAudit': '',
  264. 'pendingAction': '',
  265. 'actionTaken': '',
  266. 'status': '',
  267. 'narrative': '',
  268. 'tableAction': '',
  269. 'tableArgs': '',
  270. 'actionUser': '',
  271. 'actionTakenTime': new Date(),
  272. 'checksum': '',
  273. 'title': '',
  274. 'fname': '',
  275. 'lname': '',
  276. 'mname': '',
  277. 'dob': new Date(),
  278. 'ss': '',
  279. 'street': '',
  280. 'postalCode': '',
  281. 'city': '',
  282. 'state': '',
  283. 'referrerid': '',
  284. 'providerid': '',
  285. 'refProviderid': '',
  286. 'pubpid': '',
  287. 'careTeam': '',
  288. 'username': '',
  289. 'authorized': '',
  290. 'ufname': '',
  291. 'umname': '',
  292. 'ulname': '',
  293. 'facility': '',
  294. 'active': '',
  295. 'utitle': '',
  296. 'physicianType': ''
  297. }
  298. });
  299. /**
  300. * OnsiteActivityView Backbone Collection
  301. */
  302. model.OnsiteActivityViewCollection = model.AbstractCollection.extend({
  303. url: 'api/onsiteactivityviews',
  304. model: model.OnsiteActivityViewModel
  305. });
  306. /**
  307. * Patient Backbone Model
  308. */
  309. model.PatientModel = Backbone.Model.extend({
  310. urlRoot: 'api/patient',
  311. idAttribute: 'id',
  312. id: '',
  313. title: '',
  314. language: '',
  315. fname: '',
  316. lname: '',
  317. mname: '',
  318. dob: '',
  319. street: '',
  320. postalCode: '',
  321. city: '',
  322. state: '',
  323. countryCode: '',
  324. driversLicense: '',
  325. ss: '',
  326. occupation: '',
  327. phoneHome: '',
  328. phoneBiz: '',
  329. phoneContact: '',
  330. phoneCell: '',
  331. pharmacyId: '',
  332. status: '',
  333. contactRelationship: '',
  334. date: '',
  335. sex: '',
  336. referrer: '',
  337. referrerid: '',
  338. providerid: '',
  339. refProviderid: '',
  340. email: '',
  341. emailDirect: '',
  342. ethnoracial: '',
  343. race: '',
  344. ethnicity: '',
  345. religion: '',
  346. familySize: '',
  347. pubpid: '',
  348. pid: '',
  349. hipaaMail: '',
  350. hipaaVoice: '',
  351. hipaaNotice: '',
  352. hipaaMessage: '',
  353. hipaaAllowsms: '',
  354. hipaaAllowemail: '',
  355. regdate: '',
  356. mothersname: '',
  357. guardiansname: '',
  358. allowImmRegUse: '',
  359. allowImmInfoShare: '',
  360. allowHealthInfoEx: '',
  361. allowPatientPortal: '',
  362. careTeam: '',
  363. county: '',
  364. note: '',
  365. defaults: {
  366. 'id': null,
  367. 'title': '',
  368. 'language': '',
  369. 'fname': '',
  370. 'lname': '',
  371. 'mname': '',
  372. 'dob': '',
  373. 'street': '',
  374. 'postalCode': '',
  375. 'city': '',
  376. 'state': '',
  377. 'countryCode': '',
  378. 'driversLicense': '',
  379. 'ss': '',
  380. 'occupation': '',
  381. 'phoneHome': '',
  382. 'phoneBiz': '',
  383. 'phoneContact': '',
  384. 'phoneCell': '',
  385. 'pharmacyId': '',
  386. 'status': '',
  387. 'contactRelationship': '',
  388. 'date': new Date().toISOString().slice(0,10),
  389. 'sex': '',
  390. 'referrer': '',
  391. 'referrerid': '',
  392. 'providerid': '',
  393. 'refProviderid': '',
  394. 'email': '',
  395. 'emailDirect': '',
  396. 'ethnoracial': '',
  397. 'race': '',
  398. 'ethnicity': '',
  399. 'religion': '',
  400. 'familySize': '',
  401. 'pubpid': '',
  402. 'pid': '',
  403. 'hipaaMail': '',
  404. 'hipaaVoice': '',
  405. 'hipaaNotice': '',
  406. 'hipaaMessage': '',
  407. 'hipaaAllowsms': '',
  408. 'hipaaAllowemail': '',
  409. 'regdate': new Date().toISOString().slice(0,10),
  410. 'mothersname': '',
  411. 'guardiansname': '',
  412. 'allowImmRegUse': '',
  413. 'allowImmInfoShare': '',
  414. 'allowHealthInfoEx': '',
  415. 'allowPatientPortal': '',
  416. 'careTeam': '',
  417. 'county': '',
  418. 'note': ''
  419. }
  420. });
  421. /**
  422. * Patient Backbone Collection
  423. */
  424. model.PatientCollection = model.AbstractCollection.extend({
  425. url: 'api/patientdata',
  426. model: model.PatientModel
  427. });
  428. /**
  429. * Portal Patient Edit Backbone Model
  430. */
  431. model.PortalPatientModel = Backbone.Model.extend({
  432. urlRoot: 'api/portalpatient',
  433. idAttribute: 'id',
  434. id: '',
  435. title: '',
  436. language: '',
  437. fname: '',
  438. lname: '',
  439. mname: '',
  440. dob: '',
  441. street: '',
  442. postalCode: '',
  443. city: '',
  444. state: '',
  445. countryCode: '',
  446. driversLicense: '',
  447. ss: '',
  448. occupation: '',
  449. phoneHome: '',
  450. phoneBiz: '',
  451. phoneContact: '',
  452. phoneCell: '',
  453. pharmacyId: '',
  454. status: '',
  455. contactRelationship: '',
  456. date: '',
  457. sex: '',
  458. referrer: '',
  459. referrerid: '',
  460. providerid: '',
  461. refProviderid: '',
  462. email: '',
  463. emailDirect: '',
  464. ethnoracial: '',
  465. race: '',
  466. ethnicity: '',
  467. religion: '',
  468. familySize: '',
  469. pubpid: '',
  470. pid: '',
  471. hipaaMail: '',
  472. hipaaVoice: '',
  473. hipaaNotice: '',
  474. hipaaMessage: '',
  475. hipaaAllowsms: '',
  476. hipaaAllowemail: '',
  477. regdate: '',
  478. mothersname: '',
  479. guardiansname: '',
  480. allowImmRegUse: '',
  481. allowImmInfoShare: '',
  482. allowHealthInfoEx: '',
  483. allowPatientPortal: '',
  484. careTeam: '',
  485. county: '',
  486. note: '',
  487. defaults: {
  488. 'id': null,
  489. 'title': '',
  490. 'language': '',
  491. 'fname': '',
  492. 'lname': '',
  493. 'mname': '',
  494. 'dob': '',
  495. 'street': '',
  496. 'postalCode': '',
  497. 'city': '',
  498. 'state': '',
  499. 'countryCode': '',
  500. 'driversLicense': '',
  501. 'ss': '',
  502. 'occupation': '',
  503. 'phoneHome': '',
  504. 'phoneBiz': '',
  505. 'phoneContact': '',
  506. 'phoneCell': '',
  507. 'pharmacyId': '',
  508. 'status': '',
  509. 'contactRelationship': '',
  510. 'date': new Date().toISOString().slice(0,10),
  511. 'sex': '',
  512. 'referrer': '',
  513. 'referrerid': '',
  514. 'providerid': '',
  515. 'refProviderid': '',
  516. 'email': '',
  517. 'emailDirect': '',
  518. 'ethnoracial': '',
  519. 'race': '',
  520. 'ethnicity': '',
  521. 'religion': '',
  522. 'familySize': '',
  523. 'pubpid': '',
  524. 'pid': '',
  525. 'hipaaMail': '',
  526. 'hipaaVoice': '',
  527. 'hipaaNotice': '',
  528. 'hipaaMessage': '',
  529. 'hipaaAllowsms': '',
  530. 'hipaaAllowemail': '',
  531. 'regdate': new Date().toISOString().slice(0,10),
  532. 'mothersname': '',
  533. 'guardiansname': '',
  534. 'allowImmRegUse': '',
  535. 'allowImmInfoShare': '',
  536. 'allowHealthInfoEx': '',
  537. 'allowPatientPortal': '',
  538. 'careTeam': '',
  539. 'county': '',
  540. 'note': ''
  541. }
  542. });
  543. /**
  544. * Portal Patient Backbone Collection
  545. */
  546. model.PortalPatientCollection = model.AbstractCollection.extend({
  547. url: 'api/portalpatientdata',
  548. model: model.PortalPatientModel
  549. });/**/
  550. /**
  551. * User Backbone Model
  552. */
  553. model.UserModel = Backbone.Model.extend({
  554. urlRoot: 'api/user',
  555. idAttribute: 'id',
  556. id: '',
  557. username: '',
  558. password: '',
  559. authorized: '',
  560. info: '',
  561. source: '',
  562. fname: '',
  563. mname: '',
  564. lname: '',
  565. federaltaxid: '',
  566. federaldrugid: '',
  567. upin: '',
  568. facility: '',
  569. facilityId: '',
  570. seeAuth: '',
  571. active: '',
  572. npi: '',
  573. title: '',
  574. specialty: '',
  575. billname: '',
  576. email: '',
  577. emailDirect: '',
  578. eserUrl: '',
  579. assistant: '',
  580. organization: '',
  581. valedictory: '',
  582. street: '',
  583. streetb: '',
  584. city: '',
  585. state: '',
  586. zip: '',
  587. street2: '',
  588. streetb2: '',
  589. city2: '',
  590. state2: '',
  591. zip2: '',
  592. phone: '',
  593. fax: '',
  594. phonew1: '',
  595. phonew2: '',
  596. phonecell: '',
  597. notes: '',
  598. calUi: '',
  599. taxonomy: '',
  600. ssiRelayhealth: '',
  601. calendar: '',
  602. abookType: '',
  603. pwdExpirationDate: '',
  604. pwdHistory1: '',
  605. pwdHistory2: '',
  606. defaultWarehouse: '',
  607. irnpool: '',
  608. stateLicenseNumber: '',
  609. newcropUserRole: '',
  610. cpoe: '',
  611. physicianType: '',
  612. portalUser: '',
  613. defaults: {
  614. 'id': null,
  615. 'username': '',
  616. 'password': '',
  617. 'authorized': '',
  618. 'info': '',
  619. 'source': '',
  620. 'fname': '',
  621. 'mname': '',
  622. 'lname': '',
  623. 'federaltaxid': '',
  624. 'federaldrugid': '',
  625. 'upin': '',
  626. 'facility': '',
  627. 'facilityId': '',
  628. 'seeAuth': '',
  629. 'active': '',
  630. 'npi': '',
  631. 'title': '',
  632. 'specialty': '',
  633. 'billname': '',
  634. 'email': '',
  635. 'emailDirect': '',
  636. 'eserUrl': '',
  637. 'assistant': '',
  638. 'organization': '',
  639. 'valedictory': '',
  640. 'street': '',
  641. 'streetb': '',
  642. 'city': '',
  643. 'state': '',
  644. 'zip': '',
  645. 'street2': '',
  646. 'streetb2': '',
  647. 'city2': '',
  648. 'state2': '',
  649. 'zip2': '',
  650. 'phone': '',
  651. 'fax': '',
  652. 'phonew1': '',
  653. 'phonew2': '',
  654. 'phonecell': '',
  655. 'notes': '',
  656. 'calUi': '',
  657. 'taxonomy': '',
  658. 'ssiRelayhealth': '',
  659. 'calendar': '',
  660. 'abookType': '',
  661. 'pwdExpirationDate': '',
  662. 'pwdHistory1': '',
  663. 'pwdHistory2': '',
  664. 'defaultWarehouse': '',
  665. 'irnpool': '',
  666. 'stateLicenseNumber': '',
  667. 'newcropUserRole': '',
  668. 'cpoe': '',
  669. 'physicianType': '',
  670. 'portalUser': 0
  671. }
  672. });
  673. /**
  674. * User Backbone Collection
  675. */
  676. model.UserCollection = model.AbstractCollection.extend({
  677. url: 'api/users',
  678. model: model.UserModel
  679. });
  680. /**
  681. * InsuranceCompany Backbone Model
  682. */
  683. model.InsuranceCompanyModel = Backbone.Model.extend({
  684. urlRoot: 'api/insurancecompany',
  685. idAttribute: 'id',
  686. id: '',
  687. name: '',
  688. attn: '',
  689. cmsId: '',
  690. freebType: '',
  691. x12ReceiverId: '',
  692. x12DefaultPartnerId: '',
  693. altCmsId: '',
  694. defaults: {
  695. 'id': null,
  696. 'name': '',
  697. 'attn': '',
  698. 'cmsId': '',
  699. 'freebType': '',
  700. 'x12ReceiverId': '',
  701. 'x12DefaultPartnerId': '',
  702. 'altCmsId': ''
  703. }
  704. });
  705. /**
  706. * InsuranceCompany Backbone Collection
  707. */
  708. model.InsuranceCompanyCollection = model.AbstractCollection.extend({
  709. url: 'api/insurancecompanies',
  710. model: model.InsuranceCompanyModel
  711. });
  712. /**
  713. * InsuranceData Backbone Model
  714. */
  715. model.InsuranceDataModel = Backbone.Model.extend({
  716. urlRoot: 'api/insurancedata',
  717. idAttribute: 'id',
  718. id: '',
  719. type: '',
  720. provider: '',
  721. planName: '',
  722. policyNumber: '',
  723. groupNumber: '',
  724. subscriberLname: '',
  725. subscriberMname: '',
  726. subscriberFname: '',
  727. subscriberRelationship: '',
  728. subscriberSs: '',
  729. subscriberDob: '',
  730. subscriberStreet: '',
  731. subscriberPostalCode: '',
  732. subscriberCity: '',
  733. subscriberState: '',
  734. subscriberCountry: '',
  735. subscriberPhone: '',
  736. subscriberEmployer: '',
  737. subscriberEmployerStreet: '',
  738. subscriberEmployerPostalCode: '',
  739. subscriberEmployerState: '',
  740. subscriberEmployerCountry: '',
  741. subscriberEmployerCity: '',
  742. copay: '',
  743. date: '',
  744. pid: '',
  745. subscriberSex: '',
  746. acceptAssignment: '',
  747. policyType: '',
  748. defaults: {
  749. 'id': null,
  750. 'type': '',
  751. 'provider': '',
  752. 'planName': '',
  753. 'policyNumber': '',
  754. 'groupNumber': '',
  755. 'subscriberLname': '',
  756. 'subscriberMname': '',
  757. 'subscriberFname': '',
  758. 'subscriberRelationship': '',
  759. 'subscriberSs': '',
  760. 'subscriberDob': new Date(),
  761. 'subscriberStreet': '',
  762. 'subscriberPostalCode': '',
  763. 'subscriberCity': '',
  764. 'subscriberState': '',
  765. 'subscriberCountry': '',
  766. 'subscriberPhone': '',
  767. 'subscriberEmployer': '',
  768. 'subscriberEmployerStreet': '',
  769. 'subscriberEmployerPostalCode': '',
  770. 'subscriberEmployerState': '',
  771. 'subscriberEmployerCountry': '',
  772. 'subscriberEmployerCity': '',
  773. 'copay': '',
  774. 'date': new Date(),
  775. 'pid': '',
  776. 'subscriberSex': '',
  777. 'acceptAssignment': '',
  778. 'policyType': ''
  779. }
  780. });
  781. /**
  782. * InsuranceData Backbone Collection
  783. */
  784. model.InsuranceDataCollection = model.AbstractCollection.extend({
  785. url: 'api/insurancedatas',
  786. model: model.InsuranceDataModel
  787. });