/*
* pettanR system.js
- * version 0.4.6
+ * version 0.4.7
*
* author:
* itozyun
if( _type === pettanr.driver.FILE_TYPE.PICTURE){
return { image: [ pettanr.CONST.RESOURCE_PICTURE_PATH, 'thumbnail/', _data.id, '.', _data.ext ].join( '')};
}
- if( _data === FILE_DATA_COMIC_ROOT){
+ if( _data === FILE_DATA_COMICS_ROOT){
return { className: 'file-type-cabinet'};
}
if( _type === pettanr.driver.FILE_TYPE.COMIC){
type: pettanr.file.FILE_TYPE.FOLDER,
children: []
},
- FILE_DATA_COMIC_ROOT = {
+ FILE_DATA_COMICS_ROOT = {
name: 'Comics',
type: pettanr.file.FILE_TYPE.FOLDER,
children: [],
driver: Driver,
+ json: pettanr.CONST.URL_COMICS_JSON
+ },
+ FILE_DATA_PANELS_ROOT = {
+ name: 'Panels',
+ type: pettanr.file.FILE_TYPE.FOLDER,
+ children: [],
+ driver: Driver,
json: pettanr.CONST.URL_PANELS_JSON
},
FILE_DATA_PICTURE_ROOT = {
BALLOON_TEMPLETE_ARRAY = [],
ORIGINAL_LICENSE_ARRAY = [],
BASIC_LICENSES = 'cc_by,cc_nc,cc_nd,cc_sa,keep_aspect_ratio,no_convert,no_flip,no_resize'.split( ',');
- FILE_DATA_SERVICE_ROOT.children.push( FILE_DATA_COMIC_ROOT, FILE_DATA_PICTURE_ROOT, FILE_DATA_LICENSE_ROOT, FILE_DATA_BALLOON_ROOT);
- FILE_DATA_COMIC_ROOT.children.push( FILE_DATA_MY_COMICS_ROOT, FILE_DATA_AUTHOR_ROOT);
+ FILE_DATA_SERVICE_ROOT.children.push( FILE_DATA_COMICS_ROOT, FILE_DATA_PICTURE_ROOT, FILE_DATA_PANELS_ROOT, FILE_DATA_LICENSE_ROOT, FILE_DATA_BALLOON_ROOT);
+ FILE_DATA_COMICS_ROOT.children.push( FILE_DATA_MY_COMICS_ROOT, FILE_DATA_AUTHOR_ROOT);
FILE_DATA_PICTURE_ROOT.children.push( FILE_DATA_MY_PICTURES_ROOT, FILE_DATA_ARTIST_ROOT);
FileAPI.createFolderUnderRoot( FILE_DATA_SERVICE_ROOT);
var _type, _array,
_id = _data.id,
i, l;
- if( _parent === FILE_DATA_COMIC_ROOT){
+ if( _parent === FILE_DATA_COMICS_ROOT){
+ _data.type = pettanr.driver.FILE_TYPE.COMIC;
+ _array = COMIC_ARRAY;
+ } else
+ if( _parent === FILE_DATA_PANELS_ROOT){
_data.type = pettanr.driver.FILE_TYPE.PANEL;
_array = PANEL_ARRAY;
} else
// _array に _data を格納 または 上書き
if( typeof _id === 'number'){
- var __data = _array[ _id];
+ --_id;
+ var __data = _array[ _id ];
if( __data){
for( var key in _data){
__data[ key ] = _data[ key ];
}
_data = __data; // このタイミングで参照が切れるので注意!!
} else {
- _array[ _id] = _data;
+ _array[ _id ] = _data;
}
}
-
- if( _parent === FILE_DATA_COMIC_ROOT){
+ if( _parent === FILE_DATA_COMICS_ROOT){
+ if( _data.author ){
+ var _author = getFolderData( _data, 'author', FILE_DATA_AUTHOR_ROOT);
+ pettanr.util.getIndex( _author.children, _data) === -1 && _author.children.push( _data);
+ _author.id === MyAuthorID && pettanr.util.getIndex( FILE_DATA_MY_COMICS_ROOT.children, _data) === -1 && FILE_DATA_MY_COMICS_ROOT.children.push( _data );
+ }
+ } else
+ if( _parent === FILE_DATA_PANELS_ROOT){
if( _data.comic && _data.author){
- var _comic = getFolderData( _data, 'comic', FILE_DATA_COMIC_ROOT),
- _comicList = getFolderData( _data, 'author', FILE_DATA_AUTHOR_ROOT);
+ var _comic = getFolderData( _data, 'comic', FILE_DATA_COMICS_ROOT),
+ _author = getFolderData( _data, 'author', FILE_DATA_AUTHOR_ROOT);
_comic.children.push( _data);
- pettanr.util.getIndex( _comicList.children, _comic) === -1 && _comicList.children.push( _comic);
- _comicList.id === MyAuthorID && pettanr.util.getIndex( FILE_DATA_MY_COMICS_ROOT.children, _comic) === -1 && FILE_DATA_MY_COMICS_ROOT.children.push( _comic);
+ pettanr.util.getIndex( _author.children, _comic) === -1 && _author.children.push( _comic);
+ _author.id === MyAuthorID && pettanr.util.getIndex( FILE_DATA_MY_COMICS_ROOT.children, _comic) === -1 && FILE_DATA_MY_COMICS_ROOT.children.push( _comic);
}
// picture data をファイルに取り出し
var _elements = _data.panel_elements || [],
function getFolderData( _data, _key, _parentData){
if( typeof _data[ _key ] !== 'object') return {children:[]};
var _ret,
- _id = _data[ _key ].id,
+ _id = _data[ _key ].id - 1,
_array;
if( typeof _id !== 'number') return {children:[]};
_array = _parentData === FILE_DATA_ARTIST_ROOT ? ARTIST_ARRAY :
_parentData === FILE_DATA_AUTHOR_ROOT ? AUTHOR_ARRAY :
- _parentData === FILE_DATA_COMIC_ROOT ? COMIC_ARRAY : []
+ _parentData === FILE_DATA_COMICS_ROOT ? COMIC_ARRAY :
+ _parentData === FILE_DATA_PANELS_ROOT ? PANEL_ARRAY : []
if( typeof _array[ _id] === 'object'){
var __data = _array[ _id];
if( _parentData === FILE_DATA_ARTIST_ROOT){
_ret.type = pettanr.driver.FILE_TYPE.ARTIST;
} else
- if( _parentData === FILE_DATA_COMIC_ROOT){
+ if( _parentData === FILE_DATA_PANELS_ROOT){
+ _ret.type = pettanr.driver.FILE_TYPE.COMIC;
+ return _ret;
+ } else
+ if( _parentData === FILE_DATA_COMICS_ROOT){
_ret.type = pettanr.driver.FILE_TYPE.COMIC;
return _ret;
} else {
return {
createComicTree: function(){
- return pettanr.file.createTree( FILE_DATA_SERVICE_ROOT); //FILE_DATA_COMIC_ROOT);
+ return pettanr.file.createTree( FILE_DATA_SERVICE_ROOT); //FILE_DATA_COMICS_ROOT);
},
createPictureTree: function(){
return pettanr.file.createTree( FILE_DATA_PICTURE_ROOT);