diff --git a/airtime_mvc/application/controllers/LibraryController.php b/airtime_mvc/application/controllers/LibraryController.php
index eeb2b9d35..067a33ac6 100644
--- a/airtime_mvc/application/controllers/LibraryController.php
+++ b/airtime_mvc/application/controllers/LibraryController.php
@@ -59,7 +59,7 @@ class LibraryController extends Zend_Controller_Action
                 if ($isAdminOrPM || $obj->getCreatorId() == $user->getId()) {
                     if ($this->obj_sess->type === "playlist") {
                         $menu["pl_add"] = array("name"=> "Add to Playlist", "icon" => "add-playlist", "icon" => "copy");
-                    } else {
+                    } else if ($this->obj_sess->type === "block") {
                         $menu["pl_add"] = array("name"=> "Add to Smart Playlist", "icon" => "add-playlist", "icon" => "copy");
                     }
                 }
@@ -101,8 +101,6 @@ class LibraryController extends Zend_Controller_Action
                 if ($isAdminOrPM || $obj->getCreatorId() == $user->getId()) {
                     if ($this->obj_sess->type === "playlist") {
                         $menu["pl_add"] = array("name"=> "Add to Playlist", "icon" => "add-playlist", "icon" => "copy");
-                    } else {
-                        $menu["pl_add"] = array("name"=> "Add to Smart Playlist", "icon" => "add-playlist", "icon" => "copy");
                     }
                 }
             }
@@ -181,7 +179,7 @@ class LibraryController extends Zend_Controller_Action
         try {
             Application_Model_Block::deleteBlocks($blocks, $user->getId());
         } catch (Exception $e) {
-            //TODO: warn user that not all blocks could be deleted. 
+            //TODO: warn user that not all blocks could be deleted.
         }
 
         try {
diff --git a/airtime_mvc/application/controllers/PlaylistController.php b/airtime_mvc/application/controllers/PlaylistController.php
index b8468af6b..ecaa91494 100644
--- a/airtime_mvc/application/controllers/PlaylistController.php
+++ b/airtime_mvc/application/controllers/PlaylistController.php
@@ -153,8 +153,8 @@ class PlaylistController extends Zend_Controller_Action
         Logging::log("{$e->getMessage()}");
     }
     
-    private function playlistDenied($obj) {
-        $this->view->error = "You cannot add playlists to smart playlists.";
+    private function wrongTypeToBlock($obj) {
+        $this->view->error = "You can only add tracks to smart playlists.";
         $this->createFullResponse($obj);
     }
 
@@ -315,13 +315,15 @@ class PlaylistController extends Zend_Controller_Action
                 // if the dest is a block object
                 //check if any items are playlists
                 foreach($ids as $id) {
-                    if (is_array($id) && isset($id[1]) && $id[1] == 'playlist') {
-                        throw new Exception('playlist to block');
+                    if (is_array($id) && isset($id[1])) {
+                        if ($id[1] != 'audioclip') {
+                            throw new WrongTypeToBlockException;
+                        }
                     }
                 }
                 $obj->addAudioClips($ids, $afterItem, $addType);
             } else {
-                throw new Exception('track to dynamic');
+                throw new BlockDynamicException;
             }
             $this->createUpdateResponse($obj);
         }
@@ -331,14 +333,14 @@ class PlaylistController extends Zend_Controller_Action
         catch (PlaylistNotFoundException $e) {
             $this->playlistNotFound($obj_type);
         }
+        catch (WrongTypeToBlockException $e) {
+            $this->wrongTypeToBlock($obj);
+        }
+        catch (BlockDynamicException $e) {
+            $this->blockDynamic($obj);
+        }
         catch (Exception $e) {
-            if ($e->getMessage() == 'playlist to block') {
-                $this->playlistDenied($obj);
-            } else if ($e->getMessage() == 'track to dynamic') {
-                $this->blockDynamic($obj);
-            } else {
-                $this->playlistUnknownError($e);
-            }
+            $this->playlistUnknownError($e);
         }
     }
 
@@ -593,5 +595,6 @@ class PlaylistController extends Zend_Controller_Action
         }
         die(json_encode($out));
     }
-    
 }
+class WrongTypeToBlockException extends Exception {}
+class BlockDynamicException extends Exception {}