card-mod-session 0.11.0

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.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: 0f6dbdeec3243b55bcfe20d731524098532e4c9c795aa706425c5c029ed8ecfa
4
+ data.tar.gz: 59eeab865b39469558fef42ce5d5d376d3eafcd9f781444deddb98df2725f6fb
5
+ SHA512:
6
+ metadata.gz: b64e46b1f6b86ce61a6694ff67de3d5b2829af20fbb0a50f509e5e4c477f03163d2139647d388751f5301db3a090994eebe9f382c46422661946d5ec64e2d189
7
+ data.tar.gz: 1c4d84bd407e2777124ddeae3126a97bde82edf0923508c5cb20426bb3fbec6191ad5ef29af38ae3237d286691dc795c83c4551fc2662ae22f4032d8ae4ded0b
@@ -0,0 +1,19 @@
1
+ event :discard_deleted_locations, :finalize, on: :delete do
2
+ Env.discard_locations_for self
3
+ configure_successful_deletion if success.target == self
4
+ end
5
+
6
+ event :save_current_location, before: :show_page, on: :read do
7
+ Env.save_location self
8
+ end
9
+
10
+ # TO DISCUSS: should this default behavior be directly in the controller?
11
+ # Or at least in decko?
12
+ def configure_successful_deletion
13
+ if Env.ajax?
14
+ success.card = self
15
+ success.view = :unknown unless success.view
16
+ else
17
+ success.target = :previous
18
+ end
19
+ end
@@ -0,0 +1,61 @@
1
+ include_set Pointer
2
+
3
+ def virtual?
4
+ session_content.present?
5
+ end
6
+
7
+ def history?
8
+ false
9
+ end
10
+
11
+ def followable?
12
+ false
13
+ end
14
+
15
+ def recaptcha_on?
16
+ false
17
+ end
18
+
19
+ def session_key
20
+ "_card_#{key}"
21
+ end
22
+
23
+ def session_content
24
+ Env.session[session_key]
25
+ end
26
+
27
+ def session_content= val
28
+ Env.session[session_key] = val
29
+ end
30
+
31
+ def content
32
+ db_content || session_content
33
+ end
34
+
35
+ event :store_in_session, :prepare_to_store, on: :save do
36
+ self.session_content = db_content
37
+ abort :success
38
+ end
39
+
40
+ event :delete_in_session, :prepare_to_store, on: :delete do
41
+ self.session_content = nil
42
+ abort :success
43
+ end
44
+
45
+ def ok_to_create
46
+ true
47
+ end
48
+
49
+ def ok_to_update
50
+ true
51
+ end
52
+
53
+ def add_to_trash args
54
+ yield args.merge trash: true
55
+ end
56
+
57
+ format :html do
58
+ before :core do
59
+ voo.items[:view] = :name
60
+ end
61
+ end
metadata ADDED
@@ -0,0 +1,76 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: card-mod-session
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.11.0
5
+ platform: ruby
6
+ authors:
7
+ - Ethan McCutchen
8
+ - Philipp Kühl
9
+ - Gerry Gleason
10
+ autorequire:
11
+ bindir: bin
12
+ cert_chain: []
13
+ date: 2020-12-24 00:00:00.000000000 Z
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: card
17
+ requirement: !ruby/object:Gem::Requirement
18
+ requirements:
19
+ - - '='
20
+ - !ruby/object:Gem::Version
21
+ version: 1.101.0
22
+ type: :runtime
23
+ prerelease: false
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ requirements:
26
+ - - '='
27
+ - !ruby/object:Gem::Version
28
+ version: 1.101.0
29
+ - !ruby/object:Gem::Dependency
30
+ name: card-mod-list
31
+ requirement: !ruby/object:Gem::Requirement
32
+ requirements:
33
+ - - '='
34
+ - !ruby/object:Gem::Version
35
+ version: 0.11.0
36
+ type: :runtime
37
+ prerelease: false
38
+ version_requirements: !ruby/object:Gem::Requirement
39
+ requirements:
40
+ - - '='
41
+ - !ruby/object:Gem::Version
42
+ version: 0.11.0
43
+ description: ''
44
+ email:
45
+ - info@decko.org
46
+ executables: []
47
+ extensions: []
48
+ extra_rdoc_files: []
49
+ files:
50
+ - set/all/location_history.rb
51
+ - set/type/session.rb
52
+ homepage: http://decko.org
53
+ licenses:
54
+ - GPL-3.0
55
+ metadata:
56
+ card-mod: session
57
+ post_install_message:
58
+ rdoc_options: []
59
+ require_paths:
60
+ - lib
61
+ required_ruby_version: !ruby/object:Gem::Requirement
62
+ requirements:
63
+ - - ">="
64
+ - !ruby/object:Gem::Version
65
+ version: '2.5'
66
+ required_rubygems_version: !ruby/object:Gem::Requirement
67
+ requirements:
68
+ - - ">="
69
+ - !ruby/object:Gem::Version
70
+ version: '0'
71
+ requirements: []
72
+ rubygems_version: 3.0.3
73
+ signing_key:
74
+ specification_version: 4
75
+ summary: session
76
+ test_files: []