xing-framework 0.0.2 → 0.0.3
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 +4 -4
- data/default_configuration/base_app/backend/config/initializers/session_store.rb +1 -1
- data/default_configuration/base_app/backend/static-app.ru +1 -1
- data/default_configuration/base_app/frontend/npm-shrinkwrap.json +2042 -885
- data/default_configuration/base_app/frontend/package.json +1 -1
- data/default_configuration/base_app/frontend/src/app/auth/passwords/passwords-request.tpl.html +2 -2
- data/default_configuration/base_app/frontend/src/app/auth/passwords/passwords-update.tpl.html +3 -3
- data/default_configuration/base_app/frontend/src/app/auth/registrations/registrations.tpl.html +6 -6
- data/default_configuration/base_app/frontend/src/app/auth/sessions/sessions.tpl.html +4 -4
- data/default_configuration/base_app/frontend/src/app/inner.tpl.html +8 -8
- data/default_configuration/base_app/frontend/src/app/root.tpl.html +1 -1
- data/default_configuration/base_app/frontend/src/common/components/sessionLinks/session-links.tpl.html +3 -3
- data/default_configuration/base_app/frontend/src/common/components/sessionLinks/sessionLinks.js +1 -1
- data/default_configuration/base_app/frontend/src/common/components/signOut/signOut.js +1 -1
- data/default_configuration/base_app/frontend/src/common/config.js +2 -2
- data/default_configuration/base_app/frontend/src/index.html +1 -1
- data/default_configuration/base_app/frontend/src/styles/partials/_forms.sass +1 -1
- data/default_configuration/base_app/frontend/src/styles/partials/_navbar.sass +1 -1
- data/default_configuration/base_app/frontend/test/auth/passwords/passwordsControllers.js +2 -2
- data/default_configuration/base_app/frontend/test/auth/registrations/registrationsControllers.js +1 -1
- data/default_configuration/base_app/frontend/test/auth/sessions/sessionsControllers.js +1 -1
- data/default_configuration/base_app/static-app.ru +1 -1
- metadata +2 -47
- data/default_configuration/base_app/API_DOC/README +0 -23
- data/default_configuration/base_app/API_DOC/admin-menus +0 -167
- data/default_configuration/base_app/API_DOC/admin-pages +0 -173
- data/default_configuration/base_app/API_DOC/content-block +0 -10
- data/default_configuration/base_app/API_DOC/navigation +0 -54
- data/default_configuration/base_app/API_DOC/page +0 -38
- data/default_configuration/base_app/backend/README +0 -12
- data/default_configuration/base_app/backend/public/index.html +0 -0
- data/default_configuration/base_app/dummy-api/admin/menu_items/10.json +0 -15
- data/default_configuration/base_app/dummy-api/admin/menu_items/11.json +0 -15
- data/default_configuration/base_app/dummy-api/admin/menu_items/12.json +0 -15
- data/default_configuration/base_app/dummy-api/admin/menu_items/13.json +0 -15
- data/default_configuration/base_app/dummy-api/admin/menu_items/14.json +0 -15
- data/default_configuration/base_app/dummy-api/admin/menu_items/15.json +0 -15
- data/default_configuration/base_app/dummy-api/admin/menu_items/16.json +0 -15
- data/default_configuration/base_app/dummy-api/admin/menus.json +0 -23
- data/default_configuration/base_app/dummy-api/admin/menus/1.json +0 -118
- data/default_configuration/base_app/dummy-api/admin/menus/2.json +0 -8
- data/default_configuration/base_app/dummy-api/admin/pages.json +0 -105
- data/default_configuration/base_app/dummy-api/admin/pages/about_us.json +0 -45
- data/default_configuration/base_app/dummy-api/admin/pages/contact_us.json +0 -36
- data/default_configuration/base_app/dummy-api/admin/pages/gallery.json +0 -36
- data/default_configuration/base_app/dummy-api/admin/pages/home.json +0 -36
- data/default_configuration/base_app/dummy-api/admin/pages/homepage.json +0 -18
- data/default_configuration/base_app/dummy-api/admin/pages/links.json +0 -36
- data/default_configuration/base_app/dummy-api/admin/pages/newsletter.json +0 -54
- data/default_configuration/base_app/dummy-api/homepage.json +0 -14
- data/default_configuration/base_app/dummy-api/navigation/main.json +0 -119
- data/default_configuration/base_app/dummy-api/pages/about_us.json +0 -41
- data/default_configuration/base_app/dummy-api/pages/contact_us.json +0 -32
- data/default_configuration/base_app/dummy-api/pages/gallery.json +0 -32
- data/default_configuration/base_app/dummy-api/pages/home.json +0 -32
- data/default_configuration/base_app/dummy-api/pages/homepage.json +0 -14
- data/default_configuration/base_app/dummy-api/pages/links.json +0 -32
- data/default_configuration/base_app/dummy-api/pages/newsletter.json +0 -50
- data/default_configuration/base_app/frontend/CHANGELOG.md +0 -125
- data/default_configuration/base_app/frontend/LICENSE +0 -19
- data/default_configuration/base_app/frontend/README.md +0 -5
- data/default_configuration/base_app/frontend/bin/index.html +0 -0
- data/default_configuration/base_app/frontend/changelog.tpl +0 -23
- data/default_configuration/base_app/frontend/src/README.md +0 -48
- data/default_configuration/base_app/frontend/src/app/README.md +0 -68
- data/default_configuration/base_app/frontend/src/assets/README.md +0 -4
- data/default_configuration/base_app/frontend/src/common/README.md +0 -19
- data/default_configuration/base_app/frontend/tools.md +0 -223
data/default_configuration/base_app/frontend/src/app/auth/passwords/passwords-request.tpl.html
CHANGED
|
@@ -3,13 +3,13 @@
|
|
|
3
3
|
<p>Enter your email address below to receive a new confirmation email.</p>
|
|
4
4
|
|
|
5
5
|
<form id='passwords-request-form'>
|
|
6
|
-
<div class='
|
|
6
|
+
<div class='xng-form-row'>
|
|
7
7
|
<label for="email">Email:</label>
|
|
8
8
|
<input name="email" ng-model="passwordRequest.email" placeholder="Email" />
|
|
9
9
|
<span class='comment'></span>
|
|
10
10
|
</div>
|
|
11
11
|
|
|
12
|
-
<div class='
|
|
12
|
+
<div class='xng-form-row'>
|
|
13
13
|
<button type="submit" ng-click="passwordRequestSubmit()" class="call-to-action">Send password reset instructions</button>
|
|
14
14
|
</div>
|
|
15
15
|
|
data/default_configuration/base_app/frontend/src/app/auth/passwords/passwords-update.tpl.html
CHANGED
|
@@ -2,19 +2,19 @@
|
|
|
2
2
|
|
|
3
3
|
<form id='passwords-update-form'>
|
|
4
4
|
|
|
5
|
-
<div class='
|
|
5
|
+
<div class='xng-form-row'>
|
|
6
6
|
<label for="password">New Password:</label>
|
|
7
7
|
<input type="password" name="password" ng-model="passwordUpdate.password" placeholder="New Password" />
|
|
8
8
|
<span class='comment'></span>
|
|
9
9
|
</div>
|
|
10
10
|
|
|
11
|
-
<div class='
|
|
11
|
+
<div class='xng-form-row'>
|
|
12
12
|
<label for="password-confirmation">Confirm New Password:</label>
|
|
13
13
|
<input type="password" name="password-confirmation" ng-model="passwordUpdate.passwordConfirmation" placeholder="New Password" />
|
|
14
14
|
<span class='comment'></span>
|
|
15
15
|
</div>
|
|
16
16
|
|
|
17
|
-
<div class='
|
|
17
|
+
<div class='xng-form-row'>
|
|
18
18
|
<button type="submit" ng-click="passwordUpdateSubmit()" class='call-to-action'>Update Password</button>
|
|
19
19
|
</div>
|
|
20
20
|
|
data/default_configuration/base_app/frontend/src/app/auth/registrations/registrations.tpl.html
CHANGED
|
@@ -2,35 +2,35 @@
|
|
|
2
2
|
|
|
3
3
|
<form id='registrations-form'>
|
|
4
4
|
|
|
5
|
-
<div class='
|
|
5
|
+
<div class='xng-form-row'>
|
|
6
6
|
<label for="email">Email:</label>
|
|
7
7
|
<input name="email" ng-model="registration.email" placeholder="Email" />
|
|
8
8
|
<span class='comment'></span>
|
|
9
9
|
</div>
|
|
10
10
|
|
|
11
|
-
<div class='
|
|
11
|
+
<div class='xng-form-row'>
|
|
12
12
|
<label for="email-confirmation">Email Confirmation:</label>
|
|
13
13
|
<input name="email-confirmation" ng-model="registration.emailConfirmation" placeholder="Email Confirmation" />
|
|
14
14
|
<span class='comment'></span>
|
|
15
15
|
</div>
|
|
16
16
|
|
|
17
|
-
<div class='
|
|
17
|
+
<div class='xng-form-row'>
|
|
18
18
|
<label for="password">Password:</label>
|
|
19
19
|
<input type="password" name="password" ng-model="registration.password" placeholder="Password" />
|
|
20
20
|
<span class='comment'></span>
|
|
21
21
|
</div>
|
|
22
22
|
|
|
23
|
-
<div class='
|
|
23
|
+
<div class='xng-form-row'>
|
|
24
24
|
<label for="password-confirmation">Password Confirmation:</label>
|
|
25
25
|
<input type="password" name="password-confirmation" ng-model="registration.passwordConfirmation" placeholder="Password Confirmation" />
|
|
26
26
|
<span class='comment'></span>
|
|
27
27
|
</div>
|
|
28
28
|
|
|
29
|
-
<div class='
|
|
29
|
+
<div class='xng-form-row'>
|
|
30
30
|
<button type="submit" ng-click="registrationSubmit()" class='call-to-action'>Sign Up</button>
|
|
31
31
|
</div>
|
|
32
32
|
|
|
33
|
-
<div class='
|
|
33
|
+
<div class='xng-form-row'>
|
|
34
34
|
<a ui-sref='root.inner.sessions' class='input-like'>Already have an account?</a>
|
|
35
35
|
</div>
|
|
36
36
|
|
|
@@ -1,23 +1,23 @@
|
|
|
1
1
|
<h1>Sign In</h1>
|
|
2
2
|
|
|
3
3
|
<form id='sessions-form'>
|
|
4
|
-
<div class='
|
|
4
|
+
<div class='xng-form-row'>
|
|
5
5
|
<label for="{{authKey}}">{{humanAuthKey}}:</label>
|
|
6
6
|
<input name="{{authKey}}" ng-model="session[authKey]" placeholder="{{humanAuthKey}}" required />
|
|
7
7
|
<span class='messages'></span>
|
|
8
8
|
</div>
|
|
9
9
|
|
|
10
|
-
<div class='
|
|
10
|
+
<div class='xng-form-row'>
|
|
11
11
|
<label for="password">Password:</label>
|
|
12
12
|
<input type="password" name="password" ng-model="session.password" placeholder="Password" required />
|
|
13
13
|
<span class='messages'></span>
|
|
14
14
|
</div>
|
|
15
15
|
|
|
16
|
-
<div class='
|
|
16
|
+
<div class='xng-form-row'>
|
|
17
17
|
<button type="submit" ng-click="sessionSubmit()" class="call-to-action">Sign In</button>
|
|
18
18
|
</div>
|
|
19
19
|
|
|
20
|
-
<div class='
|
|
20
|
+
<div class='xng-form-row'>
|
|
21
21
|
<div ng-if="passwordShow" class='input-like'>
|
|
22
22
|
<a ui-sref='root.inner.passwordsRequest'>Forgot your password?</a>
|
|
23
23
|
</div>
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
<
|
|
2
|
-
<
|
|
3
|
-
</
|
|
4
|
-
<
|
|
5
|
-
</
|
|
6
|
-
</
|
|
1
|
+
<xng-responsive-menu>
|
|
2
|
+
<xng-navbar id="main_nav" menu="mainMenu">
|
|
3
|
+
</xng-navbar>
|
|
4
|
+
<xng-session-links>
|
|
5
|
+
</xng-session-links>
|
|
6
|
+
</xng-responsive-menu>
|
|
7
7
|
|
|
8
8
|
<div id="toast_main">
|
|
9
9
|
</div>
|
|
10
10
|
|
|
11
|
-
<ui-view
|
|
11
|
+
<ui-view xng-state-attrs></ui-view>
|
|
12
12
|
|
|
13
13
|
<footer>
|
|
14
|
-
<span id="copyright">©
|
|
14
|
+
<span id="copyright">© 2016 Your Organization Here</span>
|
|
15
15
|
<a ui-sref='root.inner.sessions' id='sign-in-link'>Sign In</a>
|
|
16
16
|
</footer>
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
<ui-view
|
|
1
|
+
<ui-view xng-state-attrs>
|
|
2
2
|
</ui-view>
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
<ul class="session-links">
|
|
2
|
-
<li ng-hide="
|
|
3
|
-
<li ng-hide="
|
|
4
|
-
<li ng-show="
|
|
2
|
+
<li ng-hide="xngSessionLinks.isLoggedIn"><a ui-sref='root.inner.registrations'>Sign Up</a></li>
|
|
3
|
+
<li ng-hide="xngSessionLinks.isLoggedIn"><a ui-sref='root.inner.sessions'>Sign In</a></li>
|
|
4
|
+
<li ng-show="xngSessionLinks.isLoggedIn"><a xng-sign-out>Sign Out</a></li>
|
|
5
5
|
</ul>
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {Module, DirectiveObject} from 'a1atscript';
|
|
2
2
|
|
|
3
3
|
@Module('signOutDirective', ['ng-token-auth', 'ui.router.state'])
|
|
4
|
-
@DirectiveObject('
|
|
4
|
+
@DirectiveObject('xngSignOut', ['$state', '$auth'])
|
|
5
5
|
export default class SignOut {
|
|
6
6
|
constructor($state, $auth) {
|
|
7
7
|
this.$state = $state;
|
|
@@ -8,7 +8,7 @@ export var backendUrl = (function(){
|
|
|
8
8
|
}
|
|
9
9
|
|
|
10
10
|
var matches = cookies.filter((cookie) => {
|
|
11
|
-
return /^
|
|
11
|
+
return /^xngBackendUrl=/.test(cookie);
|
|
12
12
|
});
|
|
13
13
|
|
|
14
14
|
if(matches.length > 0) {
|
|
@@ -17,7 +17,7 @@ export var backendUrl = (function(){
|
|
|
17
17
|
return environment.backendUrl;
|
|
18
18
|
}
|
|
19
19
|
}());
|
|
20
|
-
export var appName = "
|
|
20
|
+
export var appName = "XING-BASE";
|
|
21
21
|
export var configuration = { backendUrl, appName };
|
|
22
22
|
|
|
23
23
|
if(environment.name){
|
|
@@ -72,7 +72,7 @@ describe( 'Passwords controllers', function() {
|
|
|
72
72
|
$scope: $scope,
|
|
73
73
|
$state: $stateMock,
|
|
74
74
|
$auth: $authMock,
|
|
75
|
-
$
|
|
75
|
+
$xngToast: $toastMock,
|
|
76
76
|
$location: mockLocation,
|
|
77
77
|
Serializer: mockSerializer
|
|
78
78
|
});
|
|
@@ -134,7 +134,7 @@ describe( 'Passwords controllers', function() {
|
|
|
134
134
|
$scope: $scope,
|
|
135
135
|
$state: $stateMock,
|
|
136
136
|
$auth: $authMock,
|
|
137
|
-
$
|
|
137
|
+
$xngToast: $toastMock,
|
|
138
138
|
Serializer: mockSerializer,
|
|
139
139
|
$location: mockLocation
|
|
140
140
|
});
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: xing-framework
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.0.
|
|
4
|
+
version: 0.0.3
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Evan Dorn
|
|
@@ -51,12 +51,6 @@ extensions: []
|
|
|
51
51
|
extra_rdoc_files: []
|
|
52
52
|
files:
|
|
53
53
|
- bin/xing
|
|
54
|
-
- default_configuration/base_app/API_DOC/README
|
|
55
|
-
- default_configuration/base_app/API_DOC/admin-menus
|
|
56
|
-
- default_configuration/base_app/API_DOC/admin-pages
|
|
57
|
-
- default_configuration/base_app/API_DOC/content-block
|
|
58
|
-
- default_configuration/base_app/API_DOC/navigation
|
|
59
|
-
- default_configuration/base_app/API_DOC/page
|
|
60
54
|
- default_configuration/base_app/CHANGELOG.md
|
|
61
55
|
- default_configuration/base_app/Capfile
|
|
62
56
|
- default_configuration/base_app/Gemfile
|
|
@@ -65,7 +59,6 @@ files:
|
|
|
65
59
|
- default_configuration/base_app/Rakefile
|
|
66
60
|
- default_configuration/base_app/backend/Gemfile
|
|
67
61
|
- default_configuration/base_app/backend/Gemfile.lock
|
|
68
|
-
- default_configuration/base_app/backend/README
|
|
69
62
|
- default_configuration/base_app/backend/Rakefile
|
|
70
63
|
- default_configuration/base_app/backend/app/controllers/application_controller.rb
|
|
71
64
|
- default_configuration/base_app/backend/app/controllers/confirmations_controller.rb
|
|
@@ -114,7 +107,6 @@ files:
|
|
|
114
107
|
- default_configuration/base_app/backend/public/422.html
|
|
115
108
|
- default_configuration/base_app/backend/public/500.html
|
|
116
109
|
- default_configuration/base_app/backend/public/favicon.ico
|
|
117
|
-
- default_configuration/base_app/backend/public/index.html
|
|
118
110
|
- default_configuration/base_app/backend/public/robots.txt
|
|
119
111
|
- default_configuration/base_app/backend/script/rails
|
|
120
112
|
- default_configuration/base_app/backend/spec/factories/user_sessions_factory.rb
|
|
@@ -140,44 +132,12 @@ files:
|
|
|
140
132
|
- default_configuration/base_app/doc/01_fail_resources.txt
|
|
141
133
|
- default_configuration/base_app/doc/02_fail_auth.txt
|
|
142
134
|
- default_configuration/base_app/doc/03_fail_menus.txt
|
|
143
|
-
- default_configuration/base_app/dummy-api/admin/menu_items/10.json
|
|
144
|
-
- default_configuration/base_app/dummy-api/admin/menu_items/11.json
|
|
145
|
-
- default_configuration/base_app/dummy-api/admin/menu_items/12.json
|
|
146
|
-
- default_configuration/base_app/dummy-api/admin/menu_items/13.json
|
|
147
|
-
- default_configuration/base_app/dummy-api/admin/menu_items/14.json
|
|
148
|
-
- default_configuration/base_app/dummy-api/admin/menu_items/15.json
|
|
149
|
-
- default_configuration/base_app/dummy-api/admin/menu_items/16.json
|
|
150
|
-
- default_configuration/base_app/dummy-api/admin/menus.json
|
|
151
|
-
- default_configuration/base_app/dummy-api/admin/menus/1.json
|
|
152
|
-
- default_configuration/base_app/dummy-api/admin/menus/2.json
|
|
153
|
-
- default_configuration/base_app/dummy-api/admin/pages.json
|
|
154
|
-
- default_configuration/base_app/dummy-api/admin/pages/about_us.json
|
|
155
|
-
- default_configuration/base_app/dummy-api/admin/pages/contact_us.json
|
|
156
|
-
- default_configuration/base_app/dummy-api/admin/pages/gallery.json
|
|
157
|
-
- default_configuration/base_app/dummy-api/admin/pages/home.json
|
|
158
|
-
- default_configuration/base_app/dummy-api/admin/pages/homepage.json
|
|
159
|
-
- default_configuration/base_app/dummy-api/admin/pages/links.json
|
|
160
|
-
- default_configuration/base_app/dummy-api/admin/pages/newsletter.json
|
|
161
|
-
- default_configuration/base_app/dummy-api/homepage.json
|
|
162
|
-
- default_configuration/base_app/dummy-api/navigation/main.json
|
|
163
|
-
- default_configuration/base_app/dummy-api/pages/about_us.json
|
|
164
|
-
- default_configuration/base_app/dummy-api/pages/contact_us.json
|
|
165
|
-
- default_configuration/base_app/dummy-api/pages/gallery.json
|
|
166
|
-
- default_configuration/base_app/dummy-api/pages/home.json
|
|
167
|
-
- default_configuration/base_app/dummy-api/pages/homepage.json
|
|
168
|
-
- default_configuration/base_app/dummy-api/pages/links.json
|
|
169
|
-
- default_configuration/base_app/dummy-api/pages/newsletter.json
|
|
170
135
|
- default_configuration/base_app/dump.rdb
|
|
171
136
|
- default_configuration/base_app/example-lrd-dev-tmux.conf
|
|
172
|
-
- default_configuration/base_app/frontend/CHANGELOG.md
|
|
173
137
|
- default_configuration/base_app/frontend/Gemfile
|
|
174
138
|
- default_configuration/base_app/frontend/Gemfile.lock
|
|
175
139
|
- default_configuration/base_app/frontend/Gruntfile.js
|
|
176
|
-
- default_configuration/base_app/frontend/LICENSE
|
|
177
|
-
- default_configuration/base_app/frontend/README.md
|
|
178
|
-
- default_configuration/base_app/frontend/bin/index.html
|
|
179
140
|
- default_configuration/base_app/frontend/build.config.js
|
|
180
|
-
- default_configuration/base_app/frontend/changelog.tpl
|
|
181
141
|
- default_configuration/base_app/frontend/config/compass.rb
|
|
182
142
|
- default_configuration/base_app/frontend/config/environments/development.js
|
|
183
143
|
- default_configuration/base_app/frontend/config/environments/integration.js
|
|
@@ -190,8 +150,6 @@ files:
|
|
|
190
150
|
- default_configuration/base_app/frontend/npm-shrinkwrap.json
|
|
191
151
|
- default_configuration/base_app/frontend/package.json
|
|
192
152
|
- default_configuration/base_app/frontend/sprockets/index.tpl.js
|
|
193
|
-
- default_configuration/base_app/frontend/src/README.md
|
|
194
|
-
- default_configuration/base_app/frontend/src/app/README.md
|
|
195
153
|
- default_configuration/base_app/frontend/src/app/app.js
|
|
196
154
|
- default_configuration/base_app/frontend/src/app/appConfig.js
|
|
197
155
|
- default_configuration/base_app/frontend/src/app/auth/auth.js
|
|
@@ -225,9 +183,7 @@ files:
|
|
|
225
183
|
- default_configuration/base_app/frontend/src/app/root.tpl.html
|
|
226
184
|
- default_configuration/base_app/frontend/src/app/rootController.js
|
|
227
185
|
- default_configuration/base_app/frontend/src/app/rootStates.js
|
|
228
|
-
- default_configuration/base_app/frontend/src/assets/README.md
|
|
229
186
|
- default_configuration/base_app/frontend/src/assets/icons/alert.svg
|
|
230
|
-
- default_configuration/base_app/frontend/src/common/README.md
|
|
231
187
|
- default_configuration/base_app/frontend/src/common/components/OnLoginDirective/OnLoginDirective.js
|
|
232
188
|
- default_configuration/base_app/frontend/src/common/components/adminOnly/admin-only.tpl.html
|
|
233
189
|
- default_configuration/base_app/frontend/src/common/components/adminOnly/adminOnly.js
|
|
@@ -258,7 +214,6 @@ files:
|
|
|
258
214
|
- default_configuration/base_app/frontend/test/support/mockDirective.js
|
|
259
215
|
- default_configuration/base_app/frontend/test/support/stateResolveFn.js
|
|
260
216
|
- default_configuration/base_app/frontend/test/support/testStates.js
|
|
261
|
-
- default_configuration/base_app/frontend/tools.md
|
|
262
217
|
- default_configuration/base_app/lib/capistrano/tasks/sidekiq.rake
|
|
263
218
|
- default_configuration/base_app/static-app.ru
|
|
264
219
|
- default_configuration/base_app/tmux-windows
|
|
@@ -280,7 +235,7 @@ rdoc_options:
|
|
|
280
235
|
- "--main"
|
|
281
236
|
- doc/README
|
|
282
237
|
- "--title"
|
|
283
|
-
- xing-framework-0.0.
|
|
238
|
+
- xing-framework-0.0.3 Documentation
|
|
284
239
|
require_paths:
|
|
285
240
|
- lib/
|
|
286
241
|
required_ruby_version: !ruby/object:Gem::Requirement
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
|
|
2
|
-
All requests and responses are JSON. Client should send Accept:
|
|
3
|
-
"application/json" on all requests, and Content-Type: "application/json" on
|
|
4
|
-
requests with bodies (i.e. POST, PUT).
|
|
5
|
-
|
|
6
|
-
OPEN QUESTIONS:
|
|
7
|
-
PATCH? Only makes sense if the body somehow represents a change rather than a replacement.
|
|
8
|
-
All link relations? Or just self-links and use resource embed for
|
|
9
|
-
relationships?
|
|
10
|
-
|
|
11
|
-
Server responses should represent resources as a JSON object with two fields:
|
|
12
|
-
`links` and `data`. Both fields should contain an object. The links object
|
|
13
|
-
should have fields equivalent to HTML "rel" attributes. Importantly the self
|
|
14
|
-
link, but we should define link types internal to the application.
|
|
15
|
-
|
|
16
|
-
The data object is more free form. Some commonality of fields is worthwhile,
|
|
17
|
-
but whatever most sensibly represents the resource is the best choice.
|
|
18
|
-
|
|
19
|
-
Where a resource refers to another, include a subset of the other resource in
|
|
20
|
-
the data object.
|
|
21
|
-
|
|
22
|
-
Examples: #with ruby style comments
|
|
23
|
-
|
|
@@ -1,167 +0,0 @@
|
|
|
1
|
-
# list of menus
|
|
2
|
-
# This is the serialized output of Menu.list (class method)
|
|
3
|
-
#
|
|
4
|
-
# GET /admin/menus
|
|
5
|
-
{
|
|
6
|
-
links; {
|
|
7
|
-
self: "/admin/menus"
|
|
8
|
-
},
|
|
9
|
-
data: [
|
|
10
|
-
{ links: {
|
|
11
|
-
self: 'admin/menus/:id1'
|
|
12
|
-
},
|
|
13
|
-
data: {
|
|
14
|
-
name: 'Menu 1'
|
|
15
|
-
}
|
|
16
|
-
},
|
|
17
|
-
{ links: {
|
|
18
|
-
self: 'admin/menus/:id2'
|
|
19
|
-
},
|
|
20
|
-
data: {
|
|
21
|
-
name: 'Menu 2'
|
|
22
|
-
}
|
|
23
|
-
},
|
|
24
|
-
{ links: {
|
|
25
|
-
self: 'admin/menus/:id3'
|
|
26
|
-
},
|
|
27
|
-
data: {
|
|
28
|
-
name: 'Menu 3'
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
]
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
# GET /admin/menu/:id
|
|
36
|
-
#
|
|
37
|
-
# Just like /navigation/main but takes the ID of one of the menus returned
|
|
38
|
-
# in admin/menus, gives the full list *with* admin links for individual
|
|
39
|
-
# menu items
|
|
40
|
-
{
|
|
41
|
-
links: {
|
|
42
|
-
self: "/admin/menu/:id"
|
|
43
|
-
},
|
|
44
|
-
data: [
|
|
45
|
-
|
|
46
|
-
# a top-level menu item
|
|
47
|
-
{
|
|
48
|
-
links : {
|
|
49
|
-
self: 'admin/menu-item/:id'
|
|
50
|
-
}
|
|
51
|
-
data : {
|
|
52
|
-
name: "Services",
|
|
53
|
-
path: # IF type == 'raw url', this is included and contains the url
|
|
54
|
-
page: { links: { self: "pages/:url_slug", #IF type == 'page', this is the URL of the page resource
|
|
55
|
-
type: [ 'page' | 'raw_url' ]
|
|
56
|
-
children: [
|
|
57
|
-
|
|
58
|
-
# a sub-menu item under "Services", with a page link
|
|
59
|
-
{
|
|
60
|
-
links: {
|
|
61
|
-
self: 'admin/menu-item/:id'
|
|
62
|
-
},
|
|
63
|
-
data: {
|
|
64
|
-
type: 'page',
|
|
65
|
-
name: "Startup MVPs",
|
|
66
|
-
page: { links: { self: '/pages/startup-mvps' }} ,
|
|
67
|
-
# no children - key omitted
|
|
68
|
-
}
|
|
69
|
-
},
|
|
70
|
-
|
|
71
|
-
# a second sub-menu item under "Services", with a page link
|
|
72
|
-
{
|
|
73
|
-
links: {
|
|
74
|
-
self: 'admin/menu-item/:id'
|
|
75
|
-
},
|
|
76
|
-
data: {
|
|
77
|
-
type: 'page'
|
|
78
|
-
name: "Code Rescue",
|
|
79
|
-
page: { links: { self: '/pages/code-rescue' }} ,
|
|
80
|
-
# no children - key omitted
|
|
81
|
-
}
|
|
82
|
-
},
|
|
83
|
-
|
|
84
|
-
]
|
|
85
|
-
}
|
|
86
|
-
},
|
|
87
|
-
|
|
88
|
-
# a top-level menu item with an external link
|
|
89
|
-
{
|
|
90
|
-
links : {
|
|
91
|
-
self: 'admin/menu-item/:id'
|
|
92
|
-
}
|
|
93
|
-
data: {
|
|
94
|
-
type: 'raw_url',
|
|
95
|
-
name: "About Web Security",
|
|
96
|
-
path: 'https://www.owasp.org/index.php/Main_Page',
|
|
97
|
-
# no children - key omitted
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
]
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
# GET /admin/menu-items/:id
|
|
108
|
-
# For an item that liks to an external URL
|
|
109
|
-
{
|
|
110
|
-
links : {
|
|
111
|
-
self: 'admin/menu-items/:id'
|
|
112
|
-
}
|
|
113
|
-
data: {
|
|
114
|
-
type: 'raw_url',
|
|
115
|
-
name: 'Services',
|
|
116
|
-
path: 'https://www.owasp.org/index.php/Main_Page',
|
|
117
|
-
parent_id: <integer>
|
|
118
|
-
}
|
|
119
|
-
}
|
|
120
|
-
# GET /admin/menu-items/:id
|
|
121
|
-
# For an item that liks to a page
|
|
122
|
-
{
|
|
123
|
-
links : {
|
|
124
|
-
self: 'admin/menu-items/:id'
|
|
125
|
-
}
|
|
126
|
-
data: {
|
|
127
|
-
type: 'page',
|
|
128
|
-
name: 'Services',
|
|
129
|
-
page: { links: { self: '/pages/:url_slug' }},
|
|
130
|
-
page_id: <integer>,
|
|
131
|
-
parent_id: <integer>
|
|
132
|
-
}
|
|
133
|
-
}
|
|
134
|
-
|
|
135
|
-
#
|
|
136
|
-
# POST /admin/menu-items
|
|
137
|
-
#
|
|
138
|
-
|
|
139
|
-
{
|
|
140
|
-
# links omitted
|
|
141
|
-
|
|
142
|
-
data : {
|
|
143
|
-
name: "Services", # REQUIRED
|
|
144
|
-
path: '/services', # optional if links to page
|
|
145
|
-
page_url_slug: '/page_url_slug' # optional if links to external website
|
|
146
|
-
type: [ 'page' | 'raw_url' ] # REQUIRED
|
|
147
|
-
parent_id: <integer> # optional
|
|
148
|
-
}
|
|
149
|
-
}
|
|
150
|
-
|
|
151
|
-
#
|
|
152
|
-
# PUT /admin/menu-items/:id
|
|
153
|
-
#
|
|
154
|
-
|
|
155
|
-
{
|
|
156
|
-
# links omitted
|
|
157
|
-
|
|
158
|
-
data : {
|
|
159
|
-
name: "Services", # optional
|
|
160
|
-
path: '/services', # optional
|
|
161
|
-
page_url_slug: '/page_url_slug' # optional
|
|
162
|
-
type: [ 'page' | 'raw_url' ] # optional
|
|
163
|
-
parent_id: <integer> # optional
|
|
164
|
-
}
|
|
165
|
-
}
|
|
166
|
-
|
|
167
|
-
|