Proyectos de Subversion LeadersLinked - Backend

Rev

Rev 15087 | Rev 16768 | Ir a la última revisión | Mostrar el archivo completo | | | Autoría | Ultima modificación | Ver Log |

Rev 15087 Rev 16766
Línea 9... Línea 9...
9
declare(strict_types=1);
9
declare(strict_types=1);
Línea 10... Línea 10...
10
 
10
 
Línea 11... Línea 11...
11
namespace LeadersLinked\Controller;
11
namespace LeadersLinked\Controller;
12
 
12
 
13
use Laminas\Db\Adapter\AdapterInterface;
13
use Laminas\Db\Adapter\AdapterInterface;
14
use Laminas\Cache\Storage\Adapter\AbstractAdapter;
14
use LeadersLinked\Cache\CacheInterface;
15
use Laminas\Mvc\Controller\AbstractActionController;
15
use Laminas\Mvc\Controller\AbstractActionController;
16
use Laminas\Log\LoggerInterface;
16
use Laminas\Log\LoggerInterface;
Línea 42... Línea 42...
42
use LeadersLinked\Mapper\CompanyFollowerMapper;
42
use LeadersLinked\Mapper\CompanyFollowerMapper;
43
use LeadersLinked\Mapper\CompanyUserMapper;
43
use LeadersLinked\Mapper\CompanyUserMapper;
44
use LeadersLinked\Mapper\CompanyMapper;
44
use LeadersLinked\Mapper\CompanyMapper;
45
use LeadersLinked\Mapper\IndustryMapper;
45
use LeadersLinked\Mapper\IndustryMapper;
46
use LeadersLinked\Mapper\CompanySizeMapper;
46
use LeadersLinked\Mapper\CompanySizeMapper;
-
 
47
use LeadersLinked\Mapper\UserMapper;
Línea 47... Línea 48...
47
 
48
 
48
class ProfileController extends AbstractActionController
49
class ProfileController extends AbstractActionController
49
{
50
{
50
    /**
51
    /**
Línea 54... Línea 55...
54
    private $adapter;
55
    private $adapter;
Línea 55... Línea 56...
55
 
56
 
56
 
57
 
57
    /**
58
    /**
58
     *
59
     *
59
     * @var AbstractAdapter
60
     * @var CacheInterface
Línea 60... Línea 61...
60
     */
61
     */
61
    private $cache;
62
    private $cache;
Línea 74... Línea 75...
74
    private $config;
75
    private $config;
Línea 75... Línea 76...
75
 
76
 
76
    /**
77
    /**
77
     *
78
     *
78
     * @param AdapterInterface $adapter
79
     * @param AdapterInterface $adapter
79
     * @param AbstractAdapter $cache
80
     *@param CacheInterface $cache
80
     * @param LoggerInterface $logger
81
     * @param LoggerInterface $logger
81
     * @param array $config
82
     * @param array $config
82
     */
83
     */
83
    public function __construct($adapter, $cache, $logger,  $config)
84
    public function __construct($adapter, $cache, $logger,  $config)
Línea 807... Línea 808...
807
        if ($request->isPost()) {
808
        if ($request->isPost()) {
808
            $companyMapper = CompanyMapper::getInstance($this->adapter);
809
            $companyMapper = CompanyMapper::getInstance($this->adapter);
809
            $company = $companyMapper->fetchOne($currentCompany->id);
810
            $company = $companyMapper->fetchOne($currentCompany->id);
Línea 810... Línea 811...
810
 
811
 
-
 
812
            $target_path = $this->config['leaderslinked.fullpath.company'] . DIRECTORY_SEPARATOR . $company->uuid;
811
            $target_path = $this->config['leaderslinked.fullpath.company'] . DIRECTORY_SEPARATOR . $company->uuid;
813
            
812
 
814
            
813
            if ($operation == 'delete') {
815
            if ($operation == 'delete') {
Línea 814... Línea 816...
814
                $this->logger->info('Se borro la imagen de la empresa: ' . $company->name, ['user_id' => $currentUser->id, 'ip' => Functions::getUserIP()]);
816
                $this->logger->info('Se borro la imagen de la empresa: ' . $company->name, ['user_id' => $currentUser->id, 'ip' => Functions::getUserIP()]);
Línea 828... Línea 830...
828
                    return new JsonModel([
830
                    return new JsonModel([
829
                        'success'   => false,
831
                        'success'   => false,
830
                        'data'   =>  'ERROR_THERE_WAS_AN_ERROR'
832
                        'data'   =>  'ERROR_THERE_WAS_AN_ERROR'
831
                    ]);
833
                    ]);
832
                }
834
                }
-
 
835
                
-
 
836
                $companyUserMapper = CompanyUserMapper::getInstance($this->adapter);
-
 
837
                $companyUser = $companyUserMapper->fetchOwnerByCompanyId($company->id);
-
 
838
                
-
 
839
                if($companyUser) {
-
 
840
                    $userMapper = UserMapper::getInstance($this->adapter);
-
 
841
                    $user = $userMapper->fetchOne($companyUser->user_id);
-
 
842
                    if($user) {
-
 
843
                        $user_path = $this->config['leaderslinked.fullpath.user'] . DIRECTORY_SEPARATOR . $user->uuid;
-
 
844
                        if(!file_exists($user_path)) {
-
 
845
                            mkdir($user_path, 0755, true);
-
 
846
                        }
-
 
847
                        
-
 
848
                        if($user->image) {
-
 
849
                            $filename = $user_path . DIRECTORY_SEPARATOR . $user->image;
-
 
850
                            if(file_exists($filename) && is_writable($filename)) {
-
 
851
                                @unlink($filename);
-
 
852
                            }
-
 
853
                        }
-
 
854
                        
-
 
855
                        
-
 
856
                        
-
 
857
                        $user->image = '';
-
 
858
                        $userMapper->updateImage($user);
-
 
859
                        
-
 
860
                        if($company->name != $user->first_name) {
-
 
861
                            $user->first_name = $company->name;
-
 
862
                            $user->last_name = '';
-
 
863
                            $userMapper->updateFirstNameAndLastName($user);
-
 
864
                        }
-
 
865
                    }
-
 
866
                }
-
 
867
                
-
 
868
                
833
            } else {
869
            } else {
834
                $form = new CompanyProfileImageForm($this->config);
870
                $form = new CompanyProfileImageForm($this->config);
835
                $data     = array_merge($request->getPost()->toArray(), $request->getFiles()->toArray());
871
                $data     = array_merge($request->getPost()->toArray(), $request->getFiles()->toArray());
Línea 836... Línea 872...
836
 
872
 
Línea 876... Línea 912...
876
                        return new JsonModel([
912
                        return new JsonModel([
877
                            'success'   => false,
913
                            'success'   => false,
878
                            'data'   =>  'ERROR_THERE_WAS_AN_ERROR'
914
                            'data'   =>  'ERROR_THERE_WAS_AN_ERROR'
879
                        ]);
915
                        ]);
880
                    }
916
                    }
-
 
917
                    
-
 
918
                    $companyUserMapper = CompanyUserMapper::getInstance($this->adapter);
-
 
919
                    $companyUser = $companyUserMapper->fetchOwnerByCompanyId($company->id);
-
 
920
                    
-
 
921
                    if($companyUser) {
-
 
922
                        $userMapper = UserMapper::getInstance($this->adapter);
-
 
923
                        $user = $userMapper->fetchOne($companyUser->user_id);
-
 
924
                        if($user) {
-
 
925
                            $user_path = $this->config['leaderslinked.fullpath.user'] . DIRECTORY_SEPARATOR . $user->uuid;
-
 
926
                            if(!file_exists($user_path)) {
-
 
927
                                mkdir($user_path, 0755, true);
-
 
928
                            }
-
 
929
                            
-
 
930
                            if($user->image) {
-
 
931
                                $filename = $user_path . DIRECTORY_SEPARATOR . $user->image;
-
 
932
                                if(file_exists($filename) && is_writable($filename)) {
-
 
933
                                    @unlink($filename);
-
 
934
                                }
-
 
935
                            }
-
 
936
                            
-
 
937
                            $user->image = $company->image;
-
 
938
                            if($userMapper->updateImage($user)) {
-
 
939
                                $source = $target_path . DIRECTORY_SEPARATOR . $target_filename;
-
 
940
                                $dest = $user_path . DIRECTORY_SEPARATOR . $target_filename;
-
 
941
                                @copy($source, $dest);
-
 
942
                                
-
 
943
                            }
-
 
944
                            
-
 
945
                            if($company->name != $user->first_name) {
-
 
946
                                $user->first_name = $company->name;
-
 
947
                                $user->last_name = '';
-
 
948
                                $userMapper->updateFirstNameAndLastName($user);
-
 
949
                            }
-
 
950
                        }
-
 
951
                    }
-
 
952
                    
Línea 881... Línea 953...
881
 
953
 
882
                    $this->logger->info('Se actualizo la imagen de la empresa: ' . $company->name, ['user_id' => $currentUser->id, 'ip' => Functions::getUserIP()]);
954
                    $this->logger->info('Se actualizo la imagen de la empresa: ' . $company->name, ['user_id' => $currentUser->id, 'ip' => Functions::getUserIP()]);
883
                } else {
955
                } else {
884
                    $messages = [];
956
                    $messages = [];