Skip to content

Commit 2a42d57

Browse files
authored
Merge pull request #15 from SCullman/FormTemplate
DNN FnL 6.3 (meanwhile Fnl 6.4)
2 parents f754038 + 885da7b commit 2a42d57

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

52 files changed

+5599
-5305
lines changed

App_LocalResources/configuration.ascx.resx

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -112,10 +112,10 @@
112112
<value>2.0</value>
113113
</resheader>
114114
<resheader name="reader">
115-
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
115+
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
116116
</resheader>
117117
<resheader name="writer">
118-
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
118+
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
119119
</resheader>
120120
<data name="Ascending.Text" xml:space="preserve">
121121
<value>Ascending</value>
@@ -623,7 +623,19 @@
623623
<data name="DisplaySettings.Text" xml:space="preserve">
624624
<value>Current View Options </value>
625625
</data>
626-
<data name="noFormSettings.Text" xml:space="preserve">
627-
<value>No settings for this configuration</value>
626+
<data name="EnableFormTemplate.Text" xml:space="preserve">
627+
<value>Enable Form Template</value>
628+
</data>
629+
<data name="FormTemplate.Text" xml:space="preserve">
630+
<value>Form Template</value>
631+
</data>
632+
<data name="GenerateFormTemplate.Text" xml:space="preserve">
633+
<value>Generate Template (optimized for Bootstrap) </value>
634+
</data>
635+
<data name="EnableFormTemplate.Help" xml:space="preserve">
636+
<value>Override the rendering of the form.</value>
637+
</data>
638+
<data name="FormTemplate.Help" xml:space="preserve">
639+
<value>The template is set as html. To insert labels, use the [label-for:Fieldname] token, for the input fields [editor-for:Fieldname]</value>
628640
</data>
629641
</root>

App_LocalResources/form.ascx.resx

Lines changed: 158 additions & 146 deletions
Large diffs are not rendered by default.

AssemblyInfo.cs

Lines changed: 4 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -1,38 +1,15 @@
11
using System;
22
using System.Reflection;
33
using System.Runtime.InteropServices;
4-
5-
// Allgemeine Informationen über eine Assembly werden über die folgenden
6-
// Attribute gesteuert. Ändern Sie diese Attributwerte, um die Informationen zu ändern,
7-
// die mit einer Assembly verknüpft sind.
8-
9-
// Die Werte der Assemblyattribute überprüfen
10-
114
[assembly: AssemblyTitle("DotNetNuke.Modules.UserDefinedTable")]
12-
[assembly: AssemblyDescription("ASP.NET Open Source Portal Application,Form and List Module")]
5+
[assembly: AssemblyDescription("DNN Form and List ")]
136
[assembly: AssemblyCompany("DNN Corp")]
14-
[assembly: AssemblyProduct("http://www.dotnetnuke.com")]
15-
[assembly:
16-
AssemblyCopyright("Portal engine source code is copyright &copy; 2002-YYYY by DotNetNuke. All Rights Reserved")]
7+
[assembly: AssemblyCopyright("DotNetNuke® is copyright 2002-2016 by DNN Corp. All Rights Reserved.")]
178
[assembly: AssemblyTrademark("DotNetNuke")]
189
[assembly: ComVisible(false)]
1910

20-
//Die folgende GUID bestimmt die ID der Typbibliothek, wenn dieses Projekt für COM verfügbar gemacht wird
21-
22-
[assembly: Guid("334e9cee-0d47-4d70-924b-b5098a3432cb")]
23-
24-
// Versionsinformationen für eine Assembly bestehen aus den folgenden vier Werten:
25-
//
26-
// Hauptversion
27-
// Nebenversion
28-
// Buildnummer
29-
// Revision
30-
//
31-
// Sie können alle Werte angeben oder die standardmäßigen Build- und Revisionsnummern
32-
// übernehmen, indem Sie "*" eingeben:
33-
// <Assembly: AssemblyVersion("1.0.*")>
3411

35-
[assembly: AssemblyVersion("06.02.00.00")]
12+
[assembly: AssemblyVersion("06.04.00.00")]
3613
[assembly: CLSCompliant(true)]
37-
[assembly: AssemblyFileVersion("06.02.00.00")]
14+
[assembly: AssemblyFileVersion("06.04.00.00")]
3815

BusinessController.cs

Lines changed: 67 additions & 60 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22
using System.Collections;
33
using System.Collections.Generic;
44
using System.Data;
5-
using System.Globalization;
65
using System.IO;
76
using System.Web;
87
using System.Xml;
@@ -11,35 +10,34 @@
1110
using DotNetNuke.Modules.UserDefinedTable.Components;
1211
using DotNetNuke.Modules.UserDefinedTable.Interfaces;
1312
using DotNetNuke.Services.Exceptions;
14-
using DotNetNuke.Services.FileSystem;
15-
using DotNetNuke.Services.Search;
13+
using DotNetNuke.Services.Search.Entities;
1614
using Microsoft.VisualBasic;
1715
using Globals = DotNetNuke.Common.Globals;
1816

1917
namespace DotNetNuke.Modules.UserDefinedTable
2018
{
21-
public class BusinessController : ISearchable, IPortable, IPortable2
19+
public class BusinessController : ModuleSearchBase, IPortable, IPortable2
2220
{
2321
public enum SettingsType
2422
{
2523
ModuleSettings,
2624
TabModuleSettings
2725
}
2826

29-
static DataTable GetSettingsTable(int id, SettingsType type)
30-
{
31-
var modules = new ModuleController();
32-
Hashtable settings = null;
27+
static DataTable GetSettingsTable(Hashtable settings, SettingsType type)
28+
{
29+
30+
3331
DataTable returnValue = null;
3432

3533
switch (type)
3634
{
37-
case SettingsType.ModuleSettings:
38-
settings = modules.GetModuleSettings(id);
35+
case SettingsType.ModuleSettings:
36+
3937
returnValue = new DataTable(DataSetTableName.Settings);
4038
break;
41-
case SettingsType.TabModuleSettings:
42-
settings = modules.GetTabModuleSettings(id);
39+
case SettingsType.TabModuleSettings:
40+
4341
returnValue = new DataTable(DataSetTableName.TabSettings);
4442
break;
4543
}
@@ -52,38 +50,38 @@ static DataTable GetSettingsTable(int id, SettingsType type)
5250
}
5351

5452

55-
var dc = new DataColumn(SettingsTableColumn.Setting, typeof (string))
56-
{ColumnMapping = MappingType.Attribute};
57-
if (returnValue != null) returnValue.Columns.Add(dc);
58-
59-
dc = new DataColumn(SettingsTableColumn.Value, typeof (string)) {ColumnMapping = MappingType.Attribute};
60-
if (returnValue != null)
61-
{
62-
returnValue.Columns.Add(dc);
63-
64-
foreach (var key in sortedSettings.Keys)
65-
{
66-
var row = returnValue.NewRow();
67-
row[SettingsTableColumn.Setting] = key;
68-
row[SettingsTableColumn.Value] = sortedSettings[key];
69-
returnValue.Rows.Add(row);
70-
}
71-
return returnValue;
53+
using (var nameCol = new DataColumn(SettingsTableColumn.Setting, typeof(string)) { ColumnMapping = MappingType.Attribute })
54+
{
55+
if (returnValue != null)
56+
{
57+
returnValue.Columns.Add(nameCol);
58+
using (var valCol = new DataColumn(SettingsTableColumn.Value, typeof(string)) { ColumnMapping = MappingType.Attribute })
59+
{
60+
returnValue.Columns.Add(valCol);
61+
foreach (var key in sortedSettings.Keys)
62+
{
63+
var row = returnValue.NewRow();
64+
row[SettingsTableColumn.Setting] = key;
65+
row[SettingsTableColumn.Value] = sortedSettings[key];
66+
returnValue.Rows.Add(row);
67+
}
68+
}
69+
}
7270
}
73-
return null;
71+
return returnValue;
7472
}
7573

7674
DataTable GetStylesheetTable(Components.Settings settings, int portalId)
7775
{
7876
var returnValue = new DataTable(DataSetTableName.Stylesheets);
7977

80-
returnValue.Columns.Add(new DataColumn(StylesheetTableColumn.NameOfSetting, typeof (string)));
81-
returnValue.Columns.Add(new DataColumn(StylesheetTableColumn.LocalFilePath, typeof (string)));
82-
returnValue.Columns.Add(new DataColumn(StylesheetTableColumn.Stylesheet, typeof (string)));
78+
returnValue.Columns.Add(new DataColumn(StylesheetTableColumn.NameOfSetting, typeof(string)));
79+
returnValue.Columns.Add(new DataColumn(StylesheetTableColumn.LocalFilePath, typeof(string)));
80+
returnValue.Columns.Add(new DataColumn(StylesheetTableColumn.Stylesheet, typeof(string)));
8381

84-
var renderMethod = string.Format("UDT_{0}", settings.RenderingMethod );
82+
var renderMethod = string.Format("UDT_{0}", settings.RenderingMethod);
8583
var listScript = renderMethod == SettingName.XslUserDefinedStyleSheet
86-
? settings.ScriptByRenderingMethod( renderMethod )
84+
? settings.ScriptByRenderingMethod(renderMethod)
8785
: string.Empty;
8886
if (listScript.Length > 0)
8987
{
@@ -106,16 +104,16 @@ DataTable GetStylesheetTable(Components.Settings settings, int portalId)
106104
}
107105

108106
return returnValue;
109-
}
110-
107+
}
108+
111109
/// -----------------------------------------------------------------------------
112110
/// <summary>
113111
/// Implements the search interface for DotNetNuke
114112
/// </summary>
115113
/// -----------------------------------------------------------------------------
116-
public SearchItemInfoCollection GetSearchItems(ModuleInfo modInfo)
117-
{
118-
var searchItemCollection = new SearchItemInfoCollection();
114+
public override IList<SearchDocument> GetModifiedSearchDocuments(ModuleInfo modInfo, DateTime beginDateUtc)
115+
{
116+
var searchDocuments = new List<SearchDocument>();
119117
var udtController = new UserDefinedTableController(modInfo);
120118

121119
try
@@ -128,8 +126,7 @@ public SearchItemInfoCollection GetSearchItems(ModuleInfo modInfo)
128126
var colnameChangedAt = udtController.ColumnNameByDataType(dsUserDefinedRows,
129127
DataTypeNames.UDT_DataType_ChangedAt);
130128

131-
var moduleController = new ModuleController();
132-
var settings = moduleController.GetModuleSettings(modInfo.ModuleID);
129+
var settings = modInfo.ModuleSettings;
133130
var includeInSearch = !(settings[SettingName.ExcludeFromSearch].AsBoolean());
134131

135132
if (includeInSearch)
@@ -139,11 +136,11 @@ public SearchItemInfoCollection GetSearchItems(ModuleInfo modInfo)
139136
var changedDate = DateTime.Today;
140137
var changedByUserId = 0;
141138

142-
if (colnameChangedAt != string.Empty && ! Information.IsDBNull(row[colnameChangedAt]))
139+
if (colnameChangedAt != string.Empty && !Information.IsDBNull(row[colnameChangedAt]))
143140
{
144141
changedDate = Convert.ToDateTime(row[colnameChangedAt]);
145142
}
146-
if (colnameChangedBy != string.Empty && ! Information.IsDBNull(row[colnameChangedBy]))
143+
if (colnameChangedBy != string.Empty && !Information.IsDBNull(row[colnameChangedBy]))
147144
{
148145
changedByUserId = ModuleSecurity.UserId(row[colnameChangedBy].ToString(), modInfo.PortalID);
149146
}
@@ -163,11 +160,20 @@ public SearchItemInfoCollection GetSearchItems(ModuleInfo modInfo)
163160
if (desc.EndsWith("<br/>"))
164161
{
165162
desc = desc.Substring(0, Convert.ToInt32(desc.Length - 5));
166-
}
167-
var searchItem = new SearchItemInfo(modInfo.ModuleTitle, desc, changedByUserId, changedDate,
168-
modInfo.ModuleID, row[DataTableColumn.RowId].ToString(),
169-
desc);
170-
searchItemCollection.Add(searchItem);
163+
}
164+
165+
var searchDoc = new SearchDocument
166+
{
167+
UniqueKey = row[DataTableColumn.RowId].ToString(),
168+
PortalId = modInfo.PortalID,
169+
Title = modInfo.ModuleTitle,
170+
Description = desc,
171+
Body = desc,
172+
ModifiedTimeUtc = changedDate
173+
};
174+
175+
searchDocuments.Add(searchDoc);
176+
171177
}
172178
}
173179
}
@@ -176,7 +182,7 @@ public SearchItemInfoCollection GetSearchItems(ModuleInfo modInfo)
176182
Exceptions.LogException(ex);
177183
}
178184

179-
return searchItemCollection;
185+
return searchDocuments;
180186
}
181187

182188

@@ -223,15 +229,16 @@ public DataSet ExportModuleDataSet(int moduleId, int tabId)
223229
{
224230
var udtController = new UserDefinedTableController(moduleId);
225231
ds = udtController.GetDataSet(false);
226-
ds.Tables.Add(GetSettingsTable(moduleId, SettingsType.ModuleSettings));
232+
var moduleInfo = new ModuleController().GetModule(moduleId);
233+
ds.Tables.Add(GetSettingsTable(moduleInfo.ModuleSettings, SettingsType.ModuleSettings));
227234
}
228235
else
229236
{
230237
var moduleInfo = new ModuleController().GetModule(moduleId, tabId);
231238
var udtController = new UserDefinedTableController(moduleInfo);
232239
ds = udtController.GetDataSet(false);
233-
ds.Tables.Add(GetSettingsTable(moduleId, SettingsType.ModuleSettings));
234-
ds.Tables.Add(GetSettingsTable(moduleInfo.TabModuleID, SettingsType.TabModuleSettings));
240+
ds.Tables.Add(GetSettingsTable(moduleInfo.ModuleSettings, SettingsType.ModuleSettings));
241+
ds.Tables.Add(GetSettingsTable(moduleInfo.TabModuleSettings, SettingsType.TabModuleSettings));
235242
ds.Tables.Add(GetStylesheetTable(udtController.Settings, moduleInfo.PortalID));
236243
}
237244
return (ds);
@@ -277,7 +284,7 @@ public void ImportModule(int moduleId, int tabId, string content, string version
277284
{
278285
AddTabModuleSettings(modules, tabModuleId, ds);
279286
}
280-
if (! isInstance)
287+
if (!isInstance)
281288
{
282289
AddModuleSettings(moduleId, modules, ds);
283290
//Fields - first delete old Fields
@@ -348,7 +355,7 @@ static void ImportStyleSheet(int moduleId, bool isInstance, int tabModuleId, Mod
348355
}
349356
else
350357
{
351-
if (! isInstance)
358+
if (!isInstance)
352359
{
353360
modules.UpdateModuleSetting(moduleId, settingName,
354361
string.Format("{0}/{1}", Definition.XSLFolderName, fileName));
@@ -375,10 +382,10 @@ static void AddFields(int moduleId, DataSet ds)
375382
var fieldSettings = ds.Tables[DataSetTableName.FieldSettings];
376383
foreach (DataRow row in ds.Tables[DataSetTableName.Fields].Rows)
377384
{
378-
var oldFieldId = row[FieldsTableColumn.Id].AsInt( );
379-
var newFieldId=
385+
var oldFieldId = row[FieldsTableColumn.Id].AsInt();
386+
var newFieldId =
380387
FieldController.AddField(moduleId, row[FieldsTableColumn.Title].ToString(),
381-
row.AsString(FieldsTableColumn.Order).AsInt(fieldIndex ),
388+
row.AsString(FieldsTableColumn.Order).AsInt(fieldIndex),
382389
row.AsString((FieldsTableColumn.HelpText)),
383390
row.AsString(FieldsTableColumn.Required).AsBoolean(),
384391
row.AsString((FieldsTableColumn.Type)),
@@ -400,8 +407,8 @@ static void AddFields(int moduleId, DataSet ds)
400407
foreach (DataRowView setting in fieldSettings.WithFieldId(oldFieldId))
401408
{
402409
FieldSettingsController.UpdateFieldSetting(
403-
(string) setting["SettingName"],
404-
(string) setting["SettingValue"],
410+
(string)setting["SettingName"],
411+
(string)setting["SettingValue"],
405412
newFieldId);
406413
}
407414
}

Components/BaseController.cs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,10 +31,11 @@ public Components.Settings Settings
3131
if (_moduleSettings == null)
3232
{
3333
var mc = new ModuleController();
34-
_moduleSettings = new Hashtable(mc.GetModuleSettings(ModuleId));
34+
_configuration = mc.GetModule(ModuleId, TabModuleId);
35+
_moduleSettings = new Hashtable(_configuration.ModuleSettings);
3536
if (TabModuleId != Null.NullInteger)
3637
{
37-
var tabModuleSettings = mc.GetTabModuleSettings(TabModuleId);
38+
var tabModuleSettings = _configuration.TabModuleSettings;
3839
foreach (string strKey in tabModuleSettings.Keys)
3940
{
4041
_moduleSettings[strKey] = tabModuleSettings[strKey];

Components/GlobalConstants.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -164,5 +164,7 @@ public class SettingName
164164
public const string UponSubmitAction = "UDT_UponSubmitAction";
165165
public const string UponSubmitRedirect = "UDT_UponSubmitRedirect";
166166
public const string UseButtonsInForm = "UseButtonsInForm";
167+
public const string FormTemplate = "FormTemplate";
168+
public const string EnableFormTemplate = "EnableFormTemplate";
167169
}
168170
}

Components/ModuleSecurity.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,8 +37,8 @@ public class ModuleSecurity
3737
public ModuleSecurity(int moduleId, int tabId, Components.Settings settings)
3838
{
3939
var moduleController = new ModuleController();
40-
Settings = settings ?? new Settings(moduleController.GetModuleSettings(moduleId));
41-
var moduleInfo = moduleController.GetModule(moduleId, tabId);
40+
var moduleInfo = moduleController.GetModule(moduleId, tabId);
41+
Settings = settings ?? new Settings(moduleInfo.ModuleSettings);
4242
if (moduleInfo == null) return;
4343
var mp = moduleInfo.ModulePermissions;
4444
_hasEditRowPermission = ModulePermissionController.HasModulePermission(mp, PermissionName.HasEditRowPermission);

0 commit comments

Comments
 (0)