Пример #1
0
 public function __construct(array $urlParams = [])
 {
     // Static saved the application name
     $appName = Helper::setAppName('owncollab_contacts');
     parent::__construct($appName, $urlParams);
     $container = $this->getContainer();
     /**
      * Core for application registers service
      */
     $container->registerService('UserId', function (IContainer $c) {
         /** @var \OC\Server $server */
         /** @var \OCP\IUser  $user */
         $server = $c->query('ServerContainer');
         $user = $server->getUserSession()->getUser();
         return $user ? $user->getUID() : '';
     });
     $container->registerService('isAdmin', function (DIContainer $c) {
         /** @var \OC\Server $server */
         /** @var \OCP\IUser  $user */
         $server = $c->query('ServerContainer');
         $user = $server->getUserSession()->getUser();
         if ($user) {
             return $c->getServer()->getGroupManager()->isAdmin($user->getUID());
         } else {
             return false;
         }
     });
     $container->registerService('L10N', function (IAppContainer $c) use($appName) {
         return $c->getServer()->getL10N($appName);
     });
     /**
      * Database Layer
      */
     $container->registerService('Connect', function (DIContainer $c) {
         return new Connect(\OC::$server->getDatabaseConnection());
     });
     $container->registerService('CardDavBackend', function ($c) {
         /** @var IAppContainer $c */
         $db = $c->getServer()->getDatabaseConnection();
         $dispatcher = $c->getServer()->getEventDispatcher();
         $principal = new Principal($c->getServer()->getUserManager(), $c->getServer()->getGroupManager());
         return new CardDavBackend($db, $principal, $dispatcher);
     });
     /**
      * Controllers
      */
     $container->registerService('ApiController', function (DIContainer $c) {
         return new ApiController($c->query('AppName'), $c->query('Request'), $c->query('UserId'), $c->query('isAdmin'), $c->query('L10N'), $c->query('Connect'));
     });
     $container->registerService('MainController', function (DIContainer $c) {
         return new MainController($c->query('AppName'), $c->query('Request'), $c->query('UserId'), $c->query('isAdmin'), $c->query('L10N'), $c->query('Connect'), $c->query('CardDavBackend'));
     });
 }
Пример #2
0
 /**
  * @NoAdminRequired
  * @NoCSRFRequired
  */
 public function index()
 {
     $key = Helper::post('key');
     $data = Helper::post('data', false);
     $pid = Helper::post('pid');
     $uid = Helper::post('uid');
     if (method_exists($this, $key)) {
         return $this->{$key}($data);
     } else {
         return new DataResponse(['error' => 'Api key not exist']);
     }
 }
Пример #3
0
         * A listen the events "create new users" and "create new group"
    
        function initTriggers(){
            static $abh = null;
    
            if($abh === null) {
                Helper::appLoger('initTriggers');
                $connect = new Connect(Helper::getConnection());
            }
        }
    
    
        if( Helper::isAppSettingsUsers()) {
            initTriggers();
        } */
    if (Helper::isApp('contacts')) {
        $user = \OC::$server->getUserSession()->getUser();
        $uid = $user ? $user->getUID() : false;
        if ($uid) {
            $projectBook = new ProjectBook();
            $projectBookInfo = $projectBook->getProjectBook();
            if (!$projectBookInfo) {
                $projectBook->createProjectBook();
            }
            $isShared = $projectBook->shareProjectBookWith($uid);
            if ($projectBookInfo && !$isShared) {
                $projectBook->updateProjectBook();
            }
        }
    }
}