Index: trunk/kernel/action.php =================================================================== diff -u -N -r842 -r850 --- trunk/kernel/action.php (.../action.php) (revision 842) +++ trunk/kernel/action.php (.../action.php) (revision 850) @@ -1156,25 +1156,26 @@ } break; case "m_theme_add": - $objEditItems = new clsThemeList(); - $objEditItems->SourceTable = $objSession->GetEditTable("Theme"); - $Primary = (int)$_POST["primary"]; - if(!(int)$_POST["enabled"]) - $Primary = 0; - $t = $objEditItems->AddTheme($_POST["name"],$_POST["description"],(int)$_POST["enabled"], - (int)$_POST["CacheTimeout"],$Primary); - $ado = &GetADODBConnection(); - $rs = $ado->Execute("SELECT MIN(ThemeId) as MinValue FROM ".$objEditItems->SourceTable); - $NewId = $rs->fields["MinValue"]-1; - $sql = "UPDATE ".$objEditItems->SourceTable." SET ThemeId=".$NewId." WHERE ThemeId=".$t->Get("ThemeId"); - if($objSession->HasSystemPermission("DEBUG.LIST")) - echo $sql."
\n"; - if ($Primary==1) + $rs = $ado->Execute("SELECT COUNT(*) as c FROM ".GetTablePrefix().'Theme WHERE Name="'.$_POST["name"].'"'); + if(!$rs->fields["c"]) { - $objEditItems->SetPrimaryTheme($_POST["ThemeId"]); - } - $ado->Execute($sql); + $objEditItems = new clsThemeList(); + $objEditItems->SourceTable = $objSession->GetEditTable("Theme"); + $Primary = (int)$_POST["primary"]; + if(!(int)$_POST["enabled"]) + $Primary = 0; + $t = $objEditItems->AddTheme($_POST["name"],$_POST["description"],(int)$_POST["enabled"],$Primary, + (int)$_POST["CacheTimeout"]); + $t->Files->ThemeId=$t->Get("ThemeId"); + + $rs = $ado->Execute("SELECT MIN(ThemeId) as MinValue FROM ".$objEditItems->SourceTable); + $NewId = $rs->fields["MinValue"]-1; + $sql = "UPDATE ".$objEditItems->SourceTable." SET ThemeId=".$NewId." WHERE ThemeId=".$t->Get("ThemeId"); + if($objSession->HasSystemPermission("DEBUG.LIST")) + echo $sql."
\n"; + $ado->Execute($sql); + } break; case "m_theme_edit": $objEditItems = new clsThemeList(); @@ -1185,10 +1186,10 @@ $objEditItems->EditTheme($_POST["ThemeId"],$_POST["name"],$_POST["description"], (int)$_POST["enabled"],$Primary,(int)$_POST["CacheTimeout"]); - if ($Primary==1) - { - $objEditItems->SetPrimaryTheme($_POST["ThemeId"]); - } +// if ($Primary==1) +// { +// $objEditItems->SetPrimaryTheme($_POST["ThemeId"]); +// } break; case "m_theme_delete":