Skip to content

Commit 002234e

Browse files
committed
2.0.2
1 parent b4f7b71 commit 002234e

File tree

3 files changed

+59
-33
lines changed

3 files changed

+59
-33
lines changed

code/Fields.class.php

Lines changed: 20 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -454,6 +454,10 @@ public static function adminSaveExtendedClientFields($postdata)
454454
template_hook = 'edit_client_main_bottom'
455455
");
456456
$db->execute();
457+
458+
// this just standardizes the info for use by updateClientFields
459+
$postdata["info"] = $postdata["infohash"];
460+
457461
self::updateClientFields($db->fetchAll(PDO::FETCH_COLUMN), $client_id, $postdata);
458462
}
459463

@@ -468,6 +472,8 @@ public static function adminSaveExtendedClientFields($postdata)
468472
template_hook = 'edit_client_settings_bottom'
469473
");
470474
$db->execute();
475+
476+
$postdata["info"] = $postdata["infohash"];
471477
self::updateClientFields($db->fetchAll(PDO::FETCH_COLUMN), $client_id, $postdata);
472478
}
473479
}
@@ -692,19 +698,22 @@ private static function getNumClientFields ()
692698

693699
private static function updateClientFields ($client_field_ids, $client_id, $postdata)
694700
{
695-
if (!empty($client_field_ids)) {
696-
$settings = array();
697-
foreach ($client_field_ids as $id) {
698-
$settings["ecf_{$id}"] = "";
699-
if (isset($postdata["infohash"]["ecf_{$id}"])) {
700-
if (is_array($postdata["infohash"]["ecf_{$id}"])) {
701-
$settings["ecf_{$id}"] = join("|", $postdata["infohash"]["ecf_{$id}"]);
702-
} else {
703-
$settings["ecf_{$id}"] = $postdata["infohash"]["ecf_{$id}"];
704-
}
701+
if (empty($client_field_ids)) {
702+
return;
703+
}
704+
705+
$settings = array();
706+
foreach ($client_field_ids as $id) {
707+
$settings["ecf_{$id}"] = "";
708+
if (isset($postdata["info"]["ecf_{$id}"])) {
709+
if (is_array($postdata["info"]["ecf_{$id}"])) {
710+
$settings["ecf_{$id}"] = join("|", $postdata["info"]["ecf_{$id}"]);
711+
} else {
712+
$settings["ecf_{$id}"] = $postdata["info"]["ecf_{$id}"];
705713
}
706714
}
707-
Accounts::setAccountSettings($client_id, $settings);
708715
}
716+
717+
Accounts::setAccountSettings($client_id, $settings);
709718
}
710719
}

code/Module.class.php

Lines changed: 37 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@ class Module extends FormToolsModule
1919
protected $author = "Ben Keen";
2020
protected $authorEmail = "[email protected]";
2121
protected $authorLink = "https://formtools.org";
22-
protected $version = "2.0.1";
23-
protected $date = "2017-11-07";
22+
protected $version = "2.0.2";
23+
protected $date = "2018-01-16";
2424
protected $originLanguage = "en_us";
2525
protected $jsFiles = array(
2626
"{MODULEROOT}/scripts/field_options.js"
@@ -77,26 +77,7 @@ public function install($module_id)
7777
$db->execute();
7878
}
7979

80-
// ADMIN template and code hooks
81-
Hooks::registerHook("template", "extended_client_fields", "admin_edit_client_main_top", "", "displayFields");
82-
Hooks::registerHook("template", "extended_client_fields", "admin_edit_client_main_middle", "", "displayFields");
83-
Hooks::registerHook("template", "extended_client_fields", "admin_edit_client_main_bottom", "", "displayFields");
84-
Hooks::registerHook("template", "extended_client_fields", "admin_edit_client_settings_top", "", "displayFields");
85-
Hooks::registerHook("template", "extended_client_fields", "admin_edit_client_settings_bottom", "", "displayFields");
86-
Hooks::registerHook("template", "extended_client_fields", "admin_edit_view_client_map_filter_dropdown", "", "displayExtendedFieldOptions", 50, true);
87-
Hooks::registerHook("template", "extended_client_fields", "head_bottom", "", "insertHeadJs");
88-
Hooks::registerHook("code", "extended_client_fields", "end", "FormTools\\Administrator::adminUpdateClient", "adminSaveExtendedClientFields");
89-
90-
// CLIENT template and code hooks
91-
Hooks::registerHook("template", "extended_client_fields", "edit_client_main_top", "", "displayFields");
92-
Hooks::registerHook("template", "extended_client_fields", "edit_client_main_middle", "", "displayFields");
93-
Hooks::registerHook("template", "extended_client_fields", "edit_client_main_bottom", "", "displayFields");
94-
Hooks::registerHook("template", "extended_client_fields", "edit_client_settings_top", "", "displayFields");
95-
Hooks::registerHook("template", "extended_client_fields", "edit_client_settings_bottom", "", "displayFields");
96-
Hooks::registerHook("code", "extended_client_fields", "end", "FormTools\\Clients::updateClient", "clientSaveExtendedClientFields");
97-
98-
// general code hooks
99-
Hooks::registerHook("code", "extended_client_fields", "start", "FormTools\\Views::getViewFilterSql", "updateViewFilterSqlPlaceholders");
80+
$this->resetHooks();
10081

10182
} catch (PDOException $e) {
10283
$success = false;
@@ -107,6 +88,7 @@ public function install($module_id)
10788
return array($success, $message);
10889
}
10990

91+
11092
public function uninstall($module_id)
11193
{
11294
$db = Core::$db;
@@ -134,6 +116,39 @@ public function uninstall($module_id)
134116
}
135117

136118

119+
public function upgrade($module_id, $old_module_version)
120+
{
121+
$this->resetHooks();
122+
}
123+
124+
125+
public function resetHooks()
126+
{
127+
Hooks::unregisterModuleHooks("extended_client_fields");
128+
129+
// ADMIN template and code hooks
130+
Hooks::registerHook("template", "extended_client_fields", "admin_edit_client_main_top", "", "displayFields");
131+
Hooks::registerHook("template", "extended_client_fields", "admin_edit_client_main_middle", "", "displayFields");
132+
Hooks::registerHook("template", "extended_client_fields", "admin_edit_client_main_bottom", "", "displayFields");
133+
Hooks::registerHook("template", "extended_client_fields", "admin_edit_client_settings_top", "", "displayFields");
134+
Hooks::registerHook("template", "extended_client_fields", "admin_edit_client_settings_bottom", "", "displayFields");
135+
Hooks::registerHook("template", "extended_client_fields", "admin_edit_view_client_map_filter_dropdown", "", "displayExtendedFieldOptions", 50, true);
136+
Hooks::registerHook("template", "extended_client_fields", "head_bottom", "", "insertHeadJs");
137+
Hooks::registerHook("code", "extended_client_fields", "end", "FormTools\\Administrator::adminUpdateClient", "adminSaveExtendedClientFields");
138+
139+
// CLIENT template and code hooks
140+
Hooks::registerHook("template", "extended_client_fields", "edit_client_main_top", "", "displayFields");
141+
Hooks::registerHook("template", "extended_client_fields", "edit_client_main_middle", "", "displayFields");
142+
Hooks::registerHook("template", "extended_client_fields", "edit_client_main_bottom", "", "displayFields");
143+
Hooks::registerHook("template", "extended_client_fields", "edit_client_settings_top", "", "displayFields");
144+
Hooks::registerHook("template", "extended_client_fields", "edit_client_settings_bottom", "", "displayFields");
145+
Hooks::registerHook("code", "extended_client_fields", "end", "FormTools\\Clients::updateClient", "clientSaveExtendedClientFields");
146+
147+
// general code hooks
148+
Hooks::registerHook("code", "extended_client_fields", "start", "FormTools\\Views::getViewFilterSql", "updateViewFilterSqlPlaceholders");
149+
}
150+
151+
137152
/**
138153
* Updates the section titles.
139154
*

edit.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,8 @@
2323
$num_options = count($field_info["options"]);
2424

2525
$page_vars = array(
26+
"g_success" => $success,
27+
"g_message" => $message,
2628
"head_title" => $L["phrase_edit_field"],
2729
"field_info" => $field_info,
2830
"js_messages" => array("word_delete")

0 commit comments

Comments
 (0)