This commit is contained in:
Virtuworks 2012-09-24 09:49:43 -04:00
commit 66d10645ac
10 changed files with 94 additions and 8 deletions

View file

@ -487,6 +487,19 @@ namespace WebsitePanel.EnterpriseServer
|| context.Groups.ContainsKey(ResourceGroups.MySql5)))
result.ErrorCodes.Add(GalleryErrors.MySQLRequired);
//show Dependency warning optionaly
int serviceId = PackageController.GetPackageServiceId(packageId, ResourceGroups.Web);
StringDictionary serviceSettings = ServerController.GetServiceSettings(serviceId);
bool galleryAppsAlwaysIgnoreDependencies = Utils.ParseBool(serviceSettings["GalleryAppsAlwaysIgnoreDependencies"], false);
if (galleryAppsAlwaysIgnoreDependencies)
{
result.ErrorCodes.Clear();
}
if (result.ErrorCodes.Count > 0)
{
GalleryApplicationResult warning = Warning<GalleryApplicationResult>(result, GalleryErrors.PackageDoesNotMeetRequirements);

View file

@ -123,9 +123,13 @@
<data name="FilterDialogButton.AlternateText" xml:space="preserve">
<value>Click to modify the filter...</value>
</data>
<data name="chkGalleryAppsAlwaysIgnoreDependencies.Text" xml:space="preserve">
<value>Always ignore dependencies</value>
</data>
<data name="FilterDialogButton.Text" xml:space="preserve">
<value>Click to create a filter...</value>
</data>
<data name="GalleryFeedFilter.Text" xml:space="preserve">
<value>Gallery feed filter:</value>
</data>

View file

@ -219,6 +219,9 @@
<data name="FilterDialogButton.Text" xml:space="preserve">
<value>Click to create a filter...</value>
</data>
<data name="chkGalleryAppsAlwaysIgnoreDependencies.Text" xml:space="preserve">
<value>Always ignore dependencies</value>
</data>
<data name="GalleryFeedFilter.Text" xml:space="preserve">
<value>Gallery feed filter:</value>
</data>

View file

@ -135,6 +135,11 @@
<asp:LinkButton runat="server" ID="FilterDialogButton" meta:resourcekey="FilterDialogButton" Text="Click to apply a filter..." />
</td>
</tr>
<tr>
<td colspan="2">
<asp:CheckBox ID="chkGalleryAppsAlwaysIgnoreDependencies" runat="server" meta:resourcekey="chkGalleryAppsAlwaysIgnoreDependencies" Text="Always ignore dependencies" />
</td>
</tr>
</table>
</fieldset>
<br />

View file

@ -132,6 +132,7 @@ namespace WebsitePanel.Portal.ProviderControls
ActiveDirectoryIntegration.BindSettings(settings);
//
FilteredAppIds = settings["GalleryAppsFilter"];
chkGalleryAppsAlwaysIgnoreDependencies.Checked = Utils.ParseBool(settings["GalleryAppsAlwaysIgnoreDependencies"], false);
}
public void SaveSettings(StringDictionary settings)
@ -166,6 +167,7 @@ namespace WebsitePanel.Portal.ProviderControls
ActiveDirectoryIntegration.SaveSettings(settings);
//
settings["GalleryAppsFilter"] = GetAppsCatalogFilter();
settings["GalleryAppsAlwaysIgnoreDependencies"] = chkGalleryAppsAlwaysIgnoreDependencies.Checked.ToString();
}
}
}

View file

@ -255,6 +255,15 @@ namespace WebsitePanel.Portal.ProviderControls {
/// </remarks>
protected global::System.Web.UI.WebControls.LinkButton FilterDialogButton;
/// <summary>
/// chkGalleryAppsAlwaysIgnoreDependencies control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.CheckBox chkGalleryAppsAlwaysIgnoreDependencies;
/// <summary>
/// FilterDialogPanel control.
/// </summary>

View file

@ -214,9 +214,19 @@
</tr>
--%>
</table>
<uc6:EditFeedsList ID="wpiEditFeedsList" runat="server" DisplayNames="false" />
<br/>
<asp:CheckBox ID="chkGalleryAppsAlwaysIgnoreDependencies" runat="server" meta:resourcekey="chkGalleryAppsAlwaysIgnoreDependencies" Text="Always ignore dependencies" />
</fieldset>
<br />
<asp:Panel ID="FilterDialogPanel" runat="server" CssClass="PopupContainer" style="display:none"

View file

@ -200,6 +200,8 @@ namespace WebsitePanel.Portal.ProviderControls
WDeployDisabledCheckBox.Checked = true;
}
}
chkGalleryAppsAlwaysIgnoreDependencies.Checked = Utils.ParseBool(settings["GalleryAppsAlwaysIgnoreDependencies"], false);
}
public void SaveSettings(StringDictionary settings)
@ -269,6 +271,8 @@ namespace WebsitePanel.Portal.ProviderControls
{
settings[WDeployEnabled] = Boolean.FalseString;
}
settings["GalleryAppsAlwaysIgnoreDependencies"] = chkGalleryAppsAlwaysIgnoreDependencies.Checked.ToString();
}
protected void DownladAndIstallApeLinkButton_Click(object sender, EventArgs e)

View file

@ -337,6 +337,15 @@ namespace WebsitePanel.Portal.ProviderControls {
/// </remarks>
protected global::WebsitePanel.Portal.UserControls.EditFeedsList wpiEditFeedsList;
/// <summary>
/// chkGalleryAppsAlwaysIgnoreDependencies control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.CheckBox chkGalleryAppsAlwaysIgnoreDependencies;
/// <summary>
/// FilterDialogPanel control.
/// </summary>

View file

@ -150,8 +150,6 @@ namespace WebsitePanel.Portal
AddDatabaseEngine(DeploymentParameterWellKnownTag.Sql, ResourceGroups.MsSql2005, GetSharedLocalizedString("ResourceGroup." + ResourceGroups.MsSql2005));
if (cntx.Groups.ContainsKey(ResourceGroups.MsSql2000))
AddDatabaseEngine(DeploymentParameterWellKnownTag.Sql, ResourceGroups.MsSql2000, GetSharedLocalizedString("ResourceGroup." + ResourceGroups.MsSql2000));
SetDBPolicies(UserSettings.MSSQL_POLICY, parameters);
}
// MySQL Server
@ -165,8 +163,6 @@ namespace WebsitePanel.Portal
AddDatabaseEngine(DeploymentParameterWellKnownTag.MySql, ResourceGroups.MySql5, GetSharedLocalizedString("ResourceGroup." + ResourceGroups.MySql5));
if (cntx.Groups.ContainsKey(ResourceGroups.MySql4))
AddDatabaseEngine(DeploymentParameterWellKnownTag.MySql, ResourceGroups.MySql4, GetSharedLocalizedString("ResourceGroup." + ResourceGroups.MySql4));
SetDBPolicies(UserSettings.MYSQL_POLICY, parameters);
}
// SQLite
@ -181,6 +177,7 @@ namespace WebsitePanel.Portal
if (FindParameterByTag(parameters, DeploymentParameterWellKnownTag.VistaDB) != null)
AddDatabaseEngine(DeploymentParameterWellKnownTag.VistaDB, "", GetLocalizedString("DatabaseEngine.VistaDB"));
BindDBPolicies(parameters);
// hide module if no database required
divDatabase.Visible = (databaseEngines.Items.Count > 0);
@ -190,18 +187,42 @@ namespace WebsitePanel.Portal
}
#region prefix & suffix for database name & username
private void SetDBPolicies(string policy, IEnumerable<DeploymentParameter> parameters)
private void BindDBPolicies(List<DeploymentParameter> parameters)
{
// MS SQL Server
if (FindParameterByTag(parameters, DeploymentParameterWellKnownTag.Sql) != null)
{
SetDBPolicies(UserSettings.MSSQL_POLICY, parameters, DeploymentParameterWellKnownTag.Sql);
}
// MySQL Server
if (FindParameterByTag(parameters, DeploymentParameterWellKnownTag.MySql) != null)
{
SetDBPolicies(UserSettings.MYSQL_POLICY, parameters, DeploymentParameterWellKnownTag.MySql);
}
}
private void SetDBPolicies(string policy, IEnumerable<DeploymentParameter> parameters, DeploymentParameterWellKnownTag dbTag)
{
foreach (DeploymentParameter parameter in parameters)
{
if ((parameter.WellKnownTags & DeploymentParameterWellKnownTag.DBName) != 0)
if (
(parameter.WellKnownTags & DeploymentParameterWellKnownTag.DBName) != 0
&&
(parameter.WellKnownTags & dbTag) != 0
)
{
// database name
string policyValue = GetPackagePolicy(policy, "DatabaseNamePolicy");
ApplyPrefixSuffixPolicy(parameter, policyValue);
}
if ((parameter.WellKnownTags & DeploymentParameterWellKnownTag.DBUserName) != 0)
if (
(parameter.WellKnownTags & DeploymentParameterWellKnownTag.DBUserName) != 0
&&
(parameter.WellKnownTags & dbTag) != 0
)
{
// user name
string policyValue = GetPackagePolicy(policy, "UserNamePolicy");
@ -302,7 +323,13 @@ namespace WebsitePanel.Portal
protected void databaseEngines_SelectedIndexChanged(object sender, EventArgs e)
{
BindParameters();
// load parameters
List<DeploymentParameter> parameters = GetApplicationParameters();
if (parameters == null)
return;
BindDBPolicies(parameters);
BindParameters(parameters);
}
protected void databaseMode_SelectedIndexChanged(object sender, EventArgs e)