Class: Statixite::Site

Inherits:
ActiveRecord::Base
  • Object
show all
Includes:
ActiveModel::Validations
Defined in:
app/models/statixite/site.rb

Constant Summary collapse

SLUG_FORMAT =
/[a-z0-9]+(?:-[a-z0-9]+)*/
REPO_FORMAT =
/((git|ssh|http(s)?)|(git@[\w\.]+))(:(\/\/)?)([\w\.@\:\/\-~]+)(\.git)(\/)?/

Instance Method Summary collapse

Instance Method Details

#build_urlObject



26
27
28
29
30
31
32
# File 'app/models/statixite/site.rb', line 26

def build_url
  if domain_name.present?
    "http://#{domain_name}"
  else
    settings["url"]
  end
end

#github_repo_nameObject



34
35
36
# File 'app/models/statixite/site.rb', line 34

def github_repo_name
  "statixite-#{site_name}"
end

#preview_urlObject



22
23
24
# File 'app/models/statixite/site.rb', line 22

def preview_url
  "/statixite/previews/#{site_name}"
end

#site_build_pathObject



50
51
52
# File 'app/models/statixite/site.rb', line 50

def site_build_path
  File.join(site_root_path, "build")
end

#site_clone_pathObject



42
43
44
# File 'app/models/statixite/site.rb', line 42

def site_clone_path
  File.join(site_root_path, "clone")
end

#site_main_configObject



62
63
64
# File 'app/models/statixite/site.rb', line 62

def site_main_config
  File.join(site_clone_path, "_config.yml")
end

#site_posts_pathObject



46
47
48
# File 'app/models/statixite/site.rb', line 46

def site_posts_path
  File.join(site_clone_path, "_posts")
end

#site_preview_pathObject



54
55
56
# File 'app/models/statixite/site.rb', line 54

def site_preview_path
  File.join(Rails.public_path, "statixite", "previews", site_name)
end

#site_remoteObject



58
59
60
# File 'app/models/statixite/site.rb', line 58

def site_remote
  File.join(site_root_path, "repo")
end

#site_root_pathObject



38
39
40
# File 'app/models/statixite/site.rb', line 38

def site_root_path
  File.join(sites_path, site_name)
end

#statixite_nameObject



18
19
20
# File 'app/models/statixite/site.rb', line 18

def statixite_name
  site_name
end