Sidebar-Veeam.js 66 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910
  1. (function()
  2. {
  3. Sidebar.prototype.addVeeamPalette = function()
  4. {
  5. // this.setCurrentSearchEntryLibrary('veeam', 'veeamData Center');
  6. this.addVeeamDataCenterPalette();
  7. // this.setCurrentSearchEntryLibrary('veeam', 'veeamMisc');
  8. this.addVeeamMiscPalette();
  9. // this.setCurrentSearchEntryLibrary('veeam', 'veeamSoftware');
  10. this.addVeeamSoftwarePalette();
  11. // this.setCurrentSearchEntryLibrary('veeam', 'veeamStorage');
  12. this.addVeeamStoragePalette();
  13. // this.setCurrentSearchEntryLibrary('veeam', 'veeamUsersStatus');
  14. this.addVeeamUsersStatusPalette();
  15. // this.setCurrentSearchEntryLibrary('veeam', 'veeamVASComponents');
  16. this.addVeeamVASComponentsPalette();
  17. // this.setCurrentSearchEntryLibrary('veeam', 'veeamBackup Replication');
  18. this.addVeeamBackupReplicationPalette();
  19. // this.setCurrentSearchEntryLibrary('veeam', 'veeamProducts');
  20. this.addVeeamProductsPalette();
  21. // this.setCurrentSearchEntryLibrary('veeam', 'veeamVMs and Tape');
  22. this.addVeeamVMsTapePalette();
  23. this.setCurrentSearchEntryLibrary('veeam2', 'veeam23D');
  24. this.addVeeam3DPalette();
  25. this.setCurrentSearchEntryLibrary();
  26. };
  27. Sidebar.prototype.addVeeamDataCenterPalette = function()
  28. {
  29. var sn = 'pointerEvents=1;shadow=0;dashed=0;html=1;strokeColor=none;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.2d.';
  30. var s = 'pointerEvents=1;shadow=0;dashed=0;html=1;strokeColor=none;fillColor=#4495D1;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.2d.';
  31. var s2 = 'pointerEvents=1;shadow=0;dashed=0;html=1;strokeColor=none;fillColor=#EF8F21;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.2d.';
  32. var s3 = 'pointerEvents=1;shadow=0;dashed=0;html=1;strokeColor=none;fillColor=#4495D1;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.';
  33. var s4 = 'pointerEvents=1;shadow=0;dashed=0;html=1;strokeColor=none;fillColor=#EF8F21;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.';
  34. // Space savers
  35. var sb = this;
  36. var gn = 'mxgraph.veeam.data_center';
  37. var dt = 'veeam vmware virtual machine data center';
  38. var w = 4.0;
  39. var h = 4.0;
  40. var fns =
  41. [
  42. this.createVertexTemplateEntry(s3 + 'hyper_v_vmware_host;',
  43. w * 27, h * 26, '', 'VMware/Hyper-V Host', null, null, this.getTagsForStencil(gn, 'hyper vmware host', dt).join(' ')),
  44. this.createVertexTemplateEntry(s3 + 'hyper_v_host;',
  45. w * 27, h * 26, '', 'Hyper-V Host', null, null, this.getTagsForStencil(gn, 'hyper host', dt).join(' ')),
  46. this.createVertexTemplateEntry(s3 + 'vmware_host;',
  47. w * 27, h * 26, '', 'VMware Host', null, null, this.getTagsForStencil(gn, 'vmware host', dt).join(' ')),
  48. this.createVertexTemplateEntry(s3 + 'virtual_host;',
  49. w * 27, h * 26, '', 'Virtual Host', null, null, this.getTagsForStencil(gn, 'virtual host', dt).join(' ')),
  50. this.createVertexTemplateEntry(s4 + 'production_site;',
  51. w * 11.2, h * 11.2, '', 'Production Site', null, null, this.getTagsForStencil(gn, 'production site', dt).join(' ')),
  52. this.createVertexTemplateEntry(s4 + 'dr_site;',
  53. w * 11.2, h * 11.2, '', 'DR Site', null, null, this.getTagsForStencil(gn, 'dr site', dt).join(' ')),
  54. this.createVertexTemplateEntry(s + 'esx_esxi;',
  55. w * 8.3, h * 12.7, '', 'Physical Server', null, null, this.getTagsForStencil(gn, 'esx esxi', dt).join(' ')),
  56. this.createVertexTemplateEntry(s3 + 'server;',
  57. w * 17.9, h * 4.7, '', 'Server', null, null, this.getTagsForStencil(gn, 'esx esxi', dt).join(' ')),
  58. this.createVertexTemplateEntry(s3 + 'server_stack;',
  59. w * 14.3, h * 12.4, '', 'Server stack', null, null, this.getTagsForStencil(gn, 'server stack', dt).join(' ')),
  60. this.createVertexTemplateEntry(s3 + 'data_center;',
  61. w * 19, h * 12.5, '', 'Data center', null, null, this.getTagsForStencil(gn, 'data center', dt).join(' ')),
  62. this.createVertexTemplateEntry(s3 + 'cluster;',
  63. w * 25.7, h * 12.3, '', 'Cluster', null, null, this.getTagsForStencil(gn, 'cluster', dt).join(' ')),
  64. this.createVertexTemplateEntry(s3 + 'controller;',
  65. w * 11.2, h * 11.2, '', 'Controller', null, null, this.getTagsForStencil(gn, 'controller', dt).join(' ')),
  66. this.createVertexTemplateEntry(s3 + 'cpu;',
  67. w * 11.2, h * 11.2, '', 'CPU', null, null, this.getTagsForStencil(gn, 'cpu', dt).join(' ')),
  68. this.createVertexTemplateEntry(s3 + 'cpu_socket;',
  69. w * 11.2, h * 11.2, '', 'CPU socket', null, null, this.getTagsForStencil(gn, 'cpu socket', dt).join(' ')),
  70. this.createVertexTemplateEntry(s + 'cloud_gateway;',
  71. w * 11.2, h * 11.2, '', 'Gateway', null, null, this.getTagsForStencil(gn, 'cloud gateway', dt).join(' ')),
  72. this.createVertexTemplateEntry(s3 + 'laptop;',
  73. w * 14.6, h * 11, '', 'Laptop', null, null, this.getTagsForStencil(gn, 'laptop', dt).join(' ')),
  74. this.createVertexTemplateEntry(s3 + 'monitor;',
  75. w * 10.8, h * 11.9, '', 'Monitor', null, null, this.getTagsForStencil(gn, 'monitor', dt).join(' ')),
  76. this.createVertexTemplateEntry(s + 'proxy;',
  77. w * 11.2, h * 11.2, '', 'Proxy', null, null, this.getTagsForStencil(gn, 'proxy', dt).join(' ')),
  78. this.createVertexTemplateEntry(s + 'proxy_appliance;',
  79. w * 11.2, h * 11.2, '', 'Proxy Appliance', null, null, this.getTagsForStencil(gn, 'proxy appliance', dt).join(' ')),
  80. this.createVertexTemplateEntry(s3 + 'ram;',
  81. w * 12.1, h * 6.3, '', 'RAM', null, null, this.getTagsForStencil(gn, 'ram random access memory', dt).join(' ')),
  82. this.createVertexTemplateEntry(s3 + 'raid_controller;',
  83. w * 10.5, h * 7.3, '', 'RAID controller', null, null, this.getTagsForStencil(gn, 'raid controller', dt).join(' ')),
  84. this.createVertexTemplateEntry(s3 + 'sd_card;',
  85. w * 8.1, h * 9.7, '', 'SD card', null, null, this.getTagsForStencil(gn, 'sd card', dt).join(' ')),
  86. this.createVertexTemplateEntry(s + 'workstation;',
  87. w * 19.1, h * 12.8, '', 'Workstation', null, null, this.getTagsForStencil(gn, 'workstation', dt).join(' ')),
  88. this.createVertexTemplateEntry(s + 'wan_accelerator;',
  89. w * 11.2, h * 11.2, '', 'WAN Accelerator', null, null, this.getTagsForStencil(gn, 'wan accelerator wireless area network', dt).join(' ')),
  90. this.createVertexTemplateEntry(s3 + 'usb;',
  91. w * 13.2, h * 4.6, '', 'USB', null, null, this.getTagsForStencil(gn, 'usb', dt).join(' ')),
  92. this.createVertexTemplateEntry(s + 'network_card;',
  93. w * 10.7, h * 7.5, '', 'Network Card', null, null, this.getTagsForStencil(gn, 'network card', dt).join(' ')),
  94. this.createVertexTemplateEntry(s + 'switch;',
  95. w * 16, h * 2.7, '', 'Network Switch', null, null, this.getTagsForStencil(gn, 'network switch', dt).join(' ')),
  96. this.createVertexTemplateEntry(s + 'service_vnic;',
  97. w * 14.2, h * 13.5, '', 'Service vNIC', null, null, this.getTagsForStencil(gn, 'service vnic', dt).join(' ')),
  98. this.createVertexTemplateEntry(s + 'virtual_switch;',
  99. w * 11.2, h * 11.2, '', 'Virtual Switch', null, null, this.getTagsForStencil(gn, 'switch', dt).join(' ')),
  100. this.createVertexTemplateEntry(s + 'vnic;',
  101. w * 11.2, h * 11.2, '', 'vNIC', null, null, this.getTagsForStencil(gn, 'vnic', dt).join(' '))
  102. ];
  103. this.addPalette('veeamData Center', 'Veeam / Data Center', false, mxUtils.bind(this, function(content)
  104. {
  105. for (var i = 0; i < fns.length; i++)
  106. {
  107. content.appendChild(fns[i](content));
  108. }
  109. }));
  110. };
  111. Sidebar.prototype.addVeeamMiscPalette = function()
  112. {
  113. var sn = 'shadow=0;dashed=0;html=1;strokeColor=none;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.2d.';
  114. var s = 'shadow=0;dashed=0;html=1;strokeColor=none;fillColor=#4495D1;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.2d.';
  115. var s2 = 'shadow=0;dashed=0;html=1;strokeColor=none;fillColor=#EF8F21;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.2d.';
  116. var s3 = 'shadow=0;dashed=0;html=1;strokeColor=none;fillColor=#4495D1;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.';
  117. var s4 = 'shadow=0;dashed=0;html=1;strokeColor=none;fillColor=#EF8F21;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.';
  118. // Space savers
  119. var sb = this;
  120. var gn = 'mxgraph.veeam.misc';
  121. var dt = 'veeam vmware virtual machine misc miscellaneous';
  122. var w = 4.0;
  123. var h = 4.0;
  124. var fns =
  125. [
  126. this.createVertexTemplateEntry(s + 'alarm;',
  127. w * 13.2, h * 9.4, '', 'Alarm', null, null, this.getTagsForStencil(gn, 'alarm', dt).join(' ')),
  128. this.createVertexTemplateEntry(s3 + 'building;',
  129. w * 15.8, h * 13.8, '', 'Building', null, null, this.getTagsForStencil(gn, 'building', dt).join(' ')),
  130. this.createVertexTemplateEntry(s + 'cloud;',
  131. w * 14.7, h * 10.4, '', 'Cloud', null, null, this.getTagsForStencil(gn, 'cloud', dt).join(' ')),
  132. this.createVertexTemplateEntry(s3 + 'checked_doc;',
  133. w * 12.7, h * 15.4, '', 'Checked doc', null, null, this.getTagsForStencil(gn, 'checked doc document', dt).join(' ')),
  134. this.createVertexTemplateEntry(s + 'download;',
  135. w * 11.2, h * 11.2, '', 'Download', null, null, this.getTagsForStencil(gn, 'download', dt).join(' ')),
  136. this.createVertexTemplateEntry(s3 + 'dns;',
  137. w * 11.2, h * 11.2, '', 'DNS', null, null, this.getTagsForStencil(gn, 'dns domain name server', dt).join(' ')),
  138. this.createVertexTemplateEntry(s3 + 'encryption_key;',
  139. w * 9.2, h * 12.7, '', 'Encryption key', null, null, this.getTagsForStencil(gn, 'dns domain name server', dt).join(' ')),
  140. this.createVertexTemplateEntry(s + 'file;',
  141. w * 9.2, h * 12.7, '', 'File', null, null, this.getTagsForStencil(gn, 'file', dt).join(' ')),
  142. this.createVertexTemplateEntry(s + 'folder;',
  143. w * 13.8, h * 12.8, '', 'Folder', null, null, this.getTagsForStencil(gn, 'folder', dt).join(' ')),
  144. this.createVertexTemplateEntry(s3 + 'globe;',
  145. w * 11.2, h * 11.2, '', 'Globe', null, null, this.getTagsForStencil(gn, 'globe', dt).join(' ')),
  146. this.createVertexTemplateEntry(s3 + 'iso;',
  147. w * 9.2, h * 12.7, '', 'ISO', null, null, this.getTagsForStencil(gn, 'iso international standard organization', dt).join(' ')),
  148. this.createVertexTemplateEntry(s + 'letter;',
  149. w * 11.6, h * 8.7, '', 'Letter', null, null, this.getTagsForStencil(gn, 'letter', dt).join(' ')),
  150. this.createVertexTemplateEntry(s3 + 'library;',
  151. w * 12, h * 9.2, '', 'Library', null, null, this.getTagsForStencil(gn, 'library', dt).join(' ')),
  152. this.createVertexTemplateEntry(s3 + 'license;',
  153. w * 12.7, h * 14.1, '', 'License', null, null, this.getTagsForStencil(gn, 'license', dt).join(' ')),
  154. this.createVertexTemplateEntry(s3 + 'magnifying_glass;pointerEvents=1;',
  155. w * 13.8, h * 13.6, '', 'Magnifying Glass', null, null, this.getTagsForStencil(gn, 'magnifying glass', dt).join(' ')),
  156. this.createVertexTemplateEntry(s3 + 'script;',
  157. w * 11.2, h * 11.2, '', 'Script', null, null, this.getTagsForStencil(gn, 'script', dt).join(' ')),
  158. this.createVertexTemplateEntry(s + 'search;',
  159. w * 11.2, h * 11.2, '', 'Search', null, null, this.getTagsForStencil(gn, 'search', dt).join(' ')),
  160. this.createVertexTemplateEntry(s3 + 'smb;pointerEvents=1;',
  161. w * 20, h * 14.1, '', 'SMB', null, null, this.getTagsForStencil(gn, 'smb', dt).join(' ')),
  162. this.createVertexTemplateEntry(s3 + 'tasks;',
  163. w * 9.2, h * 12.7, '', 'Tasks', null, null, this.getTagsForStencil(gn, 'tasks', dt).join(' ')),
  164. this.createVertexTemplateEntry(s3 + 'table;',
  165. w * 12.7, h * 12.7, '', 'Table', null, null, this.getTagsForStencil(gn, 'table', dt).join(' ')),
  166. this.createVertexTemplateEntry(s3 + 'time;',
  167. w * 11.2, h * 11.2, '', 'Time', null, null, this.getTagsForStencil(gn, 'time', dt).join(' ')),
  168. this.createVertexTemplateEntry(s + 'resource_pool;',
  169. w * 11.2, h * 11.2, '', 'Part', null, null, this.getTagsForStencil(gn, 'resource pool', dt).join(' ')),
  170. this.createVertexTemplateEntry(s + 'private_key;',
  171. w * 13.9, h * 12.7, '', 'Private Key', null, null, this.getTagsForStencil(gn, 'private key', dt).join(' ')),
  172. this.createVertexTemplateEntry(s + 'report;',
  173. w * 9.2, h * 12.7, '', 'Report', null, null, this.getTagsForStencil(gn, 'report', dt).join(' ')),
  174. this.createVertexTemplateEntry(s + 'privilege;',
  175. w * 15.1, h * 14.5, '', 'Policy', null, null, this.getTagsForStencil(gn, 'policy', dt).join(' ')),
  176. this.createVertexTemplateEntry(s3 + 'restore;pointerEvents=1;',
  177. w * 11.2, h * 11.2, '', 'Restore', null, null, this.getTagsForStencil(gn, 'restore', dt).join(' ')),
  178. this.createVertexTemplateEntry(s + 'role;',
  179. w * 9.2, h * 12.7, '', 'Role', null, null, this.getTagsForStencil(gn, 'role', dt).join(' ')),
  180. this.createVertexTemplateEntry(s3 + 'transportation;',
  181. w * 13.8, h * 9.6, '', 'Transportation', null, null, this.getTagsForStencil(gn, 'transportation', dt).join(' '))
  182. ];
  183. this.addPalette('veeamMisc', 'Veeam / Miscellaneous', false, mxUtils.bind(this, function(content)
  184. {
  185. for (var i = 0; i < fns.length; i++)
  186. {
  187. content.appendChild(fns[i](content));
  188. }
  189. }));
  190. };
  191. Sidebar.prototype.addVeeamSoftwarePalette = function()
  192. {
  193. var sn = 'shadow=0;dashed=0;html=1;strokeColor=none;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.2d.';
  194. var s = 'shadow=0;dashed=0;html=1;strokeColor=none;fillColor=#4495D1;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.2d.';
  195. var s2 = 'shadow=0;dashed=0;html=1;strokeColor=none;fillColor=#EF8F21;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.2d.';
  196. var s3 = 'shadow=0;dashed=0;html=1;strokeColor=none;fillColor=#4495D1;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.';
  197. var s4 = 'shadow=0;dashed=0;html=1;strokeColor=none;fillColor=#EF8F21;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.';
  198. // Space savers
  199. var sb = this;
  200. var gn = 'mxgraph.veeam.software';
  201. var dt = 'veeam vmware virtual machine software';
  202. var w = 4.0;
  203. var h = 4.0;
  204. var fns =
  205. [
  206. this.createVertexTemplateEntry('pointerEvents=1;shadow=0;dashed=0;html=1;strokeColor=none;fillColor=#07B152;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.veeam_logo;',
  207. w * 27.4, h * 4.8, '', 'Veeam logo', null, null, this.getTagsForStencil(gn, 'veeam logo', dt).join(' ')),
  208. this.createVertexTemplateEntry(s4 + 'active_directory;',
  209. w * 11.2, h * 11.2, '', 'Active Directory', null, null, this.getTagsForStencil(gn, 'active directory', dt).join(' ')),
  210. this.createVertexTemplateEntry(s + 'agent;pointerEvents=1;',
  211. w * 11.2, h * 11.2, '', 'Agent', null, null, this.getTagsForStencil(gn, 'agent', dt).join(' ')),
  212. this.createVertexTemplateEntry(s3 + 'automated_testing;',
  213. w * 11.2, h * 11.2, '', 'Automated Testing', null, null, this.getTagsForStencil(gn, 'automated testing', dt).join(' ')),
  214. this.createVertexTemplateEntry(s + 'backup_browser;',
  215. w * 11.2, h * 11.2, '', 'Backup Browser', null, null, this.getTagsForStencil(gn, 'backup browser', dt).join(' ')),
  216. this.createVertexTemplateEntry(s + 'data_mover;pointerEvents=1;',
  217. w * 11.2, h * 11.2, '', 'Data Mover', null, null, this.getTagsForStencil(gn, 'data mover', dt).join(' ')),
  218. this.createVertexTemplateEntry(s + 'database;',
  219. w * 15.7, h * 13.5, '', 'Database', null, null, this.getTagsForStencil(gn, 'database db', dt).join(' ')),
  220. this.createVertexTemplateEntry(s3 + 'deduplication;',
  221. w * 11.2, h * 11.2, '', 'Deduplication', null, null, this.getTagsForStencil(gn, 'deduplication', dt).join(' ')),
  222. this.createVertexTemplateEntry(s3 + 'failover_plan;',
  223. w * 9.6, h * 13.6, '', 'Failover plan', null, null, this.getTagsForStencil(gn, 'failover plan', dt).join(' ')),
  224. this.createVertexTemplateEntry(s + 'file_system_browser;',
  225. w * 11.2, h * 11.2, '', 'File System Browser', null, null, this.getTagsForStencil(gn, 'file system browser', dt).join(' ')),
  226. this.createVertexTemplateEntry(s + 'failover_protective_snapshot;',
  227. w * 11.2, h * 11.2, '', 'Failover Protection', null, null, this.getTagsForStencil(gn, 'failover protection', dt).join(' ')),
  228. this.createVertexTemplateEntry(s3 + 'interface;',
  229. w * 11.2, h * 11.2, '', 'Interface', null, null, this.getTagsForStencil(gn, 'interface', dt).join(' ')),
  230. this.createVertexTemplateEntry(s + 'monitoring_console;',
  231. w * 11.2, h * 11.2, '', 'Monitoring Console', null, null, this.getTagsForStencil(gn, 'monitoring console', dt).join(' ')),
  232. this.createVertexTemplateEntry(s4 + 'linux;',
  233. w * 11.2, h * 11.2, '', 'Linux', null, null, this.getTagsForStencil(gn, 'linux', dt).join(' ')),
  234. this.createVertexTemplateEntry(s4 + 'ms_sharepoint;',
  235. w * 11.2, h * 11.2, '', 'MS SharePoint', null, null, this.getTagsForStencil(gn, 'sharepoint', dt).join(' ')),
  236. this.createVertexTemplateEntry(s4 + 'ms_sql;',
  237. w * 11.2, h * 11.2, '', 'MS SQL', null, null, this.getTagsForStencil(gn, 'sql', dt).join(' ')),
  238. this.createVertexTemplateEntry(s4 + 'ms_exchange;',
  239. w * 11.2, h * 11.2, '', 'MS Exchange', null, null, this.getTagsForStencil(gn, 'exchange', dt).join(' ')),
  240. this.createVertexTemplateEntry(s3 + 'ms_exchange_items;',
  241. w * 20.4, h * 17.3, '', 'MS Exchange items', null, null, this.getTagsForStencil(gn, 'exchange items', dt).join(' ')),
  242. this.createVertexTemplateEntry(s4 + 'ms_office;',
  243. w * 11.2, h * 11.2, '', 'MS Office', null, null, this.getTagsForStencil(gn, 'office', dt).join(' ')),
  244. this.createVertexTemplateEntry(s4 + 'ms_outlook;',
  245. w * 11.2, h * 11.2, '', 'MS Outlook', null, null, this.getTagsForStencil(gn, 'outlook', dt).join(' ')),
  246. this.createVertexTemplateEntry(s + 'web_console;',
  247. w * 11.2, h * 11.2, '', 'Web Console', null, null, this.getTagsForStencil(gn, 'web console', dt).join(' ')),
  248. this.createVertexTemplateEntry(s3 + 'vpn;',
  249. w * 13.5, h * 9.5, '', 'VPN', null, null, this.getTagsForStencil(gn, 'vpn virtual private network', dt).join(' ')),
  250. this.createVertexTemplateEntry(s + 'service;',
  251. w * 8.3, h * 8.3, '', 'Service', null, null, this.getTagsForStencil(gn, 'service', dt).join(' ')),
  252. this.createVertexTemplateEntry('shadow=0;dashed=0;html=1;strokeColor=none;fillColor=#75B4DB;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.volume_shadow_copy;',
  253. w * 14.3, h * 14.3, '', 'Volume shadow copy', null, null, this.getTagsForStencil(gn, 'volume shadow copy', dt).join(' ')),
  254. this.createVertexTemplateEntry(s4 + 'ms_windows;',
  255. w * 11.2, h * 11.2, '', 'MS Windows', null, null, this.getTagsForStencil(gn, 'windows', dt).join(' ')),
  256. this.createVertexTemplateEntry(s2 + 'powershell_extension;',
  257. w * 11.2, h * 11.2, '', 'PowerShell Extension', null, null, this.getTagsForStencil(gn, 'powershell extension', dt).join(' ')),
  258. this.createVertexTemplateEntry(s4 + 'vcloud_director',
  259. w * 11.2, h * 11.2, '', 'vCloud Director', null, null, this.getTagsForStencil(gn, 'vcloud director virtual cloud', dt).join(' ')),
  260. this.createVertexTemplateEntry(s4 + 'vsphere',
  261. w * 11.2, h * 11.2, '', 'vSphere', null, null, this.getTagsForStencil(gn, 'vsphere virtual sphere', dt).join(' ')),
  262. this.createVertexTemplateEntry(s + 'web_ui;',
  263. w * 11.2, h * 11.2, '', 'Web UI', null, null, this.getTagsForStencil(gn, 'web ui user interface', dt).join(' ')),
  264. this.createVertexTemplateEntry(s + 'transport_service;pointerEvents=1;',
  265. w * 11.2, h * 11.2, '', 'Transport Service', null, null, this.getTagsForStencil(gn, 'transport service', dt).join(' '))
  266. ];
  267. this.addPalette('veeamSoftware', 'Veeam / Software', false, mxUtils.bind(this, function(content)
  268. {
  269. for (var i = 0; i < fns.length; i++)
  270. {
  271. content.appendChild(fns[i](content));
  272. }
  273. }));
  274. };
  275. Sidebar.prototype.addVeeamStoragePalette = function()
  276. {
  277. var sn = 'shadow=0;dashed=0;html=1;strokeColor=none;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.2d.';
  278. var s = 'shadow=0;dashed=0;html=1;strokeColor=none;fillColor=#4495D1;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.2d.';
  279. var s2 = 'shadow=0;dashed=0;html=1;strokeColor=none;fillColor=#EF8F21;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.2d.';
  280. var s3 = 'shadow=0;dashed=0;html=1;strokeColor=none;fillColor=#4495D1;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.';
  281. var s4 = 'shadow=0;dashed=0;html=1;strokeColor=none;fillColor=#EF8F21;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.';
  282. // Space savers
  283. var sb = this;
  284. var gn = 'mxgraph.veeam.storage';
  285. var dt = 'veeam vmware virtual machine storage';
  286. var w = 4.0;
  287. var h = 4.0;
  288. var fns =
  289. [
  290. this.createVertexTemplateEntry(s + 'backup_repository;',
  291. w * 13.5, h * 12.5, '', 'Backup Repository', null, null, this.getTagsForStencil(gn, 'backup repository', dt).join(' ')),
  292. this.createVertexTemplateEntry(s3 + 'remote_repository;',
  293. w * 11.9, h * 11.6, '', 'Remote Repository', null, null, this.getTagsForStencil(gn, 'remote repository', dt).join(' ')),
  294. this.createVertexTemplateEntry(s3 + 'shared_folder;',
  295. w * 13.8, h * 16, '', 'Shared Folder', null, null, this.getTagsForStencil(gn, 'shared folder', dt).join(' ')),
  296. this.createVertexTemplateEntry(s + 'datastore;',
  297. w * 11.1, h * 11.3, '', 'Datastore', null, null, this.getTagsForStencil(gn, 'datastore', dt).join(' ')),
  298. this.createVertexTemplateEntry(s3 + 'snapshot;',
  299. w * 13.9, h * 12.2, '', 'Snapshot', null, null, this.getTagsForStencil(gn, 'snapshot', dt).join(' ')),
  300. this.createVertexTemplateEntry(s3 + 'storage_cluster;',
  301. w * 13.9, h * 14, '', 'Storage Cluster', null, null, this.getTagsForStencil(gn, 'storage cluster', dt).join(' ')),
  302. this.createVertexTemplateEntry(s + 'datastore_volume;',
  303. w * 15.8, h * 4.2, '', 'Data Volume', null, null, this.getTagsForStencil(gn, 'data volume', dt).join(' ')),
  304. this.createVertexTemplateEntry(s + 'physical_storage;',
  305. w * 14.8, h * 5, '', 'Physical Storage', null, null, this.getTagsForStencil(gn, 'physical storage', dt).join(' ')),
  306. this.createVertexTemplateEntry('shadow=0;dashed=0;html=1;strokeColor=none;fillColor=#75B4DB;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.2d.datastore;',
  307. w * 10.8, h * 11.1, '', 'Datastore', null, null, this.getTagsForStencil(gn, 'datastore', dt).join(' ')),
  308. this.createVertexTemplateEntry(s + 'full_datastore;',
  309. w * 10.8, h * 11.1, '', 'Full Datastore', null, null, this.getTagsForStencil(gn, 'full datastore', dt).join(' ')),
  310. this.createVertexTemplateEntry(s + 'medium_datastore;',
  311. w * 10.8, h * 11.1, '', 'Medium Datastore', null, null, this.getTagsForStencil(gn, 'medium datastore', dt).join(' ')),
  312. this.createVertexTemplateEntry(s + 'free_datastore;',
  313. w * 10.8, h * 11.1, '', 'Free Datastore', null, null, this.getTagsForStencil(gn, 'free datastore', dt).join(' ')),
  314. this.createVertexTemplateEntry(s + 'remote_storage;',
  315. w * 11.6, h * 11.6, '', 'Remote Storage', null, null, this.getTagsForStencil(gn, 'remote storage', dt).join(' ')),
  316. this.createVertexTemplateEntry(s + 'vm_backup;',
  317. w * 14.3, h * 13.3, '', 'VM Backup', null, null, this.getTagsForStencil(gn, 'vm backup', dt).join(' ')),
  318. this.createVertexTemplateEntry(s + 'lost_space;',
  319. w * 10.8, h * 11.1, '', 'Lost Space', null, null, this.getTagsForStencil(gn, 'lost space', dt).join(' ')),
  320. this.createVertexTemplateEntry(s + 'hard_drive;',
  321. w * 10, h * 12, '', 'Hard Drive', null, null, this.getTagsForStencil(gn, 'hard drive', dt).join(' ')),
  322. this.createVertexTemplateEntry(s3 + 'disk_partition;',
  323. w * 14.3, h * 14.3, '', 'Disk partition', null, null, this.getTagsForStencil(gn, 'disk partition', dt).join(' ')),
  324. this.createVertexTemplateEntry(s3 + 'local_disk;',
  325. w * 14.3, h * 14.2, '', 'Local disk', null, null, this.getTagsForStencil(gn, 'local disk', dt).join(' ')),
  326. this.createVertexTemplateEntry(s3 + 'audio_file;',
  327. w * 9.2, h * 12.7, '', 'Audio file', null, null, this.getTagsForStencil(gn, 'audio file', dt).join(' ')),
  328. this.createVertexTemplateEntry(s3 + 'backup_file;',
  329. w * 14.4, h * 13.3, '', 'Backup file', null, null, this.getTagsForStencil(gn, 'audio file', dt).join(' ')),
  330. this.createVertexTemplateEntry(s3 + 'data_file;',
  331. w * 11.8, h * 15.2, '', 'Data file', null, null, this.getTagsForStencil(gn, 'data file', dt).join(' ')),
  332. this.createVertexTemplateEntry(s3 + 'google_document;',
  333. w * 9.2, h * 12.7, '', 'Google document', null, null, this.getTagsForStencil(gn, 'google document', dt).join(' ')),
  334. this.createVertexTemplateEntry(s3 + 'video_file;',
  335. w * 9.2, h * 12.7, '', 'Video file', null, null, this.getTagsForStencil(gn, 'video file', dt).join(' ')),
  336. this.createVertexTemplateEntry(s3 + 'vsb_file;',
  337. w * 9.2, h * 12.7, '', 'VSB file', null, null, this.getTagsForStencil(gn, 'vsb file', dt).join(' ')),
  338. this.createVertexTemplateEntry(s3 + 'windows_repository;',
  339. w * 13.3, h * 12.3, '', 'Windows Repository', null, null, this.getTagsForStencil(gn, 'windows repository', dt).join(' ')),
  340. this.createVertexTemplateEntry(s3 + 'linux_repository;',
  341. w * 13.4, h * 12.4, '', 'Linux Repository', null, null, this.getTagsForStencil(gn, 'linux repository', dt).join(' '))
  342. ];
  343. this.addPalette('veeamStorage', 'Veeam / Storage', false, mxUtils.bind(this, function(content)
  344. {
  345. for (var i = 0; i < fns.length; i++)
  346. {
  347. content.appendChild(fns[i](content));
  348. }
  349. }));
  350. };
  351. Sidebar.prototype.addVeeamUsersStatusPalette = function()
  352. {
  353. var sn = 'shadow=0;dashed=0;html=1;strokeColor=none;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.2d.';
  354. var s = 'shadow=0;dashed=0;html=1;strokeColor=none;fillColor=#4495D1;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.2d.';
  355. var s2 = 'shadow=0;dashed=0;html=1;strokeColor=none;fillColor=#EF8F21;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.2d.';
  356. var s3 = 'shadow=0;dashed=0;html=1;strokeColor=none;fillColor=#4495D1;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.';
  357. var s4 = 'shadow=0;dashed=0;html=1;strokeColor=none;fillColor=#EF8F21;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.';
  358. // Space savers
  359. var sb = this;
  360. var gn = 'mxgraph.veeam.storage';
  361. var dt = 'veeam vmware virtual machine users status';
  362. var w = 4.0;
  363. var h = 4.0;
  364. var fns =
  365. [
  366. this.createVertexTemplateEntry(s + 'user;',
  367. w * 8, h * 14.5, '', 'User', null, null, this.getTagsForStencil(gn, 'user', dt).join(' ')),
  368. this.createVertexTemplateEntry(s + 'group;',
  369. w * 13.4, h * 15.1, '', 'User Group', null, null, this.getTagsForStencil(gn, 'user group', dt).join(' ')),
  370. this.createVertexTemplateEntry(s3 + 'company_user;',
  371. w * 11.1, h * 12.2, '', 'Company User', null, null, this.getTagsForStencil(gn, 'company user', dt).join(' ')),
  372. this.createVertexTemplateEntry(s3 + 'company_owner;',
  373. w * 11.1, h * 12.2, '', 'Company Owner', null, null, this.getTagsForStencil(gn, 'company owner', dt).join(' ')),
  374. this.createVertexTemplateEntry(s3 + 'portal_admin;',
  375. w * 11.1, h * 12.2, '', 'Portal Admin', null, null, this.getTagsForStencil(gn, 'portal admin', dt).join(' ')),
  376. this.createVertexTemplateEntry(s3 + 'company_administrator;',
  377. w * 11.1, h * 12.2, '', 'Company Administrator', null, null, this.getTagsForStencil(gn, 'company administrator', dt).join(' ')),
  378. this.createVertexTemplateEntry(s + 'alert;',
  379. w * 8.3, h * 8.3, '', 'Alert', null, null, this.getTagsForStencil(gn, 'alert', dt).join(' ')),
  380. this.createVertexTemplateEntry(s4 + 'zipped;pointerEvents=1;',
  381. w * 1.7, h * 14.3, '', 'Zipped', null, null, this.getTagsForStencil(gn, 'zipped', dt).join(' ')),
  382. this.createVertexTemplateEntry(s4 + 'shared;',
  383. w * 11.5, h * 6.2, '', 'Shared', null, null, this.getTagsForStencil(gn, 'shared', dt).join(' ')),
  384. this.createVertexTemplateEntry(s4 + 'checked;',
  385. w * 9, h * 9, '', 'Checked', null, null, this.getTagsForStencil(gn, 'checked', dt).join(' ')),
  386. this.createVertexTemplateEntry(s4 + 'eject;',
  387. w * 9, h * 9, '', 'Eject', null, null, this.getTagsForStencil(gn, 'eject', dt).join(' ')),
  388. this.createVertexTemplateEntry(s4 + 'recording;',
  389. w * 9, h * 9, '', 'Recording', null, null, this.getTagsForStencil(gn, 'recording', dt).join(' ')),
  390. this.createVertexTemplateEntry(s4 + 'powered;',
  391. w * 9, h * 9, '', 'Powered', null, null, this.getTagsForStencil(gn, 'powered', dt).join(' ')),
  392. this.createVertexTemplateEntry(s4 + 'failed;',
  393. w * 9, h * 9, '', 'Failed', null, null, this.getTagsForStencil(gn, 'failed', dt).join(' ')),
  394. this.createVertexTemplateEntry(s4 + 'paused;',
  395. w * 9, h * 9, '', 'Paused', null, null, this.getTagsForStencil(gn, 'paused', dt).join(' ')),
  396. this.createVertexTemplateEntry(s4 + 'unavailable;',
  397. w * 9, h * 9, '', 'Unavailable', null, null, this.getTagsForStencil(gn, 'unavailable', dt).join(' ')),
  398. this.createVertexTemplateEntry(s4 + 'active;',
  399. w * 9, h * 9, '', 'Active', null, null, this.getTagsForStencil(gn, 'active', dt).join(' ')),
  400. this.createVertexTemplateEntry(s4 + 'delayed;',
  401. w * 9, h * 9, '', 'Delayed', null, null, this.getTagsForStencil(gn, 'delayed', dt).join(' ')),
  402. this.createVertexTemplateEntry(s3 + 'restore;pointerEvents=1;',
  403. w * 7.8, h * 7.4, '', 'Restore', null, null, this.getTagsForStencil(gn, 'restore', dt).join(' ')),
  404. this.createVertexTemplateEntry(s4 + 'locked;',
  405. w * 7.6, h * 8.6, '', 'Locked', null, null, this.getTagsForStencil(gn, 'locked', dt).join(' ')),
  406. this.createVertexTemplateEntry(s4 + 'unlocked;',
  407. w * 10.4, h * 8.7, '', 'Unlocked', null, null, this.getTagsForStencil(gn, 'unlocked', dt).join(' '))
  408. ];
  409. this.addPalette('veeamUsersStatus', 'Veeam / Users and Status', false, mxUtils.bind(this, function(content)
  410. {
  411. for (var i = 0; i < fns.length; i++)
  412. {
  413. content.appendChild(fns[i](content));
  414. }
  415. }));
  416. };
  417. Sidebar.prototype.addVeeamVASComponentsPalette = function()
  418. {
  419. var sn = 'shadow=0;dashed=0;html=1;strokeColor=none;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.2d.';
  420. var s = 'shadow=0;dashed=0;html=1;strokeColor=none;fillColor=#4495D1;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.2d.';
  421. var s2 = 'shadow=0;dashed=0;html=1;strokeColor=none;fillColor=#EF8F21;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.2d.';
  422. var s3 = 'shadow=0;dashed=0;html=1;strokeColor=none;fillColor=#4495D1;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.';
  423. var s4 = 'shadow=0;dashed=0;html=1;strokeColor=none;fillColor=#EF8F21;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.';
  424. // Space savers
  425. var sb = this;
  426. var gn = 'mxgraph.veeam.vascomponent';
  427. var dt = 'veeam vmware virtual machine vas availability suite component';
  428. var w = 4.0;
  429. var h = 4.0;
  430. var fns =
  431. [
  432. this.createVertexTemplateEntry(s3 + 'database_server;',
  433. w * 19, h * 18, '', 'Database Server', null, null, this.getTagsForStencil(gn, 'database server', dt).join(' ')),
  434. this.createVertexTemplateEntry(s3 + 'gateway_server;',
  435. w * 19, h * 18, '', 'Gateway Server', null, null, this.getTagsForStencil(gn, 'gateway server', dt).join(' ')),
  436. this.createVertexTemplateEntry(s3 + 'mount_server;',
  437. w * 19, h * 18, '', 'Mount Server', null, null, this.getTagsForStencil(gn, 'mount server', dt).join(' ')),
  438. this.createVertexTemplateEntry(s3 + 'proxy_server;',
  439. w * 19, h * 18, '', 'Proxy Server', null, null, this.getTagsForStencil(gn, 'proxy server', dt).join(' ')),
  440. this.createVertexTemplateEntry(s3 + 'repository_server;',
  441. w * 19, h * 18, '', 'Repository Server', null, null, this.getTagsForStencil(gn, 'repository server', dt).join(' ')),
  442. this.createVertexTemplateEntry(s + 'veeam_backup_search_server;',
  443. w * 19, h * 18, '', 'Search Server', null, null, this.getTagsForStencil(gn, 'backup search server', dt).join(' ')),
  444. this.createVertexTemplateEntry(s3 + 'tape_server;',
  445. w * 19, h * 18, '', 'Tape Server', null, null, this.getTagsForStencil(gn, 'tape server', dt).join(' ')),
  446. this.createVertexTemplateEntry(s3 + 'vsphere_server;',
  447. w * 19, h * 18, '', 'vSphere Server', null, null, this.getTagsForStencil(gn, 'vsphere server', dt).join(' ')),
  448. this.createVertexTemplateEntry(s3 + 'windows_linux_server;',
  449. w * 19, h * 18, '', 'Windows Linux Server', null, null, this.getTagsForStencil(gn, 'windows linux server', dt).join(' ')),
  450. this.createVertexTemplateEntry(s + 'veeam_backup_and_replication_server;',
  451. w * 19, h * 18, '', 'Backup and Replication Server', null, null, this.getTagsForStencil(gn, 'backup and replication server', dt).join(' ')),
  452. this.createVertexTemplateEntry(s + 'veeam_backup_enterprise_manager_server;',
  453. w * 19, h * 18, '', 'Backup Enterprise Manager Server', null, null, this.getTagsForStencil(gn, 'backup enterprise manager server', dt).join(' ')),
  454. this.createVertexTemplateEntry(s3 + 'one_server;',
  455. w * 19, h * 18, '', 'ONE Server', null, null, this.getTagsForStencil(gn, 'one server', dt).join(' ')),
  456. this.createVertexTemplateEntry(s2 + 'veeam_explorer_for_active_directory;',
  457. w * 11.2, h * 11.2, '', 'Explorer for Active Directory', null, null, this.getTagsForStencil(gn, 'explorer for active directory', dt).join(' ')),
  458. this.createVertexTemplateEntry(s2 + 'veeam_explorer_for_exchange;',
  459. w * 11.2, h * 11.2, '', 'Explorer for Exchange', null, null, this.getTagsForStencil(gn, 'explorer for exchange', dt).join(' ')),
  460. this.createVertexTemplateEntry(s4 + 'explorer_for_oracle;',
  461. w * 11.2, h * 11.2, '', 'Explorer for Oracle', null, null, this.getTagsForStencil(gn, 'explorer for oracle', dt).join(' ')),
  462. this.createVertexTemplateEntry(s2 + 'veeam_explorer_for_sharepoint;',
  463. w * 11.2, h * 11.2, '', 'Explorer for SharePoint', null, null, this.getTagsForStencil(gn, 'explorer for sharepoint', dt).join(' ')),
  464. this.createVertexTemplateEntry(s4 + 'explorer_for_storage_snapshots;',
  465. w * 11.2, h * 11.2, '', 'Explorer for Storage Snapshots', null, null, this.getTagsForStencil(gn, 'explorer for storage snapshots', dt).join(' ')),
  466. this.createVertexTemplateEntry(s2 + 'veeam_explorer_for_sql;',
  467. w * 11.2, h * 11.2, '', 'Explorer for SQL', null, null, this.getTagsForStencil(gn, 'explorer for sql', dt).join(' ')),
  468. this.createVertexTemplateEntry(s2 + 'veeam_availability_suite;',
  469. w * 11.2, h * 11.2, '', 'Availability Suite', null, null, this.getTagsForStencil(gn, 'availability suite', dt).join(' ')),
  470. this.createVertexTemplateEntry(s4 + 'backup_replication;',
  471. w * 11.2, h * 11.2, '', 'Backup and Replication', null, null, this.getTagsForStencil(gn, 'backup and replication', dt).join(' ')),
  472. this.createVertexTemplateEntry(s4 + 'enterprise_manager;',
  473. w * 11.2, h * 11.2, '', 'Enterprise Manager', null, null, this.getTagsForStencil(gn, 'enterprise manager', dt).join(' ')),
  474. this.createVertexTemplateEntry(s3 + 'linux_repository;',
  475. w * 12.2, h * 11.2, '', 'Linux Repository', null, null, this.getTagsForStencil(gn, 'linux repository', dt).join(' ')),
  476. this.createVertexTemplateEntry(s3 + 'windows_repository;',
  477. w * 12.2, h * 11.2, '', 'Windows Repository', null, null, this.getTagsForStencil(gn, 'windows repository', dt).join(' ')),
  478. this.createVertexTemplateEntry(s3 + 'flr_helper_appliance;',
  479. w * 12.4, h * 12.5, '', 'FLR Helper Appliance', null, null, this.getTagsForStencil(gn, 'flr helper appliance', dt).join(' ')),
  480. this.createVertexTemplateEntry(s3 + 'one_client;',
  481. w * 22.7, h * 15.4, '', 'ONE client', null, null, this.getTagsForStencil(gn, 'one client', dt).join(' '))
  482. ];
  483. this.addPalette('veeamVASComponents', 'Veeam / Availability Suite components', false, mxUtils.bind(this, function(content)
  484. {
  485. for (var i = 0; i < fns.length; i++)
  486. {
  487. content.appendChild(fns[i](content));
  488. }
  489. }));
  490. };
  491. Sidebar.prototype.addVeeamBackupReplicationPalette = function()
  492. {
  493. var sn = 'shadow=0;dashed=0;html=1;strokeColor=none;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.2d.';
  494. var s = 'shadow=0;dashed=0;html=1;strokeColor=none;fillColor=#4495D1;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.2d.';
  495. var s2 = 'shadow=0;dashed=0;html=1;strokeColor=none;fillColor=#EF8F21;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.2d.';
  496. var s3 = 'shadow=0;dashed=0;html=1;strokeColor=none;fillColor=#4495D1;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.';
  497. var s4 = 'shadow=0;dashed=0;html=1;strokeColor=none;fillColor=#EF8F21;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.';
  498. // Space savers
  499. var sb = this;
  500. var gn = 'mxgraph.veeam.backup_replication';
  501. var dt = 'veeam vmware virtual machine backup replication';
  502. var w = 4.0;
  503. var h = 4.0;
  504. var fns =
  505. [
  506. this.createVertexTemplateEntry(s2 + 'built_in_wan_acceleration;',
  507. w * 11.2, h * 11.2, '', 'Built-in WAN Acceleration', null, null, this.getTagsForStencil(gn, 'built in wan acceleration wireless area network', dt).join(' ')),
  508. this.createVertexTemplateEntry(s2 + '1_click_failover_orchestration;',
  509. w * 11.2, h * 11.2, '', '1 Click Failover Orchestration', null, null, this.getTagsForStencil(gn, 'one click failover orchestration', dt).join(' ')),
  510. this.createVertexTemplateEntry(s4 + 'advanced_refs_integration;',
  511. w * 11.2, h * 11.2, '', 'Advanced ReFS integration', null, null, this.getTagsForStencil(gn, 'advanced refs integration', dt).join(' ')),
  512. this.createVertexTemplateEntry(s2 + 'assisted_failover_and_failback;',
  513. w * 11.2, h * 11.2, '', 'Assisted Failover and Failback', null, null, this.getTagsForStencil(gn, 'assisted failover and failback', dt).join(' ')),
  514. this.createVertexTemplateEntry(s4 + 'chargeback_and_billing_capabilities;',
  515. w * 11.2, h * 11.2, '', 'Chargeback and billing capabilities', null, null, this.getTagsForStencil(gn, 'chargeback and billing capabilities', dt).join(' ')),
  516. this.createVertexTemplateEntry(s2 + 'veeam_cloud_connect;',
  517. w * 11.2, h * 11.2, '', 'Cloud Connect', null, null, this.getTagsForStencil(gn, 'cloud connect', dt).join(' ')),
  518. this.createVertexTemplateEntry(s4 + 'built_in_management_for_agents;',
  519. w * 11.2, h * 11.2, '', 'Built-in Management for agents', null, null, this.getTagsForStencil(gn, 'built in management for agents', dt).join(' ')),
  520. this.createVertexTemplateEntry(s2 + 'disaster_recovery;',
  521. w * 11.2, h * 11.2, '', 'Disaster Recovery', null, null, this.getTagsForStencil(gn, 'disaster recovery', dt).join(' ')),
  522. this.createVertexTemplateEntry(s2 + 'emc_data_domain_boost;',
  523. w * 11.2, h * 11.2, '', 'Dell EMC Data Domain Boost', null, null, this.getTagsForStencil(gn, 'emc data domain boost', dt).join(' ')),
  524. this.createVertexTemplateEntry(s2 + 'end_to_end_encryption;',
  525. w * 11.2, h * 11.2, '', 'End-to-end Encryption', null, null, this.getTagsForStencil(gn, 'end to end encryption', dt).join(' ')),
  526. this.createVertexTemplateEntry(s2 + 'backup_from_storage_snapshots;',
  527. w * 11.2, h * 11.2, '', 'Backup from Storage Snapshots', null, null, this.getTagsForStencil(gn, 'backup from storage snapshots', dt).join(' ')),
  528. this.createVertexTemplateEntry(s4 + 'direct_restore_to_ms_azure;',
  529. w * 11.2, h * 11.2, '', 'Direct Restore to MS Azure', null, null, this.getTagsForStencil(gn, 'direct restore to ms azure', dt).join(' ')),
  530. this.createVertexTemplateEntry(s4 + 'draas_enhancements;',
  531. w * 11.2, h * 11.2, '', 'DRaaS Enhancements', null, null, this.getTagsForStencil(gn, 'draas enhancements', dt).join(' ')),
  532. this.createVertexTemplateEntry(s4 + 'full_ms_integration;',
  533. w * 11.2, h * 11.2, '', 'Full MS Integration', null, null, this.getTagsForStencil(gn, 'full ms integration', dt).join(' ')),
  534. this.createVertexTemplateEntry(s2 + 'native_tape_support;',
  535. w * 11.2, h * 11.2, '', 'Native Tape Support', null, null, this.getTagsForStencil(gn, 'native tape support', dt).join(' ')),
  536. this.createVertexTemplateEntry(s4 + 'enterprise_scalability_enhancements;',
  537. w * 11.2, h * 11.2, '', 'Enterprise scalability enhancements', null, null, this.getTagsForStencil(gn, 'enterprise scalability enhancements', dt).join(' ')),
  538. this.createVertexTemplateEntry(s2 + 'on_demand_sandbox;',
  539. w * 11.2, h * 11.2, '', 'On Demand Sandbox', null, null, this.getTagsForStencil(gn, 'on demand sandbox', dt).join(' ')),
  540. this.createVertexTemplateEntry(s4 + 'nas_backup;',
  541. w * 11.2, h * 11.2, '', 'NAS Backup', null, null, this.getTagsForStencil(gn, 'nas backup', dt).join(' ')),
  542. this.createVertexTemplateEntry(s2 + 'quick_migration;',
  543. w * 11.2, h * 11.2, '', 'Quick Migration', null, null, this.getTagsForStencil(gn, 'quick migration', dt).join(' ')),
  544. this.createVertexTemplateEntry(s2 + 'replication_from_a_backup;',
  545. w * 11.2, h * 11.2, '', 'Replication from a Backup', null, null, this.getTagsForStencil(gn, 'replication from a backup', dt).join(' ')),
  546. this.createVertexTemplateEntry(s4 + 'primary_storage_integration;',
  547. w * 11.2, h * 11.2, '', 'Primary Storage integration', null, null, this.getTagsForStencil(gn, 'primary storage integration', dt).join(' ')),
  548. this.createVertexTemplateEntry(s2 + 'sure_replica;',
  549. w * 11.2, h * 11.2, '', 'Sure Replica', null, null, this.getTagsForStencil(gn, 'sure replica', dt).join(' ')),
  550. this.createVertexTemplateEntry(s4 + 'archive_tier;',
  551. w * 11.2, h * 11.2, '', 'Archive Tier', null, null, this.getTagsForStencil(gn, 'archive tier', dt).join(' ')),
  552. this.createVertexTemplateEntry(s2 + 'restore_data_from_the_vm_backup;',
  553. w * 11.2, h * 11.2, '', 'Restore Data from VM Backup', null, null, this.getTagsForStencil(gn, 'restore data from vm backup', dt).join(' ')),
  554. this.createVertexTemplateEntry(s2 + 'scheduled_backups;',
  555. w * 11.2, h * 11.2, '', 'Scheduled Backups', null, null, this.getTagsForStencil(gn, 'Scheduled Backups', dt).join(' ')),
  556. this.createVertexTemplateEntry(s2 + 'restful_apis;',
  557. w * 11.2, h * 11.2, '', 'RESTful API', null, null, this.getTagsForStencil(gn, 'restful apis api', dt).join(' ')),
  558. this.createVertexTemplateEntry(s2 + 'self_service_recovery;',
  559. w * 11.2, h * 11.2, '', 'Self-Service Recovery', null, null, this.getTagsForStencil(gn, 'self service recovery', dt).join(' ')),
  560. this.createVertexTemplateEntry(s4 + 'reporting;',
  561. w * 11.2, h * 11.2, '', 'Reporting', null, null, this.getTagsForStencil(gn, 'reporting', dt).join(' ')),
  562. this.createVertexTemplateEntry(s4 + 'continuous_data_protection;',
  563. w * 11.2, h * 11.2, '', 'Continuous Data Protection', null, null, this.getTagsForStencil(gn, 'continuous data protection', dt).join(' ')),
  564. this.createVertexTemplateEntry(s4 + 'vcloud_director_support;',
  565. w * 11.2, h * 11.2, '', 'vCloud Director Support', null, null, this.getTagsForStencil(gn, 'vcloud director support', dt).join(' ')),
  566. this.createVertexTemplateEntry(s2 + 'virtual_lab;',
  567. w * 11.2, h * 11.2, '', 'Virtual Lab', null, null, this.getTagsForStencil(gn, 'virtual lab', dt).join(' ')),
  568. this.createVertexTemplateEntry(s2 + 'sure_backup;',
  569. w * 11.2, h * 11.2, '', 'SureBackup', null, null, this.getTagsForStencil(gn, 'sure backup', dt).join(' ')),
  570. this.createVertexTemplateEntry(s3 + 'scale_out_repository;',
  571. w * 16.2, h * 14.3, '', 'Scale Out Repository', null, null, this.getTagsForStencil(gn, 'scale out repository', dt).join(' ')),
  572. this.createVertexTemplateEntry(s2 + 'veeamzip;',
  573. w * 11.2, h * 11.2, '', 'VeeamZIP', null, null, this.getTagsForStencil(gn, 'veeamzip zip', dt).join(' ')),
  574. this.createVertexTemplateEntry(s2 + 'veeam_explorer;',
  575. w * 11.2, h * 11.2, '', 'Veeam Explorer', null, null, this.getTagsForStencil(gn, 'explorer', dt).join(' '))
  576. ];
  577. this.addPalette('veeamBackup Replication', 'Veeam / Backup and Replication', false, mxUtils.bind(this, function(content)
  578. {
  579. for (var i = 0; i < fns.length; i++)
  580. {
  581. content.appendChild(fns[i](content));
  582. }
  583. }));
  584. };
  585. Sidebar.prototype.addVeeamProductsPalette = function()
  586. {
  587. var sn = 'shadow=0;dashed=0;html=1;strokeColor=none;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.2d.';
  588. var s = 'shadow=0;dashed=0;html=1;strokeColor=none;fillColor=#4495D1;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.2d.';
  589. var s2 = 'shadow=0;dashed=0;html=1;strokeColor=none;fillColor=#EF8F21;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.2d.';
  590. var s3 = 'shadow=0;dashed=0;html=1;strokeColor=none;fillColor=#4495D1;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.';
  591. var s4 = 'shadow=0;dashed=0;html=1;strokeColor=none;fillColor=#EF8F21;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.';
  592. // Space savers
  593. var sb = this;
  594. var gn = 'mxgraph.veeam.products';
  595. var dt = 'veeam vmware virtual machine products';
  596. var w = 4.0;
  597. var h = 4.0;
  598. var fns =
  599. [
  600. this.createVertexTemplateEntry('pointerEvents=1;shadow=0;dashed=0;html=1;strokeColor=none;fillColor=#07B152;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.veeam_logo;',
  601. w * 27.4, h * 4.8, '', 'Veeam logo', null, null, this.getTagsForStencil(gn, 'veeam logo', dt).join(' ')),
  602. this.createVertexTemplateEntry(s4 + 'backup_replication;',
  603. w * 11.2, h * 11.2, '', 'Backup and Replication', null, null, this.getTagsForStencil(gn, 'backup and replication', dt).join(' ')),
  604. this.createVertexTemplateEntry(s4 + 'enterprise_manager;',
  605. w * 11.2, h * 11.2, '', 'Enterprise Manager', null, null, this.getTagsForStencil(gn, 'enterprise manager', dt).join(' ')),
  606. this.createVertexTemplateEntry(s2 + 'veeam_availability_suite;',
  607. w * 11.2, h * 11.2, '', 'Availability Suite', null, null, this.getTagsForStencil(gn, 'availability suite', dt).join(' ')),
  608. this.createVertexTemplateEntry(s4 + 'availability_console;',
  609. w * 11.2, h * 11.2, '', 'Availability Console', null, null, this.getTagsForStencil(gn, 'availability console', dt).join(' ')),
  610. this.createVertexTemplateEntry(s4 + 'availability_orchestrator;',
  611. w * 11.2, h * 11.2, '', 'Availability Orchestrator', null, null, this.getTagsForStencil(gn, 'availability orchestrator', dt).join(' ')),
  612. this.createVertexTemplateEntry(s4 + 'agents;',
  613. w * 11.2, h * 11.2, '', 'Agents', null, null, this.getTagsForStencil(gn, 'agents', dt).join(' ')),
  614. this.createVertexTemplateEntry(s4 + 'powered_network;',
  615. w * 11.2, h * 11.2, '', 'Powered Network', null, null, this.getTagsForStencil(gn, 'powered network', dt).join(' ')),
  616. this.createVertexTemplateEntry(s4 + 'backup_for_office_365;',
  617. w * 11.2, h * 11.2, '', 'Backup for Office 365', null, null, this.getTagsForStencil(gn, 'backup for office 365', dt).join(' ')),
  618. this.createVertexTemplateEntry(s4 + 'endpoint_backup;',
  619. w * 11.2, h * 11.2, '', 'Endpoint Backup', null, null, this.getTagsForStencil(gn, 'endpoint backup', dt).join(' ')),
  620. this.createVertexTemplateEntry(s2 + 'veeam_one_monitor;',
  621. w * 11.2, h * 11.2, '', 'ONE Monitor', null, null, this.getTagsForStencil(gn, 'one monitor', dt).join(' ')),
  622. this.createVertexTemplateEntry(s2 + 'veeam_one_reporter;',
  623. w * 11.2, h * 11.2, '', 'ONE Reporter', null, null, this.getTagsForStencil(gn, 'one reporter', dt).join(' ')),
  624. this.createVertexTemplateEntry(s2 + 'veeam_one_business_view;',
  625. w * 11.2, h * 11.2, '', 'ONE (Business View)', null, null, this.getTagsForStencil(gn, 'one business view', dt).join(' ')),
  626. this.createVertexTemplateEntry(s2 + 'veeam_one_server;',
  627. w * 11.2, h * 11.2, '', 'ONE Server', null, null, this.getTagsForStencil(gn, 'one server', dt).join(' '))
  628. ];
  629. this.addPalette('veeamProducts', 'Veeam / Products', false, mxUtils.bind(this, function(content)
  630. {
  631. for (var i = 0; i < fns.length; i++)
  632. {
  633. content.appendChild(fns[i](content));
  634. }
  635. }));
  636. };
  637. Sidebar.prototype.addVeeamVMsTapePalette = function()
  638. {
  639. var sn = 'shadow=0;dashed=0;html=1;strokeColor=none;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.2d.';
  640. var s = 'shadow=0;dashed=0;html=1;strokeColor=none;fillColor=#4495D1;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.2d.';
  641. var s2 = 'shadow=0;dashed=0;html=1;strokeColor=none;fillColor=#EF8F21;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.2d.';
  642. var s3 = 'shadow=0;dashed=0;html=1;strokeColor=none;fillColor=#4495D1;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.';
  643. var s4 = 'shadow=0;dashed=0;html=1;strokeColor=none;fillColor=#EF8F21;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.';
  644. // Space savers
  645. var sb = this;
  646. var gn = 'mxgraph.veeam.vmstape';
  647. var dt = 'veeam vmware virtual machine vm tape';
  648. var w = 4.0;
  649. var h = 4.0;
  650. var fns =
  651. [
  652. this.createVertexTemplateEntry(s + 'virtual_machine;',
  653. w * 11.2, h * 11, '', 'Virtual Machine', null, null, this.getTagsForStencil(gn, '', dt).join(' ')),
  654. this.createVertexTemplateEntry(s3 + 'vm_checked;',
  655. w * 13.5, h * 13, '', 'VM Checked', null, null, this.getTagsForStencil(gn, 'checked', dt).join(' ')),
  656. this.createVertexTemplateEntry(s + 'vm_running;',
  657. w * 13.5, h * 13, '', 'VM Started', null, null, this.getTagsForStencil(gn, 'vm started', dt).join(' ')),
  658. this.createVertexTemplateEntry(s + 'vm_locked;',
  659. w * 13.9, h * 13, '', 'VM Locked', null, null, this.getTagsForStencil(gn, 'vm locked', dt).join(' ')),
  660. this.createVertexTemplateEntry(s3 + 'vm_paused;',
  661. w * 13.5, h * 13, '', 'VM Paused', null, null, this.getTagsForStencil(gn, 'vm paused', dt).join(' ')),
  662. this.createVertexTemplateEntry(s + 'vm_failed;',
  663. w * 13.5, h * 13, '', 'VM Failed', null, null, this.getTagsForStencil(gn, 'vm failed', dt).join(' ')),
  664. this.createVertexTemplateEntry(s3 + 'vm_kernel;',
  665. w * 13.5, h * 13, '', 'VM Kernel', null, null, this.getTagsForStencil(gn, 'vm kernel', dt).join(' ')),
  666. this.createVertexTemplateEntry(s3 + 'vm_windows;',
  667. w * 14.3, h * 13.8, '', 'VM Windows', null, null, this.getTagsForStencil(gn, 'vm windows', dt).join(' ')),
  668. this.createVertexTemplateEntry(s3 + 'vm_linux;',
  669. w * 14.3, h * 13.8, '', 'VM Linux', null, null, this.getTagsForStencil(gn, 'vm linux', dt).join(' ')),
  670. this.createVertexTemplateEntry('shadow=0;dashed=0;html=1;strokeColor=none;fillColor=#A2C6E0;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.vm_snapshot;',
  671. w * 15.2, h * 14.6, '', 'VM Snapshot', null, null, this.getTagsForStencil(gn, 'vm snapshot', dt).join(' ')),
  672. this.createVertexTemplateEntry(s + 'vapp;',
  673. w * 11.2, h * 11, '', 'vApp', null, null, this.getTagsForStencil(gn, 'vapp', dt).join(' ')),
  674. this.createVertexTemplateEntry(s + 'tape;',
  675. w * 15.5, h * 8.4, '', 'Tape', null, null, this.getTagsForStencil(gn, 'tape', dt).join(' ')),
  676. this.createVertexTemplateEntry(s + 'tape_device;',
  677. w * 26.3, h * 26.5, '', 'Tape Device', null, null, this.getTagsForStencil(gn, 'tape device', dt).join(' ')),
  678. this.createVertexTemplateEntry(s3 + 'tape_library;',
  679. w * 24.2, h * 24.5, '', 'Tape Library', null, null, this.getTagsForStencil(gn, 'tape library', dt).join(' ')),
  680. this.createVertexTemplateEntry(s3 + 'tape_writing_device;',
  681. w * 20.6, h * 10.9, '', 'Tape writing device', null, null, this.getTagsForStencil(gn, 'tape writing device', dt).join(' ')),
  682. this.createVertexTemplateEntry(s3 + 'media_pool;',
  683. w * 18.6, h * 17.9, '', 'Media pool', null, null, this.getTagsForStencil(gn, 'media pool', dt).join(' ')),
  684. this.createVertexTemplateEntry(s3 + 'unknown_tape;',
  685. w * 16.8, h * 15.6, '', 'Unknown tape', null, null, this.getTagsForStencil(gn, 'unknown tape', dt).join(' ')),
  686. this.createVertexTemplateEntry(s + 'tape_ejecting;',
  687. w * 18.9, h * 12.4, '', 'Tape eject', null, null, this.getTagsForStencil(gn, 'tape eject', dt).join(' ')),
  688. this.createVertexTemplateEntry(s3 + 'tape_locked;',
  689. w * 17.6, h * 10, '', 'Tape locked', null, null, this.getTagsForStencil(gn, 'tape locked', dt).join(' ')),
  690. this.createVertexTemplateEntry(s + 'tape_licensed;',
  691. w * 18.8, h * 11.1, '', 'Tape Licensed', null, null, this.getTagsForStencil(gn, 'tape licensed', dt).join(' ')),
  692. this.createVertexTemplateEntry(s + 'tape_recording;',
  693. w * 17.8, h * 11.8, '', 'Tape Recording', null, null, this.getTagsForStencil(gn, 'tape recording', dt).join(' ')),
  694. this.createVertexTemplateEntry(s + 'tape_checked;',
  695. w * 18.8, h * 11.4, '', 'Tape Checked', null, null, this.getTagsForStencil(gn, 'tape checked', dt).join(' '))
  696. ];
  697. this.addPalette('veeamVMs and Tape', 'Veeam / VMs and Tape', false, mxUtils.bind(this, function(content)
  698. {
  699. for (var i = 0; i < fns.length; i++)
  700. {
  701. content.appendChild(fns[i](content));
  702. }
  703. }));
  704. };
  705. Sidebar.prototype.addVeeam3DPalette = function()
  706. {
  707. var sn = 'shadow=0;dashed=0;html=1;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.3d.';
  708. var s = 'shadow=0;dashed=0;html=1;strokeColor=none;fillColor=#4495D1;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.3d.';
  709. var s2 = 'shadow=0;dashed=0;html=1;strokeColor=none;fillColor=#EF8F21;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;align=center;outlineConnect=0;shape=mxgraph.veeam.3d.';
  710. // Space savers
  711. var sb = this;
  712. var gn = 'mxgraph.veeam.3d';
  713. var dt = 'veeam 3d vmware virtual machine ';
  714. var w = 2.0;
  715. var h = 2.0;
  716. var fns =
  717. [
  718. this.createVertexTemplateEntry(sn + '1ftvm;',
  719. w * 34, h * 31, '', '1FTVM', null, null, this.getTagsForStencil(gn, '1ftvm', dt).join(' ')),
  720. this.createVertexTemplateEntry(sn + '1ftvm_error;',
  721. w * 34, h * 31, '', '1FTVM Error', null, null, this.getTagsForStencil(gn, '1ftvm error', dt).join(' ')),
  722. this.createVertexTemplateEntry(sn + '1ftvm_running;',
  723. w * 34, h * 31, '', '1FTVM Running', null, null, this.getTagsForStencil(gn, '1ftvm running', dt).join(' ')),
  724. this.createVertexTemplateEntry(sn + '1ftvm_unavailable;',
  725. w * 34, h * 31, '', '1FTVM Unavailable', null, null, this.getTagsForStencil(gn, '1ftvm unavailable', dt).join(' ')),
  726. this.createVertexTemplateEntry(sn + '1ftvm_warning;',
  727. w * 34, h * 31, '', '1FTVM Warning', null, null, this.getTagsForStencil(gn, '1ftvm warning', dt).join(' ')),
  728. this.createVertexTemplateEntry(sn + '2ftvm;',
  729. w * 34, h * 31, '', '2FTVM', null, null, this.getTagsForStencil(gn, '2ftvm', dt).join(' ')),
  730. this.createVertexTemplateEntry(sn + '2ftvm_error;',
  731. w * 34, h * 31, '', '2FTVM Error', null, null, this.getTagsForStencil(gn, '2ftvm error', dt).join(' ')),
  732. this.createVertexTemplateEntry(sn + '2ftvm_running;',
  733. w * 34, h * 31, '', '2FTVM Running', null, null, this.getTagsForStencil(gn, '2ftvm running', dt).join(' ')),
  734. this.createVertexTemplateEntry(sn + '2ftvm_unavailable;',
  735. w * 34, h * 31, '', '2FTVM Unavailable', null, null, this.getTagsForStencil(gn, '2ftvm unavailable', dt).join(' ')),
  736. this.createVertexTemplateEntry(sn + '2ftvm_warning;',
  737. w * 34, h * 31, '', '2FTVM Warning', null, null, this.getTagsForStencil(gn, '2ftvm warning', dt).join(' ')),
  738. this.createVertexTemplateEntry(sn + 'backup_repository;',
  739. w * 31, h * 31, '', 'Backup Repository', null, null, this.getTagsForStencil(gn, 'backup repository', dt).join(' ')),
  740. this.createVertexTemplateEntry(sn + 'backup_repository_2;',
  741. w * 31, h * 31, '', 'Backup Repository', null, null, this.getTagsForStencil(gn, 'backup repository', dt).join(' ')),
  742. this.createVertexTemplateEntry(sn + 'cd;',
  743. w * 34, h * 13, '', 'CD', null, null, this.getTagsForStencil(gn, 'cd', dt).join(' ')),
  744. this.createVertexTemplateEntry(sn + 'database;',
  745. w * 29, h * 31, '', 'Database', null, null, this.getTagsForStencil(gn, 'database', dt).join(' ')),
  746. this.createVertexTemplateEntry(sn + 'datastore;',
  747. w * 22, h * 30, '', 'Datastore', null, null, this.getTagsForStencil(gn, 'datastore', dt).join(' ')),
  748. this.createVertexTemplateEntry(sn + 'datastore_snapshot;',
  749. w * 27, h * 17, '', 'Datastore Snapshot', null, null, this.getTagsForStencil(gn, 'datastore snapshot', dt).join(' ')),
  750. this.createVertexTemplateEntry(sn + 'datastore_volume;',
  751. w * 27, h * 17, '', 'Datastore Volume', null, null, this.getTagsForStencil(gn, 'datastore volume', dt).join(' ')),
  752. this.createVertexTemplateEntry(sn + 'esx_esxi;',
  753. w * 19, h * 26, '', 'ESX ESXi', null, null, this.getTagsForStencil(gn, 'esx esxi', dt).join(' ')),
  754. this.createVertexTemplateEntry(sn + 'failover_protective_snapshot;',
  755. w * 23, h * 23, '', 'Failover Protective Snapshot', null, null, this.getTagsForStencil(gn, 'failover protective snapshot', dt).join(' ')),
  756. this.createVertexTemplateEntry(sn + 'failover_protective_snapshot_locked;',
  757. w * 28, h * 23, '', 'Failover Protective Snapshot Locked', null, null, this.getTagsForStencil(gn, 'failover protective snapshot locked', dt).join(' ')),
  758. this.createVertexTemplateEntry(sn + 'failover_protective_snapshot_running;',
  759. w * 29, h * 23, '', 'Failover Protective Snapshot Running', null, null, this.getTagsForStencil(gn, 'failover protective snapshot running', dt).join(' ')),
  760. this.createVertexTemplateEntry(sn + 'free_datastore;',
  761. w * 22, h * 30, '', 'Free Datastore', null, null, this.getTagsForStencil(gn, 'free datastore', dt).join(' ')),
  762. this.createVertexTemplateEntry(sn + 'full_datastore;',
  763. w * 22, h * 30, '', 'Full Datastore', null, null, this.getTagsForStencil(gn, 'full datastore', dt).join(' ')),
  764. this.createVertexTemplateEntry(sn + 'hard_drive;fillColor=#637D8A;gradientColor=#324752;strokeColor=none;',
  765. w * 31, h * 14, '', 'Hard Drive', null, null, this.getTagsForStencil(gn, 'hard drive', dt).join(' ')),
  766. this.createVertexTemplateEntry(sn + 'hyper_v_host;',
  767. w * 55, h * 49, '', 'Hyper-V Host', null, null, this.getTagsForStencil(gn, 'hyper-v host', dt).join(' ')),
  768. this.createVertexTemplateEntry(sn + 'lost_space;',
  769. w * 22, h * 30, '', 'Lost Space', null, null, this.getTagsForStencil(gn, 'lost space', dt).join(' ')),
  770. this.createVertexTemplateEntry(sn + 'lun;',
  771. w * 36, h * 20, '', 'LUN', null, null, this.getTagsForStencil(gn, 'lun', dt).join(' ')),
  772. this.createVertexTemplateEntry(sn + 'medium_datastore;',
  773. w * 22, h * 30, '', 'Medium Datastore', null, null, this.getTagsForStencil(gn, 'medium datastore', dt).join(' ')),
  774. this.createVertexTemplateEntry(sn + 'network_card;',
  775. w * 19, h * 20, '', 'Network Card', null, null, this.getTagsForStencil(gn, 'network card', dt).join(' ')),
  776. this.createVertexTemplateEntry(sn + 'physical_storage;',
  777. w * 54, h * 30, '', 'Physical Storage', null, null, this.getTagsForStencil(gn, 'physical_storage', dt).join(' ')),
  778. this.createVertexTemplateEntry(sn + 'proxy;',
  779. w * 23, h * 23, '', 'Proxy', null, null, this.getTagsForStencil(gn, 'proxy', dt).join(' ')),
  780. this.createVertexTemplateEntry(sn + 'proxy_appliance;',
  781. w * 23, h * 23, '', 'Proxy Appliance', null, null, this.getTagsForStencil(gn, 'proxy appliance', dt).join(' ')),
  782. this.createVertexTemplateEntry(sn + 'remote_site;',
  783. w * 23, h * 30, '', 'Remote Site', null, null, this.getTagsForStencil(gn, 'remote site', dt).join(' ')),
  784. this.createVertexTemplateEntry(sn + 'remote_storage;',
  785. w * 26, h * 31, '', 'Remote Storage', null, null, this.getTagsForStencil(gn, 'remote storage', dt).join(' ')),
  786. this.createVertexTemplateEntry(sn + 'resource_pool;',
  787. w * 28, h * 16, '', 'Resource Pool', null, null, this.getTagsForStencil(gn, 'resource pool', dt).join(' ')),
  788. this.createVertexTemplateEntry(sn + 'service_vnic;',
  789. w * 36, h * 32, '', 'Service vNIC', null, null, this.getTagsForStencil(gn, 'service vnic', dt).join(' ')),
  790. this.createVertexTemplateEntry(sn + 'switch;',
  791. w * 55, h * 29, '', 'Switch', null, null, this.getTagsForStencil(gn, 'switch', dt).join(' ')),
  792. this.createVertexTemplateEntry(sn + 'tape;',
  793. w * 29, h * 29, '', 'Tape', null, null, this.getTagsForStencil(gn, 'tape', dt).join(' ')),
  794. this.createVertexTemplateEntry(sn + 'tape_checked;',
  795. w * 35, h * 29, '', 'Tape Checked', null, null, this.getTagsForStencil(gn, 'tape checked', dt).join(' ')),
  796. this.createVertexTemplateEntry(sn + 'tape_ejecting;',
  797. w * 35, h * 29, '', 'Tape Ejecting', null, null, this.getTagsForStencil(gn, 'tape ejecting', dt).join(' ')),
  798. this.createVertexTemplateEntry(sn + 'tape_library;',
  799. w * 31, h * 37, '', 'Tape Library', null, null, this.getTagsForStencil(gn, 'tape library', dt).join(' ')),
  800. this.createVertexTemplateEntry(sn + 'tape_licensed;',
  801. w * 35, h * 29, '', 'Tape Licensed', null, null, this.getTagsForStencil(gn, 'tape licensed', dt).join(' ')),
  802. this.createVertexTemplateEntry(sn + 'tape_recording;',
  803. w * 35, h * 29, '', 'Tape Recording', null, null, this.getTagsForStencil(gn, 'tape recording', dt).join(' ')),
  804. this.createVertexTemplateEntry(sn + 'tape_server;',
  805. w * 23, h * 23, '', 'Tape Server', null, null, this.getTagsForStencil(gn, 'tape server', dt).join(' ')),
  806. this.createVertexTemplateEntry(sn + 'vapp;',
  807. w * 46, h * 31, '', 'vApp', null, null, this.getTagsForStencil(gn, 'vapp', dt).join(' ')),
  808. this.createVertexTemplateEntry(sn + 'vapp_started;',
  809. w * 46, h * 31, '', 'vApp Started', null, null, this.getTagsForStencil(gn, 'vapp started', dt).join(' ')),
  810. this.createVertexTemplateEntry(sn + 'veeam_availability_suite;',
  811. w * 23, h * 23, '', 'Veeam Availability Suite', null, null, this.getTagsForStencil(gn, 'veeam availability suite', dt).join(' ')),
  812. this.createVertexTemplateEntry(sn + 'veeam_backup_and_replication_server;',
  813. w * 23, h * 23, '', 'Veeam Backup and Replication Server', null, null, this.getTagsForStencil(gn, 'veeam backup and replication server', dt).join(' ')),
  814. this.createVertexTemplateEntry(sn + 'veeam_backup_enterprise_manager_server;',
  815. w * 23, h * 23, '', 'Veeam Backup Enterprise Manager Server', null, null, this.getTagsForStencil(gn, 'veeam backup enterprise manager server', dt).join(' ')),
  816. this.createVertexTemplateEntry(sn + 'veeam_backup_search_server;',
  817. w * 23, h * 23, '', 'Veeam Backup Search Server', null, null, this.getTagsForStencil(gn, 'veeam backup search server', dt).join(' ')),
  818. this.createVertexTemplateEntry(sn + 'veeam_one_business_view;',
  819. w * 23, h * 23, '', 'Veeam ONE Business View', null, null, this.getTagsForStencil(gn, 'veeam one business view', dt).join(' ')),
  820. this.createVertexTemplateEntry(sn + 'veeam_one_monitor;',
  821. w * 23, h * 23, '', 'Veeam ONE Monitor', null, null, this.getTagsForStencil(gn, 'veeam one monitor', dt).join(' ')),
  822. this.createVertexTemplateEntry(sn + 'veeam_one_reporter;',
  823. w * 23, h * 23, '', 'Veeam ONE Reporter', null, null, this.getTagsForStencil(gn, 'veeam one reporter', dt).join(' ')),
  824. this.createVertexTemplateEntry(sn + 'veeam_one_server;',
  825. w * 23, h * 23, '', 'Veeam ONE Server', null, null, this.getTagsForStencil(gn, 'veeam one server', dt).join(' ')),
  826. this.createVertexTemplateEntry(sn + 'virtual_machine;',
  827. w * 23, h * 23, '', 'Virtual Machine', null, null, this.getTagsForStencil(gn, 'virtual machine', dt).join(' ')),
  828. this.createVertexTemplateEntry(sn + 'vmware_host;',
  829. w * 55, h * 49, '', 'VMware Host', null, null, this.getTagsForStencil(gn, 'vmware host', dt).join(' ')),
  830. this.createVertexTemplateEntry(sn + 'vm_failed;',
  831. w * 28, h * 23, '', 'VM Failed', null, null, this.getTagsForStencil(gn, 'vm failed', dt).join(' ')),
  832. this.createVertexTemplateEntry(sn + 'vm_linux;',
  833. w * 23, h * 30, '', 'VM Linux', null, null, this.getTagsForStencil(gn, 'vm linux', dt).join(' ')),
  834. this.createVertexTemplateEntry(sn + 'vm_no_network;',
  835. w * 29, h * 23, '', 'VM No Network', null, null, this.getTagsForStencil(gn, 'vm no network', dt).join(' ')),
  836. this.createVertexTemplateEntry(sn + 'vm_problem;',
  837. w * 28, h * 23, '', 'VM Problem', null, null, this.getTagsForStencil(gn, 'vm problem', dt).join(' ')),
  838. this.createVertexTemplateEntry(sn + 'vm_running;',
  839. w * 28, h * 23, '', 'VM Running', null, null, this.getTagsForStencil(gn, 'vm running', dt).join(' ')),
  840. this.createVertexTemplateEntry(sn + 'vm_saved_state;',
  841. w * 29, h * 24, '', 'VM Saved State', null, null, this.getTagsForStencil(gn, 'vm saved state', dt).join(' ')),
  842. this.createVertexTemplateEntry(sn + 'vm_windows;',
  843. w * 23, h * 30, '', 'VM Windows', null, null, this.getTagsForStencil(gn, 'vm windows', dt).join(' ')),
  844. this.createVertexTemplateEntry(sn + 'vnic;',
  845. w * 31, h * 31, '', 'vNIC', null, null, this.getTagsForStencil(gn, 'vnic', dt).join(' ')),
  846. this.createVertexTemplateEntry(sn + 'wan_accelerator;',
  847. w * 23, h * 23, '', 'WAN Accelerator', null, null, this.getTagsForStencil(gn, 'wan accelerator', dt).join(' ')),
  848. this.createVertexTemplateEntry(sn + 'workstation;',
  849. w * 38, h * 31, '', 'Workstation', null, null, this.getTagsForStencil(gn, 'workstation', dt).join(' '))
  850. ];
  851. this.addPalette('veeam3D', 'Veeam / 3D', false, mxUtils.bind(this, function(content)
  852. {
  853. for (var i = 0; i < fns.length; i++)
  854. {
  855. content.appendChild(fns[i](content));
  856. }
  857. }));
  858. };
  859. })();