Overview

Packages

  • currencysymbol
  • MAbout
  • Mage
    • Admin
    • Adminhtml
    • AdminNotification
    • Api
    • Api2
    • Authorizenet
    • Backup
    • Bundle
    • Captcha
    • Catalog
    • CatalogIndex
    • CatalogInventory
    • CatalogRule
    • CatalogSearch
    • Centinel
    • Checkout
    • Cms
    • Compiler
    • Connect
    • Contacts
    • Core
    • Cron
    • CurrencySymbol
    • Customer
    • Dataflow
    • Directory
    • DirtectPost
    • Downloadable
    • Eav
    • GiftMessage
    • GoogleAnalytics
    • GoogleBase
    • GoogleCheckout
    • ImportExport
    • Index
    • Install
    • Log
    • Media
    • Newsletter
    • Oauth
    • Page
    • PageCache
    • Paygate
    • Payment
    • Paypal
    • PaypalUk
    • Persistent
    • Poll
    • ProductAlert
    • Rating
    • Reports
    • Review
    • Rss
    • Rule
    • Sales
    • SalesRule
    • Sedfriend
    • Sendfriend
    • Shipping
    • Sitemap
    • Tag
    • Tax
    • Usa
    • Weee
    • Widget
    • Wishlist
    • XmlConnect
  • None
  • Phoenix
    • Moneybookers
  • PHP
  • Zend
    • Date
    • Mime
    • XmlRpc

Classes

  • Mage_XmlConnect_Adminhtml_MobileController
  • Mage_XmlConnect_Block_Adminhtml_History
  • Mage_XmlConnect_Block_Adminhtml_History_Grid
  • Mage_XmlConnect_Block_Adminhtml_Mobile
  • Mage_XmlConnect_Block_Adminhtml_Mobile_Edit
  • Mage_XmlConnect_Block_Adminhtml_Mobile_Edit_Form
  • Mage_XmlConnect_Block_Adminhtml_Mobile_Edit_Submission
  • Mage_XmlConnect_Block_Adminhtml_Mobile_Edit_Tab_Cache
  • Mage_XmlConnect_Block_Adminhtml_Mobile_Edit_Tab_Content
  • Mage_XmlConnect_Block_Adminhtml_Mobile_Edit_Tab_Design
  • Mage_XmlConnect_Block_Adminhtml_Mobile_Edit_Tab_Design_Accordion
  • Mage_XmlConnect_Block_Adminhtml_Mobile_Edit_Tab_Design_Accordion_Images
  • Mage_XmlConnect_Block_Adminhtml_Mobile_Edit_Tab_Design_Accordion_Tabs
  • Mage_XmlConnect_Block_Adminhtml_Mobile_Edit_Tab_Design_Accordion_Themes
  • Mage_XmlConnect_Block_Adminhtml_Mobile_Edit_Tab_Design_Preview
  • Mage_XmlConnect_Block_Adminhtml_Mobile_Edit_Tab_Design_Themes
  • Mage_XmlConnect_Block_Adminhtml_Mobile_Edit_Tab_Flurryanalytics
  • Mage_XmlConnect_Block_Adminhtml_Mobile_Edit_Tab_General
  • Mage_XmlConnect_Block_Adminhtml_Mobile_Edit_Tab_Notification
  • Mage_XmlConnect_Block_Adminhtml_Mobile_Edit_Tab_Payment
  • Mage_XmlConnect_Block_Adminhtml_Mobile_Edit_Tab_Settings
  • Mage_XmlConnect_Block_Adminhtml_Mobile_Edit_Tab_Social
  • Mage_XmlConnect_Block_Adminhtml_Mobile_Edit_Tab_Submission_History
  • Mage_XmlConnect_Block_Adminhtml_Mobile_Edit_Tabs
  • Mage_XmlConnect_Block_Adminhtml_Mobile_Form_Element_Addrow
  • Mage_XmlConnect_Block_Adminhtml_Mobile_Form_Element_Color
  • Mage_XmlConnect_Block_Adminhtml_Mobile_Form_Element_Country
  • Mage_XmlConnect_Block_Adminhtml_Mobile_Form_Element_Datetime
  • Mage_XmlConnect_Block_Adminhtml_Mobile_Form_Element_Font
  • Mage_XmlConnect_Block_Adminhtml_Mobile_Form_Element_Image
  • Mage_XmlConnect_Block_Adminhtml_Mobile_Form_Element_Page
  • Mage_XmlConnect_Block_Adminhtml_Mobile_Form_Element_Tabs
  • Mage_XmlConnect_Block_Adminhtml_Mobile_Form_Element_Theme
  • Mage_Xmlconnect_Block_Adminhtml_Mobile_Grid
  • Mage_XmlConnect_Block_Adminhtml_Mobile_Grid_Renderer_Bool
  • Mage_XmlConnect_Block_Adminhtml_Mobile_Grid_Renderer_Type
  • Mage_XmlConnect_Block_Adminhtml_Mobile_Preview_Content
  • Mage_XmlConnect_Block_Adminhtml_Mobile_Preview_Tabitems
  • Mage_XmlConnect_Block_Adminhtml_Mobile_Submission
  • Mage_XmlConnect_Block_Adminhtml_Mobile_Submission_Form
  • Mage_XmlConnect_Block_Adminhtml_Mobile_Submission_Renderer_Country_Androidmarket
  • Mage_XmlConnect_Block_Adminhtml_Mobile_Submission_Renderer_Country_Istore
  • Mage_XmlConnect_Block_Adminhtml_Mobile_Submission_Tab_Container
  • Mage_XmlConnect_Block_Adminhtml_Mobile_Submission_Tab_Container_Submission
  • Mage_XmlConnect_Block_Adminhtml_Mobile_Submission_Tabs
  • Mage_XmlConnect_Block_Adminhtml_Mobile_Widget_Form
  • Mage_XmlConnect_Block_Adminhtml_Queue
  • Mage_XmlConnect_Block_Adminhtml_Queue_Edit
  • Mage_XmlConnect_Block_Adminhtml_Queue_Edit_Form
  • Mage_XmlConnect_Block_Adminhtml_Queue_Grid
  • Mage_XmlConnect_Block_Adminhtml_Queue_Grid_Renderer_Action
  • Mage_XmlConnect_Block_Adminhtml_Queue_Grid_Renderer_Application
  • Mage_XmlConnect_Block_Adminhtml_Queue_Grid_Renderer_Id
  • Mage_XmlConnect_Block_Adminhtml_Queue_Grid_Renderer_Msgtitle
  • Mage_XmlConnect_Block_Adminhtml_Queue_Grid_Renderer_Pushtitle
  • Mage_XmlConnect_Block_Adminhtml_Queue_Grid_Renderer_Status
  • Mage_XmlConnect_Block_Adminhtml_Queue_Grid_Renderer_Template
  • Mage_XmlConnect_Block_Adminhtml_Template
  • Mage_XmlConnect_Block_Adminhtml_Template_Edit
  • Mage_XmlConnect_Block_Adminhtml_Template_Edit_Form
  • Mage_XmlConnect_Block_Adminhtml_Template_Grid
  • Mage_XmlConnect_Block_Adminhtml_Template_Grid_Renderer_Application
  • Mage_XmlConnect_Block_Adminhtml_Template_Grid_Renderer_Name
  • Mage_XmlConnect_Block_Adminhtml_Template_Preview
  • Mage_XmlConnect_Block_Adminhtml_Template_Preview_Form
  • Mage_XmlConnect_Block_Cart
  • Mage_XmlConnect_Block_Cart_Crosssell
  • Mage_XmlConnect_Block_Cart_Info
  • Mage_XmlConnect_Block_Cart_Item_Renderer
  • Mage_XmlConnect_Block_Cart_Item_Renderer_Configurable
  • Mage_XmlConnect_Block_Cart_Item_Renderer_Grouped
  • Mage_XmlConnect_Block_Cart_Paypal_Mecl_Details
  • Mage_XmlConnect_Block_Cart_Paypal_Mecl_Review
  • Mage_XmlConnect_Block_Cart_Paypal_Mecl_Shippingmethods
  • Mage_XmlConnect_Block_Cart_Paypal_Mep_Totals
  • Mage_XmlConnect_Block_Cart_Totals
  • Mage_XmlConnect_Block_Catalog
  • Mage_XmlConnect_Block_Catalog_Category
  • Mage_XmlConnect_Block_Catalog_Category_Info
  • Mage_XmlConnect_Block_Catalog_Filters
  • Mage_XmlConnect_Block_Catalog_Product
  • Mage_XmlConnect_Block_Catalog_Product_Attributes
  • Mage_XmlConnect_Block_Catalog_Product_Gallery
  • Mage_XmlConnect_Block_Catalog_Product_List
  • Mage_XmlConnect_Block_Catalog_Product_Options
  • Mage_XmlConnect_Block_Catalog_Product_Options_Bundle
  • Mage_XmlConnect_Block_Catalog_Product_Options_Configurable
  • Mage_XmlConnect_Block_Catalog_Product_Options_Giftcard
  • Mage_XmlConnect_Block_Catalog_Product_Options_Grouped
  • Mage_XmlConnect_Block_Catalog_Product_Options_Simple
  • Mage_XmlConnect_Block_Catalog_Product_Options_Virtual
  • Mage_XmlConnect_Block_Catalog_Product_Price
  • Mage_XmlConnect_Block_Catalog_Product_Price_Bundle
  • Mage_XmlConnect_Block_Catalog_Product_Price_Default
  • Mage_XmlConnect_Block_Catalog_Product_Price_Giftcard
  • Mage_XmlConnect_Block_Catalog_Product_Related
  • Mage_XmlConnect_Block_Catalog_Product_Review
  • Mage_XmlConnect_Block_Catalog_Product_Review_List
  • Mage_XmlConnect_Block_Catalog_Search
  • Mage_XmlConnect_Block_Catalog_Search_Suggest
  • Mage_XmlConnect_Block_Checkout_Address_Billing
  • Mage_XmlConnect_Block_Checkout_Address_Form
  • Mage_XmlConnect_Block_Checkout_Address_Shipping
  • Mage_XmlConnect_Block_Checkout_Agreements
  • Mage_XmlConnect_Block_Checkout_Order_Review
  • Mage_XmlConnect_Block_Checkout_Order_Review_Info
  • Mage_XmlConnect_Block_Checkout_Payment_Method_Authorizenet
  • Mage_XmlConnect_Block_Checkout_Payment_Method_Ccsave
  • Mage_XmlConnect_Block_Checkout_Payment_Method_Checkmo
  • Mage_XmlConnect_Block_Checkout_Payment_Method_Info_Authorizenet
  • Mage_XmlConnect_Block_Checkout_Payment_Method_Info_Ccsave
  • Mage_XmlConnect_Block_Checkout_Payment_Method_Info_Checkmo
  • Mage_XmlConnect_Block_Checkout_Payment_Method_Info_Free
  • Mage_XmlConnect_Block_Checkout_Payment_Method_Info_Paypal_Abstract
  • Mage_XmlConnect_Block_Checkout_Payment_Method_Info_Paypal_Express
  • Mage_XmlConnect_Block_Checkout_Payment_Method_Info_Paypal_Mecl
  • Mage_XmlConnect_Block_Checkout_Payment_Method_Info_Pbridge_Authorizenet
  • Mage_XmlConnect_Block_Checkout_Payment_Method_Info_Pbridge_Paypal_Direct
  • Mage_XmlConnect_Block_Checkout_Payment_Method_Info_Pbridge_Paypaluk_Direct
  • Mage_XmlConnect_Block_Checkout_Payment_Method_Info_Pbridge_Verisign
  • Mage_XmlConnect_Block_Checkout_Payment_Method_Info_Purchaseorder
  • Mage_XmlConnect_Block_Checkout_Payment_Method_List
  • Mage_XmlConnect_Block_Checkout_Payment_Method_Paypal_Direct
  • Mage_XmlConnect_Block_Checkout_Payment_Method_Paypal_Payflow
  • Mage_XmlConnect_Block_Checkout_Payment_Method_Pbridge_Abstract
  • Mage_XmlConnect_Block_Checkout_Payment_Method_Pbridge_Authorizenet
  • Mage_XmlConnect_Block_Checkout_Payment_Method_Pbridge_Paypal
  • Mage_XmlConnect_Block_Checkout_Payment_Method_Pbridge_Paypaluk
  • Mage_XmlConnect_Block_Checkout_Payment_Method_Pbridge_Verisign
  • Mage_XmlConnect_Block_Checkout_Payment_Method_Purchaseorder
  • Mage_XmlConnect_Block_Checkout_Pbridge_Result
  • Mage_XmlConnect_Block_Checkout_Shipping_Method_Available
  • Mage_XmlConnect_Block_Cms_Page
  • Mage_XmlConnect_Block_Configuration
  • Mage_XmlConnect_Block_Customer_Address_Form
  • Mage_XmlConnect_Block_Customer_Address_List
  • Mage_XmlConnect_Block_Customer_Form
  • Mage_XmlConnect_Block_Customer_Form_Renderer_Boolean
  • Mage_XmlConnect_Block_Customer_Form_Renderer_Date
  • Mage_XmlConnect_Block_Customer_Form_Renderer_File
  • Mage_XmlConnect_Block_Customer_Form_Renderer_Image
  • Mage_XmlConnect_Block_Customer_Form_Renderer_Multiline
  • Mage_XmlConnect_Block_Customer_Form_Renderer_Multiselect
  • Mage_XmlConnect_Block_Customer_Form_Renderer_Select
  • Mage_XmlConnect_Block_Customer_Form_Renderer_Text
  • Mage_XmlConnect_Block_Customer_Form_Renderer_Textarea
  • Mage_XmlConnect_Block_Customer_GiftcardCheck
  • Mage_XmlConnect_Block_Customer_Order_Details
  • Mage_XmlConnect_Block_Customer_Order_Item_Renderer_Bundle
  • Mage_XmlConnect_Block_Customer_Order_Item_Renderer_Default
  • Mage_XmlConnect_Block_Customer_Order_Item_Renderer_Downloadable
  • Mage_XmlConnect_Block_Customer_Order_Item_Renderer_Giftcard
  • Mage_XmlConnect_Block_Customer_Order_Item_Renderer_Grouped
  • Mage_XmlConnect_Block_Customer_Order_Items
  • Mage_XmlConnect_Block_Customer_Order_List
  • Mage_XmlConnect_Block_Customer_Order_Totals
  • Mage_XmlConnect_Block_Customer_Order_Totals_Customerbalance
  • Mage_XmlConnect_Block_Customer_Order_Totals_Customerbalance_Refunded
  • Mage_XmlConnect_Block_Customer_Order_Totals_Giftcards
  • Mage_XmlConnect_Block_Customer_Order_Totals_Tax
  • Mage_XmlConnect_Block_Customer_Storecredit
  • Mage_XmlConnect_Block_Home
  • Mage_XmlConnect_Block_Review_Form
  • Mage_XmlConnect_Block_Wishlist
  • Mage_XmlConnect_CartController
  • Mage_XmlConnect_CatalogController
  • Mage_XmlConnect_CheckoutController
  • Mage_XmlConnect_CmsController
  • Mage_XmlConnect_ConfigurationController
  • Mage_XmlConnect_Controller_Action
  • Mage_XmlConnect_CustomerController
  • Mage_XmlConnect_Helper_Android
  • Mage_XmlConnect_Helper_Catalog_Category_Image
  • Mage_XmlConnect_Helper_Customer_Form_Renderer
  • Mage_XmlConnect_Helper_Customer_Order
  • Mage_XmlConnect_Helper_Data
  • Mage_XmlConnect_Helper_Image
  • Mage_XmlConnect_Helper_Ipad
  • Mage_XmlConnect_Helper_Iphone
  • Mage_XmlConnect_Helper_Theme
  • Mage_XmlConnect_IndexController
  • Mage_XmlConnect_Model_Adminhtml_System_Config_Backend_Baseurl
  • Mage_XmlConnect_Model_Adminhtml_System_Config_Backend_Currency_Default
  • Mage_XmlConnect_Model_Application
  • Mage_XmlConnect_Model_Catalog_Category_Image
  • Mage_XmlConnect_Model_ConfigData
  • Mage_XmlConnect_Model_History
  • Mage_XmlConnect_Model_Mysql4_Application
  • Mage_XmlConnect_Model_Mysql4_Application_Collection
  • Mage_XmlConnect_Model_Mysql4_Cms_Page_Collection
  • Mage_XmlConnect_Model_Mysql4_ConfigData
  • Mage_XmlConnect_Model_Mysql4_ConfigData_Collection
  • Mage_XmlConnect_Model_Mysql4_Filter_Collection
  • Mage_XmlConnect_Model_Mysql4_History
  • Mage_XmlConnect_Model_Mysql4_History_Collection
  • Mage_XmlConnect_Model_Mysql4_Queue
  • Mage_XmlConnect_Model_Mysql4_Queue_Collection
  • Mage_XmlConnect_Model_Mysql4_Setup
  • Mage_XmlConnect_Model_Mysql4_Template
  • Mage_XmlConnect_Model_Mysql4_Template_Collection
  • Mage_XmlConnect_Model_Observer
  • Mage_XmlConnect_Model_Payment_Method_Paypal_Config
  • Mage_XmlConnect_Model_Payment_Method_Paypal_Mecl
  • Mage_XmlConnect_Model_Payment_Method_Paypal_Mep
  • Mage_XmlConnect_Model_Paypal_Mecl_Checkout
  • Mage_XmlConnect_Model_Paypal_Mep_Checkout
  • Mage_XmlConnect_Model_Preview_Abstract
  • Mage_XmlConnect_Model_Preview_Android
  • Mage_XmlConnect_Model_Preview_Ipad
  • Mage_XmlConnect_Model_Preview_Iphone
  • Mage_XmlConnect_Model_Queue
  • Mage_XmlConnect_Model_Resource_Application
  • Mage_XmlConnect_Model_Resource_Application_Collection
  • Mage_XmlConnect_Model_Resource_Cms_Page_Collection
  • Mage_XmlConnect_Model_Resource_ConfigData
  • Mage_XmlConnect_Model_Resource_ConfigData_Collection
  • Mage_XmlConnect_Model_Resource_Filter_Collection
  • Mage_XmlConnect_Model_Resource_History
  • Mage_XmlConnect_Model_Resource_History_Collection
  • Mage_XmlConnect_Model_Resource_Queue
  • Mage_XmlConnect_Model_Resource_Queue_Collection
  • Mage_XmlConnect_Model_Resource_Setup
  • Mage_XmlConnect_Model_Resource_Template
  • Mage_XmlConnect_Model_Resource_Template_Collection
  • Mage_XmlConnect_Model_Simplexml_Element
  • Mage_XmlConnect_Model_Simplexml_Form
  • Mage_XmlConnect_Model_Simplexml_Form_Abstract
  • Mage_XmlConnect_Model_Simplexml_Form_Element_Abstract
  • Mage_XmlConnect_Model_Simplexml_Form_Element_Checkbox
  • Mage_XmlConnect_Model_Simplexml_Form_Element_Collection
  • Mage_XmlConnect_Model_Simplexml_Form_Element_CountryListSelect
  • Mage_XmlConnect_Model_Simplexml_Form_Element_Date
  • Mage_XmlConnect_Model_Simplexml_Form_Element_Email
  • Mage_XmlConnect_Model_Simplexml_Form_Element_Fieldset
  • Mage_XmlConnect_Model_Simplexml_Form_Element_File
  • Mage_XmlConnect_Model_Simplexml_Form_Element_Image
  • Mage_XmlConnect_Model_Simplexml_Form_Element_Multiline
  • Mage_XmlConnect_Model_Simplexml_Form_Element_Multiselect
  • Mage_XmlConnect_Model_Simplexml_Form_Element_Select
  • Mage_XmlConnect_Model_Simplexml_Form_Element_Text
  • Mage_XmlConnect_Model_Simplexml_Form_Element_Textarea
  • Mage_XmlConnect_Model_Simplexml_Form_Element_Validator
  • Mage_XmlConnect_Model_Simplexml_Form_Element_Validator_Abstract
  • Mage_XmlConnect_Model_Simplexml_Form_Element_Validator_Rule
  • Mage_XmlConnect_Model_Tabs
  • Mage_XmlConnect_Model_Template
  • Mage_XmlConnect_Model_Theme
  • Mage_XmlConnect_Paypal_MeclController
  • Mage_XmlConnect_Paypal_MepController
  • Mage_XmlConnect_PbridgeController
  • Mage_XmlConnect_ReviewController
  • Mage_XmlConnect_WishlistController

Interfaces

  • Mage_XmlConnect_Model_Simplexml_Form_Element_Renderer_Interface
  • Overview
  • Package
  • Class
  • Tree
  1: <?php
  2: /**
  3:  * Magento
  4:  *
  5:  * NOTICE OF LICENSE
  6:  *
  7:  * This source file is subject to the Open Software License (OSL 3.0)
  8:  * that is bundled with this package in the file LICENSE.txt.
  9:  * It is also available through the world-wide-web at this URL:
 10:  * http://opensource.org/licenses/osl-3.0.php
 11:  * If you did not receive a copy of the license and are unable to
 12:  * obtain it through the world-wide-web, please send an email
 13:  * to license@magentocommerce.com so we can send you a copy immediately.
 14:  *
 15:  * DISCLAIMER
 16:  *
 17:  * Do not edit or add to this file if you wish to upgrade Magento to newer
 18:  * versions in the future. If you wish to customize Magento for your
 19:  * needs please refer to http://www.magentocommerce.com for more information.
 20:  *
 21:  * @category    Mage
 22:  * @package     Mage_XmlConnect
 23:  * @copyright   Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
 24:  * @license     http://opensource.org/licenses/osl-3.0.php  Open Software License (OSL 3.0)
 25:  */
 26: 
 27: /**
 28:  * XmlConnect device helper for iPhone
 29:  *
 30:  * @category    Mage
 31:  * @package     Mage_XmlConnect
 32:  * @author      Magento Core Team <core@magentocommerce.com>
 33:  */
 34: class Mage_XmlConnect_Helper_Iphone extends Mage_Core_Helper_Abstract
 35: {
 36:     /**
 37:      * Submission title length
 38:      */
 39:     const SUBMISSION_TITLE_LENGTH = 12;
 40: 
 41:     /**
 42:      * Submission description length
 43:      */
 44:     const SUBMISSION_DESCRIPTION_LENGTH = 500;
 45: 
 46:     /**
 47:      * Country renderer for submission page
 48:      */
 49:     const SUBMISSION_COUNTRY_RENDERER = 'istore';
 50: 
 51:     /**
 52:      * Country columns for submission page
 53:      */
 54:     const SUBMISSION_COUNTRY_COLUMNS = 4;
 55: 
 56:     /**
 57:      * Submit images that are stored in "params" field of history table
 58:      *
 59:      * @var array
 60:      */
 61:     protected $_imageIds = array(
 62:         'icon', 'loader_image', 'loader_image_i4', 'logo', 'logo_i4', 'big_logo', 'big_logo_i4'
 63:     );
 64: 
 65:     /**
 66:      * List of coutries that allowed in Ituens by Apple Store
 67:      *
 68:      * array(
 69:      *      'country name' => 'country id at directory model'
 70:      * )
 71:      *
 72:      * @var array
 73:      */
 74:     protected $_allowedCountries = array(
 75:         'Argentina'     => 'AR',
 76:         'Armenia'       => 'AM',
 77:         'Australia'     => 'AU',
 78:         'Austria'       => 'AT',
 79:         'Belgium'       => 'BE',
 80:         'Botswana'      => 'BW',
 81:         'Brazil'        => 'BR',
 82:         'Bulgaria'      => 'BG',
 83:         'Canada'        => 'CA',
 84:         'Chile'         => 'CL',
 85:         'China'         => 'CN',
 86:         'Colombia'      => 'CO',
 87:         'Costa Rica'    => 'CR',
 88:         'Croatia'       => 'HR',
 89:         'Czech Republic' => 'CZ',
 90:         'Denmark'       => 'DK',
 91:         'Dominican Republic' => 'DO',
 92:         'Ecuador'       => 'EC',
 93:         'Egypt'         => 'EG',
 94:         'El Salvador'   => 'SV',
 95:         'Estonia'       => 'EE',
 96:         'Finland'       => 'FI',
 97:         'France'        => 'FR',
 98:         'Germany'       => 'DE',
 99:         'Greece'        => 'GR',
100:         'Guatemala'     => 'GT',
101:         'Honduras'      => 'HN',
102:         'Hong Kong SAR China' => 'HK',
103:         'Hungary'       => 'HU',
104:         'India'         => 'IN',
105:         'Indonesia'     => 'ID',
106:         'Ireland'       => 'IE',
107:         'Israel'        => 'IL',
108:         'Italy'         => 'IT',
109:         'Jamaica'       => 'JM',
110:         'Japan'         => 'JP',
111:         'Jordan'        => 'JO',
112:         'Kazakstan'     => 'KZ',
113:         'Kenya'         => 'KE',
114:         'South Korea'   => 'KR',
115:         'Kuwait'        => 'KW',
116:         'Latvia'        => 'LV',
117:         'Lebanon'       => 'LB',
118:         'Lithuania'     => 'LT',
119:         'Luxembourg'    => 'LU',
120:         'Macau SAR China' => 'MO',
121:         'Macedonia'     => 'MK',
122:         'Madagascar'    => 'MG',
123:         'Malaysia'      => 'MY',
124:         'Mali'          => 'ML',
125:         'Malta'         => 'MT',
126:         'Mauritius'     => 'MU',
127:         'Mexico'        => 'MX',
128:         'Moldova'       => 'MD',
129:         'Netherlands'   => 'NL',
130:         'New Zealand'   => 'NZ',
131:         'Nicaragua'     => 'NI',
132:         'Niger'         => 'NE',
133:         'Norway'        => 'NO',
134:         'Pakistan'      => 'PK',
135:         'Panama'        => 'PA',
136:         'Paraguay'      => 'PY',
137:         'Peru'          => 'PE',
138:         'Philippines'   => 'PH',
139:         'Poland'        => 'PL',
140:         'Portugal'      => 'PT',
141:         'Qatar'         => 'QA',
142:         'Romania'       => 'RO',
143:         'Russia'        => 'RU',
144:         'Saudi Arabia'  => 'SA',
145:         'Senegal'       => 'SN',
146:         'Singapore'     => 'SG',
147:         'Slovakia'      => 'SK',
148:         'Slovenia'      => 'SI',
149:         'South Africa'  => 'ZA',
150:         'Spain'         => 'ES',
151:         'Sri Lanka'     => 'LK',
152:         'Sweden'        => 'SE',
153:         'Switzerland'   => 'CH',
154:         'Taiwan'        => 'TW',
155:         'Thailand'      => 'TH',
156:         'Tunisia'       => 'TN',
157:         'Turkey'        => 'TR',
158:         'Uganda'        => 'UG',
159:         'United Arab Emirates' => 'AE',
160:         'United Kingdom' => 'GB',
161:         'United States' => 'US',
162:         'Uruguay'       => 'UY',
163:         'Venezuela'     => 'VE',
164:         'Vietnam'       => 'VN',
165:     );
166: 
167:     /**
168:      * Country field renderer
169:      *
170:      * @var Mage_XmlConnect_Block_Adminhtml_Mobile_Submission_Renderer_Country_Istore
171:      */
172:     protected $_countryRenderer = null;
173: 
174:     /**
175:      * Get submit images that are required for application submit
176:      *
177:      * @return array
178:      */
179:     public function getSubmitImages()
180:     {
181:         return $this->_imageIds;
182:     }
183: 
184:     /**
185:      * Get default application tabs
186:      *
187:      * @return array
188:      */
189:     public function getDefaultDesignTabs()
190:     {
191:         if (!isset($this->_tabs)) {
192:             $this->_tabs = array(
193:                 array(
194:                     'label' => Mage::helper('xmlconnect')->__('Home'),
195:                     'image' => 'tab_home.png',
196:                     'action' => 'Home',
197:                 ),
198:                 array(
199:                     'label' => Mage::helper('xmlconnect')->__('Shop'),
200:                     'image' => 'tab_shop.png',
201:                     'action' => 'Shop',
202:                 ),
203:                 array(
204:                     'label' => Mage::helper('xmlconnect')->__('Search'),
205:                     'image' => 'tab_search.png',
206:                     'action' => 'Search',
207:                 ),
208:                 array(
209:                     'label' => Mage::helper('xmlconnect')->__('Cart'),
210:                     'image' => 'tab_cart.png',
211:                     'action' => 'Cart',
212:                 ),
213:                 array(
214:                     'label' => Mage::helper('xmlconnect')->__('More'),
215:                     'image' => 'tab_more.png',
216:                     'action' => 'More',
217:                 ),
218:                 array(
219:                     'label' => Mage::helper('xmlconnect')->__('Account'),
220:                     'image' => 'tab_account.png',
221:                     'action' => 'Account',
222:                 ),
223:                 array(
224:                     'label' => Mage::helper('xmlconnect')->__('More Info'),
225:                     'image' => 'tab_page.png',
226:                     'action' => 'AboutUs',
227:                 ),
228:             );
229:         }
230:         return $this->_tabs;
231:     }
232: 
233:     /**
234:      * Default application configuration
235:      *
236:      * @return array
237:      */
238:      public function getDefaultConfiguration()
239:      {
240:          return array(
241:              'native' => array(
242:                  'body' => array(
243:                      'backgroundColor' => '#ABABAB',
244:                      'scrollBackgroundColor' => '#EDEDED',
245:                  ),
246:                  'itemActions' => array(
247:                      'relatedProductBackgroundColor' => '#404040',
248:                  ),
249:                  'fonts' => array(
250:                      'Title1' => array(
251:                          'name' => 'HelveticaNeue-Bold',
252:                          'size' => '14',
253:                          'color' => '#FEFEFE',
254:                      ),
255:                      'Title2' => array(
256:                          'name' => 'HelveticaNeue-Bold',
257:                          'size' => '12',
258:                          'color' => '#222222',
259:                      ),
260:                      'Title3' => array(
261:                          'name' => 'HelveticaNeue',
262:                          'size' => '13',
263:                          'color' => '#000000',
264:                      ),
265:                      'Title4' => array(
266:                          'name' => 'HelveticaNeue',
267:                          'size' => '12',
268:                          'color' => '#FFFFFF',
269:                      ),
270:                      'Title5' => array(
271:                          'name' => 'HelveticaNeue-Bold',
272:                          'size' => '13',
273:                          'color' => '#dc5f02',
274:                      ),
275:                      'Title6' => array(
276:                          'name' => 'HelveticaNeue-Bold',
277:                          'size' => '16',
278:                          'color' => '#222222',
279:                      ),
280:                      'Title7' => array(
281:                          'name' => 'HelveticaNeue-Bold',
282:                          'size' => '13',
283:                          'color' => '#000000',
284:                      ),
285:                      'Title8' => array(
286:                          'name' => 'HelveticaNeue-Bold',
287:                          'size' => '11',
288:                          'color' => '#FFFFFF',
289:                      ),
290:                      'Title9' => array(
291:                          'name' => 'HelveticaNeue-Bold',
292:                          'size' => '12',
293:                          'color' => '#FFFFFF',
294:                      ),
295:                      'Text1' => array(
296:                          'name' => 'HelveticaNeue-Bold',
297:                          'size' => '12',
298:                          'color' => '#777777',
299:                      ),
300:                      'Text2' => array(
301:                          'name' => 'HelveticaNeue',
302:                          'size' => '10',
303:                          'color' => '#555555',
304:                      ),
305:                  ),
306:              ),
307:          );
308:      }
309: 
310:     /**
311:      * List of allowed fonts for iPhone application
312:      *
313:      * @return array
314:      */
315:     public function getFontList()
316:     {
317:         return array(
318:             array(
319:                 'value' => 'HiraKakuProN-W3',
320:                 'label' => 'HiraKakuProN-W3',
321:             ),
322:             array(
323:                 'value' => 'Courier',
324:                 'label' => 'Courier',
325:             ),
326:             array(
327:                 'value' => 'Courier-BoldOblique',
328:                 'label' => 'Courier-BoldOblique',
329:             ),
330:             array(
331:                 'value' => 'Courier-Oblique',
332:                 'label' => 'Courier-Oblique',
333:             ),
334:             array(
335:                 'value' => 'Courier-Bold',
336:                 'label' => 'Courier-Bold',
337:             ),
338:             array(
339:                 'value' => 'ArialMT',
340:                 'label' => 'ArialMT',
341:             ),
342:             array(
343:                 'value' => 'Arial-BoldMT',
344:                 'label' => 'Arial-BoldMT',
345:             ),
346:             array(
347:                 'value' => 'Arial-BoldItalicMT',
348:                 'label' => 'Arial-BoldItalicMT',
349:             ),
350:             array(
351:                 'value' => 'Arial-ItalicMT',
352:                 'label' => 'Arial-ItalicMT',
353:             ),
354:             array(
355:                 'value' => 'STHeitiTC-Light',
356:                 'label' => 'STHeitiTC-Light',
357:             ),
358:             array(
359:                 'value' => 'STHeitiTC-Medium',
360:                 'label' => 'STHeitiTC-Medium',
361:             ),
362:             array(
363:                 'value' => 'AppleGothic',
364:                 'label' => 'AppleGothic',
365:             ),
366:             array(
367:                 'value' => 'CourierNewPS-BoldMT',
368:                 'label' => 'CourierNewPS-BoldMT',
369:             ),
370:             array(
371:                 'value' => 'CourierNewPS-ItalicMT',
372:                 'label' => 'CourierNewPS-ItalicMT',
373:             ),
374:             array(
375:                 'value' => 'CourierNewPS-BoldItalicMT',
376:                 'label' => 'CourierNewPS-BoldItalicMT',
377:             ),
378:             array(
379:                 'value' => 'CourierNewPSMT',
380:                 'label' => 'CourierNewPSMT',
381:             ),
382:             array(
383:                 'value' => 'Zapfino',
384:                 'label' => 'Zapfino',
385:             ),
386:             array(
387:                 'value' => 'HiraKakuProN-W6',
388:                 'label' => 'HiraKakuProN-W6',
389:             ),
390:             array(
391:                 'value' => 'ArialUnicodeMS',
392:                 'label' => 'ArialUnicodeMS',
393:             ),
394:             array(
395:                 'value' => 'STHeitiSC-Medium',
396:                 'label' => 'STHeitiSC-Medium',
397:             ),
398:             array(
399:                 'value' => 'STHeitiSC-Light',
400:                 'label' => 'STHeitiSC-Light',
401:             ),
402:             array(
403:                 'value' => 'AmericanTypewriter',
404:                 'label' => 'AmericanTypewriter',
405:             ),
406:             array(
407:                 'value' => 'AmericanTypewriter-Bold',
408:                 'label' => 'AmericanTypewriter-Bold',
409:             ),
410:             array(
411:                 'value' => 'Helvetica-Oblique',
412:                 'label' => 'Helvetica-Oblique',
413:             ),
414:             array(
415:                 'value' => 'Helvetica-BoldOblique',
416:                 'label' => 'Helvetica-BoldOblique',
417:             ),
418:             array(
419:                 'value' => 'Helvetica',
420:                 'label' => 'Helvetica',
421:             ),
422:             array(
423:                 'value' => 'Helvetica-Bold',
424:                 'label' => 'Helvetica-Bold',
425:             ),
426:             array(
427:                 'value' => 'MarkerFelt-Thin',
428:                 'label' => 'MarkerFelt-Thin',
429:             ),
430:             array(
431:                 'value' => 'HelveticaNeue',
432:                 'label' => 'HelveticaNeue',
433:             ),
434:             array(
435:                 'value' => 'HelveticaNeue-Bold',
436:                 'label' => 'HelveticaNeue-Bold',
437:             ),
438:             array(
439:                 'value' => 'DBLCDTempBlack',
440:                 'label' => 'DBLCDTempBlack',
441:             ),
442:             array(
443:                 'value' => 'Verdana-Bold',
444:                 'label' => 'Verdana-Bold',
445:             ),
446:             array(
447:                 'value' => 'Verdana-BoldItalic',
448:                 'label' => 'Verdana-BoldItalic',
449:             ),
450:             array(
451:                 'value' => 'Verdana',
452:                 'label' => 'Verdana',
453:             ),
454:             array(
455:                 'value' => 'Verdana-Italic',
456:                 'label' => 'Verdana-Italic',
457:             ),
458:             array(
459:                 'value' => 'TimesNewRomanPSMT',
460:                 'label' => 'TimesNewRomanPSMT',
461:             ),
462:             array(
463:                 'value' => 'TimesNewRomanPS-BoldMT',
464:                 'label' => 'TimesNewRomanPS-BoldMT',
465:             ),
466:             array(
467:                 'value' => 'TimesNewRomanPS-BoldItalicMT',
468:                 'label' => 'TimesNewRomanPS-BoldItalicMT',
469:             ),
470:             array(
471:                 'value' => 'TimesNewRomanPS-ItalicMT',
472:                 'label' => 'TimesNewRomanPS-ItalicMT',
473:             ),
474:             array(
475:                 'value' => 'Georgia-Bold',
476:                 'label' => 'Georgia-Bold',
477:             ),
478:             array(
479:                 'value' => 'Georgia',
480:                 'label' => 'Georgia',
481:             ),
482:             array(
483:                 'value' => 'Georgia-BoldItalic',
484:                 'label' => 'Georgia-BoldItalic',
485:             ),
486:             array(
487:                 'value' => 'Georgia-Italic',
488:                 'label' => 'Georgia-Italic',
489:             ),
490:             array(
491:                 'value' => 'STHeitiJ-Medium',
492:                 'label' => 'STHeitiJ-Medium',
493:             ),
494:             array(
495:                 'value' => 'STHeitiJ-Light',
496:                 'label' => 'STHeitiJ-Light',
497:             ),
498:             array(
499:                 'value' => 'ArialRoundedMTBold',
500:                 'label' => 'ArialRoundedMTBold',
501:             ),
502:             array(
503:                 'value' => 'TrebuchetMS-Italic',
504:                 'label' => 'TrebuchetMS-Italic',
505:             ),
506:             array(
507:                 'value' => 'TrebuchetMS',
508:                 'label' => 'TrebuchetMS',
509:             ),
510:             array(
511:                 'value' => 'Trebuchet-BoldItalic',
512:                 'label' => 'Trebuchet-BoldItalic',
513:             ),
514:             array(
515:                 'value' => 'TrebuchetMS-Bold',
516:                 'label' => 'TrebuchetMS-Bold',
517:             ),
518:             array(
519:                 'value' => 'STHeitiK-Medium',
520:                 'label' => 'STHeitiK-Medium',
521:             ),
522:             array(
523:                 'value' => 'STHeitiK-Light',
524:                 'label' => 'STHeitiK-Light',
525:             ),
526:         );
527:     }
528: 
529:     /**
530:      * List of allowed font sizes for iPhone application
531:      *
532:      * @return array
533:      */
534:     public function getFontSizes()
535:     {
536:         $result = array();
537:         for ($i = 6; $i < 32; $i++) {
538:             $result[] = array(
539:                 'value' => $i,
540:                 'label' => $i . ' pt',
541:             );
542:         }
543:         return $result;
544:     }
545: 
546:     /**
547:      * Get list of countries that allowed in Itunes by Apple Store for Iphone
548:      *
549:      * @return array
550:      */
551:     public function getItunesCountriesArray()
552:     {
553:         return $this->_allowedCountries;
554:     }
555: 
556:     /**
557:      * Validate submit application data
558:      *
559:      * @param array $params
560:      * @return array
561:      */
562:     public function validateSubmit($params)
563:     {
564:         $errors = array();
565: 
566:         if (!Zend_Validate::is(isset($params['title']) ? $params['title'] : null, 'NotEmpty')) {
567:             $errors[] = Mage::helper('xmlconnect')->__('Please enter the Title.');
568:         }
569: 
570:         if (isset($params['title'])) {
571:             $titleLength = self::SUBMISSION_TITLE_LENGTH;
572:             $strRules = array('min' => '1', 'max' => $titleLength);
573:             if (!Zend_Validate::is($params['title'], 'StringLength', $strRules)) {
574:                 $errors[] = Mage::helper('xmlconnect')->__('"Title" is more than %d characters long', $strRules['max']);
575:             }
576:         }
577: 
578:         if (!Zend_Validate::is(isset($params['description']) ? $params['description'] : null, 'NotEmpty')) {
579:             $errors[] = Mage::helper('xmlconnect')->__('Please enter the Description.');
580:         }
581: 
582:         if (isset($params['description'])) {
583:             $descriptionLength = self::SUBMISSION_DESCRIPTION_LENGTH;
584:             $strRules = array('min' => '1', 'max' => $descriptionLength);
585:             if (!Zend_Validate::is($params['title'], 'StringLength', $strRules)) {
586:                 $errors[] = Mage::helper('xmlconnect')->__('"Description" is more than %d characters long', $strRules['max']);
587:             }
588:         }
589: 
590:         if (!Zend_Validate::is(isset($params['copyright']) ? $params['copyright'] : null, 'NotEmpty')) {
591:             $errors[] = Mage::helper('xmlconnect')->__('Please enter the Copyright.');
592:         }
593: 
594:         if (empty($params['price_free'])) {
595:             if (!Zend_Validate::is(isset($params['price']) ? $params['price'] : null, 'NotEmpty')) {
596:                 $errors[] = Mage::helper('xmlconnect')->__('Please enter the Price.');
597:             }
598:         }
599: 
600:         if (!Zend_Validate::is(isset($params['country']) ? $params['country'] : null, 'NotEmpty')) {
601:             $errors[] = Mage::helper('xmlconnect')->__('Please select at least one country.');
602:         }
603: 
604:         $keyLenght = Mage_XmlConnect_Model_Application::APP_MAX_KEY_LENGTH;
605:         if (Mage::helper('xmlconnect')->getApplication()->getIsResubmitAction()) {
606:             if (isset($params['resubmission_activation_key'])) {
607:                 $resubmissionKey = $params['resubmission_activation_key'];
608:             } else {
609:                 $resubmissionKey = null;
610:             }
611: 
612:             if (!Zend_Validate::is($resubmissionKey, 'NotEmpty')) {
613:                 $errors[] = Mage::helper('xmlconnect')->__('Please enter the Resubmission Key.');
614:             } elseif (!Zend_Validate::is($resubmissionKey, 'StringLength', array(1, $keyLenght))) {
615:                 $errors[] = Mage::helper('xmlconnect')->__('Submit App failure. Invalid activation key provided');
616:             }
617:         } else {
618:             $key = isset($params['key']) ? $params['key'] : null;
619:             if (!Zend_Validate::is($key, 'NotEmpty')) {
620:                 $errors[] = Mage::helper('xmlconnect')->__('Please enter the Activation Key.');
621:             } elseif (!Zend_Validate::is($key, 'StringLength', array(1, $keyLenght))) {
622:                 $errors[] = Mage::helper('xmlconnect')->__('Submit App failure. Invalid activation key provided');
623:             }
624:         }
625:         return $errors;
626:     }
627: 
628:     /**
629:      * Check config for valid values
630:      *
631:      * @param array $native
632:      * @return array
633:      */
634:     public function validateConfig($native)
635:     {
636:         $errors = array();
637: 
638:         if ($native === false || (!isset($native['navigationBar']['icon'])
639:             || !Zend_Validate::is($native['navigationBar']['icon'], 'NotEmpty'))
640:         ) {
641:             $errors[] = Mage::helper('xmlconnect')->__('Please upload  an image for "Logo in Header" field from Design Tab.');
642:         }
643: 
644:         if (!Mage::helper('xmlconnect')->validateConfFieldNotEmpty('bannerImage', $native)) {
645:             $errors[] = Mage::helper('xmlconnect')->__('Please upload  an image for "Banner on Home Screen" field from Design Tab.');
646:         }
647: 
648:         if (!Mage::helper('xmlconnect')->validateConfFieldNotEmpty('backgroundImage', $native)) {
649:             $errors[] = Mage::helper('xmlconnect')->__('Please upload  an image for "App Background" field from Design Tab.');
650:         }
651: 
652:         return $errors;
653:     }
654: 
655:     /**
656:      * Get renderer for submission country
657:      *
658:      * @return Mage_XmlConnect_Block_Adminhtml_Mobile_Submission_Renderer_Country_Istore
659:      */
660:     public function getCountryRenderer()
661:     {
662:         if (empty($this->_countryRenderer)) {
663:             $renderer = 'xmlconnect/adminhtml_mobile_submission_renderer_country_'
664:                 . self::SUBMISSION_COUNTRY_RENDERER;
665:             $this->_countryRenderer = Mage::app()->getLayout()->createBlock($renderer);
666:         }
667:         return $this->_countryRenderer;
668:     }
669: 
670:     /**
671:      * Get label for submission country
672:      *
673:      * @return string
674:      */
675:     public function getCountryLabel()
676:     {
677:         return Mage::helper('xmlconnect')->__('App Stores');
678:     }
679: 
680:     /**
681:      * Get columns for submission country
682:      *
683:      * @return int
684:      */
685:     public function getCountryColumns()
686:     {
687:         return self::SUBMISSION_COUNTRY_COLUMNS;
688:     }
689: 
690:     /**
691:      * Get placement of Country Names for submission country
692:      *
693:      * @return bool
694:      */
695:     public function isCountryNamePlaceLeft()
696:     {
697:         return true;
698:     }
699: 
700:     /**
701:      * Get class name for submission country
702:      *
703:      * @return string
704:      */
705:     public function getCountryClass()
706:     {
707:         return self::SUBMISSION_COUNTRY_RENDERER . ' stripy';
708:     }
709: 
710:     /**
711:      * Check image fields
712:      *
713:      * We set empty value for image field if file was missed in some reason
714:      *
715:      * @param array $data
716:      * @return array
717:      */
718:     public function checkImages(array $data)
719:     {
720:         /** @var $helper Mage_XmlConnect_Helper_Image */
721:         $helper = Mage::helper('xmlconnect/image');
722: 
723:         $icon =& $data['conf']['native']['navigationBar']['icon'];
724: 
725:         if (!empty($icon) && !$helper->checkAndGetImagePath($icon)) {
726:             $icon = '';
727:         }
728: 
729:         $banner =& $data['conf']['native']['body']['bannerImage'];
730: 
731:         if (!empty($banner) && !$helper->checkAndGetImagePath($banner)) {
732:             $banner = '';
733:         }
734: 
735:         $background =& $data['conf']['native']['body']['backgroundImage'];
736: 
737:         if (!empty($background) && !$helper->checkAndGetImagePath($background)) {
738:             $background = '';
739:         }
740: 
741:         return $data;
742:     }
743: 
744:     /**
745:      * Check required fields of a config for a front-end
746:      *
747:      * @throws Mage_Core_Exception
748:      * @param array $data
749:      * @return null
750:      */
751:     public function checkRequiredConfigFields($data)
752:     {
753:         if (!is_array($data)) {
754:             return;
755:         }
756: 
757:         if (isset($data['navigationBar']['icon']) && empty($data['navigationBar']['icon'])) {
758:             Mage::throwException(Mage::helper('xmlconnect')->__('Logo in Header image missing.'));
759:         }
760:         if (isset($data['body']['bannerImage']) && empty($data['body']['bannerImage'])) {
761:             Mage::throwException(Mage::helper('xmlconnect')->__('Banner on Home Screen image missing.'));
762:         }
763:         if (isset($data['body']['backgroundImage']) && empty($data['body']['backgroundImage'])) {
764:             Mage::throwException(Mage::helper('xmlconnect')->__('App Background image missing.'));
765:         }
766:     }
767: 
768:     /**
769:      * Check the notifications are allowed for current type of application
770:      *
771:      * @return bool
772:      */
773:     public function isNotificationsAllowed()
774:     {
775:         return true;
776:     }
777: }
778: 
Magento 1.7.0.2 API documentation generated by ApiGen 2.8.0