/*
* pettanR system.js
- * version 0.4.7
+ * version 0.4.9
*
* author:
* itozyun
},
getChildFileLength: function(){
var children = FILE_CONTROLER.getChildren( this);
- return children !== null && typeof children.length === 'number' ? children.length : 0;
+ return Type.isArray( children ) === true ? children.length : -1;
},
getChildFileIndex: function( _FILEorFILEDATA){
var children = FILE_CONTROLER.getChildren( this);
-
- if( children === null || typeof children.length !== 'number') return -1;
+ if( Type.isArray( children.length ) === false ) return -1;
var l = children.length,
_fileData = FILE_CONTROLER.getFileData( _FILEorFILEDATA);
if( _fileData === null) return -1;
var l = ICON_ARRAY.length;
if( i < l){
var _file = tree.getCurrentFile().getChildFileByIndex( i);
- if( _file !== null && ( _file.getChildFileLength() > 0 || _file.getType() === pettanr.file.FILE_TYPE.FOLDER)){
+ if( _file !== null && ( _file.getChildFileLength() !== -1 || _file.getType() === pettanr.file.FILE_TYPE.FOLDER)){
tree.down( i);
draw();
}
getSeqentialFiles: function( _file){
var _data = FileAPI.getFileData( _file),
_json = _data !== null ? _data.json : null;
+ if( _json === true && _data.type === pettanr.driver.FILE_TYPE.COMIC ){
+ _json = [ pettanr.CONST.PETTANR_ROOT_PATH, 'comics\/', _data.id, '.json\/play\/' ].join( '' );
+ }
if( typeof _json === 'string'){
FileAPI.getJson( _file, _json, onLoadJson, onErrorJson);
_data.state = pettanr.file.FILE_STATE.LOADING;
- delete _data.json;
+ _data.json = null;
+ return;
}
},
getName: function( _file){
type: pettanr.file.FILE_TYPE.FOLDER,
children: [],
driver: Driver,
- json: pettanr.CONST.URL_ORIGINAL_PICTURES_JSON
+ json: pettanr.CONST.URL_RESOURCE_PICTURES_JSON
},
FILE_DATA_MY_COMICS_ROOT = {
name: 'My Comics',
- type: pettanr.file.FILE_TYPE.FOLDER,
- children: []
+ type: pettanr.file.FILE_TYPE.AUTHOR,
+ children: [],
+ driver: Driver
},
FILE_DATA_MY_PICTURES_ROOT = {
name: 'My Pictures',
- type: pettanr.file.FILE_TYPE.FOLDER,
- children: []
+ type: pettanr.file.FILE_TYPE.ARTIST,
+ children: [],
+ driver: Driver,
+ json: pettanr.CONST.URL_ORIGINAL_PICTURES_JSON
},
FILE_DATA_AUTHOR_ROOT = {
name: 'Authors',
FILE_DATA_PICTURE_ROOT.children.push( FILE_DATA_MY_PICTURES_ROOT, FILE_DATA_ARTIST_ROOT);
FileAPI.createFolderUnderRoot( FILE_DATA_SERVICE_ROOT);
-
+
function onLoadJson( _file, _json){
var _access = FileAPI.getFileDataAccess( _file),
_data = _access !== null ? _access.DATA : null,
var _type, _array,
_id = _data.id,
i, l;
+ if( _parent.type === pettanr.driver.FILE_TYPE.COMIC ){
+ _data.type = pettanr.driver.FILE_TYPE.PANEL;
+ _array = PANEL_ARRAY;
+ } else
if( _parent === FILE_DATA_COMICS_ROOT){
_data.type = pettanr.driver.FILE_TYPE.COMIC;
_array = COMIC_ARRAY;
_data.type = pettanr.driver.FILE_TYPE.PANEL;
_array = PANEL_ARRAY;
} else
- if( _parent === FILE_DATA_PICTURE_ROOT){
+ if( _parent === FILE_DATA_PICTURE_ROOT || _parent === FILE_DATA_MY_PICTURES_ROOT ){
_data.type = pettanr.driver.FILE_TYPE.PICTURE;
_array = RESOURCE_PICTURE_ARRAY;
_array[ _id ] = _data;
}
}
- if( _parent === FILE_DATA_COMICS_ROOT){
+ if( _parent.type === pettanr.driver.FILE_TYPE.COMIC ){
+ var _panels = _data.panels,
+ _panel;
+ if( _panels && Type.isArray( _panels ) === true){
+ if( Type.isArray( _data.children ) === false){
+ _data.children = [];
+ };
+ for( i=0, l=_panels.length; i<l; ++i){
+ _panel = buildFileData( _panels[ i ], FILE_DATA_PANELS_ROOT );
+ /*
+ * 間違い! t 順に格納
+ */
+ _data.children.push( _panel );
+ }
+ delete _data.panels;
+ }
+ } else
+ 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 );
}
+ _data.json = true;
} else
if( _parent === FILE_DATA_PANELS_ROOT){
if( _data.comic && _data.author){
}
// picture data をファイルに取り出し
var _elements = _data.panel_elements || [],
- _elm;
- for(var i=0, l=_elements.length; i<l; ++i){
+ _elm, _rpicID;
+ for( i=0, l=_elements.length; i<l; ++i){
_elm = _elements[ i];
if( _elm.resource_picture){
_elm.resource_picture = buildFileData( _elm.resource_picture, FILE_DATA_PICTURE_ROOT); // 上記参照切れに備えてここで上書き
}
- if( _elm.resource_picture_id && RESOURCE_PICTURE_ARRAY[ _elm.resource_picture_id]){
- _elm.resource_picture = RESOURCE_PICTURE_ARRAY[ _elm.resource_picture_id];
+ _rpicID = _elm.resource_picture_id - 1;
+ if( _rpicID && RESOURCE_PICTURE_ARRAY[ _rpicID ]){
+ _elm.resource_picture = RESOURCE_PICTURE_ARRAY[ _rpicID ];
}
}
} else
- if( _parent === FILE_DATA_PICTURE_ROOT){
+ if( _data.type = pettanr.driver.FILE_TYPE.PICTURE ){
if( _data.artist){
var _pictureList = getFolderData( _data, 'artist', FILE_DATA_ARTIST_ROOT);
pettanr.util.getIndex( _pictureList.children, _data) === -1 && _pictureList.children.push( _data);