本文整理汇总了PHP中_w函数的典型用法代码示例。如果您正苦于以下问题:PHP _w函数的具体用法?PHP _w怎么用?PHP _w使用的例子?那么, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了_w函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: postExecute
public function postExecute($params = null, $result = null)
{
if (is_array($params)) {
$order_id = $params['order_id'];
} else {
$order_id = $params;
}
$data = parent::postExecute($order_id, $result);
$order_model = new shopOrderModel();
if (is_array($order_id)) {
$order = $order_id;
$order_id = $order['id'];
} else {
$order = $order_model->getById($order_id);
}
shopCustomers::recalculateTotalSpent($order['contact_id']);
if ($order !== null) {
$order_model->recalculateProductsTotalSales($order_id);
}
$log_model = new shopOrderLogModel();
$state_id = $log_model->getPreviousState($order_id);
$app_settings_model = new waAppSettingsModel();
$update_on_create = $app_settings_model->get('shop', 'update_stock_count_on_create_order');
if (!$update_on_create && $state_id == 'new') {
// for logging changes in stocks
shopProductStocksLogModel::setContext(shopProductStocksLogModel::TYPE_ORDER, _w('Order %s was paid'), array('order_id' => $order_id));
// jump through 'processing' state - reduce
$order_model = new shopOrderModel();
$order_model->reduceProductsFromStocks($order_id);
shopProductStocksLogModel::clearContext();
}
return $data;
}
示例2: save
public function save(waRequestFile $file, $data)
{
// check image
if (!($image = $file->waImage())) {
throw new waException(_w('Incorrect image'));
}
$plugin = wa()->getPlugin('publicgallery');
$min_size = $plugin->getSettings('min_size');
if ($min_size && ($image->height < $min_size || $image->width < $min_size)) {
throw new waException(sprintf(_w("Image is too small. Minimum image size is %d px"), $min_size));
}
$max_size = $plugin->getSettings('max_size');
if ($max_size && ($image->height > $max_size || $image->width > $max_size)) {
throw new waException(sprintf(_w("Image is too big. Maximum image size is %d px"), $max_size));
}
$id = $this->model->add($file, $data);
if (!$id) {
throw new waException(_w("Save error"));
}
$tag = $plugin->getSettings('assign_tag');
if ($tag) {
$photos_tag_model = new photosPhotoTagsModel();
$photos_tag_model->set($id, $tag);
}
return array('name' => $file->name, 'type' => $file->type, 'size' => $file->size);
}
开发者ID:Favorskij,项目名称:webasyst-framework,代码行数:26,代码来源:photosPublicgalleryPluginFrontendImageUpload.controller.php
示例3: getContactData
protected function getContactData()
{
if (!$this->author->isAuth()) {
throw new waException(_w('Access denied'));
}
return parent::getContactData();
}
示例4: execute
public function execute()
{
if (!$this->getUser()->isAdmin('photos')) {
throw new waException(_w('Access denied'));
}
$this->view->assign('plugins', $this->getConfig()->getPlugins());
}
示例5: execute
public function execute()
{
if (!$this->getUser()->getRights('shop', 'settings')) {
throw new waRightsException(_w('Access denied'));
}
$model = new shopTypeModel();
$data = array();
$data['id'] = waRequest::post('id', 0, waRequest::TYPE_INT);
switch (waRequest::post('source', 'custom')) {
case 'custom':
$data['name'] = waRequest::post('name');
$data['icon'] = waRequest::post('icon_url', false, waRequest::TYPE_STRING_TRIM);
if (empty($data['icon'])) {
$data['icon'] = waRequest::post('icon', 'icon.box', waRequest::TYPE_STRING_TRIM);
}
if (!empty($data['id'])) {
$model->updateById($data['id'], $data);
} else {
$data['sort'] = $model->select('MAX(sort)+1 as max_sort')->fetchField('max_sort');
$data['id'] = $model->insert($data);
}
break;
case 'template':
$data = $model->insertTemplate(waRequest::post('template'), true);
break;
}
if ($data) {
$data['icon_html'] = shopHelper::getIcon($data['icon'], 'icon.box');
$data['name_html'] = '<span class="js-type-icon">' . $data['icon_html'] . '</span>
<span class="js-type-name">' . htmlspecialchars($data['name'], ENT_QUOTES, 'utf-8') . '</span>';
}
$this->response = $data;
}
示例6: execute
public function execute()
{
$photo_id = waRequest::get('photo_id', array(), waRequest::TYPE_ARRAY_INT);
if (!$photo_id) {
throw new waException(_w('Empty photo list'));
}
$photo_model = new photosPhotoModel();
// dialog for one photo
if (count($photo_id) == 1) {
$photo_id = current($photo_id);
$photo = $photo_model->getById($photo_id);
$photo_right_model = new photosPhotoRightsModel();
if (!$photo_right_model->checkRights($photo, true)) {
$rights = array(0 => array('group_id' => 0, 'photo_id' => null));
} else {
$rights = $photo_right_model->getByField('photo_id', $photo_id, 'group_id');
}
} else {
// dialog for several selected photos
// dummies for correct template randering
$photo = array('status' => 1);
$rights = array(0 => array('group_id' => 0, 'photo_id' => null));
$allowed_photo_id = (array) $photo_model->filterByField($photo_id, 'status', 1);
$this->view->assign('photo_count', count($photo_id));
$this->view->assign('disable_submit', count($allowed_photo_id) != count($photo_id));
}
$groups_model = new waGroupModel();
$groups = $groups_model->getAll('id', true);
$this->view->assign('groups', $groups);
$this->view->assign('photo', $photo);
$this->view->assign('rights', $rights);
}
示例7: move
public function move($id, $after_id)
{
try {
$sheet = $this->getById($id);
if (!$sheet) {
return array('error' => _w("Board not found"));
}
if ($after_id != 0) {
$after_sheet = $this->getById($after_id);
if (!$after_sheet) {
return array('error' => _w("Board not found"));
}
$sort = $after_sheet['sort'] + 1;
// insert after sticky ()
} else {
$sort = 1;
}
if ($sort > $sheet['sort']) {
$this->exec("UPDATE {$this->table} SET sort = sort - 1 WHERE sort > i:sort_old AND sort <= i:sort", array('sort' => $sort, 'sort_old' => $sheet['sort']));
} else {
if ($sort < $sheet['sort']) {
$this->exec("UPDATE {$this->table} SET sort = sort + 1 WHERE sort >= i:sort AND sort < i:sort_old", array('sort' => $sort, 'sort_old' => $sheet['sort']));
}
}
$this->updateById($id, array('sort' => (int) $sort));
} catch (waDbException $e) {
return array('error' => $e->getMessage());
}
return array();
}
示例8: execute
public function execute()
{
if (!$this->getUser()->getRights('photos', 'edit')) {
throw new waException(_w("Access denied"));
}
$moderation = waRequest::post('moderation', '', waRequest::TYPE_STRING_TRIM);
$id = waRequest::post('id', '', waRequest::TYPE_INT);
$photo_model = new photosPhotoModel();
$photo = $photo_model->getById($id);
if (!$photo) {
$this->errors[] = _wp('Unknown photo');
}
if ($moderation == 'approve') {
$photo_model->updateById($id, array('moderation' => 1));
$photo_model->updateAccess($id, 1, array(0));
}
if ($moderation == 'decline') {
$photo_model->updateById($id, array('moderation' => -1));
$photo_model->updateAccess($id, 0, array(0));
}
$this->response['photo'] = $photo_model->getById($id);
// update for making inline-editable widget
$this->response['frontend_link_template'] = photosFrontendPhoto::getLink(array('url' => '%url%'));
$this->response['counters'] = array('declined' => $photo_model->countByField('moderation', -1), 'awaiting' => $photo_model->countByField('moderation', 0));
// l18n string
$count = (int) waRequest::post('count');
$total_count = (int) waRequest::post('total_count');
$this->response['string'] = array('loaded' => _w('%d photo', '%d photos', $count), 'of' => sprintf(_w('of %d'), $total_count), 'chunk' => $count < $total_count ? _w('%d photo', '%d photos', min($this->getConfig()->getOption('photos_per_page'), $count - $total_count)) : false);
}
开发者ID:cjmaximal,项目名称:webasyst-framework,代码行数:29,代码来源:photosPublicgalleryPluginBackendModeration.controller.php
示例9: execute
public function execute()
{
$path = rtrim(waRequest::post('path'), ' /');
$path = wa()->getDataPath($path, true, null, false);
$hash = $new_path = waRequest::post('new_path');
$new_path = wa()->getDataPath($new_path, true, null, false) . ($new_path ? '' : '/');
if (!is_writable($new_path)) {
$this->errors = sprintf(_w("Files could not bet moved due to the insufficient file write permissions for the %s folder."), rtrim($hash, '/'));
return;
}
if ($file = waRequest::post('file')) {
if (!is_array($file)) {
$file = array($file);
}
foreach ($file as $f) {
if (!@rename($path . "/" . $f, $new_path . $f)) {
$this->errors[] = sprintf(_w("Can not move file “%s” to a new location"), $f);
}
}
if ($this->errors && is_array($this->errors)) {
$this->errors = implode(";\r\n", $this->errors);
}
} else {
$new_path .= basename($path);
$hash .= basename($path) . "/";
if (@rename($path, $new_path)) {
$this->response['hash'] = $hash;
} else {
$this->errors = _w("Can not move to a new location");
}
}
}
示例10: execute
public function execute()
{
$name = waRequest::post('name', '', waRequest::TYPE_STRING_TRIM);
if (in_array($name, $this->availableFields) === false) {
throw new waException(_w("Can't update album: unknown field"));
}
$album_rights_model = new photosAlbumRightsModel();
$id = waRequest::post('id', null, waRequest::TYPE_ARRAY_INT);
if (is_array($id)) {
$id = current($id);
}
if ($id) {
$album_model = new photosAlbumModel();
$album = $album_model->getById($id);
if (!$album) {
throw new waException(_w('Unknown album'));
}
if (!$album_rights_model->checkRights($album, true)) {
throw new waException(_w("You don't have sufficient access rights"));
}
$value = waRequest::post('value', '', waRequest::TYPE_STRING_TRIM);
$album_model->updateById($id, array($name => $value));
$album['not_escaped_name'] = $value;
$album['name'] = photosPhoto::escape($value);
$this->response['album'] = $album;
}
}
示例11: formatValue
public static function formatValue($c, $curr = null)
{
static $currencies = null;
if ($currencies === null) {
if ($curr) {
$currencies = $curr;
} else {
$curm = new shopCurrencyModel();
$currencies = $curm->getAll('code');
}
}
if ($c['type'] == '$FS') {
return _w('Free shipping');
} else {
if ($c['type'] === '%') {
return waCurrency::format('%0', $c['value'], 'USD') . '%';
} else {
if (!empty($currencies[$c['type']])) {
return waCurrency::format('%0{s}', $c['value'], $c['type']);
} else {
// Coupon of unknown type. Possibly from a plugin?..
return '';
}
}
}
}
示例12: payment
public function payment($data, $order_data, $auto_submit = false)
{
$data['order_id'] = $order_data['order_id'];
if ($order_data['currency_id'] != 'USD') {
throw new waPaymentException(_w('Order currency is not USD but payment gateway provide only USD transactions'));
}
$type_trans = array_flip(self::$type_trans);
if (!empty($data['type']) && !empty($type_trans[$data['type']])) {
$type = $type_trans[$data['type']];
} else {
$type = self::OPERATION_AUTH_ONLY;
}
if (empty($order_data['description_en'])) {
$order_data['description_en'] = 'Order #' . $order_data['order_id'] . ' (' . gmdate('F, d Y') . ')';
}
$c = new waContact($order_data['contact_id']);
$locale = $c->getLocale();
$form_fields = array('x_login' => $this->login, 'x_amount' => number_format($order_data['amount'], 2, '.', ''), 'x_description' => $order_data['description_en'], 'x_invoice_num' => $order_data['order_id'], 'x_fp_sequence' => rand(1, 1000), 'x_fp_timestamp' => time(), 'x_test_request' => 'false', 'x_show_form' => 'PAYMENT_FORM', 'x_type' => $type, 'x_version' => '3.1', 'x_method' => 'CC', 'x_cust_id' => $order_data['contact_id'], 'x_customer_ip' => wa()->getRequest()->server('REMOTE_ADDR'), 'x_duplicate_window' => '28800', 'x_first_name' => waLocale::transliterate($c->get('firstname'), $locale), 'x_last_name' => waLocale::transliterate($c->get('lastname'), $locale), 'x_company' => waLocale::transliterate($c->get('company'), $locale), 'x_address' => waLocale::transliterate($c->get('address:street', 'default'), $locale), 'x_city' => waLocale::transliterate($c->get('address:city', 'default'), $locale), 'x_state' => waLocale::transliterate($c->get('address:region', 'default'), $locale), 'x_zip' => waLocale::transliterate($c->get('address:zip', 'default'), $locale), 'x_country' => waLocale::transliterate($c->get('address:country', 'default'), $locale), 'x_phone' => $c->get('phone', 'default'), 'x_email' => $c->get('email', 'default'), 'x_relay_response' => isset($data['x_relay_response']) ? $data['x_relay_response'] : 'true', 'x_relay_url' => $this->getRelayUrl(), 'wa_success_url' => $this->getAdapter()->getBackUrl(waAppPayment::URL_SUCCESS, $data), 'wa_decline_url' => $this->getAdapter()->getBackUrl(waAppPayment::URL_DECLINE, $data), 'wa_cancel_url' => $this->getAdapter()->getBackUrl(waAppPayment::URL_FAIL, $data), 'wa_app_id' => $this->app_id, 'wa_merchant_id' => $this->merchant_id);
$form_fields['x_fp_hash'] = '';
// @TODO: get from common 'address' field
if (phpversion() >= '5.1.2') {
$form_fields['x_fp_hash'] = hash_hmac('md5', $this->login . "^" . $form_fields['x_fp_sequence'] . "^" . $form_fields['x_fp_timestamp'] . "^" . $form_fields['x_amount'] . "^", $this->trans_key);
} else {
$form_fields['x_fp_hash'] = bin2hex(mhash(MHASH_MD5, $this->login . "^" . $form_fields['x_fp_sequence'] . "^" . $form_fields['x_fp_timestamp'] . "^" . $form_fields['x_amount'] . "^", $this->trans_key));
}
if ($this->form_header) {
$form_fields['x_header_html_payment_form'] = $this->form_header;
}
$view = wa()->getView();
$view->assign('url', wa()->getRootUrl());
$view->assign('form_fields', $form_fields);
$view->assign('form_url', $this->getEndpointUrl());
$view->assign('auto_submit', $auto_submit);
return $view->fetch($this->path . '/templates/payment.html');
}
示例13: execute
public function execute()
{
$ids = waRequest::request('id', array(), 'array_int');
if (!$ids) {
throw new waException('Contact id not specified.');
}
// only allowed to global admin
if (!wa()->getUser()->getRights('webasyst', 'backend')) {
throw new waRightsException(_w('Access denied'));
}
$groups = waRequest::post('groups', array(), 'array_int');
$counters = array();
$ugm = new waUserGroupsModel();
if ($this->getRequest()->request('set')) {
foreach ($ids as $id) {
$ugm->delete($id, array());
}
}
foreach ($ids as $id) {
if ($groups) {
$ugm->add(array_map(wa_lambda('$gid', 'return array(' . $id . ', $gid);'), $groups));
}
}
$gm = new waGroupModel();
foreach ($groups as $gid) {
$cnt = $ugm->countByField(array('group_id' => $gid));
$gm->updateCount($gid, $cnt);
$counters[$gid] = $cnt;
}
$this->response['counters'] = $counters;
$this->response['message'] = _w("%d user has been added", "%d users have been added", count($ids));
$this->response['message'] .= ' ';
$this->response['message'] .= _w("to %d group", "to %d groups", count($groups));
}
示例14: execute
public function execute()
{
$filter = array();
$filter['enabled'] = true;
$filter['extras'] = 'plugins';
$options = array('installed' => true);
$search = array();
$search['slug'] = preg_replace('@^(wa-plugins/)?([^/]+)/.+$@', '$1$2', waRequest::get('slug'));
if (strpos($search['slug'], 'wa-plugins/') === 0) {
$options['system'] = true;
}
$applications = installerHelper::getInstaller()->getApps($options, $filter);
$plugin_search = array();
$plugin_search['id'] = preg_replace('@^.+/@', '', waRequest::get('slug'));
if (array_filter($search, 'strlen') && ($app = installerHelper::search($applications, $search))) {
$plugin_search['slug'] = $search['slug'] . "/plugins/" . $plugin_search['id'];
$options = array('action' => true, 'requirements' => true);
$plugin = installerHelper::getInstaller()->getItemInfo($plugin_search['slug'], $options);
if (!$plugin) {
$options['local'] = true;
$plugin = installerHelper::getInstaller()->getItemInfo($plugin_search['slug'], $options);
}
if ($plugin) {
$plugin['app'] = preg_replace('@^(wa-plugins/)?([^/]+)/.+$@', '$1$2', $plugin['slug']);
$plugin['slug'] = preg_replace('@^wa-plugins/([^/]+)/plugins/(.+)$@', 'wa-plugins/$1/$2', $plugin['slug']);
}
$this->view->assign('identity_hash', installerHelper::getHash());
$this->view->assign('promo_id', installerHelper::getPromoId());
$this->view->assign('domain', installerHelper::getDomain());
$this->view->assign('plugin', $plugin);
$this->view->assign('query', waRequest::get('query', '', waRequest::TYPE_STRING_TRIM) . '/');
} else {
throw new waException(_w('Plugin not found'), 404);
}
}
示例15: saveAction
public function saveAction()
{
$plugin_id = waRequest::get('id');
if (!$plugin_id) {
throw new waException(_ws("Can't save plugin settings: unknown plugin id"));
}
$namespace = $this->getAppId() . '_' . $plugin_id;
/**
* @var shopPlugin $plugin
*/
$plugin = waSystem::getInstance()->getPlugin($plugin_id);
$settings = (array) $this->getRequest()->post($namespace);
$files = waRequest::file($namespace);
$settings_defenitions = $plugin->getSettings();
foreach ($files as $name => $file) {
if (isset($settings_defenitions[$name])) {
$settings[$name] = $file;
}
}
try {
$response = $plugin->saveSettings($settings);
$response['message'] = _w('Saved');
$this->displayJson($response);
} catch (Exception $e) {
$this->setError($e->getMessage());
$this->displayJson(array(), $e->getMessage());
}
}