diff --git a/application/controllers/manage/Attribute_policyajax.php b/application/controllers/manage/Attribute_policyajax.php
index 15258a461..440c6b78c 100644
--- a/application/controllers/manage/Attribute_policyajax.php
+++ b/application/controllers/manage/Attribute_policyajax.php
@@ -25,161 +25,6 @@ public function __construct() {
}
- public function retrieveattrpath($idpid=null)
- {
- if(!$this->input->is_ajax_request() || (empty($idpid) || !is_numeric($idpid)))
- {
- show_error('method not allowed',403);
- }
- $loggedin = $this->j_auth->logged_in();
- if (!$loggedin) {
- set_status_header(403);
- echo 'lost session';
- return;
- }
- $this->load->library('zacl');
- $tmp_arps = new models\AttributeReleasePolicies;
- $langdrop = array('0'=>lang('dropnever'),'1'=> lang('dropokreq'),'2'=>lang('dropokreqdes'),'100'=>lang('dropnotset'));
-
-
-
- $idp = $this->em->getRepository("models\Provider")->findOneBy(array('id'=>$idpid,'type'=>array('IDP','BOTH')));
- if(empty($idp))
- {
- set_status_header(404);
- echo 'idp not found';
- return;
- }
- $has_write_access = $this->zacl->check_acl($idpid, 'write', 'entity', '');
- if(!$has_write_access)
- {
- set_status_header(403);
- echo 'no permission';
- return;
- }
-
- $requester = $this->input->post('requester');
- $attrname = $this->input->post('attribute');
-
- if(empty($requester) || empty($attrname))
- {
- set_status_header(403);
- echo 'missing params';
- return;
- }
-
- $attribute = $this->em->getRepository("models\Attribute")->findOneBy(array('name'=>$attrname));
- if(empty($attribute))
- {
- set_status_header(403);
- echo 'missing attr';
- return;
- }
- $sp = $this->em->getRepository("models\Provider")->findOneBy(array('entityid'=>$requester,'type'=>array('SP','BOTH')));
- if(empty($sp))
- {
- set_status_header(403);
- echo 'missing sp';
- return;
- }
- $result = array('status'=>'ok','requester'=>$requester,'attributename'=>$attrname);
- $result['details'] = array();
- $supportedAttr = $this->em->getRepository("models\AttributeReleasePolicy")->findOneBy(array('attribute'=>$attribute,'idp'=>$idp,'type'=>'supported'));
- $supported = false;
- if(!empty($supportedAttr))
- {
- $result['supported'] = true;
- $result['details'][] = array('name'=>'','value'=>lang('rr_supported'));
- $supported = true;
- }
- else
- {
- $result['supported'] = false;
- $result['details'][] = array('name'=>'','value'=>lang('attrnotsupported'));
- }
- $globalPolicy = $this->em->getRepository("models\AttributeReleasePolicy")->findOneBy(array('attribute'=>$attribute,'idp'=>$idp,'type'=>'global'));
- $global = 0;
- if(empty($globalPolicy))
- {
- $result['global'] = null;
- $val = ''.$langdrop['100'].' => deny';
- $result['details'][] = array('name'=>lang('rr_defaultarp'),'value'=>$val);
- }
- else
- {
- $result['global'] = $globalPolicy->getPolicy();
- $result['details'][] = array('name'=>lang('rr_default'),'value'=>$langdrop[$globalPolicy->getPolicy()]);
- }
- $idpfeds = $idp->getFederations();
- $spfeds = $sp->getFederations();
- $attrfed = null;
- $fedsmerged = array();
- foreach($spfeds as $s)
- {
- if($idpfeds->contains($s))
- {
- $tmpattrfed = $tmp_arps->getOneFedPolicyAttribute($idp,$s,$attribute->getId());
- if(!empty($tmpattrfed))
- {
- $tmpattrfedPolicy = $tmpattrfed->getPolicy();
- if($tmpattrfedPolicy !== null && $tmpattrfedPolicy >= $attrfed)
- {
- $attrfed = $tmpattrfedPolicy;
- $fedsmerged[] = $sp->getName();
- }
- }
- }
- }
- if($attrfed === null)
- {
- $result['details'][] = array('name'=>'federation','value'=>$langdrop['100'] .' => '.lang('rr_inheritfromparent'));
- }
- else
- {
- $fedsuffix = '';
- if(count($fedsmerged)>1)
- {
- $fedsuffix = '
'.lang('rr_merged').':
';
- $fedsuffix .= implode('
',$fedsmerged);
- }
- $result['details'][] = array('name'=>lang('rr_federation'),'value'=>$langdrop[''.$attrfed.''].$fedsuffix);
- }
-
- $specificPolicy = $tmp_arps->getOneSPPolicy($idp->getId(), $attribute->getId(), $sp->getId());
- $customPolicy = $tmp_arps->getOneSPCustomPolicy($idp->getId(), $attribute->getId(), $sp->getId());
- if(empty($specificPolicy))
- {
- $result['details'][] = array('name'=>lang('rr_requester'),'value'=>$langdrop['100'] .' => '.lang('rr_inheritfromparent'));
- }
- else
- {
- $result['details'][] = array('name'=>lang('rr_requester'),'value'=>$langdrop[$specificPolicy->getPolicy()] );
- }
- if(!empty($customPolicy))
- {
- $rawdata = $customPolicy->getRawdata();
- if(is_array($rawdata))
- {
- $suffix = '';
- if(isset($rawdata['permit']) && is_array($rawdata['permit']))
- {
- $suffix = '
'.lang('rr_permvalues').':
';
- $suffix .= implode('
',$rawdata['permit']);
- }
- elseif(isset($rawdata['deny']) && is_array($rawdata['deny']))
- {
- $suffix = '
'.lang('rr_denvalues').':
';
- $suffix .= implode('
',$rawdata['deny']);
-
- }
- $result['details'][] = array('name'=>lang('custompolicy'),'value'=>''.lang('customappliedifpermited').''.$suffix);
- }
- }
- $this->output->set_content_type('application/json');
- echo json_encode($result);
-
-
- }
public function getattrpath($idpid,$spid,$attrid)
{
if(!$this->input->is_ajax_request())
@@ -245,7 +90,6 @@ public function getattrpath($idpid,$spid,$attrid)
{
$result['supported'] = true;
$result['details'][] = array('name'=>'','value'=>lang('rr_supported'));
- $supported = true;
}
else
{
@@ -253,7 +97,6 @@ public function getattrpath($idpid,$spid,$attrid)
$result['details'][] = array('name'=>'','value'=>lang('attrnotsupported'));
}
$globalPolicy = $this->em->getRepository("models\AttributeReleasePolicy")->findOneBy(array('attribute'=>$attribute,'idp'=>$idp,'type'=>'global'));
- $global = 0;
if(empty($globalPolicy))
{
$result['global'] = null;
diff --git a/application/controllers/reports/Idpmatrix.php b/application/controllers/reports/Idpmatrix.php
index 9951cfc19..9bda65874 100644
--- a/application/controllers/reports/Idpmatrix.php
+++ b/application/controllers/reports/Idpmatrix.php
@@ -21,7 +21,6 @@ class Idpmatrix extends MY_Controller
{
private $tmp_providers;
- private $logo_url;
function __construct()
{
@@ -40,11 +39,6 @@ function __construct()
$this->logo_url = $this->logo_baseurl . $this->logo_basepath;
}
- private function _get_members($idp)
- {
- $members = $this->tmp_providers->getCircleMembersLight($idp);
- return $members;
- }
public function getArpData($idpid)
{
@@ -86,7 +80,6 @@ public function getArpData($idpid)
$returnArray = TRUE;
$arparray['policies'] = $this->arp_generator->arpToXML($idp, $returnArray);
- //$attrdedsCopy = array();
foreach($arparray['policies'] as $p)
{
foreach($p['attributes'] as $k => $v)
@@ -154,7 +147,6 @@ public function show($idpid)
$extends = $idp->getExtendMetadata();
if (count($extends) > 0)
{
- $is_logo = false;
foreach ($extends as $ex)
{
$el = $ex->getElement();
diff --git a/application/models/Providers.php b/application/models/Providers.php
index 5adcace35..fce657761 100644
--- a/application/models/Providers.php
+++ b/application/models/Providers.php
@@ -66,10 +66,9 @@ public function getTrustedActiveFeds(Provider $provider)
}
return $feds;
}
-
public function getSPsForArp(Provider $provider)
{
- $query1 = $this->em->createQuery("SELECT m,f FROM models\FederationMembers m JOIN m.federation f WHERE m.provider = ?1 AND m.joinstate != '2' AND m.isDisabled = '0' AND m.isBanned='0' AND f.is_active = '1'");
+ $query1 = $this->em->createQuery("SELECT partial m.{id, federation},partial f.{id} FROM models\FederationMembers m JOIN m.federation f WHERE m.provider = ?1 AND m.joinstate != '2' AND m.isDisabled = '0' AND m.isBanned='0' AND f.is_active = '1'");
$query1->setParameter(1, $provider->getId());
$query1->setHint(\Doctrine\ORM\Query::HINT_FORCE_PARTIAL_LOAD, true);
$result1 = $query1->getResult();
@@ -82,9 +81,8 @@ public function getSPsForArp(Provider $provider)
{
return array();
}
- $query = $this->em->createQuery("SELECT p,e,m,f FROM models\Provider p LEFT JOIN p.membership m LEFT JOIN m.federation f LEFT JOIN p.extend e WHERE m.federation IN (:feds) AND m.joinstate != '2' AND m.isDisabled = '0' AND m.isBanned='0' AND p.id != ?2 AND p.is_active = '1' AND p.is_approved = '1' AND p.type IN ('SP','BOTH')");
+ $query = $this->em->createQuery("SELECT partial p.{id, entityid,type,ldisplayname,displayname,lname, name},e,partial m.{id, provider, federation},partial f.{id} FROM models\Provider p LEFT JOIN p.membership m LEFT JOIN m.federation f LEFT JOIN p.extend e WHERE m.federation IN (:feds) AND m.joinstate != '2' AND m.isDisabled = '0' AND m.isBanned='0' AND p.type IN ('SP','BOTH') AND p.is_active = '1' AND p.is_approved = '1'");
$query->setParameter('feds', $feds);
- $query->setParameter(2, $provider->getId());
$query->setHint(\Doctrine\ORM\Query::HINT_FORCE_PARTIAL_LOAD, true);
$result = $query->getResult();
$r2 = new \Doctrine\Common\Collections\ArrayCollection;
@@ -113,7 +111,7 @@ public function getIdPsForWayf(Provider $provider)
return array();
}
$currentTime = new \DateTime("now", new \DateTimeZone('UTC'));
- $query = $this->em->createQuery("SELECT partial p.{id, entityid,type,ldisplayname,lname,validfrom, validto},e, partial m.{id} FROM models\Provider p LEFT JOIN p.extend e LEFT JOIN p.membership m LEFT JOIN m.federation f WHERE m.federation IN (:feds) AND m.joinstate != '2' AND m.isDisabled = '0' AND m.isBanned='0' AND p.id != ?2 AND p.is_active = '1' AND p.is_approved = '1' AND (p.validto is null OR p.validto >= :now) AND (p.validfrom is null OR p.validfrom <= :now) AND p.type IN ('IDP','BOTH')");
+ $query = $this->em->createQuery("SELECT partial p.{id,entityid,type,ldisplayname,lname,name,displayname},e, partial m.{id} FROM models\Provider p LEFT JOIN p.extend e LEFT JOIN p.membership m LEFT JOIN m.federation f WHERE m.federation IN (:feds) AND m.joinstate != '2' AND m.isDisabled = '0' AND m.isBanned='0' AND p.id != ?2 AND p.is_active = '1' AND p.is_approved = '1' AND (p.validto is null OR p.validto >= :now) AND (p.validfrom is null OR p.validfrom <= :now) AND p.type IN ('IDP','BOTH')");
$query->setParameter('feds', $feds);
$query->setParameter(2, $spid);
$query->setParameter('now', $currentTime);
diff --git a/application/views/reports/idpmatrix_show_view.php b/application/views/reports/idpmatrix_show_view.php
index 2ef434f65..bd1288bba 100644
--- a/application/views/reports/idpmatrix_show_view.php
+++ b/application/views/reports/idpmatrix_show_view.php
@@ -70,7 +70,6 @@