/*\r
* pettanR libs.js\r
- * version 0.5.36\r
+ * version 0.5.39\r
* \r
* \r
* Type\r
var UNIT_RATIO = ( function( elm ){\r
var ret = {},\r
unit,\r
- units = 'cm,mm,in,pt,pc'.split( ',' );\r
+ units = 'cm,mm,in,pt,pc'.split( ',' ),\r
+ i = units.length;\r
\r
body.appendChild( elm );\r
\r
- for( var i=units.length; i; ){\r
+ for( ; i; ){\r
unit = units[ --i ];\r
elm.style.width = 1000 + unit;\r
ret[ unit ] = elm.offsetWidth / 1000;\r
\r
var FONT_SIZE_RATIO = ( function( elm ){\r
var ret = {},\r
- size,\r
- list = 'xx-large,x-large,large,larger,medium,small,smaller,x-small,xx-small'.split( ',' );\r
+ size, base,\r
+ list = 'xx-large,x-large,large,larger,medium,small,smaller,x-small,xx-small'.split( ',' ),\r
+ i = list.length;\r
\r
body.appendChild( elm );\r
elm.style.cssText = 'font-size:100px;line-height:1em;';\r
\r
base = elm.offsetHeight;\r
\r
- for( var i = list.length; i; ){\r
+ for( ; i; ){\r
size = list[ --i ];\r
elm.style.fontSize = size;\r
- ret[ size ] = elm.offsetHeight;// / base;\r
+ ret[ size ] = base;\r
};\r
\r
elm.style.cssText = '';\r
\r
/* clean comment node */\r
window.setTimeout( function(){\r
- Util.cleanCommentNode();\r
+ // Util.cleanCommentNode();\r
\r
/* clean noscript */\r
\r
var noscripts = Util.copyArray( document.getElementsByTagName( 'noscript' ) ),\r
- ns;\r
- for( var i = noscripts.length; i; ){\r
+ ns,\r
+ i = noscripts.length;\r
+ for( ; i; ){\r
ns = noscripts[ --i ];\r
ns.parentNode && ns.parentNode.removeChild( ns );\r
};\r
};\r
},\r
cleanElement: function( _targetElm ){\r
- var _array, _elm, j, _css;\r
- for( var i = CLEAN_TARGET_ELEMENT.length; i; ){\r
+ var _array, _elm, j, _css,\r
+ i = CLEAN_TARGET_ELEMENT.length;\r
+ for( ; i; ){\r
_array = Util.copyArray( _targetElm.getElementsByTagName( CLEAN_TARGET_ELEMENT[ --i ] ) );\r
for( j = _array.length; j; ){\r
_elm = _nodes[ --j ];\r
},\r
camelize: function( cssProp ){\r
var parts = cssProp.split( ' ' ).join( '' ).split( '-' ),\r
- l = parts.length;\r
+ l = parts.length,\r
+ i, camelized;\r
if( l === 1 ) return parts[ 0 ];\r
\r
- var camelized = cssProp.charAt(0) === '-'\r
+ camelized = cssProp.charAt(0) === '-'\r
? parts[ 0 ].charAt( 0 ).toUpperCase() + parts[ 0 ].substring( 1 )\r
: parts[ 0 ];\r
\r
- for( var i = 1; i < l; ++i ){\r
+ for( i = 1; i < l; ++i ){\r
camelized += parts[ i ].charAt( 0 ).toUpperCase() + parts[ i ].substring( 1 );\r
};\r
return camelized;\r
hasClassName: function( _elm, _className ){\r
var cnames = ( _elm.className || '' ).split( ' ' ),\r
_cnames = _className.split( ' ' ),\r
- cname;\r
- for( var i = _cnames.length; i; ){\r
+ cname,\r
+ i = _cnames.length;\r
+ for( ; i; ){\r
cname = _cnames[ --i ];\r
if( cname === '' ) continue;\r
if( Util.getIndex( cnames, cname ) === -1 ) return false;\r
};\r
} else {\r
Util.getIndex = function( _array, _element ){\r
- for( var i = _array.length; i; ){\r
+ var i = _array.length;\r
+ for( ; i; ){\r
if( _array[ --i ] === _element ) return i;\r
};\r
return -1;\r
},\r
copyArray: function( _array ){\r
var l = _array.length,\r
- ret = new Array( l );\r
- for( var i=0; i<l; ++i ){\r
+ ret = new Array( l ),\r
+ i = 0;\r
+ for( ; i<l; ++i ){\r
ret[ i ] = _array[ i ];\r
- }\r
+ };\r
return ret;\r
},\r
/*\r
var CSS = ( function( window, documwnt, undefined ){\r
var CORON = ':',\r
EMPTY = '',\r
- SEMICORON = ';';\r
+ SEMICORON = ';',\r
UNITS = 'px,cm,mm,in,pt,pc,em,%'.split( ',' ),\r
CLIP_SEPARATOR = UA.isIE === true && UA.ieVersion < 8 ? ' ' : ',';\r
\r
})();\r
\r
var PARAMS = ( function(){\r
- ret = {};\r
+ var ret = {};\r
register( ret.percent = {},\r
'marginBottom,marginLeft,marginRight,marginTop,paddingBottom,paddingLeft,paddingRight,paddingTop,fontSize,textIndent'\r
);\r
return this.r === prop.r && this.g === prop.g && this.b === prop.b;\r
};\r
var rgb = this._toPct(),\r
- _rgb = prop._toPct();\r
- for( var i = rgb.length; i; ){\r
+ _rgb = prop._toPct(),\r
+ i = rgb.length;\r
+ for( ; i; ){\r
--i;\r
if( Math.abs( rgb[ i ] - _rgb[ i ] ) > 1 ) return false;\r
};\r
bottom = this.get( name + 'Bottom' + widthOrColor ),\r
left = this.get( name + 'Left' + widthOrColor ),\r
ret = new FrexiblePropertyClass( name, top, right, bottom, left ),\r
- all, x, v, u;\r
+ all, x, v, u, i;\r
\r
if( ret.isValid() === true ) return ret;\r
ret.clear();\r
all = this.style[ name + widthOrColor ].split( ' ' );\r
\r
- for( var i=0, l=all.length; i<l; ++i ){\r
+ for( i = 0, l=all.length; i<l; ++i ){\r
x = all[ i ];\r
v = this.getValue( x );\r
u = this.getUnit( x );\r
bottom = this.get( name + 'BottomColor' ),\r
left = this.get( name + 'LeftColor' ),\r
ret = new FrexiblePropertyClass( name, top, right, bottom, left ),\r
- all, x;\r
+ all, x, i, l;\r
\r
if( ret.isValid() === true ) return ret;\r
ret.clear();\r
all = this.style[ name ].split( ' ' );\r
\r
- for( var i=0, l=all.length; i<l; ++i ){\r
+ for( i = 0, l = all.length; i<l; ++i ){\r
x = all[ i ];\r
if( l === 4 ){\r
if( i === 0 ) top = getColor( x, name + 'Top' );\r
wrapped,\r
fontSize = 'fontSize',\r
number = PARAMS.percent[ property ] || PARAMS.offset[ property ] || PARAMS.size[ property ] || PARAMS.color[ property ] || PARAMS.region[ property ] || PARAMS.special[ property ],\r
- css, nv, n, v;\r
+ css, nv, n, v, i;\r
\r
if( obj.cssText ){\r
css = obj.cssText.split( ';' );\r
/*
* pettanR peta.apps.js
- * version 0.5.38
+ * version 0.5.39
*
* author:
* itozyun
_array = PANEL_ARRAY;
} else
// Comic
- if( _parent === FILE_DATA_COMICS_ROOT ){
+ if( _parent === FILE_DATA_COMICS_ROOT || _parent === FILE_DATA_MY_COMICS_ROOT ){
_data.type = FILE_TYPE.COMIC;
_array = COMIC_ARRAY;
} else
if( _parent.type === FILE_TYPE.COMIC ){
- _array = COMIC_ARRAY;
+ _array = PANEL_ARRAY;
} else
// Lisence
if( _parent === FILE_DATA_LISENCE_ROOT ){
addChildData( _parent, _data );
} else
// Comic + Panels
- if( _parent.type === FILE_TYPE.COMIC || _parent === FILE_DATA_COMICS_ROOT ){
- var _panels = _data.stories,
+ if( _parent === FILE_DATA_COMICS_ROOT || _parent === FILE_DATA_MY_COMICS_ROOT ){
+ var _stories = _data.stories,
_panel;
- if( Type.isArray( _panels ) === true ){
-
- for( i=0, l=_panels.length; i<l; ++i ){
- _panel = buildFileData( _panels[ i ], FILE_DATA_PANELS_ROOT );
+ if( Type.isArray( _stories ) === true ){
+ for( i=0, l=_stories.length; i<l; ++i ){
+ _panel = buildFileData( _stories[ i ].panel, FILE_DATA_PANELS_ROOT );
/*
* 間違い! t 順に格納
*/
addChildData( _data, _panel );
};
delete _data.stories;
- } else {
+ }// else {
if( _data.json !== null ){
_data.json = true;
};
- if( Type.isArray( _data.children ) === false ){
- _data.children = [];
- };
- };
+ //if( Type.isArray( _data.elements ) === false ){
+ // _data.elements = [];
+ //};
+ //};
var _author = _data.author || getResource( AUTHOR_ARRAY, _data.author_id );
if( _author ){
_data.author = _author = buildFileData( _author, FILE_DATA_AUTHOR_ROOT );
};
} else
// Panel
- if( _parent === FILE_DATA_PANELS_ROOT || _parent === FILE_DATA_MY_PANELS_ROOT ){
- _data.comic && buildFileData( _data.comic, FILE_DATA_COMICS_ROOT );
+ if( _parent.type === FILE_TYPE.COMIC || _parent === FILE_DATA_PANELS_ROOT || _parent === FILE_DATA_MY_PANELS_ROOT ){
+ _data.comic && buildFileData( _data.comic, FILE_DATA_COMICS_ROOT );
_data.author && buildFileData( _data.author, FILE_DATA_AUTHOR_ROOT );
_data.comic = getResource( COMIC_ARRAY, _data.comic_id );
_data.author = getResource( AUTHOR_ARRAY, _data.author_id );
// picture data をファイルに取り出し
- var _elements = _data.panel_elements,
+ var _elements = _data.elements || ( _data.panel ? _data.panel.elements : null ),
_elm;
if( Type.isArray( _elements ) === true ){
- 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 ); // 上記参照切れに備えてここで上書き
+ for( i = 0, l = _elements.length; i<l; ++i ){
+ _elm = _elements[ i ];
+ if( _elm.picture ){
+ _elm.picture = buildFileData( _elm.picture, FILE_DATA_PICTURE_ROOT ); // 上記参照切れに備えてここで上書き
} else {
- _elm.resource_picture = getResource( RESOURCE_PICTURE_ARRAY, _elm.picture_id );
+ _elm.picture = getResource( RESOURCE_PICTURE_ARRAY, _elm.picture_id );
};
};
};
- _data.publish === 1 && addChildData( FILE_DATA_LATEST_PANELS, _data );
+ /* _data.publish === 1 && */ addChildData( FILE_DATA_LATEST_PANELS, _data );
_data.author_id === MyAuthorID && addChildData( FILE_DATA_MY_PANELS_ROOT, _data );
} else
// Picture
this.getSeqentialFiles = function( _file ){
var _data = FileAPI.getFileData( _file ),
_json = _data !== null ? _data.json : null;
- if( _json === true && _data.type === FILE_TYPE.COMIC ){
+ if( _data.type === FILE_TYPE.COMIC && _json === true ){
if( pettanr.CONST.SERVER_SUPPORT === false ){
_json = [ 'json\/comics_', _data.id, '.json' ].join( '' );
} else {
- _json = [ pettanr.CONST.PETTANR_ROOT_PATH, 'comics\/', _data.id, '.json' ].join( '' );
+ _json = [ pettanr.CONST.PETTANR_ROOT_PATH, 'stories\/', _data.id, '\/comic.json' ].join( '' );
};
};
if( typeof _json === 'string' ){
type: FILE_TYPE.FOLDER,
children: [],
driver: Driver,
- id: MyAuthorID
+ id: MyAuthorID,
+ json: pettanr.CONST.URL_MY_COMICS_JSON
},
FILE_DATA_LATEST_COMICS = {
name: 'Latest Comics',
if( FileAPI.isFileInstance( _file ) === true ){
var _data = FileAPI.getFileData( _file.getUID() );// _file でなく _file.getUID()
return _data !== null && _data.driver === Driver;
- }
+ };
return false;
};
finder = app.createFinder(
nodeBody,
tree,
- onFileSelect,
- PANEL_ELEMENT_CONTROL.onImageSelect
+ onFileSelect
);
finder.createPath( IMAGE_EXPLORER_WINDOW.createHeaderItem() );
},
panelW = fileData.width;
panelH = fileData.height;
borderSize = fileData.border;
- panelElements = fileData.panel_elements;
+ panelElements = fileData.elements;
comicID = fileData.comic ? fileData.comic.id || -1 : -1;
panelID = fileData.id || -1;
panelTimming = fileData.t || -1;
// panelTimming !== -1 ? ( '"t": ' + panelTimming + ',' + cr ) : '',
'"width": ', panelW, ',', cr,
'"height": ', panelH, ',', cr,
- '"panel_elements": [', cr,
+ '"elements": [', cr,
ELEMENT_ARRAY.join( ',' + cr ), cr,
']', cr,
//'}', cr,
/*\r
* pettanR peta.common.js\r
- * version 0.5.31\r
+ * version 0.5.39\r
* \r
* author:\r
* itozyun\r
PETTANR_ROOT_PATH: PETTANR_ROOT_PATH,\r
URL_ORIGINAL_PICTURES_JSON: ( SERVER_SUPPORT === false ? 'json\/' : PETTANR_ROOT_PATH ) + 'original_pictures.json',\r
URL_RESOURCE_PICTURES_JSON: ( SERVER_SUPPORT === false ? 'json\/' : PETTANR_ROOT_PATH ) + 'resource_pictures.json',\r
+ URL_MY_RESOURCE_PICTURES_JSON: ( SERVER_SUPPORT === false ? 'json\/' : PETTANR_ROOT_PATH ) + 'home\/resource_picture.json',\r
URL_COMICS_JSON: ( SERVER_SUPPORT === false ? 'json\/' : PETTANR_ROOT_PATH ) + 'comics.json',\r
+ URL_MY_COMICS_JSON: ( SERVER_SUPPORT === false ? 'json\/' : PETTANR_ROOT_PATH ) + 'home\/comic.json',\r
URL_PANELS_JSON: ( SERVER_SUPPORT === false ? 'json\/' : PETTANR_ROOT_PATH ) + 'panels.json',\r
URL_MY_PANELS_JSON: ( SERVER_SUPPORT === false ? 'json\/' : PETTANR_ROOT_PATH ) + 'home\/panel.json',\r
NS_PETTANR_COMIC: 'pettanr-comic',\r
height: json.height + 'px'\r
},\r
_cssText = [],\r
- _comicElements = json.panel_elements || [],\r
+ _comicElements = json.elements || ( json.panel ? json.panel.elements : [] ),\r
_comicElement, _elmImg, _rImg, _rPic,\r
- _balloon, _elmBalloonWrap, _elmText, _text, _speechesAttributes, _key;\r
+ _balloon, _elmBalloonWrap, _elmText, _text, _speechesAttributes, _key,\r
+ i, l;\r
elmTarget.appendChild( _elmPanel );\r
\r
if( noClassnameMode === true ){\r
\r
} else {\r
_elmPanel.className = NAMESPACE_CLASSNAME + 'panel';\r
- }\r
- for( var _key in _style ){\r
+ };\r
+ for( _key in _style ){\r
_cssText.push( _key + ':' + _style[ _key ] );\r
- }\r
+ };\r
_elmPanel.style.cssText = _cssText.join( ';' );\r
\r
- for( var i=0, l=_comicElements.length; i<l; ++i ){\r
+ for( i = 0, l = _comicElements.length; i<l; ++i ){\r
_comicElement = _comicElements[ i ];\r
- _rPic = _comicElement.resource_picture;\r
+ _rPic = _comicElement.picture;\r
if( _rPic ){\r
_rImg = pettanr.image.createReversibleImage(\r
[ PICTURE_PATH, _rPic.id, '.', _rPic.ext ].join( ''),\r
clean();\r
\r
// json is Comic ? Panel ?\r
- var panels = json.stories;\r
- if( Type.isArray( panels ) === true ){\r
+ var stories = json.children || json.stories,\r
+ i, l;\r
+ if( Type.isArray( stories ) === true ){\r
// comic\r
- for( var i=0, l=panels.length; i<l; ++i ){\r
- buildPanelElement( panels[ i ], zoom );\r
+ for( i = 0, l = stories.length; i<l; ++i ){\r
+ buildPanelElement( stories[ i ], zoom );\r
};\r
} else\r
- if( json.panel_elements ){\r
+ if( json.elements ){\r
// panel\r
buildPanelElement( json, zoom );\r
} else {\r
* Google Analytics\r
*/\r
\r
-if( pettanr.LOCAL === false ){\r
+if( pettanr.LOCAL === false || document.location.href.indexOf( 'localhost:' ) === -1 ){\r
var _gaq = _gaq || [];\r
_gaq.push(['_setAccount', 'UA-28023955-1']);\r
_gaq.push(['_trackPageview']);\r
\r
- (function() {\r
+ ( function(){\r
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;\r
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';\r
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);\r
})(); \r
-}
\ No newline at end of file
+};
\ No newline at end of file
/*
* pettanR system.js
- * version 0.5.38
+ * version 0.5.39
*
* gadgetOS
* author:
delete _access.TREE;
delete _access.parentData;
}
- }
+ };
/*
* FileDriverBase
this.onDelete = function(){
};
- }
+ };
var BASE_DRIVER = new FileDriverBase();
function createFileTypeID(){
return ++numFileType;
- }
+ };
var FileAPIClass = function( driver ){
var constObject;
this.getConst = function(){
return Const; // constObject = constObject || clone( Const )
};
- }
+ };
return {
registerDriver: function( _class ){
elm : null,
button : null,
app : null,
+ file : null,
fileUID : -1,
init : function( ui, elmParent, app, file ){
if( this.elm === null ){
var that = this;
this.button = ui.createButton( this.elm, function(){
that.onClick();
+ that = null;
} );
- this.app = app;
+ this.app = app;
+ this.file = file;
this.fileUID = file.getUID();
},
onClick : function(){
- this.app.boot( this.fileUID );
+ this.app.boot( this.file );
return false;
},
destroy : function(){