about summary refs log tree commit diff
path: root/laravel/app/Song.php
diff options
context:
space:
mode:
Diffstat (limited to 'laravel/app/Song.php')
-rw-r--r--laravel/app/Song.php11
1 files changed, 11 insertions, 0 deletions
diff --git a/laravel/app/Song.php b/laravel/app/Song.php
index c723e3a..a6cb0c0 100644
--- a/laravel/app/Song.php
+++ b/laravel/app/Song.php
@@ -31,6 +31,17 @@ class Song extends Model
         }
         return $sc->transposeBlock($this->text, $transp);
     }
+
+    public function setKeyAttribute($value)
+    {
+        if (!$value) return;
+        if ($value[0]>="A"&&$value[0]<="G"){
+            $this->attributes['key'] = $value;
+        } else {
+            throw new \Exception("Invalid key: $value");
+        }
+    }
+    
     public function getNameAttribute()
     {
         return $this->title