Skip to content

Commit 9fb187c

Browse files
committed
bootstraping
1 parent 174d112 commit 9fb187c

File tree

11 files changed

+418
-30
lines changed

11 files changed

+418
-30
lines changed

README.md

Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,64 @@
11
wp-api-angularjs
22
================
33

4+
wp-api-angularjs is under development and will only cover GET methods of the [WP-API](https://github.com/WP-API/WP-API) master branch.
5+
6+
## Services
7+
8+
### WpApiProvider
9+
10+
wp-api-angularjs is based on Restangular therefore you can use any of the [Restangular Provider methods](https://github.com/mgonto/restangular/tree/1.4.0#configuring-in-the-config)
11+
12+
```
13+
.config(function(WpApiProvider) {
14+
var RestangularProvider = WpApiProvider.getRestangularProvider();
15+
RestangularProvider.setBaseUrl('/api/v1');
16+
});
17+
```
18+
19+
### Posts ```$wpApiPosts```
20+
21+
```
22+
$wpApiPosts.$getList();
23+
$wpApiPosts.$get(id);
24+
25+
# DOES NOT WORK FOR NOW
26+
$wpApiPosts.$create();
27+
```
28+
29+
### Media ```$wpApiMedia```
30+
31+
```
32+
$wpApiMedia.$getList();
33+
$wpApiMedia.$get(id);
34+
35+
# DOES NOT WORK FOR NOW
36+
$wpApiMedia.$create();
37+
```
38+
39+
### Users ```$wpApiUsers```
40+
41+
Requires [authentication](http://wp-api.org/guides/authentication.html)
42+
43+
```
44+
$wpApiUsers.$getList();
45+
$wpApiUsers.$get(id);
46+
$wpApiUsers.$getMe();
47+
48+
# DOES NOT WORK FOR NOW
49+
$wpApiMedia.$create();
50+
```
51+
52+
### Taxonomies ```$wpApiTaxonomies```
53+
54+
```
55+
$wpApiTaxonomies.$getList();
56+
$wpApiTaxonomies.$get(taxonomy);
57+
$wpApiTaxonomies.$getTermList(taxonomy);
58+
$wpApiTaxonomies.$getTerm(taxonomy, id);
59+
```
60+
61+
## Contribute
462

563
```
664
sudo npm install webpack webpack-dev-server -g

lib/Provider.js

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
module.exports = angular.module('wp-api-angularjs.provider', [
2+
'restangular'
3+
]).provider('WpApi', function WpApiProvider(RestangularProvider) {
4+
var restangularProvider = RestangularProvider;
5+
6+
this.getRestangularProvider = function() {
7+
return restangularProvider;
8+
};
9+
10+
this.$get = function() {
11+
return restangularProvider;
12+
};
13+
});

lib/Rest/Media.js

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
module.exports = angular
2+
.module('wp-api-angularjs.services.media', ['restangular'])
3+
.factory('$wpApiMedia', function(Restangular) {
4+
var media = Restangular.service('media');
5+
6+
media.$getList = getList;
7+
media.$get = get;
8+
media.$create = create;
9+
10+
return media;
11+
12+
function getList() {
13+
return media.getList();
14+
}
15+
16+
function get(id) {
17+
return media.one(id).get();
18+
}
19+
20+
function create(object) {
21+
return media.post(object);
22+
}
23+
});

lib/Rest/Posts.js

Lines changed: 22 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,24 @@
11
module.exports = angular
2-
.module('wp-api-angularjs.services.posts', [])
3-
.factory('$wpApiPosts', function($log, Restangular) {
4-
return Restangular.service('posts');
2+
.module('wp-api-angularjs.services.posts', ['restangular'])
3+
.factory('$wpApiPosts', function(Restangular) {
4+
var posts = Restangular.service('posts');
5+
6+
posts.$getList = getList;
7+
posts.$get = get;
8+
posts.$create = create;
9+
10+
return posts;
11+
12+
function getList() {
13+
return posts.getList();
14+
}
15+
16+
function get(id, query) {
17+
var query = query || {};
18+
return posts.one(id).get(query);
19+
}
20+
21+
function create(object) {
22+
return posts.post(object);
23+
}
524
});

lib/Rest/Services.js

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
11
module.exports = angular.module('wp-api-angularjs.services', [
2-
require('./Posts').name
2+
require('./Posts').name,
3+
require('./Media').name,
4+
require('./Users').name,
5+
require('./Taxonimies').name
36
]);

lib/Rest/Taxonimies.js

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
module.exports = angular
2+
.module('wp-api-angularjs.services.taxonomies', ['restangular'])
3+
.factory('$wpApiTaxonomies', function(Restangular) {
4+
var taxonomies = Restangular.service('taxonomies');
5+
6+
taxonomies.$getList = getList;
7+
taxonomies.$get = get;
8+
taxonomies.$getTermList = getTerms;
9+
taxonomies.$getTerm = getTerm;
10+
11+
return taxonomies;
12+
13+
function getList() {
14+
return taxonomies.getList();
15+
}
16+
17+
function get(taxonomy) {
18+
return taxonomies.one(taxonomy).get();
19+
}
20+
21+
function getTerms(taxonomy) {
22+
return taxonomies.one(taxonomy).getList('terms');
23+
}
24+
25+
function getTerm(taxonomy, id) {
26+
return taxonomies.one(taxonomy).one('terms', id).get();
27+
}
28+
});

lib/Rest/Users.js

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
module.exports = angular
2+
.module('wp-api-angularjs.services.users', ['restangular'])
3+
.factory('$wpApiUsers', function(Restangular) {
4+
var users = Restangular.service('users');
5+
6+
users.$getList = getList;
7+
users.$get = get;
8+
users.$getMe = getMe;
9+
users.$create = create;
10+
11+
return users;
12+
13+
function getList() {
14+
return users.getList();
15+
}
16+
17+
function get(id) {
18+
return users.one(id).get();
19+
}
20+
21+
function getMe() {
22+
return get('me');
23+
}
24+
25+
function create(object) {
26+
return users.post(object);
27+
}
28+
});

lib/index.js

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,4 @@
11
module.exports = angular.module('wp-api-angularjs', [
2-
'restangular',
2+
require('./Provider').name,
33
require('./Rest/Services').name
4-
]).config(function(RestangularProvider) {
5-
RestangularProvider.setBaseUrl('http://shprinkone.julienrenaux.fr/wp-json');
6-
RestangularProvider.setRestangularFields({
7-
id: "ID"
8-
});
9-
});
4+
]);

0 commit comments

Comments
 (0)