drupal_fu 0.0.1
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.
- data/.gitignore +4 -0
- data/Gemfile +4 -0
- data/README +24 -0
- data/Rakefile +2 -0
- data/drupal_fu.gemspec +21 -0
- data/lib/drupal_fu.rb +4 -0
- data/lib/drupal_fu/client.rb +19 -0
- data/lib/drupal_fu/drupal_object.rb +14 -0
- data/lib/drupal_fu/version.rb +3 -0
- data/lib/generators/drupal_fu/config_generator.rb +13 -0
- data/lib/generators/drupal_fu/templates/initializer.rb +2 -0
- metadata +67 -0
data/.gitignore
ADDED
data/Gemfile
ADDED
data/README
ADDED
@@ -0,0 +1,24 @@
|
|
1
|
+
== drupal_fu
|
2
|
+
|
3
|
+
Simple Ruby gem for reading content nodes from a Drupal CMS with the Services and REST Server modules enabled
|
4
|
+
|
5
|
+
== Installation
|
6
|
+
|
7
|
+
Rails app:
|
8
|
+
|
9
|
+
gem 'drupal_fu'
|
10
|
+
|
11
|
+
Configuration:
|
12
|
+
|
13
|
+
rails g drupal_fu:config
|
14
|
+
|
15
|
+
This adds a drupal_fu.rb initializer:
|
16
|
+
|
17
|
+
DRUPAL_BASE_URI = "http://yoursite/rest"
|
18
|
+
DrupalFu::Client.options[:base_uri] = DRUPAL_BASE_URI
|
19
|
+
|
20
|
+
== Usage
|
21
|
+
|
22
|
+
Retrieving a node:
|
23
|
+
|
24
|
+
@node = DrupalFu::Client.new.node(params[:id].to_i)
|
data/Rakefile
ADDED
data/drupal_fu.gemspec
ADDED
@@ -0,0 +1,21 @@
|
|
1
|
+
# -*- encoding: utf-8 -*-
|
2
|
+
$:.push File.expand_path("../lib", __FILE__)
|
3
|
+
require "drupal_fu/version"
|
4
|
+
|
5
|
+
Gem::Specification.new do |s|
|
6
|
+
s.name = "drupal_fu"
|
7
|
+
s.version = DrupalFu::VERSION
|
8
|
+
s.platform = Gem::Platform::RUBY
|
9
|
+
s.authors = ["Armand du Plessis"]
|
10
|
+
s.email = ["adp@bank.io"]
|
11
|
+
s.homepage = ""
|
12
|
+
s.summary = %q{Simple gem interface for pulling content from Drupal CMS}
|
13
|
+
s.description = %q{Simple gem interface for pulling content from Drupal CMS}
|
14
|
+
|
15
|
+
s.rubyforge_project = "drupal_fu"
|
16
|
+
|
17
|
+
s.files = `git ls-files`.split("\n")
|
18
|
+
s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
|
19
|
+
s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
|
20
|
+
s.require_paths = ["lib"]
|
21
|
+
end
|
data/lib/drupal_fu.rb
ADDED
@@ -0,0 +1,19 @@
|
|
1
|
+
require 'rest_client'
|
2
|
+
require 'json'
|
3
|
+
|
4
|
+
module DrupalFu
|
5
|
+
class Client
|
6
|
+
|
7
|
+
class << self
|
8
|
+
def options
|
9
|
+
@options ||= {
|
10
|
+
:base_uri => DRUPAL_BASE_URI # Class reloading in Rails Development Environment
|
11
|
+
}
|
12
|
+
end
|
13
|
+
end
|
14
|
+
|
15
|
+
def method_missing(resource, args, &block)
|
16
|
+
DrupalObject.new(JSON.parse(RestClient.get("#{self.class.options[:base_uri]}/#{resource}/#{args}", {:accept => :json})))
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
require 'rails/generators'
|
2
|
+
require 'rails/generators/migration'
|
3
|
+
|
4
|
+
module DrupalFu
|
5
|
+
class ConfigGenerator < Rails::Generators::Base
|
6
|
+
|
7
|
+
source_root File.expand_path("../templates", __FILE__)
|
8
|
+
|
9
|
+
def copy_initializer_file
|
10
|
+
copy_file 'initializer.rb', 'config/initializers/drupal_fu.rb'
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
metadata
ADDED
@@ -0,0 +1,67 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: drupal_fu
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
prerelease:
|
5
|
+
version: 0.0.1
|
6
|
+
platform: ruby
|
7
|
+
authors:
|
8
|
+
- Armand du Plessis
|
9
|
+
autorequire:
|
10
|
+
bindir: bin
|
11
|
+
cert_chain: []
|
12
|
+
|
13
|
+
date: 2011-05-15 00:00:00 +02:00
|
14
|
+
default_executable:
|
15
|
+
dependencies: []
|
16
|
+
|
17
|
+
description: Simple gem interface for pulling content from Drupal CMS
|
18
|
+
email:
|
19
|
+
- adp@bank.io
|
20
|
+
executables: []
|
21
|
+
|
22
|
+
extensions: []
|
23
|
+
|
24
|
+
extra_rdoc_files: []
|
25
|
+
|
26
|
+
files:
|
27
|
+
- .gitignore
|
28
|
+
- Gemfile
|
29
|
+
- README
|
30
|
+
- Rakefile
|
31
|
+
- drupal_fu.gemspec
|
32
|
+
- lib/drupal_fu.rb
|
33
|
+
- lib/drupal_fu/client.rb
|
34
|
+
- lib/drupal_fu/drupal_object.rb
|
35
|
+
- lib/drupal_fu/version.rb
|
36
|
+
- lib/generators/drupal_fu/config_generator.rb
|
37
|
+
- lib/generators/drupal_fu/templates/initializer.rb
|
38
|
+
has_rdoc: true
|
39
|
+
homepage: ""
|
40
|
+
licenses: []
|
41
|
+
|
42
|
+
post_install_message:
|
43
|
+
rdoc_options: []
|
44
|
+
|
45
|
+
require_paths:
|
46
|
+
- lib
|
47
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
48
|
+
none: false
|
49
|
+
requirements:
|
50
|
+
- - ">="
|
51
|
+
- !ruby/object:Gem::Version
|
52
|
+
version: "0"
|
53
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
54
|
+
none: false
|
55
|
+
requirements:
|
56
|
+
- - ">="
|
57
|
+
- !ruby/object:Gem::Version
|
58
|
+
version: "0"
|
59
|
+
requirements: []
|
60
|
+
|
61
|
+
rubyforge_project: drupal_fu
|
62
|
+
rubygems_version: 1.6.2
|
63
|
+
signing_key:
|
64
|
+
specification_version: 3
|
65
|
+
summary: Simple gem interface for pulling content from Drupal CMS
|
66
|
+
test_files: []
|
67
|
+
|