Index: admin_templates/login.tpl
===================================================================
--- admin_templates/login.tpl (revision 14610)
+++ admin_templates/login.tpl (working copy)
@@ -153,6 +153,18 @@
+
+
+
+
+
+
401 Authentication Required
Index: install/english.lang
===================================================================
--- install/english.lang (revision 14610)
+++ install/english.lang (working copy)
@@ -1498,6 +1498,8 @@
QXV0by1EZXRlY3Q=
Q29va2llcw==
UXVlcnkgU3RyaW5nIChTSUQp
+ UmVzZXQgInJvb3QiIHBhc3N3b3Jk
+ WW91ciAicm9vdCIgcGFzc3dvcmQgaGFzIGJlZW4gcmVzZXQuIFBsZWFzZSByZW1vdmUgREJHX1JFU0VUX1JPT1QgY29uc3RhbnQgYW5kIGNoZWNrIHlvdXIgZS1tYWlsIGFkZHJlc3Mu
U3ViamVjdDogTmV3IENhdGVnb3J5ICI8aW5wMjpjX0ZpZWxkIG5hbWU9Ik5hbWUiLz4iIC0gQWRkZWQKCllvdXIgc3VnZ2VzdGVkIGNhdGVnb3J5ICI8aW5wMjpjX0ZpZWxkIG5hbWU9Ik5hbWUiLz4iIGhhcyBiZWVuIGFkZGVkLg==
@@ -1535,6 +1537,7 @@
U3ViamVjdDogVXNlciBVbnN1YnNyaWJlZCBmcm9tIE1haWxpbmcgTGlzdAoKQSB1c2VyICI8aW5wMjp1X0ZpZWxkIG5hbWU9IkVtYWlsIi8+IiBoYXMgdW5zdWJzY3JpYmVkIGZyb20gdGhlIG1haWxpbmcgbGlzdCBvbiA8YSBocmVmPSI8aW5wMjptX0Jhc2VVcmwvPiI+PGlucDI6bV9CYXNlVXJsLz48L2E+Lg==
U3ViamVjdDogVXNlciBSZWdpc3RyYXRpb24gaXMgVmFsaWRhdGVkCgpXZWxjb21lIHRvIEluLXBvcnRhbCE8YnIvPjxici8+DQoNCllvdXIgdXNlciByZWdpc3RyYXRpb24gaGFzIGJlZW4gYXBwcm92ZWQuIFlvdSBjYW4gbG9naW4gbm93IDxhIGhyZWY9IjxpbnAyOm1fQmFzZVVybC8+Ij48aW5wMjptX0Jhc2VVcmwvPjwvYT4gdXNpbmcgdGhlIGZvbGxvd2luZyBpbmZvcm1hdGlvbjo8YnIvPjxici8+DQoNCj09PT09PT09PT09PT09PT09PTxici8+DQpVc2VybmFtZTogIjxpbnAyOnVfRmllbGQgbmFtZT0iTG9naW4iLz4iPGJyLz4NClBhc3N3b3JkOiAiPGlucDI6dV9GaWVsZCBuYW1lPSJQYXNzd29yZF9wbGFpbiIvPiI8YnIvPg0KPT09PT09PT09PT09PT09PT09PGJyLz48YnIvPg0K
U3ViamVjdDogTmV3IFVzZXIgUmVnaXN0cmF0aW9uIGlzIFZhbGlkYXRlZAoKVXNlciAiPGlucDI6dV9GaWVsZCBuYW1lPSJMb2dpbiIvPiIgaGFzIGJlZW4gdmFsaWRhdGVkLg==
+ U3ViamVjdDogUm9vdCBSZXNldCBQYXNzd29yZAoKWW91ciBuZXcgcGFzc3dvcmQgaXM6IDxpbnAyOm1fR2V0IG5hbWU9InJvb3RfcGFzc3dvcmQiLz4=
Index: install/install_data.sql
===================================================================
--- install/install_data.sql (revision 14610)
+++ install/install_data.sql (working copy)
@@ -171,7 +171,9 @@
INSERT INTO Events (EventId, Event, ReplacementTags, Enabled, FrontEndOnly, Module, Description, Type, AllowChangingSender, AllowChangingRecipient) VALUES(DEFAULT, 'FORM.SUBMISSION.REPLY.FROM.USER.BOUNCED', NULL, 1, 0, 'Core', 'Form Submission Admin Reply Delivery Failure', 1, 1, 1);
INSERT INTO Events (EventId, Event, ReplacementTags, Enabled, FrontEndOnly, Module, Description, Type, AllowChangingSender, AllowChangingRecipient) VALUES(DEFAULT, 'USER.NEW.PASSWORD', NULL, 1, 0, 'Core', 'Sends new password to an existing user', 0, 1, 0);
INSERT INTO Events (EventId, Event, ReplacementTags, Enabled, FrontEndOnly, Module, Description, Type, AllowChangingSender, AllowChangingRecipient) VALUES(DEFAULT, 'USER.ADD.BYADMIN', NULL, 1, 0, 'Core', 'Sends password to a new user', 0, 1, 0);
+INSERT INTO Events (EventId, Event, ReplacementTags, Enabled, FrontEndOnly, Module, Description, Type, AllowChangingSender, AllowChangingRecipient) VALUES(DEFAULT, 'ROOT.RESET.PASSWORD', NULL, 1, 0, 'Core', 'Root Reset Password', 1, 0, 0);
+
INSERT INTO IdGenerator VALUES ('100');
INSERT INTO PortalGroup VALUES (15, 'Everyone', 'Everyone', 0, 1, 0, 1, 0);
Index: install/upgrades.sql
===================================================================
--- install/upgrades.sql (revision 14610)
+++ install/upgrades.sql (working copy)
@@ -2107,6 +2107,8 @@
SET DirectLinkAuthKey = SUBSTRING( MD5( CONCAT(CategoryId, ':', ParentId, ':', l<%PRIMARY_LANGUAGE%>_Name, ':b38') ), 1, 20)
WHERE DirectLinkAuthKey = '';
+INSERT INTO Events (EventId, Event, ReplacementTags, Enabled, FrontEndOnly, FromUserId, Module, Description, Type) VALUES(DEFAULT, 'ROOT.RESET.PASSWORD', NULL, 1, 0, NULL, 'Core:Category', 'Root Reset Password', 1);
+
INSERT INTO ConfigurationValues VALUES(DEFAULT, 'ExcludeTemplateSectionsFromSearch', '0', 'In-Portal', 'in-portal:configure_categories', 'la_title_General', 'la_config_ExcludeTemplateSectionsFromSearch', 'checkbox', '', '', 10.15, 0, 0, NULL);
ALTER TABLE Agents
Index: units/users/users_event_handler.php
===================================================================
--- units/users/users_event_handler.php (revision 14610)
+++ units/users/users_event_handler.php (working copy)
@@ -128,6 +128,10 @@
// permission is checked in OnLogin event directly
return true;
}
+
+ if ( $event->Name == 'OnResetRootPassword' ) {
+ return defined('DBG_RESET_ROOT') && DBG_RESET_ROOT;
+ }
if ( !$this->Application->isAdminUser ) {
$user_id = $this->Application->RecallVar('user_id');
@@ -1689,4 +1693,24 @@
}
}
}
+
+ /**
+ * Generates new Root password and email it
+ *
+ * @param kEvent $event
+ */
+ function OnResetRootPassword(&$event)
+ {
+ $new_root_password = kUtil::generatePassword();
+ $password_formatter =& $this->Application->recallObject('kPasswordFormatter');
+ /* @var $password_formatter kPasswordFormatter */
+
+ $new_root_password_encrypted = $password_formatter->EncryptPassword($new_root_password, 'b38');
+
+ $this->Application->SetConfigValue('RootPass', $new_root_password_encrypted);
+ $this->Application->SetVar('root_password', $new_root_password);
+ $this->Application->EmailEventAdmin('ROOT.RESET.PASSWORD');
+
+ $event->SetRedirectParam('reset', 1);
+ }
}