cpee-model-management 1.2.8 → 1.2.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 83ef7b632e188a043549854b155956023fb53dff74994c6f5c433b5fa6109662
4
- data.tar.gz: d3365db939bc5ec15b5b13128684e2ce26153f99f72ae7f96016c8c3fa83dcf5
3
+ metadata.gz: '03339251b725954e976ac6be5b355b6c0c2c410fc6321af3d8b25ca7ee7b7afd'
4
+ data.tar.gz: 15af0705ffc8bd3dca4bd16febfeef0a6a1246249239aab7f2e8e4950c129ef9
5
5
  SHA512:
6
- metadata.gz: cc91173a38fdaba1cfc641ad04ca7d3dab86e083f0706aba4ca463eeeca769af5ebc9f0c87122d8fbe1032e7a5af6d6290f4d1e641f1aad8385cbdfdd525cdac
7
- data.tar.gz: 28a16db51dfefcb19720c849a73a17fdf70709d8c3a08189c4145cb09251a3500b7c0f142a71b3c7be720ad87be77aa63c77e05e52c55b14d5185c304f2828eb
6
+ metadata.gz: 62885ccaa6581f33b1f864845f77d7a0b8f25f004c6cb403c65309512888d40f5e960bbb4a634af330252238466b083e17a9310c60b31b93f340e6d652c90e1a
7
+ data.tar.gz: accb2c2d8616a9945aa78e76fefd0832c90186c0ae3538260ba179ec7d912858f0e49419ed7056e940932ca954ced728a196c54f72920d01be13328a3cdf1bda
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = "cpee-model-management"
3
- s.version = "1.2.8"
3
+ s.version = "1.2.9"
4
4
  s.platform = Gem::Platform::RUBY
5
5
  s.license = "LGPL-3.0"
6
6
  s.summary = "(Lifecycle) manage your process models in a directory or git repo."
@@ -156,7 +156,7 @@ module CPEE
156
156
  { 'GN' => 'Christine', 'SN' => 'Ashcreek' }
157
157
  end
158
158
  end #}}}
159
- def self::notify(conns,op,models,f,s=nil) #{{{
159
+ def self::notify(conns,op,models,f,default,s=nil) #{{{
160
160
  what = if f =~ /\.dir$/
161
161
  if op == 'delete'
162
162
  { :op => op, :type => :dir, :name => File.basename(f) }
@@ -169,7 +169,7 @@ module CPEE
169
169
  { :op => op, :type => :file, :name => f.sub(Regexp.compile(File.join(models,'/')),'') }
170
170
  else
171
171
  attrs = JSON::load File.open(f + '.attrs')
172
- fstage = attrs['design_stage'] rescue 'draft'
172
+ fstage = attrs['design_stage'] rescue default
173
173
  { :op => op, :type => :file, :name => f.sub(Regexp.compile(File.join(models,'/')),''), :creator => attrs['creator'], :author => attrs['author'], :stage => fstage, :date => File.mtime(f).xmlschema }
174
174
  end
175
175
  end
@@ -194,7 +194,7 @@ module CPEE
194
194
  { :type => :dir, :name => File.basename(f), :creator => attrs['creator'], :date => File.mtime(f).xmlschema }
195
195
  end.compact.uniq.sort_by{ |e| e[:name] } + Dir.glob(File.join(models,where,'*.xml')).map do |f|
196
196
  attrs = JSON::load File.open(f + '.attrs')
197
- fstage = attrs['design_stage'] rescue 'draft'
197
+ fstage = attrs['design_stage'] rescue default_view
198
198
  { :type => :file, :name => File.basename(f), :creator => attrs['creator'], :author => attrs['author'], :guarded => attrs['guarded'], :guarded_id => attrs['guarded_id'], :stage => fstage, :date => File.mtime(f).xmlschema } if stage.include?(fstage)
199
199
  end.compact.uniq.sort_by{ |e| e[:name] }
200
200
 
@@ -218,7 +218,7 @@ module CPEE
218
218
  { :type => :file, :name => File.join(File.basename(File.dirname(f)),File.basename(f)), :creator => attrs['creator'], :date => File.mtime(f).xmlschema }
219
219
  end.compact.uniq.sort_by{ |e| e[:name] } + Dir.glob(File.join(models,'*.xml')).map do |f|
220
220
  attrs = JSON::load File.open(f + '.attrs')
221
- fstage = attrs['design_stage'] rescue 'draft'
221
+ fstage = attrs['design_stage'] rescue default_view
222
222
  { :type => :file, :name => File.basename(f), :creator => attrs['creator'], :author => attrs['author'], :guarded => attrs['guarded'], :guarded_id => attrs['guarded_id'], :stage => fstage, :date => File.mtime(f).xmlschema } if stage.include?(fstage)
223
223
  end.compact.uniq.sort_by{ |e| e[:name] }
224
224
 
@@ -228,7 +228,12 @@ module CPEE
228
228
  class GetStages < Riddl::Implementation #{{{
229
229
  def response
230
230
  themes = @a[0]
231
- Riddl::Parameter::Complex.new('list','application/json',JSON::pretty_generate(themes&.keys || []))
231
+ default_view = @a[1]
232
+ if @p[0].value == 'all'
233
+ Riddl::Parameter::Complex.new('list','application/json',JSON::pretty_generate(themes&.keys || []))
234
+ else
235
+ Riddl::Parameter::Complex.new('list','application/json',JSON::pretty_generate([default_view]))
236
+ end
232
237
  end
233
238
  end #}}}
234
239
 
@@ -265,7 +270,7 @@ module CPEE
265
270
  File.write(fname + '.attrs',JSON::pretty_generate(attrs))
266
271
 
267
272
  CPEE::ModelManagement::op author, 'shift', models, File.join('.', where, name + '.xml'), File.join('.', where, name + '.xml')
268
- CPEE::ModelManagement::notify conns, 'shift', models, fname, fname
273
+ CPEE::ModelManagement::notify conns, 'shift', models, fname, default_view, fname
269
274
  nil
270
275
  end
271
276
  end #}}}
@@ -279,8 +284,8 @@ module CPEE
279
284
  nname = @p[0].value
280
285
  fname = File.join(models,where,name + '.xml')
281
286
  fnname = File.join(models,where,nname + '.xml')
287
+ default_view = @a[3]
282
288
  counter = 0
283
- stage = 'draft'
284
289
  while File.exist?(fnname)
285
290
  counter += 1
286
291
  fnname = File.join(models,where,nname + counter.to_s + '.xml')
@@ -305,7 +310,7 @@ module CPEE
305
310
  File.write(fname + '.attrs',JSON::pretty_generate(attrs))
306
311
 
307
312
  CPEE::ModelManagement::op author, 'mv', models, File.join('.', where, File.basename(fnname)), File.join('.', where, name + '.xml')
308
- CPEE::ModelManagement::notify conns, 'rename', models, fnname, fname
313
+ CPEE::ModelManagement::notify conns, 'rename', models, fnname, default_view, fname
309
314
  nil
310
315
  end
311
316
  end #}}}
@@ -314,6 +319,7 @@ module CPEE
314
319
  where = @r[0..-2].map{ |d| Riddl::Protocols::Utils::unescape(d) }.join('/')
315
320
  conns = @a[0]
316
321
  models = @a[1]
322
+ default_view = @a[2]
317
323
  name = File.join(where,File.basename(@r.last,'.dir'))
318
324
  nname = File.join(where,@p[0].value)
319
325
  fname = File.join(models,name + '.dir')
@@ -345,7 +351,7 @@ module CPEE
345
351
  end
346
352
 
347
353
  CPEE::ModelManagement::op author, 'mv', models, File.basename(fnname), name + '.dir'
348
- CPEE::ModelManagement::notify conns, 'rename', models, fnname, fname
354
+ CPEE::ModelManagement::notify conns, 'rename', models, fnname, default_view, fname
349
355
  nil
350
356
  end
351
357
  end #}}}
@@ -356,6 +362,7 @@ module CPEE
356
362
  name = @p[0].value
357
363
  conns = @a[1]
358
364
  models = @a[2]
365
+ default_view = @a[3]
359
366
 
360
367
  fname = File.join(models,where,name + '.dir')
361
368
  counter = 0
@@ -376,7 +383,7 @@ module CPEE
376
383
  File.write(fname + '.attrs',JSON::pretty_generate(attrs))
377
384
 
378
385
  CPEE::ModelManagement::op creator, 'add', models, name + '.dir'
379
- CPEE::ModelManagement::notify conns, 'create', models, fname
386
+ CPEE::ModelManagement::notify conns, 'create', models, fname, default_view
380
387
  nil
381
388
  end
382
389
  end #}}}
@@ -450,7 +457,7 @@ module CPEE
450
457
  File.write(fname + '.attrs',JSON::pretty_generate(attrs))
451
458
 
452
459
  CPEE::ModelManagement::op creator, 'add', models, File.join('.', where, name + '.xml')
453
- CPEE::ModelManagement::notify conns, 'create', models, fname
460
+ CPEE::ModelManagement::notify conns, 'create', models, fname, default_view
454
461
  nil
455
462
  end
456
463
  end #}}}
@@ -555,6 +562,7 @@ module CPEE
555
562
  where = @a[0] == :main ? '' : @r[0..-2].map{ |d| Riddl::Protocols::Utils::unescape(d) }.join('/')
556
563
  conns = @a[1]
557
564
  models = @a[2]
565
+ default_view = @a[3]
558
566
 
559
567
  name = File.basename(@r.last,'.xml')
560
568
  to = @p[0].value
@@ -576,7 +584,7 @@ module CPEE
576
584
  File.write(fname + '.attrs',JSON::pretty_generate(attrs))
577
585
 
578
586
  CPEE::ModelManagement::op author, 'mv', models, File.join('.', to, name + '.xml'), File.join('.', where, name + '.xml')
579
- CPEE::ModelManagement::notify conns, 'move', models, File.join(models,to,name + '.xml'), fname
587
+ CPEE::ModelManagement::notify conns, 'move', models, File.join(models,to,name + '.xml'), default_view, fname
580
588
  end
581
589
  end
582
590
  end #}}}
@@ -585,14 +593,13 @@ module CPEE
585
593
  where = @a[0] == :main ? '' : @r[0..-2].map{ |d| Riddl::Protocols::Utils::unescape(d) }.join('/')
586
594
  conns = @a[1]
587
595
  models = @a[2]
596
+ default_view = @a[3]
588
597
  name = File.basename(@r.last,'.xml')
589
598
  cont = @p[0].value.read
590
599
  dn = CPEE::ModelManagement::get_dn @h['DN']
591
600
 
592
601
  fname = File.join(models,where,name + '.xml')
593
602
 
594
- p fname
595
-
596
603
  if File.exist?(fname)
597
604
  author = dn['GN'] + ' ' + dn['SN']
598
605
  attrs = {}
@@ -602,10 +609,10 @@ module CPEE
602
609
  ele.text = dn['GN'] + ' ' + dn['SN']
603
610
  end
604
611
  if doc.find('/p:testset/p:attributes/p:design_stage').empty?
605
- doc.find('/p:testset/p:attributes').first.add('p:design_stage','draft')
612
+ doc.find('/p:testset/p:attributes').first.add('p:design_stage',default_view)
606
613
  else
607
614
  doc.find('/p:testset/p:attributes/p:design_stage').each do |ele|
608
- ele.text = 'draft' if ele.text.strip == ''
615
+ ele.text = default_view if ele.text.strip == ''
609
616
  end
610
617
  end
611
618
  attrs = doc.find('/p:testset/p:attributes/*').map do |e|
@@ -615,7 +622,7 @@ module CPEE
615
622
  end
616
623
  File.write(fname + '.attrs',JSON::pretty_generate(attrs))
617
624
  CPEE::ModelManagement::op author, 'add', models, File.join('.', where, name + '.xml')
618
- CPEE::ModelManagement::notify conns, 'put', models, fname
625
+ CPEE::ModelManagement::notify conns, 'put', models, fname, default_view
619
626
  else
620
627
  @status = 400
621
628
  end
@@ -626,6 +633,7 @@ module CPEE
626
633
  where = @a[0] == :main ? '' : @r[0..-2].map{ |d| Riddl::Protocols::Utils::unescape(d) }.join('/')
627
634
  conns = @a[1]
628
635
  models = @a[2]
636
+ default_view = @a[3]
629
637
  name = File.basename(@r.last,'.xml')
630
638
  fname = File.join(models,where,name + '.xml')
631
639
 
@@ -633,7 +641,7 @@ module CPEE
633
641
  author = dn['GN'] + ' ' + dn['SN']
634
642
 
635
643
  CPEE::ModelManagement::op author, 'rm', models, File.join('.', where, name + '.xml')
636
- CPEE::ModelManagement::notify conns, 'delete', models, fname
644
+ CPEE::ModelManagement::notify conns, 'delete', models, fname, default_view
637
645
  end
638
646
  end #}}}
639
647
  class DeleteDir < Riddl::Implementation #{{{
@@ -641,6 +649,7 @@ module CPEE
641
649
  where = @r[0..-2].map{ |d| Riddl::Protocols::Utils::unescape(d) }.join('/')
642
650
  conns = @a[0]
643
651
  models = @a[1]
652
+ default_view = @a[2]
644
653
  name = File.basename(@r.last,'.dir')
645
654
  fname = File.join(models,where,name + '.dir')
646
655
 
@@ -648,7 +657,7 @@ module CPEE
648
657
  author = dn['GN'] + ' ' + dn['SN']
649
658
 
650
659
  CPEE::ModelManagement::op author, 'rm', models, File.join(where,name + '.dir')
651
- CPEE::ModelManagement::notify conns, 'delete', models, fname
660
+ CPEE::ModelManagement::notify conns, 'delete', models, fname, default_view
652
661
  end
653
662
  end #}}}
654
663
 
@@ -910,6 +919,9 @@ module CPEE
910
919
  opts[:sse_keepalive_frequency] ||= 10
911
920
 
912
921
  CPEE::redis_connect opts, 'Server Main'
922
+
923
+ opts[:default_view] ||= opts[:themes]&.first&.first || 'undefined'
924
+
913
925
  Proc.new do
914
926
 
915
927
  parallel do
@@ -936,24 +948,24 @@ module CPEE
936
948
  on resource do
937
949
  run GetList, :main, opts[:views], opts[:models], opts[:templates], opts[:default_view] if get 'stage'
938
950
  run GetListFull, opts[:views], opts[:models], opts[:templates], opts[:default_view] if get 'full'
939
- run GetStages, opts[:themes] if get 'stages'
951
+ run GetStages, opts[:themes], opts[:default_view] if get 'stages'
940
952
  run Create, :main, opts[:views], opts[:management_receivers], opts[:templates], opts[:models], opts[:default_view] if post 'item'
941
- run CreateDir, :main, opts[:management_receivers], opts[:models] if post 'dir'
953
+ run CreateDir, :main, opts[:management_receivers], opts[:models], opts[:default_view] if post 'dir'
942
954
  on resource 'management' do
943
955
  run ManagementSend, opts[:management_receivers] if sse
944
956
  end
945
957
  on resource '[a-zA-Z0-9öäüÖÄÜ _-]+\.dir' do
946
958
  run GetList, :sub, opts[:views], opts[:models], opts[:templates], opts[:default_view] if get 'stage'
947
- run Create, :sub, opts[:views], opts[:management_receivers], opts[:templates], opts[:models], opts[:default_view]if post 'item'
948
- run DeleteDir, opts[:management_receivers], opts[:models] if delete
949
- run RenameDir, opts[:management_receivers], opts[:models] if put 'name'
950
- run CreateDir, :sub, opts[:management_receivers], opts[:models] if post 'dir'
959
+ run Create, :sub, opts[:views], opts[:management_receivers], opts[:templates], opts[:models], opts[:default_view] if post 'item'
960
+ run DeleteDir, opts[:management_receivers], opts[:models], opts[:default_view] if delete
961
+ run RenameDir, opts[:management_receivers], opts[:models], opts[:default_view] if put 'name'
962
+ run CreateDir, :sub, opts[:management_receivers], opts[:models], opts[:default_view] if post 'dir'
951
963
  on resource '[a-zA-Z0-9öäüÖÄÜ _-]+\.xml' do
952
- run DeleteItem, :sub, opts[:management_receivers], opts[:models] if delete
964
+ run DeleteItem, :sub, opts[:management_receivers], opts[:models], opts[:default_view] if delete
953
965
  run GetItem, :sub, opts[:models] if get
954
- run PutItem, :sub, opts[:management_receivers], opts[:models] if put 'content'
955
- run RenameItem, :sub, opts[:management_receivers], opts[:models] if put 'name'
956
- run MoveItem, :sub, opts[:management_receivers], opts[:models] if put 'movedir'
966
+ run PutItem, :sub, opts[:management_receivers], opts[:models], opts[:default_view] if put 'content'
967
+ run RenameItem, :sub, opts[:management_receivers], opts[:models], opts[:default_view] if put 'name'
968
+ run MoveItem, :sub, opts[:management_receivers], opts[:models], opts[:default_view] if put 'movedir'
957
969
  run Create, :sub, opts[:views], opts[:management_receivers], opts[:templates], opts[:models], opts[:default_view]if put 'dupdir'
958
970
  run ShiftItem, :sub, opts[:management_receivers], opts[:themes], opts[:models], opts[:default_view] if put 'newstage'
959
971
  on resource 'open' do
@@ -965,11 +977,11 @@ module CPEE
965
977
  end
966
978
  end
967
979
  on resource '[a-zA-Z0-9öäüÖÄÜ _-]+\.xml' do
968
- run DeleteItem, :main, opts[:management_receivers], opts[:models] if delete
980
+ run DeleteItem, :main, opts[:management_receivers], opts[:models], opts[:default_view] if delete
969
981
  run GetItem, :main, opts[:models] if get
970
- run PutItem, :main, opts[:management_receivers], opts[:models] if put 'content'
971
- run RenameItem, :main, opts[:management_receivers], opts[:models] if put 'name'
972
- run MoveItem, :main, opts[:management_receivers], opts[:models] if put 'movedir'
982
+ run PutItem, :main, opts[:management_receivers], opts[:models], opts[:default_view] if put 'content'
983
+ run RenameItem, :main, opts[:management_receivers], opts[:models], opts[:default_view] if put 'name'
984
+ run MoveItem, :main, opts[:management_receivers], opts[:models], opts[:default_view] if put 'movedir'
973
985
  run Create, :main, opts[:views], opts[:management_receivers], opts[:templates], opts[:models], opts[:default_view]if put 'dupdir'
974
986
  run ShiftItem, :main, opts[:management_receivers], opts[:themes], opts[:models], opts[:default_view] if put 'newstage'
975
987
  on resource 'open' do
@@ -46,7 +46,12 @@
46
46
  </optional >
47
47
  </message>
48
48
  <message name="stages">
49
- <parameter name="stages" type="string"/>
49
+ <parameter name="stages" type="string">
50
+ <choice>
51
+ <value>all</value>
52
+ <value>default</value>
53
+ </choice>
54
+ </parameter>
50
55
  </message>
51
56
  <message name="newstage">
52
57
  <parameter name="stage" type="string"/>
data/ui/js/moma.js CHANGED
@@ -195,28 +195,47 @@ $(document).ready(function() {
195
195
  const queryString = window.location.search;
196
196
  const urlParams = new URLSearchParams(queryString);
197
197
 
198
- gstage = urlParams.get('stage') || 'draft';
199
- gdir = urlParams.get('dir') ? (urlParams.get('dir') + '/').replaceAll(/\/+/g,'/') : '';
200
-
201
- moma_init();
202
-
203
198
  var shifts = []
199
+ var default_view;
200
+
204
201
  $.ajax({
205
202
  type: "GET",
206
203
  url: "server/",
207
- data: { stages: 'stages' },
204
+ data: { stages: 'default' },
208
205
  success: (r) => {
209
- shifts = shifts.concat(r);
210
- shifts = shifts.filter(item => item !== gstage);
206
+ default_view = r[0];
207
+ console.log(default_view);
208
+
209
+ gstage = urlParams.get('stage') || default_view;
210
+ gdir = urlParams.get('dir') ? (urlParams.get('dir') + '/').replaceAll(/\/+/g,'/') : '';
211
+
212
+ moma_init();
213
+
214
+ $('ui-behind span').text(gstage);
215
+
216
+ paint(gdir,gstage);
217
+ setInterval(possibly_paint,1000);
218
+
219
+ $.ajax({
220
+ type: "GET",
221
+ url: "server/",
222
+ data: { stages: 'all' },
223
+ success: (r) => {
224
+ shifts = shifts.concat(r);
225
+ shifts = shifts.filter(item => item !== gstage);
226
+ if (shifts.length == 0) {
227
+ $('ui-behind span').hide();
228
+ }
229
+ }
230
+ });
211
231
  }
212
232
  });
213
233
 
214
234
  window.onpopstate = function(e){
215
- let d = e.state || { gstage: 'draft', 'gdir': '' };
235
+ let d = e.state || { gstage: default_view, 'gdir': '' };
216
236
  paint(d.gdir,d.gstage,false);
217
237
  };
218
238
 
219
- $('ui-behind span').text(gstage);
220
239
  $('ui-behind span').click((e) => {
221
240
  if (shifts.length > 0) {
222
241
  var menu = {};
@@ -349,8 +368,6 @@ $(document).ready(function() {
349
368
  new CustomMenu(e).contextmenu(menu);
350
369
  });
351
370
 
352
- paint(gdir,gstage);
353
-
354
371
  $('#newmod').on('submit',(e) => {
355
372
  $.ajax({
356
373
  type: "POST",
@@ -374,6 +391,4 @@ $(document).ready(function() {
374
391
  });
375
392
  return false;
376
393
  });
377
-
378
- setInterval(possibly_paint,1000);
379
394
  });
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cpee-model-management
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.8
4
+ version: 1.2.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Juergen eTM Mangler