break;
 case "saveParts":
     $song_num_lines = mosGetParam($_POST, 'num_lines', 0);
     $song = new cbSong($database, "#__cb_");
     $song->load($song_id);
     $song_body = "";
     for ($i = 0; $i < $song_num_lines; $i++) {
         if ($song_body != "") {
             $song_body .= "\n";
         }
         $line_type = mosGetParam($_POST, 'line_type_' . $i, '');
         $line_content = mosGetParam($_POST, 'line_content_' . $i, '');
         $song_body .= "[" . $line_type . "]" . $line_content . "[/" . $line_type . "]";
     }
     echo $song_body;
     $song->set("song", $song_body);
     if (!$song->store()) {
         echo "<script> alert('" . $song->getError() . "'); window.history.go(-1); </script>\n";
         exit;
     }
     mosRedirect("index2.php?option=com_chordbase&task=songlist");
     break;
 case "saveSong":
     if ($_POST["new_writer"] != "") {
         $query = "insert into `#__cb_writers` ( `name`, `published` ) values ( '" . $_POST["new_writer"] . "', '1' )";
         $database->setQuery($query);
         $database->query();
         $_POST["writer"] = $database->insertid();
     }
     if ($_POST["new_category"] != "") {
         $query = "insert into `#__cb_categories` ( `title`, `published` ) values ( '" . $_POST["new_category"] . "', '1' )";