config/profile.json
config/test_layout
lib/test/temp/
-db/migrate/*_creative_commons_v??_licenses_attributes.rb
-db/migrate/*_pettan_commons_v??_licenses_attributes.rb
-db/migrate/*_pettan_protected_v??_licenses_attributes.rb
-db/migrate/*_pettan_public_v??_licenses_attributes.rb
-db/migrate/*_public_domain_v??_licenses_attributes.rb
-db/migrate/*_unknown_v??_licenses_attributes.rb
+db/migrate/*_creative_commons_v??_licenses*.rb
+db/migrate/*_pettan_commons_v??_licenses*.rb
+db/migrate/*_pettan_protected_v??_licenses*.rb
+db/migrate/*_pettan_public_v??_licenses*.rb
+db/migrate/*_public_domain_v??_licenses*.rb
+db/migrate/*_unknown_v??_licenses*.rb
db/migrate/*_speech_balloon_speech_balloons.rb
db/migrate/*_speech_balloon_balloons.rb
db/migrate/*_speech_balloon_speeches.rb
picture: {\r
args: {\r
boost: {\r
+ # expand license_group_settings\r
license_group: {\r
+ resource_name: 'license',\r
+ extend_column_name: 'license_group_classname',\r
+ settings_column_name: 'license_group_settings',\r
+ extend_model_class_name: 'License',\r
+ extend_item_name: 'license',\r
},\r
+ # expand license_settings\r
license: {\r
+ level: 'read',\r
+ extend_column_name: 'license_group_classname',\r
+ extend_model_class_name: 'Attribute',\r
extend_item_name: 'attribute',\r
},\r
credit_picture: {\r
level: 'read',\r
+ resource_name: 'license',\r
+ extend_column_name: 'license_group_classname',\r
+ settings_column_name: 'credit_picture_settings',\r
extend_model_class_name: 'CreditPicture',\r
extend_item_name: 'credit_picture',\r
- extend_column_name: 'license_group_classname',\r
},\r
},\r
},\r
resource_picture: {\r
args: {\r
boost: {\r
+ # expand license_group_settings\r
license_group: {\r
+ resource_name: 'license',\r
+ extend_column_name: 'license_group_classname',\r
+ settings_column_name: 'license_group_settings',\r
+ extend_model_class_name: 'License',\r
+ extend_item_name: 'license',\r
},\r
+ # expand license_settings\r
license: {\r
+ level: 'read',\r
+ extend_column_name: 'license_group_classname',\r
+ extend_model_class_name: 'Attribute',\r
extend_item_name: 'attribute',\r
},\r
credit_picture: {\r
level: 'read',\r
+ resource_name: 'license',\r
+ extend_column_name: 'license_group_classname',\r
+ settings_column_name: 'credit_picture_settings',\r
extend_model_class_name: 'CreditPicture',\r
extend_item_name: 'credit_picture',\r
- extend_column_name: 'license_group_classname',\r
},\r
},\r
},\r
number: true,\r
}\r
},\r
+ license_group_id: {\r
+ type: 'number',\r
+ rules : {\r
+ required: true,\r
+ number: true,\r
+ }\r
+ },\r
license_id: {\r
type: 'number',\r
rules : {\r
rules : {\r
}\r
},\r
- license_classname: {\r
+ license_group_classname: {\r
type: 'text',\r
rules : {\r
required: true,\r
number: true,\r
}\r
},\r
+ license_group_id: {\r
+ type: 'number',\r
+ rules : {\r
+ required: true,\r
+ number: true,\r
+ }\r
+ },\r
license_id: {\r
type: 'number',\r
rules : {\r
number: true,\r
}\r
},\r
- license_classname: {\r
+ license_group_classname: {\r
type: 'text',\r
rules : {\r
required: true,\r
@original_picture = OriginalPicture.show params[:original_picture_id], @operators
@original_picture_license_group = OriginalPictureLicenseGroup.new params[:original_picture_license_group]
@license_group = LicenseGroup.show @original_picture_license_group.license_group_id, @operators
- @ctl = @license_group.engine_name
+ @ctl = @license_group.my_engine_name
respond_to do |format|
if @original_picture_license_group.valid?
end
@resource_picture.attributes = params[:resource_picture]
@resource_picture.overwrite @original_picture
+ @resource_picture.boosts 'post'
@license = @resource_picture.license
respond_to do |format|
javascript_include_tag wf.engine_name + "/application"
}.join("\n") +
SpeechBalloonTemplate.enable_list().map {|sbt|
- stylesheet_link_tag sbt.engine_name + "/application"
+ stylesheet_link_tag sbt.my_engine_name + "/application"
}.join("\n") +
SpeechBalloonTemplate.enable_list().map {|sbt|
- javascript_include_tag sbt.engine_name + "/application"
+ javascript_include_tag sbt.my_engine_name + "/application"
}.join("\n")
end
{:include => {:licenses => {}}}
end
- def my_engine_resource
- Manifest.manifest.system_resources.engine_resources['system_resources']
- end
-
- def engine_name
- self.my_engine_resource.resource_items[self.classname]
- end
-
- def enable?
- self.my_engine_resource.resource_items.include? self.classname
- end
-
- def engine_module_name
- self.engine_name.camelize
- end
-
- def engine
- Object.const_get self.engine_module_name
- end
def self.store name, attr
#ライセンスデータがあるとライセンスグループのデータ生成で邪魔するので移しておく
lattr = attr["licenses_attributes"]
validates :license_id, :presence => true, :numericality => true, :existence => {:both => false}
validates :artist_id, :presence => true, :numericality => true, :existence => {:both => false}
validates :artist_name, :presence => true
- validates :classname, :presence => true, :length => {:maximum => 50}
+ validates :license_group_classname, :presence => true, :length => {:maximum => 50}
def supply_default
end
def overwrite rp
attr = {:width => rp.width, :height => rp.height, :ext => rp.ext, :filesize => rp.filesize,
:original_picture_id => rp.original_picture_id, :license_id => rp.license_id, :artist_id => rp.artist_id,
- :md5 => rp.md5, :artist_name => rp.artist_name, :classname => rp.classname, :credit => rp.credit, :settings => rp.settings
+ :md5 => rp.md5, :artist_name => rp.artist_name,
+ :license_group_classname => rp.license_group_classname,
+ :license_group_settings => rp.license_group_settings,
+ :credit_picture_settings => rp.credit_picture_settings,
+ :license_settings => rp.license_settings
}
self.attributes = attr
self.revision = self.new_revision #Do not move to attr. new_revision reffernces self.original_picture_id
end
def to_gif?
- self.ext == 'png' and self.flag_gif_convert >= 0
+ self.ext == 'png' and self.license_extend.gif_convert >= 0
end
def subdirs
- flag_reverse < 0 ? [''] : ['', 'v', 'h', 'vh']
+ self.license_extend.reverse < 0 ? [''] : ['', 'v', 'h', 'vh']
end
def self.find_by_md5 md5
end
def credit_template
- "#{self.classname.tableize}/attributes/credit"
+ "#{self.license_group_classname.tableize}/attributes/credit"
end
def full_credit_template
- "#{self.classname.tableize}/attributes/full_credit"
- end
-
- def credit_data
- begin
- @credit_data = JSON.parse(self.credit) unless @credit_data
- rescue
- end
- @credit_data
- end
-
- def flags
- return @flags if @flags
- begin
- @flags = JSON.parse(self.settings)
- rescue
- end
- @flags = {} unless @flags
- @flags
- end
-
- def flags=(s)
- @flags = s
- end
-
- def flag_open
- @flag_open = (flags["open"] || -1) unless @flag_open
- @flag_open
- end
-
- def flag_commercial
- @flag_commercial = (flags["commercial"] || -1) unless @flag_commercial
- @flag_commercial
- end
-
- def flag_official
- @flag_official = (flags["official"] || -1) unless @flag_official
- @flag_official
- end
-
- def flag_attribution
- @flag_attribution = (flags["attribution"] || -1) unless @flag_attribution
- @flag_attribution
- end
-
- def flag_derive
- @flag_derive = (flags["derive"] || -1) unless @flag_derive
- @flag_derive
- end
-
- def flag_thumbnail
- @flag_thumbnail = (flags["thumbnail"] || -1) unless @flag_thumbnail
- @flag_thumbnail
- end
-
- def flag_gif_convert
- @flag_gif_convert = (flags["gif_convert"] || -1) unless @flag_gif_convert
- @flag_gif_convert
- end
-
- def flag_reverse
- @flag_reverse = (flags["reverse"] || -1) unless @flag_reverse
- @flag_reverse
- end
-
- def flag_resize
- @flag_resize = (flags["resize"] || -1) unless @flag_resize
- @flag_resize
- end
-
- def flag_sync_vh
- @flag_sync_vh = (flags["sync_vh"] || -1) unless @flag_sync_vh
- @flag_sync_vh
- end
-
- def flag_overlap
- @flag_overlap = (flags["overlap"] || -1) unless @flag_overlap
- @flag_overlap
+ "#{self.license_group_classname.tableize}/attributes/full_credit"
end
end
validates :license_id, :presence => true, :numericality => true, :existence => {:both => false}
validates :original_picture_id, :presence => true, :numericality => true, :existence => {:both => false}
validates :artist_name, :presence => true
- validates :classname, :presence => true, :length => {:maximum => 50}
+ validates :license_group_classname, :presence => true, :length => {:maximum => 50}
validates :picture_id, :presence => true, :numericality => true, :existence => {:both => false}
def supply_default
end
def to_gif?
- self.ext == 'png' and self.flag_gif_convert >= 0
+ self.ext == 'png' and self.license_extend.gif_convert >= 0
end
def thumbnail(imager)
def store_picture(imager, fn)
res = false
- thumbnail_imager = self.flag_thumbnail >= 0 ? imager.to_thumbnail : imager
+ thumbnail_imager = self.license_extend.thumbnail >= 0 ? imager.to_thumbnail : imager
return false unless thumbnail_imager
begin
PictureIO.resource_picture_io.put(thumbnail_imager.binary, fn)
end
def credit_template
- "#{self.classname.tableize}/attributes/credit"
+ "#{self.license_group_classname.tableize}/attributes/credit"
end
def full_credit_template
- "#{self.classname.tableize}/attributes/full_credit"
- end
-
- def credit_data
- begin
- @credit_data = JSON.parse(self.credit) unless @credit_data
- rescue
- end
- @credit_data
- end
-
- def flags
- begin
- @flags = JSON.parse(self.settings) unless @flags
- rescue
- end
- @flags
- end
-
- def flags=(s)
- @flags = s
- end
-
- def flag_open
- @flag_open = flags["open"] unless @flag_open
- @flag_open
- end
-
- def flag_commercial
- @flag_commercial = flags["commercial"] unless @flag_commercial
- @flag_commercial
- end
-
- def flag_official
- @flag_official = flags["official"] unless @flag_official
- @flag_official
- end
-
- def flag_attribution
- @flag_attribution = flags["attribution"] unless @flag_attribution
- @flag_attribution
- end
-
- def flag_derive
- @flag_derive = flags["derive"] unless @flag_derive
- @flag_derive
- end
-
- def flag_thumbnail
- @flag_thumbnail = flags["thumbnail"] unless @flag_thumbnail
- @flag_thumbnail
- end
-
- def flag_gif_convert
- @flag_gif_convert = flags["gif_convert"] unless @flag_gif_convert
- @flag_gif_convert
- end
-
- def flag_reverse
- @flag_reverse = flags["reverse"] unless @flag_reverse
- @flag_reverse
- end
-
- def flag_resize
- @flag_resize = flags["resize"] unless @flag_resize
- @flag_resize
- end
-
- def flag_sync_vh
- @flag_sync_vh = flags["sync_vh"] unless @flag_sync_vh
- @flag_sync_vh
- end
-
- def flag_overlap
- @flag_overlap = flags["overlap"] unless @flag_overlap
- @flag_overlap
+ "#{self.license_group_classname.tableize}/attributes/full_credit"
end
end
<%= f.hidden_field :original_picture_id %>
<%= f.hidden_field :license_id %>
<%= f.hidden_field :artist_name %>
- <%= f.hidden_field :classname %>
- <%= f.hidden_field :credit %>
- <%= f.hidden_field :settings %>
+ <%= f.hidden_field :license_group_classname %>
+ <%= f.hidden_field :license_group_settings %>
+ <%= f.hidden_field :credit_picture_settings %>
+ <%= f.hidden_field :license_settings %>
- <%= render :partial => @resource_picture.classname.tableize + '/attributes/confirm' %>
+ <%= render :partial => @resource_picture.license_group_classname.tableize + '/attributes/confirm' %>
<div class="actions">
<%= f.submit t 'resource_pictures.new.publish' %>
--- /dev/null
+class FixExtSysPict < ActiveRecord::Migration
+ def up
+ rename_column :resource_pictures, :classname, :license_group_classname
+ rename_column :resource_pictures, :credit, :license_settings
+ rename_column :resource_pictures, :settings, :license_group_settings
+ # add_column :resource_pictures, :license_group_id, :integer, :null => false, :default => 0
+ add_column :resource_pictures, :credit_picture_settings, :string
+
+ rename_column :pictures, :classname, :license_group_classname
+ rename_column :pictures, :credit, :license_settings
+ rename_column :pictures, :settings, :license_group_settings
+ # add_column :pictures, :license_group_id, :integer, :null => false, :default => 0
+ add_column :pictures, :credit_picture_settings, :string
+ end
+
+ def down
+ end
+end
--- /dev/null
+class FixExtSysPictData < ActiveRecord::Migration
+ def up
+ ResourcePicture.find(:all).each do |resource_picture|
+ license = resource_picture.license
+ resource_picture.credit_picture_settings = license.credit_picture_settings
+ resource_picture.save!
+ end
+ Picture.find(:all).each do |picture|
+ license = picture.license
+ picture.credit_picture_settings = license.credit_picture_settings
+ picture.save!
+ end
+ end
+
+ def down
+ end
+end
def boosts level
self.class.my_peta.boost.each do |boost_name, boost_manifest|
- # next unless boost_manifest.level == level
+ next if level == 'read' and boost_manifest.level == 'post'
self.boost boost_manifest
end
end
# ClassMethods
def self.enable_list
- self.find(:all).delete_if {|sbt|
- sbt.enable? == false
+ self.find(:all).delete_if {|system_resource|
+ p system_resource
+ p system_resource.enable?
+ system_resource.enable? == false
}
end
end
def my_engine_resource
- Manifest.manifest.system_resources.engine_resources[self.item_name]
+ Manifest.manifest.system_resources.engine_resources[self.table_name]
end
def enable?
er.resource_items.include? self.classname
end
+ def my_engine_name
+ self.my_engine_resource.resource_items[self.classname]
+ end
+
def own? operators
operators.admin?
end
"url"\r
],\r
"extend_settings": {\r
+ "pettanr_creative_commons_v30_licenses_license": {\r
+ "columns": {},\r
+ "column_names": [\r
+ "open",\r
+ "commercial",\r
+ "official",\r
+ "attribution:",\r
+ "derive",\r
+ "thumbnail",\r
+ "gif_convert",\r
+ "reverse",\r
+ "sync_vh",\r
+ "overlap"\r
+ ]\r
+ },\r
"pettanr_pettan_commons_v01_licenses_license": {\r
"columns": {},\r
"column_names": [\r
"overlap"\r
]\r
},\r
+ "pettanr_pettan_protected_v01_licenses_license": {\r
+ "columns": {},\r
+ "column_names": [\r
+ "open",\r
+ "commercial",\r
+ "official",\r
+ "attribution:",\r
+ "derive",\r
+ "thumbnail",\r
+ "gif_convert",\r
+ "reverse",\r
+ "sync_vh",\r
+ "overlap"\r
+ ]\r
+ },\r
+ "pettanr_pettan_public_v01_licenses_license": {\r
+ "columns": {},\r
+ "column_names": [\r
+ "open",\r
+ "commercial",\r
+ "official",\r
+ "attribution:",\r
+ "derive",\r
+ "thumbnail",\r
+ "gif_convert",\r
+ "reverse",\r
+ "sync_vh",\r
+ "overlap"\r
+ ]\r
+ },\r
+ "pettanr_public_domain_v01_licenses_license": {\r
+ "columns": {},\r
+ "column_names": [\r
+ "open",\r
+ "commercial",\r
+ "official",\r
+ "attribution:",\r
+ "derive",\r
+ "thumbnail",\r
+ "gif_convert",\r
+ "reverse",\r
+ "sync_vh",\r
+ "overlap"\r
+ ]\r
+ },\r
+ "pettanr_unknown_v01_licenses_license": {\r
+ "columns": {},\r
+ "column_names": [\r
+ "open",\r
+ "commercial",\r
+ "official",\r
+ "attribution:",\r
+ "derive",\r
+ "thumbnail",\r
+ "gif_convert",\r
+ "reverse",\r
+ "sync_vh",\r
+ "overlap"\r
+ ]\r
+ },\r
+ "pettanr_creative_commons_v30_licenses_credit_picture": {\r
+ "columns": {},\r
+ "column_names": [\r
+ "source_url_btn_id",\r
+ "source_url_off_btn_id"\r
+ ]\r
+ },\r
"pettanr_pettan_commons_v01_licenses_credit_picture": {\r
"columns": {},\r
"column_names": [\r
"source_url_btn_id",\r
"source_url_off_btn_id"\r
]\r
+ },\r
+ "pettanr_pettan_protected_v01_licenses_credit_picture": {\r
+ "columns": {},\r
+ "column_names": [\r
+ "source_url_btn_id",\r
+ "source_url_off_btn_id"\r
+ ]\r
+ },\r
+ "pettanr_pettan_public_v01_licenses_credit_picture": {\r
+ "columns": {},\r
+ "column_names": [\r
+ "source_url_btn_id",\r
+ "source_url_off_btn_id"\r
+ ]\r
+ },\r
+ "pettanr_public_domain_v01_licenses_credit_picture": {\r
+ "columns": {},\r
+ "column_names": [\r
+ "source_url_btn_id",\r
+ "source_url_off_btn_id"\r
+ ]\r
+ },\r
+ "pettanr_unknown_v01_licenses_credit_picture": {\r
+ "columns": {},\r
+ "column_names": [\r
+ "source_url_btn_id",\r
+ "source_url_off_btn_id"\r
+ ]\r
}\r
},\r
"associations": {\r
"resource_picture": {\r
"args": {\r
"boost": {\r
- "license_group": {},\r
+ "license_group": {\r
+ "resource_name": "license",\r
+ "extend_column_name": "license_group_classname",\r
+ "settings_column_name": "license_group_settings",\r
+ "extend_model_class_name": "License",\r
+ "extend_item_name": "license"\r
+ },\r
"license": {\r
+ "level": "read",\r
+ "extend_column_name": "license_group_classname",\r
+ "extend_model_class_name": "Attribute",\r
"extend_item_name": "attribute"\r
},\r
"credit_picture": {\r
"level": "read",\r
+ "resource_name": "license",\r
+ "extend_column_name": "license_group_classname",\r
+ "settings_column_name": "credit_picture_settings",\r
"extend_model_class_name": "CreditPicture",\r
- "extend_item_name": "credit_picture",\r
- "extend_column_name": "license_group_classname"\r
+ "extend_item_name": "credit_picture"\r
}\r
}\r
}\r