本文整理汇总了PHP中ArtefactType::get方法的典型用法代码示例。如果您正苦于以下问题:PHP ArtefactType::get方法的具体用法?PHP ArtefactType::get怎么用?PHP ArtefactType::get使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ArtefactType
的用法示例。
在下文中一共展示了ArtefactType::get方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: add_artefact_link
/**
* add a link to another artefact
* use this function, as it makes sure the artefact we're linking to is included
* in the feed.
*
* @param ArtefactType $artefact artefact to link to
* @param string rel the LEAP relationship to use
*/
public function add_artefact_link(ArtefactType $artefact, $rel)
{
if (array_key_exists($artefact->get('id'), $this->exporter->get('artefacts'))) {
$this->add_generic_link('artefact' . $artefact->get('id'), $rel);
}
}
示例2: data_mapping
public function data_mapping(ArtefactType $artefact)
{
$artefacttype = $artefact->get('artefacttype');
$artefactnote = $artefact->get('note');
// Mapping shouldn't contain 'socialprofile' artefacttype
// which is handled separately...
static $mapping = array('firstname' => 'legal_given_name', 'lastname' => 'legal_family_name', 'preferredname' => 'preferred_given_name', 'email' => 'email', 'blogaddress' => 'website', 'personalwebsite' => 'website', 'officialwebsite' => 'website', 'mobilenumber' => 'mobile', 'businessnumber' => 'workphone', 'homenumber' => 'homephone', 'faxnumber' => 'fax');
static $spacialmapping = array('country' => 'country', 'city' => 'addressline', 'town' => 'addressline', 'address' => 'addressline');
if (array_key_exists($artefacttype, $mapping)) {
return array('field' => $mapping[$artefacttype]);
}
if ($artefacttype == 'socialprofile') {
if (in_array($artefactnote, ArtefactTypeSocialprofile::$socialnetworks)) {
// Export old messaging system accounts as
// persondata fields with leap:field="id".
return array('field' => 'id', 'service' => $artefactnote);
} else {
// Export new social site profiles as persondata fields
// with leap:field="website" (what they basically are).
return array('field' => 'website');
}
}
if (array_key_exists($artefacttype, $spacialmapping)) {
$result = array('spacial' => true, 'type' => $spacialmapping[$artefacttype]);
if ($artefacttype == 'country') {
require_once 'country.php';
$result['countrycode'] = Country::iso3166_1alpha2_to_iso3166_1alpha3($artefact->get('title'));
}
return $result;
}
if ($artefacttype == 'studentid') {
return array('field' => 'other', 'label' => 'Student ID');
}
/*
'industry // not part of persondata
'occupation // not part of persondata
'introduction // not part of persondata
*/
return false;
}
示例3: can_publish_artefact
/**
* Indicates whether the user has permission to use the artefact in their own Pages. The name
* refers to the "publish" permission for group files.
*
* If a user has "publish" permission on an artefact, it is assumed the also have "edit" and
* "view" permission (i.e. can view it in the artefact chooser -- see $USER->can_view_artefact())
*
* @param ArtefactType $a
* @return boolean
*/
public function can_publish_artefact($a)
{
$parent = $a->get_parent_instance();
if ($parent) {
if (!$this->can_view_artefact($parent)) {
return false;
}
}
if ($this->get('id') and $this->get('id') == $a->get('owner')) {
return true;
}
if ($i = $a->get('institution')) {
if ($i == 'mahara') {
return $this->get('admin');
}
return $this->in_institution($i) || $this->can_edit_institution($i);
}
if (!($group = $a->get('group'))) {
return false;
}
require_once 'group.php';
if (!($role = group_user_access($group, $this->id))) {
return false;
}
if ($role == 'admin') {
return true;
}
if ($this->id == $a->get('author')) {
return true;
}
return $a->role_has_permission($role, 'republish');
}
示例4: data_mapping
public function data_mapping(ArtefactType $artefact)
{
$artefacttype = $artefact->get('artefacttype');
static $mapping = array('firstname' => 'legal_given_name', 'lastname' => 'legal_family_name', 'preferredname' => 'preferred_given_name', 'email' => 'email', 'blogaddress' => 'website', 'personalwebsite' => 'website', 'officialwebsite' => 'website', 'mobilenumber' => 'mobile', 'businessnumber' => 'workphone', 'homenumber' => 'homephone', 'faxnumber' => 'fax');
static $idmapping = array('jabberusername' => 'jabber', 'skypeusername' => 'skype', 'yahoochat' => 'yahoo', 'aimscreenname' => 'aim', 'msnnumber' => 'msn', 'icqnumber' => 'icq');
static $spacialmapping = array('country' => 'country', 'city' => 'addressline', 'town' => 'addressline', 'address' => 'addressline');
if (array_key_exists($artefacttype, $mapping)) {
return array('field' => $mapping[$artefacttype]);
}
if (array_key_exists($artefacttype, $idmapping)) {
return array('field' => 'id', 'service' => $idmapping[$artefacttype]);
}
if (array_key_exists($artefacttype, $spacialmapping)) {
$result = array('spacial' => true, 'type' => $spacialmapping[$artefacttype]);
if ($artefacttype == 'country') {
require_once 'country.php';
$result['countrycode'] = Country::iso3166_1alpha2_to_iso3166_1alpha3($artefact->get('title'));
}
return $result;
}
if ($artefacttype == 'studentid') {
return array('field' => 'other', 'label' => 'Student ID');
}
/*
'industry // not part of persondata
'occupation // not part of persondata
'introduction // not part of persondata
*/
return false;
}