本文整理汇总了PHP中Aimeos\MShop\Common\Item\Iface::getCode方法的典型用法代码示例。如果您正苦于以下问题:PHP Iface::getCode方法的具体用法?PHP Iface::getCode怎么用?PHP Iface::getCode使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Aimeos\MShop\Common\Item\Iface
的用法示例。
在下文中一共展示了Iface::getCode方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: set
/**
* Adds the attribute item to the cache
*
* @param \Aimeos\MShop\Common\Item\Iface $item Attribute object
*/
public function set(\Aimeos\MShop\Common\Item\Iface $item)
{
$code = $item->getCode();
if (!isset($this->attributes[$code]) || !is_array($this->attributes[$code])) {
$this->attributes[$code] = array();
}
$this->attributes[$code][$item->getType()] = $item;
}
示例2: saveItem
/**
* Saves a currency item to the storage.
*
* @param \Aimeos\MShop\Common\Item\Iface $item Currency item to save in the storage
* @param boolean $fetch True if the new ID should be returned in the item
*
* @throws \Aimeos\MW\DB\Exception If currency object couldn't be saved
* @throws \Aimeos\MShop\Locale\Exception If failures with currency item object
*/
public function saveItem(\Aimeos\MShop\Common\Item\Iface $item, $fetch = true)
{
$iface = '\\Aimeos\\MShop\\Locale\\Item\\Currency\\Iface';
if (!$item instanceof $iface) {
throw new \Aimeos\MShop\Locale\Exception(sprintf('Object is not of required type "%1$s"', $iface));
}
if (!$item->isModified()) {
return;
}
$context = $this->getContext();
$dbm = $context->getDatabaseManager();
$dbname = $this->getResourceName();
$conn = $dbm->acquire($dbname);
try {
$id = $item->getId();
$date = date('Y-m-d H:i:s');
if ($id === null) {
/** mshop/locale/manager/currency/standard/insert
* Inserts a new currency record into the database table
*
* The SQL statement must be a string suitable for being used as
* prepared statement. It must include question marks for binding
* the values from the log item to the statement before they are
* sent to the database server. The number of question marks must
* be the same as the number of columns listed in the INSERT
* statement. The order of the columns must correspond to the
* order in the saveItems() method, so the correct values are
* bound to the columns.
*
* The SQL statement should conform to the ANSI standard to be
* compatible with most relational database systems. This also
* includes using double quotes for table and column names.
*
* @param string SQL statement for inserting records
* @since 2014.03
* @category Developer
* @see mshop/locale/manager/currency/standard/update
* @see mshop/locale/manager/currency/standard/delete
* @see mshop/locale/manager/currency/standard/search
* @see mshop/locale/manager/currency/standard/count
*/
$path = 'mshop/locale/manager/currency/standard/insert';
} else {
/** mshop/locale/manager/currency/standard/update
* Updates an existing currency record in the database
*
* The SQL statement must be a string suitable for being used as
* prepared statement. It must include question marks for binding
* the values from the log item to the statement before they are
* sent to the database server. The order of the columns must
* correspond to the order in the saveItems() method, so the
* correct values are bound to the columns.
*
* The SQL statement should conform to the ANSI standard to be
* compatible with most relational database systems. This also
* includes using double quotes for table and column names.
*
* @param string SQL statement for updating records
* @since 2014.03
* @category Developer
* @see mshop/locale/manager/currency/standard/insert
* @see mshop/locale/manager/currency/standard/delete
* @see mshop/locale/manager/currency/standard/search
* @see mshop/locale/manager/currency/standard/count
*/
$path = 'mshop/locale/manager/currency/standard/update';
}
$stmt = $this->getCachedStatement($conn, $path);
$stmt->bind(1, $item->getLabel());
$stmt->bind(2, $item->getStatus(), \Aimeos\MW\DB\Statement\Base::PARAM_INT);
$stmt->bind(3, $item->getSiteId(), \Aimeos\MW\DB\Statement\Base::PARAM_INT);
$stmt->bind(4, $date);
// mtime
$stmt->bind(5, $context->getEditor());
// bind ID but code and id are identical after saveing the stuff
// id is the flag to detect updates or inserts!
$stmt->bind(6, $item->getCode());
if ($id === null) {
$stmt->bind(7, $date);
// ctime
}
$stmt->execute()->finish();
$item->setId($item->getCode());
// set modified flag to false
$dbm->release($conn, $dbname);
} catch (\Exception $e) {
$dbm->release($conn, $dbname);
throw $e;
}
}
示例3: saveItem
/**
* Saves a customer item object.
*
* @param \Aimeos\MShop\Customer\Item\Iface $item Customer item object
* @param boolean $fetch True if the new ID should be returned in the item
*/
public function saveItem(\Aimeos\MShop\Common\Item\Iface $item, $fetch = true)
{
$iface = '\\Aimeos\\MShop\\Customer\\Item\\Iface';
if (!$item instanceof $iface) {
throw new \Aimeos\MShop\Customer\Exception(sprintf('Object is not of required type "%1$s"', $iface));
}
if (!$item->isModified()) {
return;
}
$context = $this->getContext();
$dbm = $context->getDatabaseManager();
$dbname = $this->getResourceName();
$conn = $dbm->acquire($dbname);
try {
$id = $item->getId();
$date = date('Y-m-d H:i:s');
$billingAddress = $item->getPaymentAddress();
if ($id === null) {
/** mshop/customer/manager/fosuser/insert
* Inserts a new customer record into the database table
*
* Items with no ID yet (i.e. the ID is NULL) will be created in
* the database and the newly created ID retrieved afterwards
* using the "newid" SQL statement.
*
* The SQL statement must be a string suitable for being used as
* prepared statement. It must include question marks for binding
* the values from the customer item to the statement before they are
* sent to the database server. The number of question marks must
* be the same as the number of columns listed in the INSERT
* statement. The order of the columns must correspond to the
* order in the saveItems() method, so the correct values are
* bound to the columns.
*
* The SQL statement should conform to the ANSI standard to be
* compatible with most relational database systems. This also
* includes using double quotes for table and column names.
*
* @param string SQL statement for inserting records
* @since 2015.01
* @category Developer
* @see mshop/customer/manager/fosuser/update
* @see mshop/customer/manager/fosuser/newid
* @see mshop/customer/manager/fosuser/delete
* @see mshop/customer/manager/fosuser/search
* @see mshop/customer/manager/fosuser/count
*/
$path = 'mshop/customer/manager/fosuser/insert';
} else {
/** mshop/customer/manager/fosuser/update
* Updates an existing customer record in the database
*
* Items which already have an ID (i.e. the ID is not NULL) will
* be updated in the database.
*
* The SQL statement must be a string suitable for being used as
* prepared statement. It must include question marks for binding
* the values from the customer item to the statement before they are
* sent to the database server. The order of the columns must
* correspond to the order in the saveItems() method, so the
* correct values are bound to the columns.
*
* The SQL statement should conform to the ANSI standard to be
* compatible with most relational database systems. This also
* includes using double quotes for table and column names.
*
* @param string SQL statement for updating records
* @since 2015.01
* @category Developer
* @see mshop/customer/manager/fosuser/insert
* @see mshop/customer/manager/fosuser/newid
* @see mshop/customer/manager/fosuser/delete
* @see mshop/customer/manager/fosuser/search
* @see mshop/customer/manager/fosuser/count
*/
$path = 'mshop/customer/manager/fosuser/update';
}
$stmt = $this->getCachedStatement($conn, $path);
$stmt->bind(1, $item->getCode());
// canonical username
$stmt->bind(2, $item->getCode());
// username
$stmt->bind(3, $billingAddress->getCompany());
$stmt->bind(4, $billingAddress->getVatID());
$stmt->bind(5, $billingAddress->getSalutation());
$stmt->bind(6, $billingAddress->getTitle());
$stmt->bind(7, $billingAddress->getFirstname());
$stmt->bind(8, $billingAddress->getLastname());
$stmt->bind(9, $billingAddress->getAddress1());
$stmt->bind(10, $billingAddress->getAddress2());
$stmt->bind(11, $billingAddress->getAddress3());
$stmt->bind(12, $billingAddress->getPostal());
$stmt->bind(13, $billingAddress->getCity());
$stmt->bind(14, $billingAddress->getState());
//.........这里部分代码省略.........
示例4: saveItem
/**
* Saves a modified code object to the storage.
*
* @param \Aimeos\MShop\Coupon\Item\Code\Iface $item Coupon code object
* @param boolean $fetch True if the new ID should be returned in the item
* @throws \Aimeos\MShop\Coupon\Exception If coupon couldn't be saved
*/
public function saveItem(\Aimeos\MShop\Common\Item\Iface $item, $fetch = true)
{
$iface = '\\Aimeos\\MShop\\Coupon\\Item\\Code\\Iface';
if (!$item instanceof $iface) {
throw new \Aimeos\MShop\Coupon\Exception(sprintf('Object is not of required type "%1$s"', $iface));
}
if (!$item->isModified()) {
return;
}
$context = $this->getContext();
$dbm = $context->getDatabaseManager();
$dbname = $this->getResourceName();
$conn = $dbm->acquire($dbname);
try {
$id = $item->getId();
$date = date('Y-m-d H:i:s');
if ($id === null) {
/** mshop/coupon/manager/code/standard/insert/mysql
* Inserts a new coupon code record into the database table
*
* @see mshop/coupon/manager/code/standard/insert/ansi
*/
/** mshop/coupon/manager/code/standard/insert/ansi
* Inserts a new coupon code record into the database table
*
* Items with no ID yet (i.e. the ID is NULL) will be created in
* the database and the newly created ID retrieved afterwards
* using the "newid" SQL statement.
*
* The SQL statement must be a string suitable for being used as
* prepared statement. It must include question marks for binding
* the values from the coupon item to the statement before they are
* sent to the database server. The number of question marks must
* be the same as the number of columns listed in the INSERT
* statement. The order of the columns must correspond to the
* order in the saveItems() method, so the correct values are
* bound to the columns.
*
* The SQL statement should conform to the ANSI standard to be
* compatible with most relational database systems. This also
* includes using double quotes for table and column names.
*
* @param string SQL statement for inserting records
* @since 2014.03
* @category Developer
* @see mshop/coupon/manager/code/standard/update/ansi
* @see mshop/coupon/manager/code/standard/newid/ansi
* @see mshop/coupon/manager/code/standard/delete/ansi
* @see mshop/coupon/manager/code/standard/search/ansi
* @see mshop/coupon/manager/code/standard/count/ansi
* @see mshop/coupon/manager/code/standard/counter/ansi
*/
$path = 'mshop/coupon/manager/code/standard/insert';
} else {
/** mshop/coupon/manager/code/standard/update/mysql
* Updates an existing coupon code record in the database
*
* @see mshop/coupon/manager/code/standard/update/ansi
*/
/** mshop/coupon/manager/code/standard/update/ansi
* Updates an existing coupon code record in the database
*
* Items which already have an ID (i.e. the ID is not NULL) will
* be updated in the database.
*
* The SQL statement must be a string suitable for being used as
* prepared statement. It must include question marks for binding
* the values from the coupon item to the statement before they are
* sent to the database server. The order of the columns must
* correspond to the order in the saveItems() method, so the
* correct values are bound to the columns.
*
* The SQL statement should conform to the ANSI standard to be
* compatible with most relational database systems. This also
* includes using double quotes for table and column names.
*
* @param string SQL statement for updating records
* @since 2014.03
* @category Developer
* @see mshop/coupon/manager/code/standard/insert/ansi
* @see mshop/coupon/manager/code/standard/newid/ansi
* @see mshop/coupon/manager/code/standard/delete/ansi
* @see mshop/coupon/manager/code/standard/search/ansi
* @see mshop/coupon/manager/code/standard/count/ansi
* @see mshop/coupon/manager/code/standard/counter/ansi
*/
$path = 'mshop/coupon/manager/code/standard/update';
}
$stmt = $this->getCachedStatement($conn, $path);
$stmt->bind(1, $context->getLocale()->getSiteId(), \Aimeos\MW\DB\Statement\Base::PARAM_INT);
$stmt->bind(2, $item->getParentId(), \Aimeos\MW\DB\Statement\Base::PARAM_INT);
$stmt->bind(3, $item->getCode());
$stmt->bind(4, $item->getCount(), \Aimeos\MW\DB\Statement\Base::PARAM_INT);
//.........这里部分代码省略.........
示例5: saveItem
/**
* Saves a customer item object.
*
* @param \Aimeos\MShop\Customer\Item\Iface $item Customer item object
* @param boolean $fetch True if the new ID should be returned in the item
*/
public function saveItem(\Aimeos\MShop\Common\Item\Iface $item, $fetch = true)
{
$iface = '\\Aimeos\\MShop\\Customer\\Item\\Iface';
if (!$item instanceof $iface) {
throw new \Aimeos\MShop\Customer\Exception(sprintf('Object is not of required type "%1$s"', $iface));
}
if (!$item->isModified()) {
return;
}
$context = $this->getContext();
$class = '\\Aimeos\\MShop\\Context\\Item\\Ezpublish';
if (!is_a($context, $class)) {
throw new \Aimeos\MShop\Customer\Exception(sprintf('Object is not of required type "%1$s"', $class));
}
$service = $context->getEzUserService();
$email = $item->getPaymentAddress()->getEmail();
if ($item->getId() !== null) {
$struct = $service->newUserUpdateStruct();
$struct->password = $item->getPassword();
$struct->enabled = $item->getStatus();
$struct->email = $email;
$user = $service->loadUser($item->getId());
$service->updateUser($user, $struct);
} else {
$struct = $service->newUserCreateStruct($item->getCode(), $email, $item->getPassword(), 'eng-GB');
$struct->enabled = $item->getStatus();
$user = $service->createUser($struct, array());
$item->setId($user->getUserId());
}
$dbm = $context->getDatabaseManager();
$dbname = $this->getResourceName();
$conn = $dbm->acquire($dbname);
try {
$date = date('Y-m-d H:i:s');
$ctime = $item->getTimeCreated() ? $item->getTimeCreated() : $date;
$billingAddress = $item->getPaymentAddress();
$path = 'mshop/customer/manager/ezpublish/update';
$stmt = $this->getCachedStatement($conn, $path);
$stmt->bind(1, $billingAddress->getCompany());
$stmt->bind(2, $billingAddress->getVatID());
$stmt->bind(3, $billingAddress->getSalutation());
$stmt->bind(4, $billingAddress->getTitle());
$stmt->bind(5, $billingAddress->getFirstname());
$stmt->bind(6, $billingAddress->getLastname());
$stmt->bind(7, $billingAddress->getAddress1());
$stmt->bind(8, $billingAddress->getAddress2());
$stmt->bind(9, $billingAddress->getAddress3());
$stmt->bind(10, $billingAddress->getPostal());
$stmt->bind(11, $billingAddress->getCity());
$stmt->bind(12, $billingAddress->getState());
$stmt->bind(13, $billingAddress->getCountryId());
$stmt->bind(14, $billingAddress->getLanguageId());
$stmt->bind(15, $billingAddress->getTelephone());
$stmt->bind(16, $billingAddress->getTelefax());
$stmt->bind(17, $billingAddress->getWebsite());
$stmt->bind(18, $item->getBirthday());
$stmt->bind(19, $item->getDateVerified());
$stmt->bind(20, $date);
// Modification time
$stmt->bind(21, $context->getEditor());
$stmt->bind(22, $ctime);
// Creation time
$stmt->bind(23, $item->getId(), \Aimeos\MW\DB\Statement\Base::PARAM_INT);
$stmt->execute()->finish();
$dbm->release($conn, $dbname);
} catch (\Exception $e) {
$dbm->release($conn, $dbname);
throw $e;
}
}
示例6: saveItem
/**
* Adds a new site to the storage or updates an existing one.
*
* @param \Aimeos\MShop\Common\Item\Iface $item New site item for saving to the storage
* @param boolean $fetch True if the new ID should be returned in the item
* @throws \Aimeos\MShop\Locale\Exception
*/
public function saveItem(\Aimeos\MShop\Common\Item\Iface $item, $fetch = true)
{
$iface = '\\Aimeos\\MShop\\Locale\\Item\\Site\\Iface';
if (!$item instanceof $iface) {
throw new \Aimeos\MShop\Locale\Exception(sprintf('Object is not of required type "%1$s"', $iface));
}
if ($item->getId() === null) {
throw new \Aimeos\MShop\Locale\Exception(sprintf('Newly created site can not be saved using method "saveItem()". Try using method "insertItem()" instead.'));
}
if (!$item->isModified()) {
return;
}
$context = $this->getContext();
$dbm = $context->getDatabaseManager();
$dbname = $this->getResourceName();
$conn = $dbm->acquire($dbname);
try {
$id = $item->getId();
/** mshop/locale/manager/site/standard/update
* Updates an existing site record in the database
*
* The SQL statement must be a string suitable for being used as
* prepared statement. It must include question marks for binding
* the values from the log item to the statement before they are
* sent to the database server. The order of the columns must
* correspond to the order in the saveItems() method, so the
* correct values are bound to the columns.
*
* The SQL statement should conform to the ANSI standard to be
* compatible with most relational database systems. This also
* includes using double quotes for table and column names.
*
* @param string SQL statement for updating records
* @since 2014.03
* @category Developer
* @see mshop/locale/manager/site/standard/insert
* @see mshop/locale/manager/site/standard/delete
* @see mshop/locale/manager/site/standard/search
* @see mshop/locale/manager/site/standard/count
* @see mshop/locale/manager/site/standard/newid
*/
$path = 'mshop/locale/manager/site/standard/update';
$stmt = $this->getCachedStatement($conn, $path);
$stmt->bind(1, $item->getCode());
$stmt->bind(2, $item->getLabel());
$stmt->bind(3, json_encode($item->getConfig()));
$stmt->bind(4, $item->getStatus(), \Aimeos\MW\DB\Statement\Base::PARAM_INT);
$stmt->bind(5, $context->getEditor());
$stmt->bind(6, date('Y-m-d H:i:s'));
// mtime
$stmt->bind(7, $id, \Aimeos\MW\DB\Statement\Base::PARAM_INT);
$stmt->execute()->finish();
$item->setId($id);
// set Modified false
$dbm->release($conn, $dbname);
} catch (\Exception $e) {
$dbm->release($conn, $dbname);
throw $e;
}
}
示例7: saveItem
/**
* Adds or updates a type item object.
*
* @param \Aimeos\MShop\Common\Item\Type\Iface $item Type item object which should be saved
* @param boolean $fetch True if the new ID should be returned in the item
*/
public function saveItem(\Aimeos\MShop\Common\Item\Iface $item, $fetch = true)
{
$iface = '\\Aimeos\\MShop\\Common\\Item\\Type\\Iface';
if (!$item instanceof $iface) {
throw new \Aimeos\MShop\Exception(sprintf('Object is not of required type "%1$s"', $iface));
}
if ($item->isModified() === false) {
return;
}
$context = $this->getContext();
$dbm = $context->getDatabaseManager();
$dbname = $this->getResourceName();
$conn = $dbm->acquire($dbname);
try {
$id = $item->getId();
if ($id === null) {
$type = 'insert';
} else {
$type = 'update';
}
$statement = $conn->create($this->getSqlConfig($this->getConfigPath() . $type));
$statement->bind(1, $context->getLocale()->getSiteId(), \Aimeos\MW\DB\Statement\Base::PARAM_INT);
$statement->bind(2, $item->getCode(), \Aimeos\MW\DB\Statement\Base::PARAM_STR);
$statement->bind(3, $item->getDomain(), \Aimeos\MW\DB\Statement\Base::PARAM_STR);
$statement->bind(4, $item->getLabel(), \Aimeos\MW\DB\Statement\Base::PARAM_STR);
$statement->bind(5, $item->getStatus(), \Aimeos\MW\DB\Statement\Base::PARAM_INT);
$statement->bind(6, date('Y-m-d H:i:s', time()));
//mtime
$statement->bind(7, $context->getEditor());
if ($id !== null) {
$statement->bind(8, $id, \Aimeos\MW\DB\Statement\Base::PARAM_INT);
} else {
$statement->bind(8, date('Y-m-d H:i:s', time()));
//ctime
}
$statement->execute()->finish();
if ($fetch === true) {
if ($id === null) {
$item->setId($this->newId($conn, $this->getConfigPath() . 'newid'));
} else {
$item->setId($id);
// modified false
}
}
$dbm->release($conn, $dbname);
} catch (\Exception $e) {
$dbm->release($conn, $dbname);
throw $e;
}
}