diff --git a/.gitignore b/.gitignore deleted file mode 100644 index e32129b9..00000000 --- a/.gitignore +++ /dev/null @@ -1,5 +0,0 @@ -/config/config.php -/nbproject/ -/res/ -/backup/ -/patches/ \ No newline at end of file diff --git a/ajax/ajax_accountsave.php b/ajax/ajax_accountSave.php similarity index 94% rename from ajax/ajax_accountsave.php rename to ajax/ajax_accountSave.php index 19c18353..d7da4cf4 100644 --- a/ajax/ajax_accountsave.php +++ b/ajax/ajax_accountSave.php @@ -2,11 +2,11 @@ /** * sysPass - * + * * @author nuxsmin * @link http://syspass.org - * @copyright 2012 Rubén Domínguez nuxsmin@syspass.org - * + * @copyright 2012-2014 Rubén Domínguez nuxsmin@syspass.org + * * This file is part of sysPass. * * sysPass is free software: you can redistribute it and/or modify @@ -23,8 +23,9 @@ * along with sysPass. If not, see . * */ + define('APP_ROOT', '..'); -include_once (APP_ROOT . "/inc/init.php"); +require_once APP_ROOT . DIRECTORY_SEPARATOR . 'inc' . DIRECTORY_SEPARATOR . 'init.php'; SP_Util::checkReferer('POST'); @@ -32,7 +33,7 @@ if (!SP_Init::isLoggedIn()) { SP_Common::printJSON(_('La sesión no se ha iniciado o ha caducado'), 10); } -$sk = SP_Common::parseParams('p', 'sk', FALSE); +$sk = SP_Common::parseParams('p', 'sk', false); if (!$sk || !SP_Common::checkSessionKey($sk)) { SP_Common::printJSON(_('CONSULTA INVÁLIDA')); @@ -52,8 +53,8 @@ $frmOtherGroups = SP_Common::parseParams('p', 'othergroups'); $frmOtherUsers = SP_Common::parseParams('p', 'otherusers'); $frmNotes = SP_Common::parseParams('p', 'notice'); $frmUrl = SP_Common::parseParams('p', 'url'); -$frmGroupEditEnabled = SP_Common::parseParams('p', 'geditenabled', 0, FALSE, 1); -$frmUserEditEnabled = SP_Common::parseParams('p', 'ueditenabled', 0, FALSE, 1); +$frmGroupEditEnabled = SP_Common::parseParams('p', 'geditenabled', 0, false, 1); +$frmUserEditEnabled = SP_Common::parseParams('p', 'ueditenabled', 0, false, 1); $frmChangesHash = SP_Common::parseParams('p', 'hash'); // Datos del Usuario @@ -108,7 +109,7 @@ if ($frmSaveType == 1) { SP_Common::printJSON(_('Las claves no coinciden')); } } else { - $SP_Common::printJSON(_('Acción Inválida')); + SP_Common::printJSON(_('Acción Inválida')); } if ($frmSaveType == 1 || $frmSaveType == 4) { @@ -124,7 +125,7 @@ if ($frmSaveType == 1 || $frmSaveType == 4) { //$accountURL = $crypt->mkEncrypt($frmUrl, $crypt->getSessionMasterPass()); //$accountNotes = $crypt->mkEncrypt($frmNotes, $crypt->getSessionMasterPass()); - if ($accountPass === FALSE || is_null($accountPass)) { + if ($accountPass === false || is_null($accountPass)) { SP_Common::printJSON(_('Error al generar datos cifrados')); } @@ -217,7 +218,7 @@ switch ($frmSaveType) { // Eliminar cuenta if ($account->deleteAccount()) { - SP_Common::printJSON(_('Cuenta eliminada'), 0); + SP_Common::printJSON(_('Cuenta eliminada'), 0, "doAction('accsearch');"); } SP_Common::printJSON(_('Error al eliminar la cuenta')); break; diff --git a/ajax/ajax_appMgmtData.php b/ajax/ajax_appMgmtData.php index 4a8a57b9..5d6983a5 100644 --- a/ajax/ajax_appMgmtData.php +++ b/ajax/ajax_appMgmtData.php @@ -4,7 +4,7 @@ * * @author nuxsmin * @link http://syspass.org -* @copyright 2012 Rubén Domínguez nuxsmin@syspass.org +* @copyright 2012-2014 Rubén Domínguez nuxsmin@syspass.org * * This file is part of sysPass. * @@ -24,7 +24,7 @@ */ define('APP_ROOT', '..'); -include_once (APP_ROOT."/inc/init.php"); +require_once APP_ROOT.DIRECTORY_SEPARATOR.'inc'.DIRECTORY_SEPARATOR.'init.php'; SP_Util::checkReferer('POST'); @@ -32,10 +32,10 @@ if (!SP_Init::isLoggedIn()) { SP_Util::logout(); } -if ( SP_Common::parseParams('p', 'id', FALSE, TRUE) && SP_Common::parseParams('p', 'type', FALSE, TRUE) ) { +if ( SP_Common::parseParams('p', 'id', false, true) && SP_Common::parseParams('p', 'type', false, true) ) { $tplvars['itemid'] = SP_Common::parseParams('p', 'id', 0); $itemType = $tplvars['itemtype'] = SP_Common::parseParams('p', 'type', 0); - $tplvars['active'] = SP_Common::parseParams('p', 'active', 0); + $tplvars['activeTab'] = SP_Common::parseParams('p', 'active', 0); $tplvars['view'] = SP_Common::parseParams('p', 'view', 0); } else { return; @@ -44,42 +44,52 @@ if ( SP_Common::parseParams('p', 'id', FALSE, TRUE) && SP_Common::parseParams('p switch ($itemType) { case 1: $tplvars['header'] = _('Editar Usuario'); + $tplvars['onCloseAction'] = 'usersmenu'; $template = 'users'; break; case 2: $tplvars['header'] = _('Nuevo Usuario'); + $tplvars['onCloseAction'] = 'usersmenu'; $template = 'users'; break; case 3: $tplvars['header'] = _('Editar Grupo'); + $tplvars['onCloseAction'] = 'usersmenu'; $template = 'groups'; break; case 4: $tplvars['header'] = _('Nuevo Grupo'); + $tplvars['onCloseAction'] = 'usersmenu'; $template = 'groups'; break; case 5: $tplvars['header'] = _('Editar Perfil'); + $tplvars['onCloseAction'] = 'usersmenu'; $template = 'profiles'; break; case 6: $tplvars['header'] = _('Nuevo Perfil'); + $tplvars['onCloseAction'] = 'usersmenu'; $template = 'profiles'; break; case 7: $tplvars['header'] = _('Editar Cliente'); + $tplvars['onCloseAction'] = 'appmgmtmenu'; $template = 'customers'; break; case 8: $tplvars['header'] = _('Nuevo Cliente'); + $tplvars['onCloseAction'] = 'appmgmtmenu'; $template = 'customers'; break; case 9: $tplvars['header'] = _('Editar Categoría'); + $tplvars['onCloseAction'] = 'appmgmtmenu'; $template = 'categories'; break; case 10: $tplvars['header'] = _('Nueva Categoría'); + $tplvars['onCloseAction'] = 'appmgmtmenu'; $template = 'categories'; break; default : diff --git a/ajax/ajax_appMgmtSave.php b/ajax/ajax_appMgmtSave.php index 0859d6d6..5169393e 100644 --- a/ajax/ajax_appMgmtSave.php +++ b/ajax/ajax_appMgmtSave.php @@ -2,11 +2,11 @@ /** * sysPass - * + * * @author nuxsmin * @link http://syspass.org - * @copyright 2012 Rubén Domínguez nuxsmin@syspass.org - * + * @copyright 2012-2014 Rubén Domínguez nuxsmin@syspass.org + * * This file is part of sysPass. * * sysPass is free software: you can redistribute it and/or modify @@ -23,8 +23,9 @@ * along with sysPass. If not, see . * */ + define('APP_ROOT', '..'); -include_once (APP_ROOT . "/inc/init.php"); +require_once APP_ROOT.DIRECTORY_SEPARATOR.'inc'.DIRECTORY_SEPARATOR.'init.php'; SP_Util::checkReferer('POST'); @@ -33,7 +34,7 @@ if (!SP_Init::isLoggedIn()) { SP_Common::printJSON(_('La sesión no se ha iniciado o ha caducado'), 10); } -$sk = SP_Common::parseParams('p', 'sk', FALSE); +$sk = SP_Common::parseParams('p', 'sk', false); if (!$sk || !SP_Common::checkSessionKey($sk)) { SP_Common::printJSON(_('CONSULTA INVÁLIDA')); @@ -43,6 +44,10 @@ if (!$sk || !SP_Common::checkSessionKey($sk)) { $frmSaveType = SP_Common::parseParams('p', 'type', 0); $frmAction = SP_Common::parseParams('p', 'action', 0); $frmItemId = SP_Common::parseParams('p', 'id', 0); +$frmOnCloseAction = SP_Common::parseParams('p', 'onCloseAction'); +$frmActiveTab = SP_Common::parseParams('p', 'activeTab', 0); + +$doActionOnClose = "doAction('$frmOnCloseAction','',$frmActiveTab);"; if ($frmSaveType == 1 || $frmSaveType == 2) { $objUser = new SP_Users; @@ -57,9 +62,10 @@ if ($frmSaveType == 1 || $frmSaveType == 2) { $frmUsrNotes = SP_Common::parseParams('p', 'notes'); $frmUsrPass = SP_Common::parseParams('p', 'pass'); $frmUsrPassV = SP_Common::parseParams('p', 'passv'); - $frmAdminApp = SP_Common::parseParams('p', 'adminapp', 0, FALSE, 1); - $frmAdminAcc = SP_Common::parseParams('p', 'adminacc', 0, FALSE, 1); - $frmDisabled = SP_Common::parseParams('p', 'disabled', 0, FALSE, 1); + $frmAdminApp = SP_Common::parseParams('p', 'adminapp', 0, false, 1); + $frmAdminAcc = SP_Common::parseParams('p', 'adminacc', 0, false, 1); + $frmDisabled = SP_Common::parseParams('p', 'disabled', 0, false, 1); + $frmChangePass = SP_Common::parseParams('p', 'changepass', 0, false, 1); // Nuevo usuario o editar if ($frmAction == 1 OR $frmAction == 2) { @@ -93,6 +99,7 @@ if ($frmSaveType == 1 || $frmSaveType == 2) { $objUser->userIsAdminApp = $frmAdminApp; $objUser->userIsAdminAcc = $frmAdminAcc; $objUser->userIsDisabled = $frmDisabled; + $objUser->userChangePass = $frmChangePass; $objUser->userPass = $frmUsrPass; switch ($objUser->checkUserExist()) { @@ -114,35 +121,21 @@ if ($frmSaveType == 1 || $frmSaveType == 2) { } if ($objUser->addUser()) { - $message['action'] = _('Nuevo Usuario'); - $message['text'][] = _('Nombre') . ': ' . $frmUsrName . ' (' . $frmUsrLogin . ')'; - - SP_Common::wrLogInfo($message); - SP_Common::sendEmail($message); - - SP_Common::printJSON(_('Usuario creado'), 0); + SP_Common::printJSON(_('Usuario creado'), 0, $doActionOnClose); } SP_Common::printJSON(_('Error al crear el usuario')); } elseif ($frmAction == 2) { if ($objUser->updateUser()) { - $message['action'] = _('Modificar Usuario'); - $message['text'][] = _('Nombre') . ': ' . $frmUsrName . ' (' . $frmUsrLogin . ')'; - - SP_Common::wrLogInfo($message); - SP_Common::sendEmail($message); - - SP_Common::printJSON(_('Usuario actualizado'), 0); + SP_Common::printJSON(_('Usuario actualizado'), 0, $doActionOnClose); } SP_Common::printJSON(_('Error al actualizar el usuario')); } - // Cambio de clave + // Cambio de clave } elseif ($frmAction == 3) { - $userLogin = $objUser->getUserLoginById($frmItemId); - if (SP_Config::getValue('demoenabled', 0) && $userLogin == 'demo') { - SP_Common::printJSON(_('Acción Inválida') . '(DEMO)'); + SP_Common::printJSON(_('Ey, esto es una DEMO!!')); } if (!$frmUsrPass || !$frmUsrPassV) { @@ -157,23 +150,14 @@ if ($frmSaveType == 1 || $frmSaveType == 2) { $objUser->userPass = $frmUsrPass; if ($objUser->updateUserPass()) { - $message['action'] = _('Modificar Clave Usuario'); - $message['text'][] = _('Login') . ': ' . $userLogin; - - SP_Common::wrLogInfo($message); - SP_Common::sendEmail($message); - SP_Common::printJSON(_('Clave actualizada'), 0); } SP_Common::printJSON(_('Error al modificar la clave')); - // Eliminar usuario + // Eliminar usuario } elseif ($frmAction == 4) { - - $userLogin = $objUser->getUserLoginById($frmItemId); - if (SP_Config::getValue('demoenabled', 0) && $userLogin == 'demo') { - SP_Common::printJSON(_('Acción Inválida') . '(DEMO)'); + SP_Common::printJSON(_('Ey, esto es una DEMO!!')); } $objUser->userId = $frmItemId; @@ -183,13 +167,7 @@ if ($frmSaveType == 1 || $frmSaveType == 2) { } if ($objUser->deleteUser()) { - $message['action'] = _('Eliminar Usuario'); - $message['text'][] = _('Login') . ': ' . $userLogin; - - SP_Common::wrLogInfo($message); - SP_Common::sendEmail($message); - - SP_Common::printJSON(_('Usuario eliminado'), 0); + SP_Common::printJSON(_('Usuario eliminado'), 0, $doActionOnClose); } SP_Common::printJSON(_('Error al eliminar el usuario')); @@ -217,31 +195,19 @@ if ($frmSaveType == 1 || $frmSaveType == 2) { if ($frmAction == 1) { if (SP_Groups::addGroup()) { - $message['action'] = _('Nuevo Grupo'); - $message['text'][] = _('Nombre') . ': ' . $frmGrpName; - - SP_Common::wrLogInfo($message); - SP_Common::sendEmail($message); - - SP_Common::printJSON(_('Grupo creado'), 0); + SP_Common::printJSON(_('Grupo creado'), 0, $doActionOnClose); } else { SP_Common::printJSON(_('Error al crear el grupo')); } } else if ($frmAction == 2) { if (SP_Groups::updateGroup()) { - $message['action'] = _('Modificar Grupo'); - $message['text'][] = _('Nombre') . ': ' . $frmGrpName; - - SP_Common::wrLogInfo($message); - SP_Common::sendEmail($message); - - SP_Common::printJSON(_('Grupo actualizado'), 0); + SP_Common::printJSON(_('Grupo actualizado'), 0, $doActionOnClose); } SP_Common::printJSON(_('Error al actualizar el grupo')); } - // Eliminar grupo + // Eliminar grupo } elseif ($frmAction == 4) { SP_Groups::$groupId = $frmItemId; @@ -261,13 +227,7 @@ if ($frmSaveType == 1 || $frmSaveType == 2) { $groupName = SP_Groups::getGroupNameById($frmItemId); if (SP_Groups::deleteGroup()) { - $message['action'] = _('Eliminar Grupo'); - $message['text'][] = _('Nombre') . ': ' . $groupName; - - SP_Common::wrLogInfo($message); - SP_Common::sendEmail($message); - - SP_Common::printJSON(_('Grupo eliminado'), 0); + SP_Common::printJSON(_('Grupo eliminado'), 0, $doActionOnClose); } SP_Common::printJSON(_('Error al eliminar el grupo')); @@ -283,23 +243,23 @@ if ($frmSaveType == 1 || $frmSaveType == 2) { SP_Profiles::$profileId = $frmItemId; // Profile properties Array - $profileProp["pAccView"] = SP_Common::parseParams('p', 'profile_accview', 0, FALSE, 1); - $profileProp["pAccViewPass"] = SP_Common::parseParams('p', 'profile_accviewpass', 0, FALSE, 1); - $profileProp["pAccViewHistory"] = SP_Common::parseParams('p', 'profile_accviewhistory', 0, FALSE, 1); - $profileProp["pAccEdit"] = SP_Common::parseParams('p', 'profile_accedit', 0, FALSE, 1); - $profileProp["pAccEditPass"] = SP_Common::parseParams('p', 'profile_acceditpass', 0, FALSE, 1); - $profileProp["pAccAdd"] = SP_Common::parseParams('p', 'profile_accadd', 0, FALSE, 1); - $profileProp["pAccDel"] = SP_Common::parseParams('p', 'profile_accdel', 0, FALSE, 1); - $profileProp["pAccFiles"] = SP_Common::parseParams('p', 'profile_accfiles', 0, FALSE, 1); - $profileProp["pConfig"] = SP_Common::parseParams('p', 'profile_config', 0, FALSE, 1); - $profileProp["pAppMgmtCat"] = SP_Common::parseParams('p', 'profile_categories', 0, FALSE, 1); - $profileProp["pAppMgmtCust"] = SP_Common::parseParams('p', 'profile_customers', 0, FALSE, 1); - $profileProp["pConfigMpw"] = SP_Common::parseParams('p', 'profile_configmpw', 0, FALSE, 1); - $profileProp["pConfigBack"] = SP_Common::parseParams('p', 'profile_configback', 0, FALSE, 1); - $profileProp["pUsers"] = SP_Common::parseParams('p', 'profile_users', 0, FALSE, 1); - $profileProp["pGroups"] = SP_Common::parseParams('p', 'profile_groups', 0, FALSE, 1); - $profileProp["pProfiles"] = SP_Common::parseParams('p', 'profile_profiles', 0, FALSE, 1); - $profileProp["pEventlog"] = SP_Common::parseParams('p', 'profile_eventlog', 0, FALSE, 1); + $profileProp["pAccView"] = SP_Common::parseParams('p', 'profile_accview', 0, false, 1); + $profileProp["pAccViewPass"] = SP_Common::parseParams('p', 'profile_accviewpass', 0, false, 1); + $profileProp["pAccViewHistory"] = SP_Common::parseParams('p', 'profile_accviewhistory', 0, false, 1); + $profileProp["pAccEdit"] = SP_Common::parseParams('p', 'profile_accedit', 0, false, 1); + $profileProp["pAccEditPass"] = SP_Common::parseParams('p', 'profile_acceditpass', 0, false, 1); + $profileProp["pAccAdd"] = SP_Common::parseParams('p', 'profile_accadd', 0, false, 1); + $profileProp["pAccDel"] = SP_Common::parseParams('p', 'profile_accdel', 0, false, 1); + $profileProp["pAccFiles"] = SP_Common::parseParams('p', 'profile_accfiles', 0, false, 1); + $profileProp["pConfig"] = SP_Common::parseParams('p', 'profile_config', 0, false, 1); + $profileProp["pAppMgmtCat"] = SP_Common::parseParams('p', 'profile_categories', 0, false, 1); + $profileProp["pAppMgmtCust"] = SP_Common::parseParams('p', 'profile_customers', 0, false, 1); + $profileProp["pConfigMpw"] = SP_Common::parseParams('p', 'profile_configmpw', 0, false, 1); + $profileProp["pConfigBack"] = SP_Common::parseParams('p', 'profile_configback', 0, false, 1); + $profileProp["pUsers"] = SP_Common::parseParams('p', 'profile_users', 0, false, 1); + $profileProp["pGroups"] = SP_Common::parseParams('p', 'profile_groups', 0, false, 1); + $profileProp["pProfiles"] = SP_Common::parseParams('p', 'profile_profiles', 0, false, 1); + $profileProp["pEventlog"] = SP_Common::parseParams('p', 'profile_eventlog', 0, false, 1); // Nuevo perfil o editar if ($frmAction == 1 OR $frmAction == 2) { @@ -315,31 +275,19 @@ if ($frmSaveType == 1 || $frmSaveType == 2) { if ($frmAction == 1) { if (SP_Profiles::addProfile($profileProp)) { - $message['action'] = _('Nuevo Perfil'); - $message['text'][] = _('Nombre') . ': ' . $frmProfileName; - - SP_Common::wrLogInfo($message); - SP_Common::sendEmail($message); - - SP_Common::printJSON(_('Perfil creado'), 0); + SP_Common::printJSON(_('Perfil creado'), 0, $doActionOnClose); } SP_Common::printJSON(_('Error al crear el perfil')); } else if ($frmAction == 2) { if (SP_Profiles::updateProfile($profileProp)) { - $message['action'] = _('Modificar Perfil'); - $message['text'][] = _('Nombre') . ': ' . $frmProfileName; - - SP_Common::wrLogInfo($message); - SP_Common::sendEmail($message); - - SP_Common::printJSON(_('Perfil actualizado'), 0); + SP_Common::printJSON(_('Perfil actualizado'), 0, $doActionOnClose); } SP_Common::printJSON(_('Error al actualizar el perfil')); } - // Eliminar perfil + // Eliminar perfil } elseif ($frmAction == 4) { $resProfileUse = SP_Profiles::checkProfileInUse(); @@ -352,12 +300,12 @@ if ($frmSaveType == 1 || $frmSaveType == 2) { if (SP_Profiles::deleteProfile()) { $message['action'] = _('Eliminar Perfil'); - $message['text'][] = _('Nombre') . ': ' . $profileName; + $message['text'][] = SP_Html::strongText(_('Perfil') . ': ') . $profileName; - SP_Common::wrLogInfo($message); + SP_Log::wrLogInfo($message); SP_Common::sendEmail($message); - SP_Common::printJSON(_('Perfil eliminado'), 0); + SP_Common::printJSON(_('Perfil eliminado'), 0, $doActionOnClose); } SP_Common::printJSON(_('Error al eliminar el perfil')); @@ -385,19 +333,19 @@ if ($frmSaveType == 1 || $frmSaveType == 2) { if ($frmAction == 1) { if (SP_Customer::addCustomer()) { - SP_Common::printJSON(_('Cliente creado'), 0); + SP_Common::printJSON(_('Cliente creado'), 0, $doActionOnClose); } else { SP_Common::printJSON(_('Error al crear el cliente')); } } else if ($frmAction == 2) { if (SP_Customer::updateCustomer($frmItemId)) { - SP_Common::printJSON(_('Cliente actualizado'), 0); + SP_Common::printJSON(_('Cliente actualizado'), 0, $doActionOnClose); } SP_Common::printJSON(_('Error al actualizar el cliente')); } - // Eliminar cliente + // Eliminar cliente } elseif ($frmAction == 4) { $resCustomerUse = SP_Customer::checkCustomerInUse($frmItemId); @@ -408,7 +356,7 @@ if ($frmSaveType == 1 || $frmSaveType == 2) { } else { if (SP_Customer::delCustomer($frmItemId)) { - SP_Common::printJSON(_('Cliente eliminado'), 0); + SP_Common::printJSON(_('Cliente eliminado'), 0, $doActionOnClose); } SP_Common::printJSON(_('Error al eliminar el cliente')); @@ -436,28 +384,28 @@ if ($frmSaveType == 1 || $frmSaveType == 2) { if ($frmAction == 1) { if (SP_Category::addCategory()) { - SP_Common::printJSON(_('Categpría creada'), 0); + SP_Common::printJSON(_('Categpría creada'), 0, $doActionOnClose); } else { SP_Common::printJSON(_('Error al crear la categoría')); } } else if ($frmAction == 2) { if (SP_Category::updateCategory($frmItemId)) { - SP_Common::printJSON(_('Categoría actualizada'), 0); + SP_Common::printJSON(_('Categoría actualizada'), 0, $doActionOnClose); } SP_Common::printJSON(_('Error al actualizar la categoría')); } - // Eliminar categoría + // Eliminar categoría } elseif ($frmAction == 4) { $resCategoryUse = SP_Category::checkCategoryInUse($frmItemId); - if ($resCategoryUse !== TRUE) { + if ($resCategoryUse !== true) { SP_Common::printJSON(_('No es posible eliminar') . ';;' . _('Categoría en uso por:') . ';;' . $resCategoryUse); } else { if (SP_Category::delCategory($frmItemId)) { - SP_Common::printJSON(_('Categoría eliminada'), 0); + SP_Common::printJSON(_('Categoría eliminada'), 0, $doActionOnClose); } SP_Common::printJSON(_('Error al eliminar la categoría')); diff --git a/ajax/ajax_backup.php b/ajax/ajax_backup.php index c4de9fdb..7c7f782c 100644 --- a/ajax/ajax_backup.php +++ b/ajax/ajax_backup.php @@ -4,7 +4,7 @@ * * @author nuxsmin * @link http://syspass.org -* @copyright 2012 Rubén Domínguez nuxsmin@syspass.org +* @copyright 2012-2014 Rubén Domínguez nuxsmin@syspass.org * * This file is part of sysPass. * @@ -24,7 +24,7 @@ */ define('APP_ROOT', '..'); -include_once (APP_ROOT."/inc/init.php"); +require_once APP_ROOT.DIRECTORY_SEPARATOR.'inc'.DIRECTORY_SEPARATOR.'init.php'; SP_Util::checkReferer('POST'); @@ -32,7 +32,7 @@ if ( ! SP_Init::isLoggedIn() ) { SP_Common::printJSON(_('La sesión no se ha iniciado o ha caducado'), 10); } -$sk = SP_Common::parseParams('p', 'sk', FALSE); +$sk = SP_Common::parseParams('p', 'sk', false); if (!$sk || !SP_Common::checkSessionKey($sk)) { SP_Common::printJSON(_('CONSULTA INVÁLIDA')); @@ -44,12 +44,11 @@ if ( $doBackup ){ $arrOut = SP_Config::makeBackup(); $message['action'] = _('Realizar Backup'); - $message['text'] = ''; SP_Common::sendEmail($message); if ( array_key_exists('error', $arrOut) ){ - SP_Common::printJSON(_('Error al realizar el backup').'

'.$arrOut['error']); + SP_Common::printJSON(_('Error al realizar el backup').';;'.$arrOut['error']); } SP_Common::printJSON(_('Proceso de backup finalizado'),0); diff --git a/ajax/ajax_checkLdap.php b/ajax/ajax_checkLdap.php index 59066ff4..51b4a60f 100644 --- a/ajax/ajax_checkLdap.php +++ b/ajax/ajax_checkLdap.php @@ -4,7 +4,7 @@ * * @author nuxsmin * @link http://syspass.org -* @copyright 2012 Rubén Domínguez nuxsmin@syspass.org +* @copyright 2012-2014 Rubén Domínguez nuxsmin@syspass.org * * This file is part of sysPass. * @@ -24,7 +24,7 @@ */ define('APP_ROOT', '..'); -include_once (APP_ROOT."/inc/init.php"); +require_once APP_ROOT.DIRECTORY_SEPARATOR.'inc'.DIRECTORY_SEPARATOR.'init.php'; SP_Util::checkReferer('POST'); @@ -32,7 +32,7 @@ if ( ! SP_Init::isLoggedIn() ) { SP_Common::printJSON(_('La sesión no se ha iniciado o ha caducado'), 10); } -$sk = SP_Common::parseParams('p', 'sk', FALSE); +$sk = SP_Common::parseParams('p', 'sk', false); if (!$sk || !SP_Common::checkSessionKey($sk)) { SP_Common::printJSON(_('CONSULTA INVÁLIDA')); @@ -46,7 +46,7 @@ $frmLdapBindPass = SP_Common::parseParams('p', 'ldapbindpass'); $resCheckLdap = SP_LDAP::checkLDAPConn($frmLdapServer,$frmLdapBindUser,$frmLdapBindPass,$frmLdapBase,$frmLdapGroup); -if ( $resCheckLdap === FALSE ){ +if ( $resCheckLdap === false ){ SP_Common::printJSON(_('Error de conexión a LDAP').';;'._('Revise el registro de eventos para más detalles')); } else{ SP_Common::printJSON(_('Conexión a LDAP correcta').';;'._('Objetos encontrados').': '.$resCheckLdap,0); diff --git a/ajax/ajax_checkupds.php b/ajax/ajax_checkUpds.php similarity index 81% rename from ajax/ajax_checkupds.php rename to ajax/ajax_checkUpds.php index a0637745..d8864939 100644 --- a/ajax/ajax_checkupds.php +++ b/ajax/ajax_checkUpds.php @@ -4,7 +4,7 @@ * * @author nuxsmin * @link http://syspass.org -* @copyright 2012 Rubén Domínguez nuxsmin@syspass.org +* @copyright 2012-2014 Rubén Domínguez nuxsmin@syspass.org * * This file is part of sysPass. * @@ -24,11 +24,11 @@ */ define('APP_ROOT', '..'); -include_once (APP_ROOT."/inc/init.php"); +require_once APP_ROOT.DIRECTORY_SEPARATOR.'inc'.DIRECTORY_SEPARATOR.'init.php'; SP_Util::checkReferer('GET'); -$checkVersion = SP_Common::parseParams('s', 'UPDATED', FALSE, TRUE); +$checkVersion = SP_Common::parseParams('s', 'UPDATED', false, true); // Una vez por sesión if ( ! $checkVersion ){ @@ -39,8 +39,8 @@ session_write_close(); if ( is_array($checkVersion) ){ echo ' '.$checkVersion['version'].''; -} elseif ( $checkVersion == TRUE ){ +} elseif ( $checkVersion == true ){ echo ''; -} elseif ( $checkVersion == FALSE ){ +} elseif ( $checkVersion == false ){ echo '!'; } \ No newline at end of file diff --git a/ajax/ajax_configsave.php b/ajax/ajax_configSave.php similarity index 80% rename from ajax/ajax_configsave.php rename to ajax/ajax_configSave.php index cac4ac9c..5cb4126c 100644 --- a/ajax/ajax_configsave.php +++ b/ajax/ajax_configSave.php @@ -5,7 +5,7 @@ * * @author nuxsmin * @link http://syspass.org - * @copyright 2012 Rubén Domínguez nuxsmin@syspass.org + * @copyright 2012-2014 Rubén Domínguez nuxsmin@syspass.org * * This file is part of sysPass. * @@ -23,8 +23,9 @@ * along with sysPass. If not, see . * */ + define('APP_ROOT', '..'); -include_once (APP_ROOT . "/inc/init.php"); +require_once APP_ROOT.DIRECTORY_SEPARATOR.'inc'.DIRECTORY_SEPARATOR.'init.php'; SP_Util::checkReferer('POST'); @@ -32,44 +33,53 @@ if (!SP_Init::isLoggedIn()) { SP_Common::printJSON(_('La sesión no se ha iniciado o ha caducado'), 10); } -$sk = SP_Common::parseParams('p', 'sk', FALSE); +$sk = SP_Common::parseParams('p', 'sk', false); if (!$sk || !SP_Common::checkSessionKey($sk)) { SP_Common::printJSON(_('CONSULTA INVÁLIDA')); } +// Variables POST del formulario $frmAction = SP_Common::parseParams('p', 'action'); +$frmOnCloseAction = SP_Common::parseParams('p', 'onCloseAction'); +$frmActiveTab = SP_Common::parseParams('p', 'activeTab', 0); + +$doActionOnClose = "doAction('$frmOnCloseAction','',$frmActiveTab);"; if ($frmAction == "config") { $frmSiteLang = SP_Common::parseParams('p', 'sitelang'); $frmSessionTimeout = SP_Common::parseParams('p', 'session_timeout', 300); - $frmLog = SP_Common::parseParams('p', 'logenabled', 0, FALSE, 1); - $frmDebug = SP_Common::parseParams('p', 'debug', 0, FALSE, 1); - $frmMaintenance = SP_Common::parseParams('p', 'maintenance', 0, FALSE, 1); - $frmCheckUpdates = SP_Common::parseParams('p', 'updates', 0, FALSE, 1); - $frmFiles = SP_Common::parseParams('p', 'filesenabled', 0, FALSE, 1); - $frmGlobalSearch = SP_Common::parseParams('p', 'globalsearch', 0, FALSE, 1); - $frmAccountLink = SP_Common::parseParams('p', 'account_link', 0, FALSE, 1); + $frmLog = SP_Common::parseParams('p', 'logenabled', 0, false, 1); + $frmDebug = SP_Common::parseParams('p', 'debug', 0, false, 1); + $frmMaintenance = SP_Common::parseParams('p', 'maintenance', 0, false, 1); + $frmCheckUpdates = SP_Common::parseParams('p', 'updates', 0, false, 1); + $frmFiles = SP_Common::parseParams('p', 'filesenabled', 0, false, 1); + $frmGlobalSearch = SP_Common::parseParams('p', 'globalsearch', 0, false, 1); + $frmAccountLink = SP_Common::parseParams('p', 'account_link', 0, false, 1); $frmAccountCount = SP_Common::parseParams('p', 'account_count', 10); $frmAllowedSize = SP_Common::parseParams('p', 'allowed_size', 1024); $frmAllowedExts = SP_Common::parseParams('p', 'allowed_exts'); - $frmWiki = SP_Common::parseParams('p', 'wikienabled', 0, FALSE, 1); + $frmWiki = SP_Common::parseParams('p', 'wikienabled', 0, false, 1); $frmWikiSearchUrl = SP_Common::parseParams('p', 'wikisearchurl'); $frmWikiPageUrl = SP_Common::parseParams('p', 'wikipageurl'); $frmWikiFilter = SP_Common::parseParams('p', 'wikifilter'); - $frmLdap = SP_Common::parseParams('p', 'ldapenabled', 0, FALSE, 1); + $frmLdap = SP_Common::parseParams('p', 'ldapenabled', 0, false, 1); $frmLdapServer = SP_Common::parseParams('p', 'ldapserver'); $frmLdapBase = SP_Common::parseParams('p', 'ldapbase'); $frmLdapGroup = SP_Common::parseParams('p', 'ldapgroup'); $frmLdapBindUser = SP_Common::parseParams('p', 'ldapbinduser'); $frmLdapBindPass = SP_Common::parseParams('p', 'ldapbindpass'); - $frmMail = SP_Common::parseParams('p', 'mailenabled', 0, FALSE, 1); + $frmMail = SP_Common::parseParams('p', 'mailenabled', 0, false, 1); $frmMailServer = SP_Common::parseParams('p', 'mailserver'); + $frmMailPort = SP_Common::parseParams('p', 'mailport',25); + $frmMailUser = SP_Common::parseParams('p', 'mailuser'); + $frmMailPass = SP_Common::parseParams('p', 'mailpass'); + $frmMailSecurity = SP_Common::parseParams('p', 'mailsecurity'); $frmMailFrom = SP_Common::parseParams('p', 'mailfrom'); - $frmMailRequests = SP_Common::parseParams('p', 'mailrequestsenabled', 0, FALSE, 1); + $frmMailRequests = SP_Common::parseParams('p', 'mailrequestsenabled', 0, false, 1); if ($frmAccountCount == "all") { $intAccountCount = 99; @@ -107,6 +117,10 @@ if ($frmAction == "config") { SP_Config::setValue("mailenabled", 1); SP_Config::setValue("mailrequestsenabled", $frmMailRequests); SP_Config::setValue("mailserver", $frmMailServer); + SP_Config::setValue("mailport", $frmMailPort); + SP_Config::setValue("mailuser", $frmMailUser); + SP_Config::setValue("mailpass", $frmMailPass); + SP_Config::setValue("mailsecurity", $frmMailSecurity); SP_Config::setValue("mailfrom", $frmMailFrom); } else { SP_Config::setValue("mailenabled", 0); @@ -131,21 +145,20 @@ if ($frmAction == "config") { SP_Config::setValue("allowed_size", $frmAllowedSize); $message['action'] = _('Modificar Configuración'); - $message['text'][] = ''; - SP_Common::wrLogInfo($message); + SP_Log::wrLogInfo($message); SP_Common::sendEmail($message); - SP_Common::printJSON(_('Configuración actualizada'), 0); + SP_Common::printJSON(_('Configuración actualizada'), 0, $doActionOnClose); } elseif ($frmAction == "crypt") { $currentMasterPass = SP_Common::parseParams('p', 'curMasterPwd'); $newMasterPass = SP_Common::parseParams('p', 'newMasterPwd'); $newMasterPassR = SP_Common::parseParams('p', 'newMasterPwdR'); - $confirmPassChange = SP_Common::parseParams('p', 'confirmPassChange', 0, FALSE, 1); - $noAccountPassChange = SP_Common::parseParams('p', 'chkNoAccountChange', 0, FALSE, 1); + $confirmPassChange = SP_Common::parseParams('p', 'confirmPassChange', 0, false, 1); + $noAccountPassChange = SP_Common::parseParams('p', 'chkNoAccountChange', 0, false, 1); if (!SP_Users::checkUserUpdateMPass()) { - SP_Common::printJSON(_('Clave maestra actualizada') . '
' . _('Reinicie la sesión para cambiarla')); + SP_Common::printJSON(_('Clave maestra actualizada') . ';;' . _('Reinicie la sesión para cambiarla')); } if ($newMasterPass == "" && $currentMasterPass == "") { @@ -181,7 +194,7 @@ if ($frmAction == "config") { } if (SP_Config::getValue('demoenabled', 0)) { - SP_Common::printJSON(_('DEMO')); + SP_Common::printJSON(_('Ey, esto es una DEMO!!')); } SP_Config::$arrConfigValue["masterPwd"] = $hashMPass; @@ -189,7 +202,6 @@ if ($frmAction == "config") { if (SP_Config::writeConfig()) { $message['action'] = _('Actualizar Clave Maestra'); - $message['text'] = ''; SP_Common::sendEmail($message); SP_Common::printJSON(_('Clave maestra cambiada'), 0); diff --git a/ajax/ajax_doLogin.php b/ajax/ajax_doLogin.php index 58b4b1df..65f9ff30 100644 --- a/ajax/ajax_doLogin.php +++ b/ajax/ajax_doLogin.php @@ -5,7 +5,7 @@ * * @author nuxsmin * @link http://syspass.org - * @copyright 2012 Rubén Domínguez nuxsmin@syspass.org + * @copyright 2012-2014 Rubén Domínguez nuxsmin@syspass.org * * This file is part of sysPass. * @@ -23,12 +23,13 @@ * along with sysPass. If not, see . * */ + define('APP_ROOT', '..'); -include_once (APP_ROOT . "/inc/init.php"); +require_once APP_ROOT.DIRECTORY_SEPARATOR.'inc'.DIRECTORY_SEPARATOR.'init.php'; SP_Util::checkReferer('POST'); -if (!SP_Common::parseParams('p', 'login', FALSE)) { +if (!SP_Common::parseParams('p', 'login', false)) { return; } @@ -57,7 +58,7 @@ if ($resLdap == 1) { // Creamos el usuario de LDAP en MySQL if (!$objUser->newUserLDAP()) { $message['text'][] = _('Error al guardar los datos de LDAP'); - SP_Common::wrLogInfo($message); + SP_Log::wrLogInfo($message); SP_Common::printJSON(_('Error interno')); } @@ -65,7 +66,7 @@ if ($resLdap == 1) { // Actualizamos la clave del usuario en MySQL if (!$objUser->updateLDAPUserInDB()) { $message['text'][] = _('Error al actualizar la clave del usuario en la BBDD'); - SP_Common::wrLogInfo($message); + SP_Log::wrLogInfo($message); SP_Common::printJSON(_('Error interno')); } @@ -74,8 +75,7 @@ if ($resLdap == 1) { $message['action'] = _('Inicio sesión (LDAP)'); $message['text'][] = _('Login incorrecto'); $message['text'][] = _('Usuario') . ": " . $userLogin; - $message['text'][] = _('IP') . ": " . $_SERVER['REMOTE_ADDR']; - SP_Common::wrLogInfo($message); + SP_Log::wrLogInfo($message); SP_Common::printJSON(_('Usuario/Clave incorrectos')); } else { // Autentificamos por MySQL (ha fallado LDAP) @@ -85,19 +85,17 @@ if ($resLdap == 1) { if (!SP_Auth::authUserMySQL($userLogin,$userPass)) { $message['text'][] = _('Login incorrecto'); $message['text'][] = _('Usuario') . ": " . $userLogin; - $message['text'][] = _('IP') . ": " . $_SERVER['REMOTE_ADDR']; - SP_Common::wrLogInfo($message); + SP_Log::wrLogInfo($message); SP_Common::printJSON(_('Usuario/Clave incorrectos')); } } // Comprobar si el usuario está deshabilitado -if (SP_Auth::checkUserIsDisabled($userLogin)) { +if (SP_Users::checkUserIsDisabled($userLogin)) { $message['text'][] = _('Usuario deshabilitado'); $message['text'][] = _('Usuario') . ": " . $userLogin; - $message['text'][] = _('IP') . ": " . $_SERVER['REMOTE_ADDR']; - SP_Common::wrLogInfo($message); + SP_Log::wrLogInfo($message); SP_Common::printJSON(_('Usuario deshabilitado')); } @@ -105,7 +103,7 @@ if (SP_Auth::checkUserIsDisabled($userLogin)) { // Obtenemos los datos del usuario if (!$objUser->getUserInfo()) { $message['text'][] = _('Error al obtener los datos del usuario de la BBDD'); - SP_Common::wrLogInfo($message); + SP_Log::wrLogInfo($message); SP_Common::printJSON(_('Error interno')); } @@ -116,22 +114,32 @@ if (!$masterPass && (!$objUser->checkUserMPass() || !SP_Users::checkUserUpdateMP } elseif ($masterPass) { if (!$objUser->updateUserMPass($masterPass)) { $message['text'][] = _('Clave maestra incorrecta'); - SP_Common::wrLogInfo($message); + SP_Log::wrLogInfo($message); SP_Common::printJSON(_('Clave maestra incorrecta'), 4); } } +// Comprobar si se ha forzado un cambio de clave +if ($objUser->userChangePass){ + $hash = SP_Util::generate_random_bytes(); + + if (SP_Users::addPassRecover($userLogin, $hash)){ + $url = SP_Init::$WEBURI . '/index.php?a=passreset&h=' . $hash . '&t=' . time(); + SP_Common::printJSON($url, 0); + } +} + // Obtenemos la clave maestra del usuario if ($objUser->getUserMPass()) { // Establecemos las variables de sesión $objUser->setUserSession(); - $message['text'][] = _('Usuario') . ": " . $_SESSION['uname']; - $message['text'][] = _('Perfil') . ": " . $_SESSION['uprofile']; - $message['text'][] = _('Grupo') . ": " . $_SESSION['ugroup']; - $message['text'][] = _('IP') . ": " . $_SERVER['REMOTE_ADDR']; - SP_Common::wrLogInfo($message); + $message['text'][] = _('Usuario') . ": " . $userLogin; + $message['text'][] = _('Perfil') . ": " . SP_Profiles::getProfileNameById($objUser->userProfileId); + $message['text'][] = _('Grupo') . ": " . SP_Groups::getGroupNameById($objUser->userGroupId); + + SP_Log::wrLogInfo($message); // Comprobar si existen parámetros adicionales en URL via GET foreach ($_POST as $param => $value){ @@ -143,4 +151,4 @@ if ($objUser->getUserMPass()) { $urlParams = isset($params) ? '?'.implode('&', $params) : ''; SP_Common::printJSON('index.php'.$urlParams, 0); -} +} \ No newline at end of file diff --git a/ajax/ajax_eventlog.php b/ajax/ajax_eventlog.php index 45f62207..542df632 100644 --- a/ajax/ajax_eventlog.php +++ b/ajax/ajax_eventlog.php @@ -4,7 +4,7 @@ * * @author nuxsmin * @link http://syspass.org -* @copyright 2012 Rubén Domínguez nuxsmin@syspass.org +* @copyright 2012-2014 Rubén Domínguez nuxsmin@syspass.org * * This file is part of sysPass. * @@ -24,7 +24,7 @@ */ define('APP_ROOT', '..'); -include_once (APP_ROOT."/inc/init.php"); +require_once APP_ROOT.DIRECTORY_SEPARATOR.'inc'.DIRECTORY_SEPARATOR.'init.php'; SP_Util::checkReferer('POST'); @@ -36,11 +36,11 @@ SP_ACL::checkUserAccess('eventlog') || SP_Html::showCommonError('unavailable'); $start = SP_Common::parseParams('p', 'start', 0); $clear = SP_Common::parseParams('p', 'clear', 0); -$sk = SP_Common::parseParams('p', 'sk', FALSE); +$sk = SP_Common::parseParams('p', 'sk', false); if ( $clear && $sk && SP_Common::checkSessionKey($sk) ){ if ( SP_Log::clearEvents() ){ - SP_Common::printJSON(_('Registro de eventos vaciado'), 0); + SP_Common::printJSON(_('Registro de eventos vaciado'), 0, "doAction('eventlog');scrollUp();"); } else{ SP_Common::printJSON(_('Error al vaciar el registro de eventos')); } diff --git a/ajax/ajax_files.php b/ajax/ajax_files.php index afb9c211..85978236 100644 --- a/ajax/ajax_files.php +++ b/ajax/ajax_files.php @@ -5,7 +5,7 @@ * * @author nuxsmin * @link http://syspass.org - * @copyright 2012 Rubén Domínguez nuxsmin@syspass.org + * @copyright 2012-2014 Rubén Domínguez nuxsmin@syspass.org * * This file is part of sysPass. * @@ -26,7 +26,7 @@ // TODO: comprobar permisos para eliminar archivos define('APP_ROOT', '..'); -include_once (APP_ROOT . "/inc/init.php"); +require_once APP_ROOT.DIRECTORY_SEPARATOR.'inc'.DIRECTORY_SEPARATOR.'init.php'; SP_Util::checkReferer('POST'); @@ -34,7 +34,7 @@ if (!SP_Init::isLoggedIn()) { SP_Util::logout(); } -$sk = SP_Common::parseParams('p', 'sk', FALSE); +$sk = SP_Common::parseParams('p', 'sk', false); if (!$sk || !SP_Common::checkSessionKey($sk)) { die(_('CONSULTA INVÁLIDA')); @@ -98,7 +98,7 @@ if ($action == 'upload') { $message['action'] = _('Subir Archivo'); $message['text'][] = _('Error interno al leer el archivo'); - SP_Common::wrLogInfo($message); + SP_Log::wrLogInfo($message); exit(_('Error interno al leer el archivo')); } @@ -119,7 +119,7 @@ if ($action == 'download' || $action == 'view') { exit(_('No es un ID de archivo válido')); } - $isView = ( $action == 'view' ) ? TRUE : FALSE; + $isView = ( $action == 'view' ) ? true : false; $file = SP_Files::fileDownload($fileId); @@ -140,7 +140,7 @@ if ($action == 'download' || $action == 'view') { $message['text'][] = _('Tamaño') . ": " . round($fileSize / 1024, 2) . " KB"; if (!$isView) { - SP_Common::wrLogInfo($message); + SP_Log::wrLogInfo($message); // Enviamos el archivo al navegador header('Set-Cookie: fileDownload=true; path=/'); @@ -155,14 +155,14 @@ if ($action == 'download' || $action == 'view') { } else { $extsOkImg = array("JPG", "GIF", "PNG"); if (in_array(strtoupper($fileExt), $extsOkImg)) { - SP_Common::wrLogInfo($message); + SP_Log::wrLogInfo($message); $imgData = chunk_split(base64_encode($fileData)); exit(''); // } elseif ( strtoupper($fileExt) == "PDF" ){ // echo ''; } elseif (strtoupper($fileExt) == "TXT") { - SP_Common::wrLogInfo($message); + SP_Log::wrLogInfo($message); exit('
' . $fileData . '
'); } else { diff --git a/ajax/ajax_getcontent.php b/ajax/ajax_getContent.php similarity index 80% rename from ajax/ajax_getcontent.php rename to ajax/ajax_getContent.php index 8dbfc596..6f20fb34 100644 --- a/ajax/ajax_getcontent.php +++ b/ajax/ajax_getContent.php @@ -2,11 +2,11 @@ /** * sysPass - * + * * @author nuxsmin * @link http://syspass.org - * @copyright 2012 Rubén Domínguez nuxsmin@syspass.org - * + * @copyright 2012-2014 Rubén Domínguez nuxsmin@syspass.org + * * This file is part of sysPass. * * sysPass is free software: you can redistribute it and/or modify @@ -24,7 +24,7 @@ * */ define('APP_ROOT', '..'); -include_once (APP_ROOT . "/inc/init.php"); +require_once APP_ROOT.DIRECTORY_SEPARATOR.'inc'.DIRECTORY_SEPARATOR.'init.php'; SP_Util::checkReferer('POST'); @@ -32,7 +32,7 @@ if (!SP_Init::isLoggedIn()) { SP_Util::logout(); } -if (SP_Common::parseParams('p', 'action', '', TRUE)) { +if (SP_Common::parseParams('p', 'action', '', true)) { $action = $tplvars['action'] = SP_Common::parseParams('p', 'action'); $itemId = $tplvars['id'] = SP_Common::parseParams('p', 'id', 0); $tplvars['lastaction'] = SP_Common::parseParams('p', 'lastAction', 'accsearch'); @@ -95,12 +95,12 @@ switch ($action) { case "usersmenu": echo '
'; echo ''; - $tplvars['active'] = 0; + $activeTab = 0; if (SP_ACL::checkUserAccess("users")) { $arrUsersTableProp = array( @@ -127,10 +127,10 @@ switch ($action) { ), 'tblRowSrcId' => 'user_id', 'frmId' => 'frm_tblusers', - 'nextaction' => $action, + 'onCloseAction' => $action, 'actionId' => 1, 'newActionId' => 2, - 'active' => $tplvars['active'] ++, + 'activeTab' => $activeTab++, 'actions' => array('view' => 'appMgmtData', 'edit' => 'appMgmtData', 'del' => 'appMgmtSave', 'pass' => 'usrUpdPass')); echo '
'; @@ -153,10 +153,10 @@ switch ($action) { 'tblRowSrc' => array('usergroup_name', 'usergroup_description'), 'tblRowSrcId' => 'usergroup_id', 'frmId' => 'frm_tblgroups', - 'nextaction' => $action, + 'onCloseAction' => $action, 'actionId' => 3, 'newActionId' => 4, - 'active' => $tplvars['active'] ++, + 'activeTab' => $activeTab++, 'actions' => array('edit' => 'appMgmtData', 'del' => 'appMgmtSave')); echo '
'; @@ -181,10 +181,10 @@ switch ($action) { 'tblRowSrc' => array('userprofile_name'), 'tblRowSrcId' => 'userprofile_id', 'frmId' => 'frm_tblprofiles', - 'nextaction' => $action, + 'onCloseAction' => $action, 'actionId' => 5, 'newActionId' => 6, - 'active' => $tplvars['active'] ++, + 'activeTab' => $activeTab++, 'actions' => array('edit' => 'appMgmtData', 'del' => 'appMgmtSave')); echo '
'; @@ -215,70 +215,70 @@ switch ($action) { case "appmgmtmenu": echo '
'; echo ''; - - $tplvars['active'] = 0; - + + $activeTab = 0; + if (SP_ACL::checkUserAccess("categories")) { $arrCategoriesTableProp = array( 'itemName' => _('Categoría'), 'tblId' => 'tblCategories', 'header' => '', - 'tblHeaders' => array(_('Nombre'),_('Descripción')), - 'tblRowSrc' => array('category_name','category_description'), + 'tblHeaders' => array(_('Nombre'), _('Descripción')), + 'tblRowSrc' => array('category_name', 'category_description'), 'tblRowSrcId' => 'category_id', 'frmId' => 'frm_tblcategories', - 'nextaction' => $action, + 'onCloseAction' => $action, 'actionId' => 9, 'newActionId' => 10, - 'active' => $tplvars['active'] ++, + 'activeTab' => $activeTab++, 'actions' => array('edit' => 'appMgmtData', 'del' => 'appMgmtSave') - ); + ); echo '
'; $startTime = microtime(); $categories = SP_Category::getCategories(); - if ($categories !== FALSE) { + if ($categories !== false) { SP_Html::getQueryTable($arrCategoriesTableProp, $categories); SP_Html::printQueryInfoBar(count($categories), $startTime); } echo '
'; } - + if (SP_ACL::checkUserAccess("customers")) { $arrCustomersTableProp = array( 'itemName' => _('Cliente'), 'tblId' => 'tblCustomers', 'header' => '', - 'tblHeaders' => array(_('Nombre'),_('Descripción')), - 'tblRowSrc' => array('customer_name','customer_description'), + 'tblHeaders' => array(_('Nombre'), _('Descripción')), + 'tblRowSrc' => array('customer_name', 'customer_description'), 'tblRowSrcId' => 'customer_id', 'frmId' => 'frm_tblcustomers', - 'nextaction' => $action, + 'onCloseAction' => $action, 'actionId' => 7, 'newActionId' => 8, - 'active' => $tplvars['active'] ++, + 'activeTab' => $activeTab++, 'actions' => array('edit' => 'appMgmtData', 'del' => 'appMgmtSave') - ); + ); echo '
'; $startTime = microtime(); $customers = SP_Customer::getCustomers(); - if ($customers !== FALSE) { + if ($customers !== false) { SP_Html::getQueryTable($arrCustomersTableProp, $customers); SP_Html::printQueryInfoBar(count($customers), $startTime); } echo '
'; } - + echo '
'; echo ''; } diff --git a/ajax/ajax_getFiles.php b/ajax/ajax_getFiles.php index fedd4177..2214addd 100644 --- a/ajax/ajax_getFiles.php +++ b/ajax/ajax_getFiles.php @@ -4,7 +4,7 @@ * * @author nuxsmin * @link http://syspass.org -* @copyright 2012 Rubén Domínguez nuxsmin@syspass.org +* @copyright 2012-2014 Rubén Domínguez nuxsmin@syspass.org * * This file is part of sysPass. * @@ -24,7 +24,7 @@ */ define('APP_ROOT', '..'); -include_once (APP_ROOT."/inc/init.php"); +require_once APP_ROOT.DIRECTORY_SEPARATOR.'inc'.DIRECTORY_SEPARATOR.'init.php'; SP_Util::checkReferer('GET'); @@ -34,10 +34,10 @@ if ( ! SP_Init::isLoggedIn() ) { if ( SP_Config::getValue('filesenabled') == 0 ){ echo _('Gestión de archivos deshabilitada'); - return FALSE; + return false; } -$sk = SP_Common::parseParams('g', 'sk', FALSE); +$sk = SP_Common::parseParams('g', 'sk', false); if (!$sk || !SP_Common::checkSessionKey($sk)) { SP_Common::printXML(_('CONSULTA INVÁLIDA')); diff --git a/ajax/ajax_import.php b/ajax/ajax_import.php index 77466528..90c8e548 100644 --- a/ajax/ajax_import.php +++ b/ajax/ajax_import.php @@ -1 +1 @@ -. * */ define('APP_ROOT', '..'); include_once (APP_ROOT . "/inc/init.php"); SP_Util::checkReferer('POST'); if (!SP_Init::isLoggedIn()) { SP_Common::printJSON(_('La sesión no se ha iniciado o ha caducado'), 10); } if (SP_Config::getValue('demoenabled', 0)) { SP_Common::printJSON(_('Acción Inválida').'(DEMO)'); } $sk = SP_Common::parseParams('p', 'sk', FALSE); if (!$sk || !SP_Common::checkSessionKey($sk)) { SP_Common::printJSON(_('CONSULTA INVÁLIDA')); } $res = SP_Import::doImport($_FILES["inFile"]); if (is_array($res['error'])) { foreach ($res['error'] as $error) { $errors [] = $error['description']; $errors [] = $error['hint']; error_log($error['hint']); } $out = implode('\n\n', $errors); SP_Common::printJSON($out); } else if (is_array($res['ok'])) { $out = implode('\n\n', $res['ok']); SP_Common::printJSON($out, 0); } \ No newline at end of file +. * */ define('APP_ROOT', '..'); require_once APP_ROOT.DIRECTORY_SEPARATOR.'inc'.DIRECTORY_SEPARATOR.'init.php'; SP_Util::checkReferer('POST'); if (!SP_Init::isLoggedIn()) { SP_Common::printJSON(_('La sesión no se ha iniciado o ha caducado'), 10); } if (SP_Config::getValue('demoenabled', 0)) { SP_Common::printJSON(_('Acción Inválida').'(DEMO)'); } $sk = SP_Common::parseParams('p', 'sk', false); if (!$sk || !SP_Common::checkSessionKey($sk)) { SP_Common::printJSON(_('CONSULTA INVÁLIDA')); } $res = SP_Import::doImport($_FILES["inFile"]); if (is_array($res['error'])) { foreach ($res['error'] as $error) { $errors [] = $error['description']; $errors [] = $error['hint']; error_log($error['hint']); } $out = implode('\n\n', $errors); SP_Common::printJSON($out); } else if (is_array($res['ok'])) { $out = implode('\n\n', $res['ok']); SP_Common::printJSON($out, 0); } \ No newline at end of file diff --git a/ajax/ajax_migrate.php b/ajax/ajax_migrate.php index 355252c9..046f128f 100644 --- a/ajax/ajax_migrate.php +++ b/ajax/ajax_migrate.php @@ -1 +1 @@ -. * */ define('APP_ROOT', '..'); include_once (APP_ROOT . "/inc/init.php"); SP_Util::checkReferer('POST'); if (!SP_Init::isLoggedIn()) { SP_Common::printJSON(_('La sesión no se ha iniciado o ha caducado'), 10); } if (SP_Config::getValue('demoenabled', 0)) { SP_Common::printJSON(_('Acción Inválida').'(DEMO)'); } $sk = SP_Common::parseParams('p', 'sk', FALSE); if (!$sk || !SP_Common::checkSessionKey($sk)) { SP_Common::printJSON(_('CONSULTA INVÁLIDA')); } $frmDBUser = SP_Common::parseParams('p', 'dbuser'); $frmDBPass = SP_Common::parseParams('p', 'dbpass'); $frmDBName = SP_Common::parseParams('p', 'dbname'); $frmDBHost = SP_Common::parseParams('p', 'dbhost'); $frmMigrateEnabled = SP_Common::parseParams('p', 'chkmigrate', 0, FALSE, 1); if (!$frmMigrateEnabled) { SP_Common::printJSON(_('Confirmar la importación de cuentas')); } if (!$frmDBUser) { SP_Common::printJSON(_('Es necesario un usuario de conexión')); } if (!$frmDBPass) { SP_Common::printJSON(_('Es necesaria una clave de conexión')); } if (!$frmDBName) { SP_Common::printJSON(_('Es necesario el nombre de la BBDD')); } if (!$frmDBHost) { SP_Common::printJSON(_('Es necesario un nombre de host')); } $options['dbhost'] = $frmDBHost; $options['dbname'] = $frmDBName; $options['dbuser'] = $frmDBUser; $options['dbpass'] = $frmDBPass; $res = SP_Migrate::migrate($options); if (is_array($res['error'])) { foreach ($res['error'] as $error) { $errors [] = $error['description']; $errors [] = $error['hint']; error_log($error['hint']); } $out = implode('
', $errors); SP_Common::printJSON($out); } else if (is_array($res['ok'])) { $out = implode('
', $res['ok']); SP_Common::printJSON($out, 0); } \ No newline at end of file +. * */ define('APP_ROOT', '..'); require_once APP_ROOT.DIRECTORY_SEPARATOR.'inc'.DIRECTORY_SEPARATOR.'init.php'; SP_Util::checkReferer('POST'); if (!SP_Init::isLoggedIn()) { SP_Common::printJSON(_('La sesión no se ha iniciado o ha caducado'), 10); } if (SP_Config::getValue('demoenabled', 0)) { SP_Common::printJSON(_('Acción Inválida').'(DEMO)'); } $sk = SP_Common::parseParams('p', 'sk', false); if (!$sk || !SP_Common::checkSessionKey($sk)) { SP_Common::printJSON(_('CONSULTA INVÁLIDA')); } $frmDBUser = SP_Common::parseParams('p', 'dbuser'); $frmDBPass = SP_Common::parseParams('p', 'dbpass'); $frmDBName = SP_Common::parseParams('p', 'dbname'); $frmDBHost = SP_Common::parseParams('p', 'dbhost'); $frmMigrateEnabled = SP_Common::parseParams('p', 'chkmigrate', 0, false, 1); if (!$frmMigrateEnabled) { SP_Common::printJSON(_('Confirmar la importación de cuentas')); } if (!$frmDBUser) { SP_Common::printJSON(_('Es necesario un usuario de conexión')); } if (!$frmDBPass) { SP_Common::printJSON(_('Es necesaria una clave de conexión')); } if (!$frmDBName) { SP_Common::printJSON(_('Es necesario el nombre de la BBDD')); } if (!$frmDBHost) { SP_Common::printJSON(_('Es necesario un nombre de host')); } $options['dbhost'] = $frmDBHost; $options['dbname'] = $frmDBName; $options['dbuser'] = $frmDBUser; $options['dbpass'] = $frmDBPass; $res = SP_Migrate::migrate($options); if (is_array($res['error'])) { foreach ($res['error'] as $error) { $errors [] = $error['description']; $errors [] = $error['hint']; error_log($error['hint']); } $out = implode('
', $errors); SP_Common::printJSON($out); } else if (is_array($res['ok'])) { $out = implode('
', $res['ok']); SP_Common::printJSON($out, 0); } \ No newline at end of file diff --git a/ajax/ajax_passReset.php b/ajax/ajax_passReset.php new file mode 100644 index 00000000..ad0b6f47 --- /dev/null +++ b/ajax/ajax_passReset.php @@ -0,0 +1,86 @@ +. + * + */ + +define('APP_ROOT', '..'); +require_once APP_ROOT.DIRECTORY_SEPARATOR.'inc'.DIRECTORY_SEPARATOR.'init.php'; + +SP_Util::checkReferer('POST'); + +$sk = SP_Common::parseParams('p', 'sk', false); + +if (!$sk || !SP_Common::checkSessionKey($sk)) { + SP_Common::printJSON(_('CONSULTA INVÁLIDA')); +} + +$userLogin = SP_Common::parseParams('p', 'login'); +$userEmail = SP_Common::parseParams('p', 'email'); +$userPass = SP_Common::parseParams('p', 'pass'); +$userPassV = SP_Common::parseParams('p', 'passv'); +$hash = SP_Common::parseParams('p', 'hash'); +$time = SP_Common::parseParams('p', 'time'); + +$message['action'] = _('Recuperación de Clave'); + +if ($userLogin && $userEmail) { + if (SP_Auth::mailPassRecover($userLogin, $userEmail)) { + $message['text'][] = SP_Html::strongText(_('Solicitado para') . ': ') . ' ' . $userLogin . ' (' . $userEmail . ')'; + + SP_Common::sendEmail($message); + SP_Log::wrLogInfo($message); + SP_Common::printJSON(_('Solicitud enviada') . ';;' . _('En breve recibirá un correo para completar la solicitud.'), 0, 'goLogin();'); + } else { + $message['text'][] = 'ERROR'; + $message['text'][] = SP_Html::strongText(_('Solicitado para') . ': ') . ' ' . $userLogin . ' (' . $userEmail . ')'; + + SP_Common::sendEmail($message); + SP_Log::wrLogInfo($message); + SP_Common::printJSON(_('No se ha podido realizar la solicitud. Consulte con el administrador.')); + } +} + +if ($userPass && $userPassV && $userPass === $userPassV) { + $userId = SP_Users::checkHashPassRecover($hash); + + if ($userId) { + $user = new SP_Users(); + + $user->userId = $userId; + $user->userPass = $userPass; + + if ($user->updateUserPass() && SP_Users::updateHashPassRecover($hash)) { + $message['action'] = _('Modificar Clave Usuario'); + $message['text'][] = SP_Html::strongText(_('Login') . ': ') . $user->getUserLoginById($userId); + + SP_Log::wrLogInfo($message); + SP_Common::sendEmail($message); + + SP_Common::printJSON(_('Clave actualizada'), 0, 'goLogin();'); + } + } + + SP_Common::printJSON(_('Error al modificar la clave')); +} else { + SP_Common::printJSON(_('La clave es incorrecta o no coincide')); +} \ No newline at end of file diff --git a/ajax/ajax_search.php b/ajax/ajax_search.php index f15f397c..6de57304 100644 --- a/ajax/ajax_search.php +++ b/ajax/ajax_search.php @@ -4,7 +4,7 @@ * * @author nuxsmin * @link http://syspass.org -* @copyright 2012 Rubén Domínguez nuxsmin@syspass.org +* @copyright 2012-2014 Rubén Domínguez nuxsmin@syspass.org * * This file is part of sysPass. * @@ -24,7 +24,7 @@ */ define('APP_ROOT', '..'); -include_once (APP_ROOT."/inc/init.php"); +require_once APP_ROOT.DIRECTORY_SEPARATOR.'inc'.DIRECTORY_SEPARATOR.'init.php'; SP_Util::checkReferer('POST'); @@ -32,7 +32,7 @@ if (!SP_Init::isLoggedIn()) { SP_Util::logout(); } -$sk = SP_Common::parseParams('p', 'sk', FALSE); +$sk = SP_Common::parseParams('p', 'sk', false); if (!$sk || !SP_Common::checkSessionKey($sk)) { die('
'._('CONSULTA INVÁLIDA').'
'); @@ -47,7 +47,7 @@ $wikiEnabled = SP_Config::getValue('wikienabled'); $wikiSearchUrl = SP_Config::getValue('wikisearchurl'); $wikiFilter = explode(',',SP_Config::getValue('wikifilter')); $wikiPageUrl = SP_Config::getValue('wikipageurl'); -$requestEnabled = SP_Config::getValue('mailrequestsenabled', FALSE); +$requestEnabled = SP_Config::getValue('mailrequestsenabled', false); $sortKey = SP_Common::parseParams('p', 'skey', 0); $sortOrder = SP_Common::parseParams('p', 'sorder', 0); @@ -55,13 +55,13 @@ $customerId = SP_Common::parseParams('p', 'customer', 0); $categoryId = SP_Common::parseParams('p', 'category', 0); $searchTxt = SP_Common::parseParams('p', 'search', ''); $limitStart = SP_Common::parseParams('p', 'start', 0); -$globalSearch = SP_Common::parseParams('p', 'gsearch', 0, FALSE, 1); +$globalSearch = SP_Common::parseParams('p', 'gsearch', 0, false, 1); $userGroupId = SP_Common::parseParams('s', 'ugroup', 0); $userProfileId = SP_Common::parseParams('s', 'uprofile', 0); $userId = SP_Common::parseParams('s', 'uid', 0); -$filterOn = ( $sortKey > 1 || $customerId || $categoryId || $searchTxt ) ? TRUE : FALSE; +$filterOn = ( $sortKey > 1 || $customerId || $categoryId || $searchTxt ) ? true : false; $objAccount = new SP_Account; $arrSearchFilter = array("txtSearch" => $searchTxt, @@ -224,7 +224,7 @@ foreach ( $resQuery as $account ){ echo '