function isValidForUpdate($release, $group_id)
 {
     $frspf = new FRSPackageFactory();
     $frsrf = new FRSReleaseFactory();
     $frsff = new FRSFileFactory();
     if (isset($release['package_id']) && $release['package_id'] != 'null') {
         if (!isset($release['name']) || !$release['name'] || $release['name'] == '') {
             $this->addError($GLOBALS['Language']->getText('file_admin_editreleases', 'rel_name_empty'));
         } else {
             //see if this package belongs to this project
             $res1 =& $frsrf->getFRSReleaseFromDb($release['release_id'], $group_id);
             if (!$res1 || count($res1) < 1) {
                 $this->addError($GLOBALS['Language']->getText('file_admin_editreleases', 'p_rel_not_yours'));
             } else {
                 if ($release['package_id'] != $res1->getPackageID()) {
                     //changing to a different package for this release
                     $res2 = $frspf->getFRSPackageFromDb($release['package_id'], $group_id);
                     if (!$res2 || count($res2) < 1) {
                         //new package_id isn't theirs
                         $this->addError($GLOBALS['Language']->getText('file_admin_editreleases', 'p_not_yours'));
                     }
                 }
                 //check if release name exists already
                 if ($res1->getPackageID() != $release['package_id'] || $res1->getPackageID() == $release['package_id'] && $res1->getName() != $release['name']) {
                     $release_exists = $frsrf->getReleaseIdByName($release['name'], $release['package_id']);
                 }
                 if (!isset($release_exists) || count($release_exists) < 1) {
                     //now check the date
                     if (!ereg("[0-9]{4}-[0-9]{1,2}-[0-9]{1,2}", $release['date'])) {
                         $this->addError($GLOBALS['Language']->getText('file_admin_editreleases', 'data_not_parsed'));
                     }
                 } else {
                     $this->addError($GLOBALS['Language']->getText('file_admin_editreleases', 'rel_name_exists'));
                 }
             }
         }
     } else {
         $this->addError($GLOBALS['Language']->getText('file_admin_editreleases', 'create_p_before_rel_status'));
     }
     return count($this->_errors) ? false : true;
 }