Sha256: 102cb22c76efa70bab94b391ea6e4d0b007ff009cb940af9b673488f8b8ba480

Contents?: true

Size: 1.24 KB

Versions: 13

Compression:

Stored size: 1.24 KB

Contents

// ==========================================================================
// Project:   Greenhouse.File
// Copyright: ©2010 Mike Ball
// ==========================================================================
/*jslint evil: true*/
/*globals Greenhouse*/

require('core');
/** @class

  file properties
  @dir
  @name
  
  @extends SC.ChildRecord
  @version 0.1
*/
Greenhouse.File = SC.ChildRecord.extend(
/** @scope Greenhouse.File.prototype */ {
  type: 'File',
  childRecordNamespace: Greenhouse,
  name: SC.Record.attr(String),
  dir: SC.Record.attr(String),
  body: SC.Record.attr(String),
  primaryKey: 'id',
  
  isFile: YES,

  path: function(){
    return this.get('dir') + this.get('name');
  }.property('name', 'dir').cacheable(),
  
  pageRegex: function(){
    var b = this.get('body'), re =/(\w+)\.(\w+)\s*=\s*SC\.Page\.(design|create)/;
    return b ? b.match(re): b;
  }.property('body').cacheable(),
  
  isPage: function(){
    return this.get('pageRegex') !== null;
  }.property('pageRegex').cacheable(),
  
  pageName: function(){
    var r = this.get('pageRegex') || [];
    return "%@.%@".fmt(r[1],r[2]);
  }.property('pageRegex').cacheable()

}) ;
Greenhouse.FILES_QUERY = SC.Query.remote(Greenhouse.File);
Greenhouse.File.mixin({

});

Version data entries

13 entries across 13 versions & 1 rubygems

Version Path
sproutcore-1.4.5 lib/frameworks/sproutcore/apps/greenhouse/models/file.js
sproutcore-1.4.5-java lib/frameworks/sproutcore/apps/greenhouse/models/file.js
sproutcore-1.4.4-java lib/frameworks/sproutcore/apps/greenhouse/models/file.js
sproutcore-1.4.4 lib/frameworks/sproutcore/apps/greenhouse/models/file.js
sproutcore-1.4.3.1 lib/frameworks/sproutcore/apps/greenhouse/models/file.js
sproutcore-1.4.3-java lib/frameworks/sproutcore/apps/greenhouse/models/file.js
sproutcore-1.4.3 lib/frameworks/sproutcore/apps/greenhouse/models/file.js
sproutcore-1.4.2-java lib/frameworks/sproutcore/apps/greenhouse/models/file.js
sproutcore-1.4.2 lib/frameworks/sproutcore/apps/greenhouse/models/file.js
sproutcore-1.4.1-java lib/frameworks/sproutcore/apps/greenhouse/models/file.js
sproutcore-1.4.1 lib/frameworks/sproutcore/apps/greenhouse/models/file.js
sproutcore-1.4.0-java lib/frameworks/sproutcore/apps/greenhouse/models/file.js
sproutcore-1.4.0 lib/frameworks/sproutcore/apps/greenhouse/models/file.js