@@ -2312,7 +2312,7 @@ define("../cardkit/parser/util", [
2312
2312
var sid = $ ( node ) . data ( 'source' ) ;
2313
2313
if ( sid ) {
2314
2314
var source = raw . find ( '.' + sid ) ;
2315
- return source [ 0 ] && source ;
2315
+ return source [ 0 ] && source || false ;
2316
2316
}
2317
2317
} ,
2318
2318
@@ -2566,6 +2566,9 @@ define("../cardkit/parser/actionbar", [
2566
2566
return util . getItemDataOuter ( elm , null , 'item' ) ;
2567
2567
} ) || $ ( ) ,
2568
2568
custom_items = util . getCustom ( '.ckd-item' , cfg , raw , util . getItemDataOuter , 'item' ) ;
2569
+ if ( source === false && ! custom_items . length ) {
2570
+ return false ;
2571
+ }
2569
2572
var data = {
2570
2573
config : config ,
2571
2574
items : custom_items . concat ( items || $ ( ) )
@@ -3260,24 +3263,32 @@ define("../cardkit/render", [
3260
3263
var cfg = this . _frameConfig ,
3261
3264
customized = this . _frameCustomized ,
3262
3265
global_cfg ,
3266
+ local_cfg ,
3263
3267
cfg_node ,
3264
3268
changed = { } ;
3265
3269
for ( var part in frame_parts ) {
3266
3270
if ( ! cfg [ part ] || customized [ part ] ) {
3267
3271
global_cfg = header . find ( '.ckcfg-' + part ) ;
3268
3272
if ( global_cfg [ 0 ] ) {
3269
3273
cfg [ part ] = frame_parts [ part ] ( global_cfg , raw ) ;
3270
- changed [ part ] = true ;
3274
+ if ( cfg [ part ] ) {
3275
+ changed [ part ] = true ;
3276
+ }
3271
3277
}
3272
3278
}
3273
3279
cfg_node = card . find ( '.ckcfg-' + part ) ;
3274
3280
customized [ part ] = ! ! cfg_node [ 0 ] ;
3275
3281
if ( customized [ part ] ) {
3276
- cfg [ part ] = frame_parts [ part ] ( cfg_node , raw ) ;
3277
- changed [ part ] = true ;
3282
+ local_cfg = frame_parts [ part ] ( cfg_node , raw ) ;
3283
+ if ( local_cfg ) {
3284
+ cfg [ part ] = local_cfg ;
3285
+ changed [ part ] = true ;
3286
+ } else {
3287
+ customized [ part ] = false ;
3288
+ }
3278
3289
}
3279
3290
}
3280
- if ( changed [ 'page-actions' ] || changed [ ' card-actions'] ) {
3291
+ if ( changed [ 'card-actions' ] ) {
3281
3292
var actions = cfg [ 'actionbar' ] = cfg [ 'card-actions' ] ,
3282
3293
action_items = actions . items ;
3283
3294
action_items . push . apply ( action_items , cfg [ 'page-actions' ] . items ) ;
@@ -7340,6 +7351,13 @@ define("../cardkit/app", [
7340
7351
//clear_active_item_mask(ck.viewport);
7341
7352
//},
7342
7353
7354
+ '.ck-link-img' : function ( ) {
7355
+ var src = $ ( this ) . attr ( 'src' ) ;
7356
+ if ( src ) {
7357
+ ck . openImage ( src ) ;
7358
+ }
7359
+ } ,
7360
+
7343
7361
'.ck-post-link' : handle_control ,
7344
7362
7345
7363
'.ck-post-button, .ck-post-button span' : tap_ck_post ,
@@ -8332,6 +8350,10 @@ define("../cardkit/app", [
8332
8350
return bus . promise ( 'navdrawer:close' ) ;
8333
8351
} ,
8334
8352
8353
+ openImage : function ( src ) {
8354
+ forward_handler ( LOADING_CARDID , src ) ;
8355
+ } ,
8356
+
8335
8357
openModal : function ( opt ) {
8336
8358
this . hideAddressbar ( ) ;
8337
8359
this . disableControl ( ) ;
@@ -8486,7 +8508,8 @@ define("../cardkit/app", [
8486
8508
open_url ( me . href ) ;
8487
8509
}
8488
8510
return ;
8489
- } else if ( $ ( me ) . hasClass ( 'ck-link' ) ) {
8511
+ } else if ( $ ( me ) . hasClass ( 'ck-link' )
8512
+ || $ ( me ) . hasClass ( 'ck-link-img' ) ) {
8490
8513
} else if ( / ( ^ | \s ) c k - \w + / . test ( me . className ) ) {
8491
8514
return ;
8492
8515
} else if ( me . target ) {
0 commit comments