diff --git a/workflow/engine/methods/login/forgotPassword.php b/workflow/engine/methods/login/forgotPassword.php
new file mode 100644
index 000000000..f05b963b3
--- /dev/null
+++ b/workflow/engine/methods/login/forgotPassword.php
@@ -0,0 +1,27 @@
+.
+ *
+ * For more information, contact Colosa Inc, 2566 Le Jeune Rd.,
+ * Coral Gables, FL, 33134, USA, or email info@colosa.com.
+ *
+ */
+ $G_PUBLISH = new Publisher ();
+ $G_PUBLISH->AddContent ( 'xmlform', 'xmlform', 'login/forgotPassword', '', $aFields, SYS_URI . 'login/retrivePassword.php');
+ G::RenderPage ( "publish" );
\ No newline at end of file
diff --git a/workflow/engine/methods/login/retrivePassword.php b/workflow/engine/methods/login/retrivePassword.php
new file mode 100644
index 000000000..a65fc4bf2
--- /dev/null
+++ b/workflow/engine/methods/login/retrivePassword.php
@@ -0,0 +1,116 @@
+getByUsername($data['USR_USERNAME']);
+if($aFields['USR_EMAIL']==$data['USR_EMAIL'])
+{
+ require_once ( "classes/class.pmFunctions.php" );
+ $aSetup = getEmailConfiguration();
+ // generate a new password
+ $newPass=G::generate_password();
+ require_once 'classes/model/Users.php';
+ $oUser = new Users();
+ $aData['USR_UID'] = $aFields['USR_UID'];
+ $aData['USR_PASSWORD'] = md5($newPass);
+ $RBAC->updateUser($aData,'PROCESSMAKER_ADMIN');
+ G::LoadClass("system");
+ $sFrom = ($aSetup['MESS_ACCOUNT'] != '' ? $aSetup['MESS_ACCOUNT'] . ' ' : '') . '<' . $aSetup['MESS_ACCOUNT'] . '>';
+ $sSubject = G::LoadTranslation('ID_RESET_PASSWORD').' - ProcessMaker' ;
+ $msg = '
+
\ No newline at end of file
diff --git a/workflow/engine/templates/setup/loginSettings.js b/workflow/engine/templates/setup/loginSettings.js
new file mode 100644
index 000000000..b150b17f6
--- /dev/null
+++ b/workflow/engine/templates/setup/loginSettings.js
@@ -0,0 +1,101 @@
+Ext.onReady(function(){
+
+ var cmbLanguages = new Ext.form.ComboBox({
+ fieldLabel : TRANSLATIONS.ID_CACHE_LANGUAGE, // 'Language'
+ hiddenName : 'lang',
+ store : new Ext.data.Store( {
+ proxy : new Ext.data.HttpProxy( {
+ url : 'loginSettingsAjax',
+ method : 'POST'
+ }),
+ baseParams : {request : 'getLangList'},
+ reader : new Ext.data.JsonReader( {
+ root : 'rows',
+ fields : [ {name : 'LAN_ID'}, {name : 'LAN_NAME'} ]
+ })
+ }),
+ valueField : 'LAN_ID',
+ displayField : 'LAN_NAME',
+ emptyText : 'Select',
+ selectOnFocus : true,
+ editable : false,
+ allowBlank : false,
+ listeners:{
+ select: function(){ChangeSettings('1');}
+ }
+ });
+
+ cmbLanguages.store.on('load',function(){ cmbLanguages.setValue ( currentLang ) });
+ cmbLanguages.store.load();
+ saveButton = new Ext.Action({
+ text : _('ID_SAVE_SETTINGS'),
+ disabled : true,
+ handler : saveSettings
+ });
+
+ loginFields = new Ext.form.FieldSet({
+ title: _('ID_LOGIN_SETTINGS'),
+ items : [
+ cmbLanguages,
+ {
+ xtype: 'checkbox',
+ checked: currentOption,
+ name: 'acceptRP',
+ fieldLabel: _('ID_ENABLE_FOTGOT_PASSWORD'),
+ id: 'ch_ii',
+ listeners:{
+ check:function(){ChangeSettings('2');}
+ }
+
+ },
+ ],
+ buttons : [saveButton]
+ });
+
+
+ var frm = new Ext.FormPanel( {
+ title: ' ',
+ id:'frm',
+ labelWidth: 150,
+ width:400,
+ labelAlign:'right',
+ autoScroll: true,
+ bodyStyle:'padding:2px',
+ waitMsgTarget : true,
+ frame: true,
+
+ defaults: {
+ allowBlank: false,
+ msgTarget: 'side',
+ align:'center'
+ },
+ items:[ loginFields ]
+
+ });
+ //render to process-panel
+ frm.render(document.body);
+});
+
+function saveSettings() {
+ Ext.getCmp('frm').getForm().submit( {
+ url : 'loginSettingsAjax?request=saveSettings',
+ waitMsg : _('ID_SAVING_PROCESS'),
+ timeout : 36000,
+ success : function(obj, resp) {
+ //nothing to do
+ response = Ext.decode(resp.response.responseText);
+ if (response.enable)
+ parent.PMExt.notify(_('ID_LOGIN_SETTINGS'),_('ID_ENABLE_FORGOT_PASSWORD'));
+ else
+ parent.PMExt.notify(_('ID_LOGIN_SETTINGS'),_('ID_DISABLE_FORGOT_PASSWORD'));
+ saveButton.disable();
+ },
+ failure: function(obj, resp) {
+ Ext.Msg.alert( _('ID_ERROR'), resp.result.msg);
+ }
+ });
+}
+
+ChangeSettings = function(iType){
+ saveButton.enable();
+}
diff --git a/workflow/engine/xmlform/login/forgotPassword.xml b/workflow/engine/xmlform/login/forgotPassword.xml
new file mode 100644
index 000000000..aced56950
--- /dev/null
+++ b/workflow/engine/xmlform/login/forgotPassword.xml
@@ -0,0 +1,124 @@
+
+
+
+ I forgot my password
+
+
+ User
+
+
+ Email
+
+
+
+
+ Send Request
+
+
+
+
+