コード例 #1
0
 private function updateThemeExistingAffiliates($themeId) {
     $update = new Gpf_SqlBuilder_UpdateBuilder();
     $update->from->add(Gpf_Db_Table_UserAttributes::getName(), 'ua');
     $update->from->addInnerJoin(Pap_Db_Table_Users::getName(), 'pu', 'ua.'.Gpf_Db_Table_UserAttributes::ACCOUNT_USER_ID.'=pu.'.Pap_Db_Table_Users::ACCOUNTUSERID);
     $update->set->add('ua.'.Gpf_Db_Table_UserAttributes::VALUE, $themeId);
     $update->where->add('ua.'.Gpf_Db_Table_UserAttributes::NAME, '=', Gpf_Auth_User::THEME_ATTRIBUTE_NAME);
     $update->where->add('pu.'.Pap_Db_Table_Users::TYPE, '=', Pap_Application::ROLETYPE_AFFILIATE);
     $update->update();
 }
コード例 #2
0
 /**
  * returns recordset of given attribute values for given array of users
  *
  * @param unknown_type $settingsNames
  * @param unknown_type $accountUserIds
  */
 public static function getSettingsForGroupOfUsers($settingsNames, $accountUserIds)
 {
     $select = new Gpf_SqlBuilder_SelectBuilder();
     $select->select->add(Gpf_Db_Table_UserAttributes::ACCOUNT_USER_ID, "accountuserid");
     $select->select->add(Gpf_Db_Table_UserAttributes::NAME, "name");
     $select->select->add(Gpf_Db_Table_UserAttributes::VALUE, "value");
     $select->from->add(Gpf_Db_Table_UserAttributes::getName());
     $select->where->add(Gpf_Db_Table_UserAttributes::NAME, "IN", $settingsNames);
     $select->where->add(Gpf_Db_Table_UserAttributes::ACCOUNT_USER_ID, "IN", $accountUserIds);
     $recordSet = $select->getAllRows();
     $results = array();
     foreach ($recordSet as $record) {
         $results[$record->get('accountuserid')][$record->get('name')] = $record->get('value');
     }
     return $results;
 }
コード例 #3
0
	protected function modifySelect(Gpf_SqlBuilder_SelectBuilder $selectBuilder) {
		$condition = new Gpf_SqlBuilder_CompoundWhereCondition();
		$condition->add('accountUsers.'.Gpf_Db_Table_Users::ID, '=',
    	   'ua.'.Gpf_Db_Table_UserAttributes::ACCOUNT_USER_ID, 'AND', false);
		$condition->add('ua.'.Gpf_Db_Table_UserAttributes::NAME, '=',
           'apply_vat_invoicing');
		$selectBuilder->from->addLeftJoin(Gpf_Db_Table_UserAttributes::getName(), 'ua',
		  $condition->toString());
		 
		if ($this->getVat() == Gpf::NO) {
			$condition = new Gpf_SqlBuilder_CompoundWhereCondition();
			$condition->add('ua.'.Gpf_Db_Table_UserAttributes::VALUE, '=', Gpf::NO, 'OR');
			$condition->add('ua.'.Gpf_Db_Table_UserAttributes::VALUE, '=', null, 'OR');
			$selectBuilder->where->addCondition($condition);
			return;
		}
		$selectBuilder->where->add('ua.'.Gpf_Db_Table_UserAttributes::VALUE, '=', Gpf::YES);
	}
コード例 #4
0
	private function deleteAffiliates() {
		Pap3Compatibility_Migration_OutputWriter::logOnce("  Deleting affiliates .....");
		// pap users
		$sql = new Gpf_SqlBuilder_DeleteBuilder();
    	$sql->from->add(Pap_Db_Table_Users::getName());
    	$sql->where->add('rtype', '=', 'A');
    	$sql->execute();

    	// g_users
    	$inSelect = new Gpf_SqlBuilder_SelectBuilder();
    	$inSelect->select->add(Pap_Db_Table_Users::ACCOUNTUSERID);
    	$inSelect->from->add(Pap_Db_Table_Users::getName());
		$sql = new Gpf_SqlBuilder_DeleteBuilder();
    	$sql->from->add(Gpf_Db_Table_Users::getName());
    	$sql->where->add('accountuserid', 'NOT IN', $inSelect, 'AND', false);
    	$sql->execute();

    	// g_authusers
    	$inSelect = new Gpf_SqlBuilder_SelectBuilder();
        $inSelect->select->add(Gpf_Db_Table_Users::AUTHID);
        $inSelect->from->add(Gpf_Db_Table_Users::getName());
		$sql = new Gpf_SqlBuilder_DeleteBuilder();
    	$sql->from->add(Gpf_Db_Table_AuthUsers::getName());
    	$sql->where->add('authid', 'NOT IN', $inSelect, 'AND', false);
    	$sql->execute();

    	// g_userattributes
    	$inSelect = new Gpf_SqlBuilder_SelectBuilder();
        $inSelect->select->add(Gpf_Db_Table_Users::ID);
        $inSelect->from->add(Gpf_Db_Table_Users::getName());
		$sql = new Gpf_SqlBuilder_DeleteBuilder();
    	$sql->from->add(Gpf_Db_Table_UserAttributes::getName());
    	$sql->where->add('accountuserid', 'NOT IN', $inSelect, 'AND', false);
    	$sql->execute();

    	// g_gadgets
    	$inSelect = new Gpf_SqlBuilder_SelectBuilder();
        $inSelect->select->add(Gpf_Db_Table_Users::ID);
        $inSelect->from->add(Gpf_Db_Table_Users::getName());
		$sql = new Gpf_SqlBuilder_DeleteBuilder();
    	$sql->from->add(Gpf_Db_Table_Gadgets::getName());
    	$sql->where->add('accountuserid', 'NOT IN', $inSelect, 'AND', false);
    	$sql->execute();

    	Pap3Compatibility_Migration_OutputWriter::log("DONE<br/>");
	}