log)) $io->log->addMessage ($class_name . ' not found', 'autoload'); eval ('class ' . $class_name . '{ public $is_phantom = true; }'); } // not found else { // not found if (isset ($io->log)) $io->log->addMessage ($class_name . ' not found', 'autoload'); eval ('class ' . $class_name . ' extends eclClass_' . strtolower( substr ($prefix, 3)) . '{ public $is_phantom = true; }'); } // not found return; } // do not include external scripts $ob_length = ob_get_length(); if (isset ($aliases[$component]) and isset ($components[$aliases[$component]])) { // include from component $path = PATH_COMPONENTS . $aliases[$component] . '/' . $components[$aliases[$component]] . '/' . $component . '/' . $class_name . '.php'; if (is_file ($path)) { // file found include $path; return; } // file found if (count ($parts) > 2) { // try subdirectory $path = PATH_COMPONENTS . $aliases[$component] . '/' . $components[$aliases[$component]] . '/' . $component . '/' . $parts[2] . '/' . $class_name . '.php'; if (is_file ($path)) { // file found include $path; return; } // file found } // try subdirectory } // include from component if (is_file (PATH_ENGINE . $prefix . '/' . $class_name . '.php')) include PATH_ENGINE . $prefix . '/' . $class_name . '.php'; elseif (count ($parts) >= 3 and is_file (PATH_LIBRARY . $parts[1] . '/' . $parts[2] . '/' . $class_name . '.php')) include PATH_LIBRARY . $parts[1] . '/' . $parts[2] . '/' . $class_name . '.php'; elseif (is_file (PATH_LIBRARY . $component . '/' . $class_name . '.php')) include PATH_LIBRARY . $component . '/' . $class_name . '.php'; elseif (count ($parts) == 4 and is_file (PATH_LIBRARY . $parts[1] . '/' . $parts[2] . '/' . $class_name . '.php')) include PATH_LIBRARY . $parts[1] . '/' . $parts[2] . '/' . $class_name . '.php'; elseif ($prefix == $class_name or $prefix == 'eclClass') { // not found if (isset ($io->log)) $io->log->addMessage ($class_name . ' not found', 'autoload'); eval ('class ' . $class_name . '{ public $is_phantom = true; }'); } // not found else { // not found if (isset ($io->log)) $io->log->addMessage ($class_name . ' not found', 'autoload'); eval ('class ' . $class_name . ' extends eclClass_' . strtolower( substr ($prefix, 3)) . '{ public $is_phantom = true; }'); } // not found if (ob_get_length() > $ob_length) print 'vazamento de caracteres em ' . $class_name . '
'; } // magic autoload ); function print_a ($array) { print nl2br (str_replace (array ('&', '"', '<'), array ('&', '"', '<'), eclIo_file::array2string ($array))); } /* The packager will look for the lines starting with "!". Do not change these lines! */ //!packager:start_of_files //!start_of_packager_settings define('SYSTEM_IS_PACKED', true); define('SYSTEM_PACKED_DATE', 'Wed, 26 Jun 2019 15:47:01 -0300'); //!end_of_packager_settings //!packager:start_of_map $mapPrepend = array ( 'admin' => array ('adminIndex', 'adminAlerts', 'adminUsers', 'adminDomains', 'adminSystem', 'adminDatabase', 'adminIntegrations', 'adminComponents', 'adminTools'), 'adminAlerts' => array ('adminAlerts_log', 'adminAlerts_update'), 'adminIntegrations' => array ('integrationSMTP', 'integrationSMS'), 'domain' => array ('domainIndex', 'section', 'section_create', 'domainFiles', 'domainGlossary', 'domainIcons', 'domainInfo', 'domainRecents', 'domainScripts', 'domainSearch', 'domainStyles', 'domainSubscription'), 'financialAccount_create' => array ('financialAccountCash_create', 'financialAccountBank_create'), 'home_create' => array ('homeCurriculum_create', 'homePublications_create', 'homeChat_create'), 'integration' => array ('integrationSMTP', 'integrationSMS', 'integrationRSS', 'integrationGoogleWebmasters'), 'personalite' => array ('personaliteApearance', 'personaliteDetails', 'personaliteExtras', 'personaliteInstall', 'personaliteModules', 'personaliteObjects', 'personaliteTemplate', 'personaliteExport'), 'section_create' => array ('sectionFolder_create', 'sectionCart_create', 'sectionBlog_create', 'sectionCategories_create', 'sectionSearch_create', 'sectionFormulary_create'), 'system' => array ('systemShared', 'user', 'systemInstallation', 'admin', 'domain', 'domainCreate', 'systemAccessDenied', 'systemPreload'), 'systemPreload' => array ('sectionCart_preload', 'modEditor'), 'tool' => array ('toolConfig', 'toolMediaGalery', 'integration', 'financial'), 'user' => array ('userIndex', 'userAnonimous', 'userHome', 'userAdmin', 'userJoin', 'userRecoverPassword'), 'userHome' => array ('userHome_index', 'home', 'home_create', 'userHome_alerts', 'userHome_password', 'userHome_personal', 'userHome_mail', 'userHome_phone', 'userHome_welcome'), ); $mapAppend = array ( 'admin' => array ('domainIcons', 'domainScripts', 'domainServices', 'domainStyles', 'adminDefault'), 'domain' => array ('endpoints', 'personalite', 'tool', 'userJoin', 'domainSitemap', 'domainDefault'), 'section_create' => array ('sectionGlossary_create', 'sectionInfo_create', 'sectionLogin_create', 'sectionSubdomains_create', 'sectionTerms_create', 'sectionPrivacyPolicy_create', 'sectionMenu_create', 'sectionRedirect_create'), 'system' => array ('systemDefault'), 'user' => array ('domainIcons', 'domainScripts', 'domainStyles', 'userDefault'), 'userHome' => array ('userHome_alerts_phone', 'userHome_alerts_mail', 'userHome_default'), ); //!packager:end_of_map //!packager:start_of_data_index $dataMap = array ( 'c' => array ( 'admin' => array ( 'content' => '0:666', ), 'admin_constants' => array ( 'adminCaption' => '666:510', 'adminGender' => '1176:728', 'adminGenderFemale' => '1904:164', 'adminGenderMale' => '2068:164', 'adminHelpers' => '2232:876', 'adminIdentifier' => '3108:772', 'adminMail' => '3880:940', 'adminPassword' => '4820:849', 'adminPassword2' => '5669:133', 'chrFns' => '5802:612', 'databaseClient' => '6414:831', 'databaseClientMysql' => '7245:163', 'databaseClientSqlite' => '7408:166', 'databaseDb' => '7574:314', 'databaseDisplayErrors' => '7888:934', 'databaseEnabled' => '8822:969', 'databaseEnabledDisabled' => '9791:415', 'databaseEnabledFailed' => '10206:370', 'databaseEnabledSuccess' => '10576:303', 'databaseHost' => '10879:303', 'databaseLogErrors' => '11182:619', 'databasePassword' => '11801:316', 'databasePrefix' => '12117:927', 'databaseUser' => '13044:306', 'filterFlagError' => '13350:439', 'filterFolderError' => '13789:393', 'filterFolderExists' => '14182:416', 'pathComponents' => '14598:740', 'pathDatabase' => '15338:822', 'pathDomains' => '16160:695', 'pathEngine' => '16855:734', 'pathLibrary' => '17589:783', 'pathProfiles' => '18372:744', 'pathShared' => '19116:886', 'pathTemplates' => '20002:1013', 'systemAdminUri' => '21015:1320', 'systemDefaultCharset' => '22335:1162', 'systemDefaultCharsetIso88591' => '23497:216', 'systemDefaultCharsetUtf8' => '23713:133', 'systemDefaultCurrency' => '23846:690', 'systemDefaultDomainName' => '24536:1027', 'systemDefaultLanguage' => '25563:701', 'systemDisplayErrors' => '26264:919', 'systemEnableUserDomains' => '27183:758', 'systemEnableUserSubscriptions' => '27941:780', 'systemHost' => '28721:660', 'systemHostingMode' => '29381:1871', 'systemHostingModePortal' => '31252:169', 'systemHostingModeSingle' => '31421:172', 'systemHostingModeSubfolders' => '31593:180', 'systemHttpsRedirect' => '31773:1218', 'systemLogErrors' => '32991:739', 'systemPackedMapFirst' => '33730:1264', 'systemPackedSharedFirst' => '34994:1186', 'systemProfilesUri' => '36180:1244', 'systemProjectCaption' => '37424:721', 'systemProjectRef' => '38145:749', 'systemRewriteEngine' => '38894:2248', 'systemSessionCacheExpire' => '41142:1012', 'systemSessionTTL' => '42154:738', 'systemTimeLimit' => '42892:853', 'systemTimezone' => '43745:13331', 'trackingEnable' => '57076:1522', 'trackingGeoipCache' => '58598:855', 'trackingGeoipCache1month' => '59453:157', 'trackingGeoipCache3months' => '59610:160', 'trackingGeoipCache6months' => '59770:160', 'trackingGeoipCacheNoExpire' => '59930:165', 'trackingGeoipEnable' => '60095:819', 'trackingGeoipService' => '60914:986', 'trackingRemovedPages' => '61900:673', 'trackingStoreFullBacktrace' => '62573:1045', ), 'adminAlerts' => array ( 'help' => '63618:521', 'main' => '64139:241', 'mainEmpty' => '64380:162', ), 'adminAlerts_log' => array ( 'database' => '64542:352', 'databasedisabled' => '64894:313', 'php' => '65207:305', ), 'adminAlerts_update' => array ( 'newReleaseAvailable' => '65512:287', ), 'adminComponents' => array ( 'content' => '65799:227', 'contentEmpty' => '66026:292', 'edit' => '66318:102', 'editComponentDisabled' => '66420:116', 'editComponents' => '66536:108', 'folder' => '66644:148', 'folderMsg' => '66792:520', 'folderSubmit' => '67312:204', 'helpAbout' => '67516:555', ), 'adminComponents_config' => array ( 'content' => '68071:262', 'contentEmpty' => '68333:292', 'helpAbout' => '68625:555', ), 'adminDatabase' => array ( 'content' => '69180:243', 'edit' => '69423:141', 'editMsg' => '69564:549', 'editSubmit' => '70113:204', ), 'adminDatabase_config' => array ( 'content' => '70317:299', 'edit' => '70616:392', 'editMessage' => '71008:314', ), 'adminDatabase_encrypt' => array ( 'content' => '71322:245', 'contentGenerate' => '71567:957', 'contentImport' => '72524:478', 'contentKey' => '73002:301', 'editMessage' => '73303:914', 'generate' => '74217:178', 'generateAlgorithm' => '74395:274', 'import' => '74669:84', 'key' => '74753:97', 'keyMethod' => '74850:360', 'keyMethodGenerate' => '75210:241', 'keyMethodImport' => '75451:250', ), 'adminDatabase_log' => array ( 'content' => '75701:269', 'edit' => '75970:242', 'editLogClear' => '76212:225', 'editLogView' => '76437:196', ), 'adminDatabase_query' => array ( 'content' => '76633:241', 'edit' => '76874:122', 'editInput' => '76996:219', 'editResult' => '77215:268', ), 'adminDefault' => array ( 'content' => '77483:547', ), 'adminDomains' => array ( 'content' => '78030:227', 'contentDisabled' => '78257:443', 'contentEmpty' => '78700:180', 'edit' => '78880:140', 'editMsg' => '79020:541', 'editSubmit' => '79561:204', ), 'adminDomains_add' => array ( 'content' => '79765:255', 'edit' => '80020:265', 'editAdmin' => '80285:339', 'editAdminRequired' => '80624:371', 'editDefaultLanguage' => '80995:281', 'editDescription' => '81276:209', 'editName' => '81485:268', 'editNameAlreadyExists' => '81753:385', 'editNameInvalidChars' => '82138:532', 'editNameSoLong' => '82670:415', 'editTitle' => '83085:284', ), 'adminDomains_details' => array ( 'alertAdminAlreadyExists' => '83369:397', 'alertAdminPleaseSelect' => '83766:419', 'alertAdminRemoveError' => '84185:327', 'alertAdminRemoveLast' => '84512:463', 'alertAdminRequired' => '84975:371', 'content' => '85346:267', 'contextRemove' => '85613:141', 'contextRemoveConfirm' => '85754:1044', 'contextRemoveConfirmError' => '86798:430', 'contextRemoveConfirmOk' => '87228:256', 'edit' => '87484:507', 'editAdminAddName' => '87991:297', 'editAdminAddSubmit' => '88288:147', 'editAdminRemoveList' => '88435:319', 'editAdminRemoveSubmit' => '88754:154', 'editCaption' => '88908:284', 'editCurrency' => '89192:258', 'editDefaultLanguage' => '89450:281', 'editDescription' => '89731:209', 'editName' => '89940:233', 'editStatus' => '90173:379', 'editStatusAlert' => '90552:160', 'editStatusDefault' => '90712:160', 'editStatusDisabled' => '90872:165', 'editStatusReserved' => '91037:178', 'editStatusWaiting' => '91215:188', 'editTitle' => '91403:284', 'editUpdate' => '91687:145', ), 'adminIndex' => array ( 'content' => '91832:1163', 'helpAbout' => '92995:722', ), 'adminIntegrations' => array ( 'content' => '93717:213', 'contentEmpty' => '93930:284', 'helpAbout' => '94214:547', ), 'adminSystem' => array ( 'content' => '94761:223', ), 'adminSystem_admin' => array ( 'content' => '94984:253', 'edit' => '95237:360', ), 'adminSystem_eval' => array ( 'content' => '95597:271', 'edit' => '95868:103', 'editEvalInput' => '95971:190', ), 'adminSystem_extract' => array ( 'content' => '96161:970', 'edit' => '97131:613', 'editBackupFilename' => '97744:389', 'editCreateBackup' => '98133:308', 'editDataExtension' => '98441:437', 'editDataExtensionEcl' => '98878:197', 'editDataExtensionJson' => '99075:154', 'editIndentStart' => '99229:420', 'editIndentStart1' => '99649:161', 'editIndentStart2' => '99810:161', 'editIndentStart3' => '99971:187', 'editIndentString' => '100158:415', 'editIndentString2spaces' => '100573:162', 'editIndentString4spaces' => '100735:169', 'editIndentStringTab' => '100904:147', 'editNlMode' => '101051:350', 'editNlModeLinux' => '101401:127', 'editNlModeWindows' => '101528:133', 'editScriptAccessibility' => '101661:329', 'editSubmit' => '101990:214', ), 'adminSystem_hosting' => array ( 'content' => '102204:233', 'edit' => '102437:501', ), 'adminSystem_log' => array ( 'content' => '102938:250', 'edit' => '103188:281', 'editLogClear' => '103469:225', 'editLogView' => '103694:186', ), 'adminSystem_pack' => array ( 'alertFinished' => '103880:317', 'content' => '104197:634', 'edit' => '104831:172', 'editClearServer' => '105003:287', 'editExportFilename' => '105290:371', 'editPackMediaFiles' => '105661:323', 'editSubmit' => '105984:206', ), 'adminSystem_server' => array ( 'content' => '106190:225', 'edit' => '106415:205', ), 'adminSystem_setup' => array ( 'content' => '106620:286', 'edit' => '106906:361', ), 'adminSystem_update' => array ( 'content' => '107267:237', 'edit' => '107504:215', 'editCheckNow' => '107719:213', 'editUpdateNow' => '107932:205', 'viewCurrentRelease' => '108137:197', 'viewCurrentVersion' => '108334:208', 'viewLastVerification' => '108542:218', 'viewNewVersionAvailable' => '108760:229', 'viewReleaseNotes' => '108989:133', 'viewSystemUpdated' => '109122:297', ), 'adminUsers' => array ( 'adminProfile' => '109419:118', 'adminProfileButtom' => '109537:229', 'adminProfileMsg' => '109766:881', 'alertPasswordInvalidCharacter' => '110647:680', 'alertPasswordRepeatError' => '111327:384', 'alertPasswordRequired' => '111711:364', 'alertUserAlreadyExists' => '112075:429', 'alertUserInvalidName' => '112504:657', 'alertUserNameRequired' => '113161:658', 'content' => '113819:223', 'contentDisabled' => '114042:443', 'contentEmpty' => '114485:178', 'createFolder' => '114663:158', 'createFolderButtom' => '114821:204', 'createFolderMsg' => '115025:537', 'editAddress' => '115562:249', 'editBornDate' => '115811:276', 'editCaption' => '116087:302', 'editCPF' => '116389:218', 'editDescription' => '116607:292', 'editGender' => '116899:370', 'editGenderFemale' => '117269:157', 'editGenderMale' => '117426:156', 'editGenderUndefined' => '117582:184', 'editMail' => '117766:225', 'editName' => '117991:283', 'editPassword' => '118274:224', 'editPassword2' => '118498:171', 'editPhone' => '118669:231', 'editTitle' => '118900:255', ), 'adminUsers_add' => array ( 'content' => '119155:249', 'edit' => '119404:359', ), 'adminUsers_details' => array ( 'content' => '119763:263', 'edit' => '120026:401', 'editComments' => '120427:270', 'editName' => '120697:173', 'editPassword' => '120870:205', 'editPasswordDescription' => '121075:319', 'removeConfirmErrorF' => '121394:428', 'removeConfirmErrorM' => '121822:428', 'removeConfirmF' => '122250:1028', 'removeConfirmM' => '123278:1023', 'removeConfirmOkF' => '124301:250', 'removeConfirmOkM' => '124551:250', 'removeF' => '124801:139', 'removeM' => '124940:139', ), 'domain_disabled' => array ( 'content' => '125079:920', ), 'domain_empty' => array ( 'content' => '125999:1149', 'edit' => '127148:647', 'editCaption' => '127795:356', 'editContent' => '128151:418', 'editDescription' => '128569:338', 'editKeywords' => '128907:224', 'editKeywordsPack' => '129131:102', 'editTitle' => '129233:813', 'templateForNewDomain' => '130046:265', ), 'domainCreate' => array ( 'content' => '130311:1225', 'contentCreate' => '131536:333', 'edit' => '131869:248', 'editCaption' => '132117:546', 'editDescription' => '132663:511', 'editTitle' => '133174:464', ), 'domainDefault' => array ( 'content' => '133638:628', 'custom' => '134266:291', 'edit' => '134557:664', 'editCaption' => '135221:334', 'editContent' => '135555:354', 'editRecognizeEcolabore' => '135909:275', 'editRecognizeHTML' => '136184:237', 'editRecognizeParagraphs' => '136421:267', 'editTitle' => '136688:266', 'editUpdated' => '136954:167', 'helpAbout' => '137121:503', 'helpTip' => '137624:624', 'restore' => '138248:303', ), 'domainGlossary' => array ( 'content' => '138551:532', 'helpAbout' => '139083:550', ), 'domainGlossary_keyword' => array ( 'content' => '139633:707', 'edit' => '140340:448', 'editCaption' => '140788:148', 'editContent' => '140936:351', 'editKeywordsPack' => '141287:52', 'editTitle' => '141339:266', 'editUpdated' => '141605:167', 'helpAbout' => '141772:895', 'remove' => '142667:140', 'removeConfirm' => '142807:560', ), 'domainIcons' => array ( 'layout' => '143367:367', ), 'domainIndex' => array ( 'contentEdit' => '143734:197', 'edit' => '143931:616', 'editCaption' => '144547:356', 'editContent' => '144903:418', 'editDescription' => '145321:338', 'editKeywords' => '145659:180', 'editKeywordsPack' => '145839:102', 'editList' => '145941:280', 'editListRecents' => '146221:284', 'editListSections' => '146505:295', 'editTitle' => '146800:813', 'editUpdated' => '147613:167', 'helpAbout' => '147780:637', 'helpNavigate' => '148417:391', 'helpTip' => '148808:662', 'mainSections' => '149470:640', ), 'domainInfo' => array ( 'content' => '150110:1010', 'list' => '151120:134', 'view' => '151254:264', 'viewAddress' => '151518:229', 'viewCaption' => '151747:203', 'viewDescription' => '151950:203', 'viewMail' => '152153:240', 'viewPhone' => '152393:223', 'viewTitle' => '152616:198', ), 'domainRecents' => array ( 'content' => '152814:145', 'helpAbout' => '152959:371', 'helpTip' => '153330:442', 'link' => '153772:290', ), 'domainRecents_rss' => array ( 'layout' => '154062:682', ), 'domainSearch' => array ( 'content' => '154744:227', 'help' => '154971:767', 'msgNoResults' => '155738:207', 'search' => '155945:134', 'searchInput' => '156079:260', 'searchSubmit' => '156339:190', 'searchTagOnly' => '156529:260', ), 'domainSitemap' => array ( 'layout' => '156789:272', ), 'domainStyles' => array ( 'preset' => '157061:8668', ), 'financial' => array ( 'content' => '165729:401', ), 'financialAccount' => array ( 'contentEdit' => '166130:180', 'edit' => '166310:473', 'editCaption' => '166783:396', 'editCaptionRequired' => '167179:443', 'editContent' => '167622:363', 'editDescription' => '167985:201', 'editName' => '168186:198', 'editTitle' => '168384:190', 'moveDown' => '168574:129', 'moveUp' => '168703:126', 'remove' => '168829:140', 'removeConfirm' => '168969:642', 'specialFieldsOnEdit' => '169611:115', ), 'financialAccount_create' => array ( 'content' => '169726:256', 'contextNew' => '169982:126', 'edit' => '170108:520', 'editCaptionHidden' => '170628:117', 'editDescription' => '170745:201', 'editNameHidden' => '170946:142', 'editTitle' => '171088:190', 'specialFieldsAfterCreate' => '171278:142', 'specialFieldsOnCreate' => '171420:117', ), 'financialAccountBank' => array ( 'editPayCardMachine' => '171537:351', 'editPayDeposit' => '171888:359', 'editPaySlip' => '172247:467', 'helpAbout' => '172714:777', 'specialFieldsOnCreate' => '173491:109', 'specialFieldsOnEdit' => '173600:109', ), 'financialAccountBank_create' => array ( 'content' => '173709:440', 'contentPreset' => '174149:148', ), 'financialAccountBank_deposit' => array ( 'content' => '174297:331', ), 'financialAccountCash' => array ( 'editPayCash' => '174628:328', 'helpAbout' => '174956:790', 'specialFieldsOnCreate' => '175746:51', 'specialFieldsOnEdit' => '175797:51', ), 'financialAccountCash_cash' => array ( 'content' => '175848:276', ), 'financialAccountCash_create' => array ( 'content' => '176124:473', 'contentPreset' => '176597:151', ), 'financialCharges' => array ( 'content' => '176748:369', 'edit' => '177117:288', 'list' => '177405:138', 'listDescription' => '177543:124', 'listDue' => '177667:117', 'listOwner' => '177784:116', ), 'financialIncoming' => array ( 'edit' => '177900:417', 'editCaptionHidden' => '178317:359', 'editTitle' => '178676:190', 'list' => '178866:123', 'preset' => '178989:211', ), 'financialOutgoing' => array ( 'edit' => '179200:417', 'editCaptionHidden' => '179617:359', 'editTitle' => '179976:190', 'list' => '180166:123', 'preset' => '180289:211', ), 'financialProjects' => array ( 'edit' => '180500:417', 'editCaptionHidden' => '180917:359', 'editTitle' => '181276:190', 'list' => '181466:127', 'preset' => '181593:213', ), 'financialResources' => array ( 'edit' => '181806:419', 'editCaptionHidden' => '182225:359', 'editTitle' => '182584:190', 'list' => '182774:125', 'preset' => '182899:215', ), 'home' => array ( 'contentEdit' => '183114:173', 'edit' => '183287:528', 'editAccess' => '183815:448', 'editAccessAdmin' => '184263:193', 'editAccessAll' => '184456:157', 'editAccessMember' => '184613:204', 'editAccessSubscribed' => '184817:187', 'editCaption' => '185004:396', 'editCaptionRequired' => '185400:443', 'editContent' => '185843:363', 'editDescription' => '186206:201', 'editGroup' => '186407:209', 'editGroupNone' => '186616:125', 'editImg' => '186741:210', 'editKeywords' => '186951:180', 'editKeywordsPack' => '187131:52', 'editName' => '187183:197', 'editTitle' => '187380:190', 'editUpdated' => '187570:167', 'moveDown' => '187737:135', 'moveTo' => '187872:330', 'moveToFooter' => '188202:130', 'moveToList' => '188332:236', 'moveToMain' => '188568:127', 'moveUp' => '188695:134', 'remove' => '188829:140', 'removeConfirm' => '188969:617', 'specialFieldsOnEdit' => '189586:103', ), 'home_create' => array ( 'content' => '189689:242', 'contextNew' => '189931:118', 'edit' => '190049:527', 'editCaptionHidden' => '190576:117', 'editDescription' => '190693:201', 'editKeywordsPack' => '190894:52', 'editNameHidden' => '190946:142', 'editTitle' => '191088:190', 'helpNavigate' => '191278:852', 'specialFieldsAfterCreate' => '192130:130', 'specialFieldsOnCreate' => '192260:105', ), 'homeChat' => array ( 'specialFieldsOnCreate' => '192365:27', 'specialFieldsOnEdit' => '192392:27', ), 'homeChat_create' => array ( 'content' => '192419:380', 'contentPreset' => '192799:286', ), 'homeChat_group' => array ( 'contextRemove' => '193085:164', ), 'homeChat_user' => array ( 'contextClear' => '193249:130', 'contextRemove' => '193379:164', 'form' => '193543:101', 'formComment' => '193644:353', ), 'homePublications' => array ( 'specialFieldsOnCreate' => '193997:55', 'specialFieldsOnEdit' => '194052:55', ), 'homePublications_create' => array ( 'content' => '194107:414', 'contentPreset' => '194521:319', ), 'integration' => array ( 'content' => '194840:345', ), 'integrationGoogleWebmasters' => array ( 'content' => '195185:313', 'create' => '195498:100', 'createFile' => '195598:235', 'view' => '195833:130', 'viewFileContent' => '195963:225', 'viewFileName' => '196188:243', ), 'integrationRSS' => array ( 'content' => '196431:250', 'edit' => '196681:126', 'editRssEnable' => '196807:344', 'editRssMax' => '197151:356', ), 'integrationSMS' => array ( 'content' => '197507:237', 'contentDisabled' => '197744:181', 'contentEnabled' => '197925:178', ), 'integrationSMS_config' => array ( 'content' => '198103:294', 'edit' => '198397:145', 'editPass' => '198542:332', 'editServiceEnable' => '198874:1050', 'editUser' => '199924:330', ), 'integrationSMS_test' => array ( 'content' => '200254:252', 'edit' => '200506:145', 'editPass' => '200651:332', 'editServiceEnable' => '200983:1050', 'editUser' => '202033:330', ), 'integrationSMTP' => array ( 'content' => '202363:253', ), 'integrationSMTP_config' => array ( 'alertDisabled' => '202616:617', 'alertLoginError' => '203233:564', 'alertSendingError' => '203797:362', 'alertSocketError' => '204159:539', 'alertToError' => '204698:375', 'content' => '205073:296', 'edit' => '205369:307', 'integrationSmtpEnable' => '205676:895', 'integrationSmtpFrom' => '206571:324', 'integrationSmtpHost' => '206895:323', 'integrationSmtpPassword' => '207218:332', 'integrationSmtpPort' => '207550:320', 'integrationSmtpTTL' => '207870:352', 'integrationSmtpUser' => '208222:322', ), 'integrationSMTP_test' => array ( 'content' => '208544:252', 'edit' => '208796:196', 'editBcc' => '208992:258', 'editCc' => '209250:258', 'editHtml' => '209508:270', 'editSubject' => '209778:256', 'editText' => '210034:277', 'editTo' => '210311:238', 'view' => '210549:94', 'viewLog' => '210643:258', ), 'modAudio' => array ( 'edit' => '210901:349', 'editAudio' => '211250:207', 'editDescription' => '211457:273', 'tabAudio' => '211730:231', 'tabCaption' => '211961:312', 'tabStyle' => '212273:344', ), 'modBanner' => array ( 'create' => '212617:731', 'edit' => '213348:375', ), 'modBox' => array ( 'content' => '213723:279', 'create' => '214002:682', 'edit' => '214684:319', 'editContent' => '215003:332', 'tabCaption' => '215335:268', 'tabContent' => '215603:235', ), 'modBreadcrumbs' => array ( 'edit' => '215838:452', ), 'modCard' => array ( 'edit' => '216290:227', ), 'modCart' => array ( 'edit' => '216517:373', ), 'modCart_scope' => array ( 'module' => '216890:323', ), 'modComments' => array ( 'edit' => '217213:453', ), 'modComments_add' => array ( 'edit' => '217666:379', 'form' => '218045:101', 'formAnonimous' => '218146:164', 'formComment' => '218310:353', ), 'modContent' => array ( 'edit' => '218663:379', 'post' => '219042:247', ), 'modContext' => array ( 'goChat' => '219289:189', 'goHelp' => '219478:181', 'help' => '219659:129', 'module' => '219788:126', ), 'modDinamic' => array ( 'content' => '219914:469', 'create' => '220383:708', 'edit' => '221091:468', 'listDirection' => '221559:324', 'listDirectionAsc' => '221883:163', 'listDirectionDesc' => '222046:167', 'listFilter' => '222213:369', 'listFilterNextEvents' => '222582:181', 'listFilterNone' => '222763:166', 'listFilterSpotlight' => '222929:182', 'listMax' => '223111:283', 'listOffset' => '223394:536', 'listUpdate' => '223930:425', 'listUpdateAuto' => '224355:164', 'listUpdateDay' => '224519:166', 'listUpdateHits' => '224685:172', 'listUpdateHour' => '224857:169', 'listUpdateMonth' => '225026:170', 'listUpdateWeek' => '225196:172', 'sort' => '225368:487', 'sortByCreated' => '225855:177', 'sortByEventStart' => '226032:184', 'sortByHits' => '226216:182', 'sortByIndex' => '226398:172', 'sortByLastComment' => '226570:191', 'sortByName' => '226761:152', 'sortByUpdated' => '226913:181', 'sortByValue' => '227094:157', 'sortShuffled' => '227251:164', 'tabSort' => '227415:318', ), 'modEditor' => array ( 'contextWisiwygDisable' => '227733:152', 'contextWisiwygEnable' => '227885:148', 'module' => '228033:1157', ), 'modEditor_document' => array ( 'module' => '229190:423', 'save' => '229613:142', ), 'modEditor_insert' => array ( 'editor' => '229755:1150', 'editorA' => '230905:223', 'editorAudio' => '231128:188', 'editorBox' => '231316:208', 'editorFile' => '231524:191', 'editorH1' => '231715:238', 'editorH2' => '231953:238', 'editorH3' => '232191:238', 'editorH4' => '232429:238', 'editorH5' => '232667:238', 'editorH6' => '232905:238', 'editorHR' => '233143:233', 'editorHtml' => '233376:198', 'editorImg' => '233574:187', 'editorLA' => '233761:249', 'editorLO' => '234010:246', 'editorLU' => '234256:251', 'editorP' => '234507:238', 'editorTable' => '234745:188', 'editorVideo' => '234933:188', 'module' => '235121:787', ), 'modEditor_objects' => array ( 'audio' => '235908:121', 'box' => '236029:134', 'file' => '236163:122', 'html' => '236285:140', 'img' => '236425:122', 'module' => '236547:146', 'ofBanner' => '236693:144', 'ofPage' => '236837:127', 'ofPost' => '236964:125', 'ofSection' => '237089:130', 'table' => '237219:122', 'video' => '237341:121', ), 'modFile' => array ( 'content' => '237462:338', 'create' => '237800:599', 'edit' => '238399:349', 'editDescription' => '238748:273', 'editFile' => '239021:202', 'module' => '239223:180', 'tabCaption' => '239403:312', 'tabFile' => '239715:230', 'tabStyle' => '239945:344', 'uploadFile' => '240289:203', ), 'modFooter' => array ( 'create' => '240492:528', 'edit' => '241020:355', 'editContent' => '241375:332', 'tabContent' => '241707:235', ), 'modFormulary' => array ( 'edit' => '241942:362', ), 'modFormulary_view' => array ( 'edit' => '242304:369', ), 'modGrid' => array ( 'edit' => '242673:323', ), 'modHits' => array ( 'edit' => '242996:413', ), 'modHtml' => array ( 'content' => '243409:316', 'create' => '243725:641', 'edit' => '244366:308', 'editHtml' => '244674:239', 'tabCaption' => '244913:312', 'tabHtml' => '245225:199', ), 'modHumperstilshen' => array ( 'iconAlert' => '245424:193', 'iconCrash' => '245617:179', 'iconDefault' => '245796:154', 'iconError' => '245950:203', 'iconHappy' => '246153:183', 'iconQuestion' => '246336:189', 'iconTip' => '246525:178', 'iconWelcome' => '246703:189', 'iconWhait' => '246892:182', 'sessionCheck' => '247074:660', 'sessionCheckSubmit' => '247734:134', 'sessionCheckSubmitConfirm' => '247868:282', 'showAlert' => '248150:164', 'showTip' => '248314:156', 'submitCancel' => '248470:206', 'submitConfirm' => '248676:122', 'submitConfirmCancel' => '248798:122', ), 'modImg' => array ( 'content' => '248920:312', 'create' => '249232:642', 'edit' => '249874:348', 'editDescription' => '250222:273', 'editImg' => '250495:277', 'imgFilterBrightness' => '250772:398', 'imgFilterContrast' => '251170:394', 'imgFilterHueRotate' => '251564:394', 'imgFilterSaturate' => '251958:394', 'tabCaption' => '252352:312', 'tabFilters' => '252664:308', 'tabImg' => '252972:229', 'tabStyle' => '253201:344', ), 'modInstructor' => array ( 'module' => '253545:2153', ), 'modInstructor_quality' => array ( 'helpNavigate' => '255698:308', 'helpRedirect' => '256006:409', 'index' => '256415:391', ), 'modInterface' => array ( 'module' => '256806:129', ), 'modLanguages' => array ( 'edit' => '256935:449', ), 'modLayout' => array ( 'personaliteOff' => '257384:140', 'personaliteOn' => '257524:152', 'print' => '257676:150', ), 'modList' => array ( 'content' => '257826:160', 'edit' => '257986:476', 'listDirection' => '258462:324', 'listDirectionAsc' => '258786:163', 'listDirectionDesc' => '258949:167', 'listMax' => '259116:295', 'sort' => '259411:462', 'sortByCreated' => '259873:177', 'sortByEventStart' => '260050:184', 'sortByHits' => '260234:182', 'sortByIndex' => '260416:172', 'sortByLastComment' => '260588:191', 'sortByName' => '260779:152', 'sortByUpdated' => '260931:181', 'sortByValue' => '261112:157', 'tabSort' => '261269:248', ), 'modLogin' => array ( 'alertCookiesRequired' => '261517:375', 'alertInvalidLogin' => '261892:417', 'anonimous' => '262309:119', 'login' => '262428:179', 'loginName' => '262607:132', 'loginPassword' => '262739:137', 'loginSubmit' => '262876:229', ), 'modNavbar' => array ( 'edit' => '263105:475', 'specialHomeDisplay' => '263580:331', 'tabSpecial' => '263911:217', ), 'modNavbottom' => array ( 'edit' => '264128:445', ), 'modNavmain' => array ( 'edit' => '264573:443', ), 'modPages' => array ( 'edit' => '265016:452', ), 'modSearch' => array ( 'edit' => '265468:327', 'search' => '265795:132', ), 'modSort' => array ( 'edit' => '265927:358', ), 'modTable' => array ( 'content' => '266285:5016', 'edit' => '271301:333', 'list' => '271634:308', 'module' => '271942:55', 'moduleCreate' => '271997:741', 'tabApearance' => '272738:205', 'tabCaption' => '272943:318', 'tabContent' => '273261:219', ), 'modTable_new' => array ( 'content' => '273480:351', 'edit' => '273831:142', 'editCols' => '273973:264', 'editList' => '274237:308', 'editRows' => '274545:263', ), 'modTitle' => array ( 'edit' => '274808:334', ), 'modToolbox' => array ( 'module' => '275142:130', ), 'modUser' => array ( 'goAdmin' => '275272:205', 'goLogout' => '275477:134', 'goMain' => '275611:190', 'module' => '275801:158', ), 'modUser_alerts' => array ( 'module' => '275959:123', ), 'modUser_quoteoftheday' => array ( 'module' => '276082:391', 'quotes' => '276473:45066', ), 'modUser_subscribe' => array ( 'module' => '321539:419', ), 'modUser_tools' => array ( 'goPassword' => '321958:135', 'goPersonal' => '322093:132', 'module' => '322225:125', ), 'modUser_welcome' => array ( 'goEcolabore' => '322350:187', 'goHome' => '322537:161', 'goInfo' => '322698:151', 'goOrganization' => '322849:193', 'goPassword' => '323042:161', 'goPrivacyPolicy' => '323203:158', 'goProfiles' => '323361:132', 'goReport' => '323493:147', 'goServiceTerms' => '323640:151', 'goSubscribe' => '323791:140', 'module' => '323931:131', ), 'modVideo' => array ( 'content' => '324062:337', 'create' => '324399:738', 'edit' => '325137:349', 'editDescription' => '325486:273', 'editVideo' => '325759:207', 'tabCaption' => '325966:312', 'tabStyle' => '326278:344', 'tabVideo' => '326622:231', 'upload' => '326853:419', 'uploadVideo' => '327272:243', ), 'personalite' => array ( 'content' => '327515:432', ), 'personaliteApearance' => array ( 'content' => '327947:527', 'fieldsColor' => '328474:2111', 'fieldsFont' => '330585:3774', 'fieldsSelect' => '334359:886', 'layout' => '335245:5894', ), 'personaliteApearance_color' => array ( 'content' => '341139:46532', ), 'personaliteApearance_font' => array ( 'layout' => '387671:6066', ), 'personaliteApearance_scheme' => array ( '000defaultPadding' => '393737:183', '000defaultRounding' => '393920:179', '000noPadding' => '394099:176', '000noRounding' => '394275:172', '010' => '394447:118', '020' => '394565:118', '030' => '394683:118', '040' => '394801:118', '050' => '394919:118', '060' => '395037:118', '080' => '395155:118', 100 => '395273:114', 125 => '395387:120', 150 => '395507:118', 175 => '395625:120', 200 => '395745:114', 'activeBackgroundColor' => '395859:389', 'activeTextColor' => '396248:354', 'buttonBackgroundColor' => '396602:392', 'buttonBorderRadius' => '396994:623', 'buttonTextColor' => '397617:357', 'cardActiveColor' => '397974:356', 'cardBackgroundColor' => '398330:369', 'cardBorderColor' => '398699:350', 'cardBorderRadius' => '399049:681', 'cardCaptionColor' => '399730:349', 'cardHeaderColor' => '400079:344', 'cardLinkColor' => '400423:334', 'cardMarkColor' => '400757:350', 'cardPadding' => '401107:651', 'cardTextColor' => '401758:333', 'defaultBorderRadius' => '402091:577', 'defaultPadding' => '402668:575', 'documentActiveColor' => '403243:368', 'documentBackgroundColor' => '403611:381', 'documentBorderColor' => '403992:362', 'documentCaptionColor' => '404354:361', 'documentHeaderColor' => '404715:356', 'documentLinkColor' => '405071:346', 'documentMarkColor' => '405417:362', 'documentTextColor' => '405779:345', 'edit' => '406124:256', 'focusBackgroundColor' => '406380:387', 'focusTextColor' => '406767:352', 'fontBar' => '407119:386', 'fontBlockquote' => '407505:385', 'fontBlockquoteExample' => '407890:373', 'fontButton' => '408263:383', 'fontCaption' => '408646:407', 'fontFootnote' => '409053:369', 'fontFootnoteExample' => '409422:281', 'fontHeader' => '409703:356', 'fontInput' => '410059:404', 'fontLabel' => '410463:410', 'fontLegend' => '410873:404', 'fontLink' => '411277:318', 'fontMonospace' => '411595:434', 'fontMonospaceExample' => '412029:369', 'fontText' => '412398:345', 'formularyActiveColor' => '412743:371', 'formularyBackgroundColor' => '413114:384', 'formularyBorderColor' => '413498:365', 'formularyBorderRadius' => '413863:696', 'formularyCaptionColor' => '414559:364', 'formularyHeaderColor' => '414923:359', 'formularyLinkColor' => '415282:349', 'formularyMarkColor' => '415631:365', 'formularyPadding' => '415996:666', 'formularyTextColor' => '416662:348', 'inputBackgroundColor' => '417010:390', 'inputBorderRadius' => '417400:620', 'inputTextColor' => '418020:355', 'navActiveColor' => '418375:353', 'navBackgroundColor' => '418728:366', 'navBorderColor' => '419094:347', 'navBorderRadius' => '419441:678', 'navCaptionColor' => '420119:346', 'navHeaderColor' => '420465:341', 'navLinkColor' => '420806:331', 'navMarkColor' => '421137:347', 'navPadding' => '421484:648', 'navTextColor' => '422132:330', 'panelActiveColor' => '422462:359', 'panelBackgroundColor' => '422821:372', 'panelBorderColor' => '423193:353', 'panelBorderRadius' => '423546:684', 'panelCaptionColor' => '424230:352', 'panelHeaderColor' => '424582:347', 'panelLinkColor' => '424929:337', 'panelMarkColor' => '425266:353', 'panelPadding' => '425619:654', 'panelTextColor' => '426273:336', 'spotlightActiveColor' => '426609:371', 'spotlightBackgroundColor' => '426980:384', 'spotlightBorderColor' => '427364:365', 'spotlightBorderRadius' => '427729:696', 'spotlightCaptionColor' => '428425:364', 'spotlightHeaderColor' => '428789:359', 'spotlightLinkColor' => '429148:349', 'spotlightMarkColor' => '429497:365', 'spotlightPadding' => '429862:666', 'spotlightTextColor' => '430528:348', 'systemActiveColor' => '430876:362', 'systemBackgroundColor' => '431238:375', 'systemBorderColor' => '431613:356', 'systemBorderRadius' => '431969:687', 'systemCaptionColor' => '432656:355', 'systemHeaderColor' => '433011:350', 'systemLinkColor' => '433361:340', 'systemMarkColor' => '433701:356', 'systemPadding' => '434057:657', 'systemTextColor' => '434714:339', 'tabButton' => '435053:719', 'tabCard' => '435772:958', 'tabDocument' => '436730:1025', 'tabFonts' => '437755:1251', 'tabFormulary' => '439006:1043', 'tabNav' => '440049:944', 'tabPanel' => '440993:963', 'tabSpotlight' => '441956:1076', 'tabSystem' => '443032:1111', ), 'personaliteDetails' => array ( 'main' => '444143:315', ), 'personaliteDetails_configure' => array ( 'edit' => '444458:464', 'editCaption' => '444922:265', 'editDescription' => '445187:254', 'editHTML' => '445441:256', 'editName' => '445697:259', 'tabCaption' => '445956:272', 'tabHTML' => '446228:199', ), 'personaliteExport' => array ( 'content' => '446427:434', 'edit' => '446861:159', 'editComponentsList' => '447020:185', 'editContent' => '447205:331', 'editName' => '447536:291', ), 'personaliteExtras' => array ( 'edit' => '447827:316', ), 'personaliteExtras_upload' => array ( 'audio' => '448143:511', 'audioAjaxSend' => '448654:269', 'fieldEnd' => '448923:144', 'fieldFileBig' => '449067:1574', 'fieldStart' => '450641:190', 'file' => '450831:512', 'fileAjaxSend' => '451343:259', 'layout' => '451602:253', 'video' => '451855:511', 'videoAjaxSend' => '452366:269', ), 'personaliteFields' => array ( 'add' => '452635:98', 'alertShareUserDataRequest' => '452733:583', 'close' => '453316:612', 'content' => '453928:541', 'editCaption' => '454469:262', 'editRequired' => '454731:259', 'editType' => '454990:131', 'load' => '455121:711', 'module' => '455832:254', ), 'personaliteFields_address' => array ( 'content' => '456086:211', 'edit' => '456297:238', 'editType' => '456535:137', 'editUseUserAddress' => '456672:345', 'preset' => '457017:128', ), 'personaliteFields_checkbox' => array ( 'content' => '457145:239', 'edit' => '457384:165', 'editType' => '457549:138', 'preset' => '457687:34', 'valueNo' => '457721:108', 'valueYes' => '457829:109', ), 'personaliteFields_created' => array ( 'content' => '457938:235', 'edit' => '458173:145', 'preset' => '458318:137', 'value' => '458455:145', ), 'personaliteFields_descriptive' => array ( 'content' => '458600:249', 'edit' => '458849:228', 'editContent' => '459077:319', 'editDisplayWhenEditingOnly' => '459396:323', 'editType' => '459719:142', 'preset' => '459861:38', ), 'personaliteFields_mail' => array ( 'alertInvalidMail' => '459899:588', 'alertMultipleNotAllowed' => '460487:476', 'content' => '460963:245', 'edit' => '461208:235', 'editType' => '461443:134', 'editUseUserMail' => '461577:336', 'preset' => '461913:112', ), 'personaliteFields_phone' => array ( 'alertInvalidAreaCode' => '462025:625', 'alertInvalidCountryCode' => '462650:673', 'alertInvalidNumber' => '463323:655', 'content' => '463978:207', 'edit' => '464185:236', 'editType' => '464421:135', 'editUseUserPhone' => '464556:341', 'preset' => '464897:124', ), 'personaliteFields_radio' => array ( 'content' => '465021:241', 'edit' => '465262:277', 'editType' => '465539:135', 'preset' => '465674:54', ), 'personaliteFields_select' => array ( 'content' => '465728:237', 'edit' => '465965:234', 'editExplain' => '466199:203', 'editFields' => '466402:111', 'editType' => '466513:136', 'preset' => '466649:56', ), 'personaliteFields_separator' => array ( 'content' => '466705:217', 'edit' => '466922:165', 'editType' => '467087:139', 'preset' => '467226:109', ), 'personaliteFields_status' => array ( 'content' => '467335:205', 'edit' => '467540:145', 'preset' => '467685:138', ), 'personaliteFields_text' => array ( 'content' => '467823:227', 'edit' => '468050:207', 'editType' => '468257:134', 'preset' => '468391:30', ), 'personaliteFields_textarea' => array ( 'content' => '468421:273', 'edit' => '468694:207', 'editType' => '468901:138', 'preset' => '469039:83', ), 'personaliteInstall' => array ( 'checkboxComponents' => '469122:118', 'checkboxSections' => '469240:117', 'content' => '469357:436', 'edit' => '469793:106', 'editFiles' => '469899:188', 'select' => '470087:113', 'selectComponents' => '470200:228', ), 'personaliteModules' => array ( '000auto' => '470428:160', '000noPadding' => '470588:170', '012rem' => '470758:159', '025rem' => '470917:170', '050rem' => '471087:166', '075rem' => '471253:170', '083rem' => '471423:170', '091rem' => '471593:170', '100rem' => '471763:157', '110rem' => '471920:163', '125rem' => '472083:167', '150rem' => '472250:163', '200rem' => '472413:159', '250rem' => '472572:166', '300rem' => '472738:159', 'alignBottom' => '472897:160', 'alignCenter' => '473057:165', 'alignLeft' => '473222:155', 'alignRight' => '473377:159', 'alignTop' => '473536:151', 'boxBorderRadius' => '473687:559', 'boxBorderRadiusElipse' => '474246:155', 'boxBorderRadiusOff' => '474401:184', 'boxDisplay' => '474585:347', 'boxFontSize' => '474932:532', 'boxPadding' => '475464:559', 'boxScheme' => '476023:528', 'boxSchemeAuto' => '476551:165', 'boxSchemeCard' => '476716:154', 'boxSchemeFormulary' => '476870:169', 'boxSchemeNav' => '477039:177', 'boxSchemePanel' => '477216:156', 'boxSchemeSpotlight' => '477372:166', 'boxSchemeSystem' => '477538:159', 'boxShadow' => '477697:433', 'boxShadowAuto' => '478130:165', 'boxShadowOff' => '478295:181', 'boxShadowOn' => '478476:183', 'boxShadowSmoke' => '478659:176', 'caption' => '478835:246', 'captionDisplay' => '479081:305', 'captionLegend' => '479386:318', 'contentNotConfigurable' => '479704:465', 'details' => '480169:207', 'detailsHorizontalAlign' => '480376:470', 'detailsVerticalAlign' => '480846:461', 'edit' => '481307:501', 'formularyLayout' => '481808:457', 'formularyLayoutBox' => '482265:151', 'formularyLayoutGrid' => '482416:153', 'formularyLayoutInline' => '482569:160', 'formularyLayoutStack' => '482729:155', 'imgFilterGrayscale' => '482884:390', 'imgFilterSepia' => '483274:364', 'imgShape' => '483638:456', 'imgShapeAuto' => '484094:191', 'imgShapeCircle' => '484285:159', 'imgShapeElipse' => '484444:158', 'imgShapeSquare' => '484602:160', 'imgShapeThumbnail' => '484762:159', 'imgSmoke' => '484921:322', 'listAlign' => '485243:403', 'listColumns1' => '485646:108', 'listColumns2' => '485754:108', 'listColumns3' => '485862:108', 'listColumns4' => '485970:108', 'listColumns5' => '486078:108', 'listColumns6' => '486186:108', 'listColumnsAuto' => '486294:165', 'listColumnsExtraLarge' => '486459:518', 'listColumnsLarge' => '486977:522', 'listColumnsMedium' => '487499:521', 'listColumnsSmall' => '488020:521', 'listGap000' => '488541:171', 'listGap012' => '488712:125', 'listGap025' => '488837:124', 'listGap037' => '488961:125', 'listGap050' => '489086:123', 'listGap075' => '489209:125', 'listGap100' => '489334:122', 'listGap125' => '489456:116', 'listGap150' => '489572:115', 'listGap200' => '489687:122', 'listGapColumn' => '489809:617', 'listGapRow' => '490426:620', 'listLayout' => '491046:455', 'listLayoutColumns' => '491501:161', 'listLayoutFlex' => '491662:152', 'listLayoutGrid' => '491814:149', 'listLayoutInline' => '491963:161', 'modPadding0' => '492124:161', 'modPaddingAuto' => '492285:169', 'modPaddingBottom' => '492454:565', 'modPaddingLeft' => '493019:559', 'modPaddingRight' => '493578:561', 'modPaddingTop' => '494139:556', 'modPosition' => '494695:511', 'modPositionCenter' => '495206:165', 'modPositionFloatLeft' => '495371:181', 'modPositionFloatRight' => '495552:182', 'modPositionInline' => '495734:170', 'modPositionLeft' => '495904:155', 'modPositionRight' => '496059:159', 'modSemantic' => '496218:549', 'modSemanticAddress' => '496767:181', 'modSemanticArticle' => '496948:179', 'modSemanticAside' => '497127:179', 'modSemanticFooter' => '497306:158', 'modSemanticHeader' => '497464:161', 'modSemanticNav' => '497625:163', 'modSemanticNone' => '497788:147', 'modWidth1' => '497935:119', 'modWidth10' => '498054:121', 'modWidth11' => '498175:121', 'modWidth12' => '498296:129', 'modWidth2' => '498425:119', 'modWidth3' => '498544:126', 'modWidth4' => '498670:119', 'modWidth5' => '498789:119', 'modWidth6' => '498908:126', 'modWidth7' => '499034:119', 'modWidth8' => '499153:119', 'modWidth9' => '499272:119', 'modWidthAuto' => '499391:165', 'modWidthExtraLarge' => '499556:646', 'modWidthHidden' => '500202:159', 'modWidthLarge' => '500361:656', 'modWidthMedium' => '501017:654', 'modWidthSmall' => '501671:655', 'tabCaption' => '502326:278', 'tabDetails' => '502604:205', 'tabEffects' => '502809:283', 'tabFormulary' => '503092:219', 'tabList' => '503311:465', 'tabPosition' => '503776:438', 'tabStyle' => '504214:301', ), 'personaliteTemplate' => array ( 'content' => '504515:480', 'edit' => '504995:472', 'manageDetails' => '505467:235', 'manageFields' => '505702:255', 'manageFonts' => '505957:229', 'manageIcons' => '506186:229', 'manageLabels' => '506415:337', 'manageLabelsAction' => '506752:264', 'manageLabelsDate' => '507016:260', 'manageLabelsField' => '507276:263', 'manageLabelsLang' => '507539:266', 'manageLabelsNavigation' => '507805:275', 'manageLayouts' => '508080:234', 'manageLists' => '508314:229', 'manageModules' => '508543:234', 'managePalettes' => '508777:236', 'manageScripts' => '509013:234', 'manageStyles' => '509247:238', 'manageThemes' => '509485:230', 'tabDetails' => '509715:212', 'tabFields' => '509927:216', 'tabFonts' => '510143:206', 'tabIcons' => '510349:206', 'tabLabels' => '510555:227', 'tabLabelsAction' => '510782:276', 'tabLabelsDate' => '511058:272', 'tabLabelsField' => '511330:275', 'tabLabelsLang' => '511605:278', 'tabLabelsNavigation' => '511883:287', 'tabLayouts' => '512170:211', 'tabLists' => '512381:206', 'tabModules' => '512587:211', 'tabPalettes' => '512798:230', 'tabScripts' => '513028:211', 'tabStyles' => '513239:226', 'tabThemes' => '513465:207', ), 'personaliteTemplate_add' => array ( 'content' => '513672:1396', ), 'personaliteTemplate_configure' => array ( 'details' => '515068:427', 'edit' => '515495:429', 'editCaption' => '515924:265', 'editCSS' => '516189:234', 'editDescription' => '516423:254', 'editFilters' => '516677:223', 'editFiltersDescription' => '516900:302', 'editFlags' => '517202:208', 'editFontFace' => '517410:274', 'editFontStack' => '517684:274', 'editHTML' => '517958:237', 'editName' => '518195:299', 'editScript' => '518494:253', 'editVars' => '518747:206', 'fields' => '518953:420', 'fonts' => '519373:400', 'icons' => '519773:399', 'layouts' => '520172:422', 'lists' => '520594:399', 'modules' => '520993:422', 'palettes' => '521415:404', 'scripts' => '521819:406', 'styles' => '522225:416', 'tabCaption' => '522641:272', 'tabCSS' => '522913:196', 'tabFilters' => '523109:250', 'tabFlags' => '523359:212', 'tabFonts' => '523571:231', 'tabHTML' => '523802:199', 'tabScript' => '524001:206', 'tabVars' => '524207:209', 'templates' => '524416:424', 'themes' => '524840:400', ), 'personaliteTemplate_filters' => array ( 'content' => '525240:322', ), 'personaliteTemplate_labels' => array ( 'edit' => '525562:399', 'editCaption' => '525961:265', 'editName' => '526226:259', 'tabCaption' => '526485:272', ), 'section' => array ( 'contentEdit' => '526757:180', 'edit' => '526937:542', 'editAccess' => '527479:448', 'editAccessAdmin' => '527927:193', 'editAccessAll' => '528120:157', 'editAccessMember' => '528277:204', 'editAccessSubscribed' => '528481:187', 'editCaption' => '528668:396', 'editCaptionRequired' => '529064:443', 'editContent' => '529507:363', 'editDescription' => '529870:201', 'editGroup' => '530071:209', 'editGroupNone' => '530280:125', 'editImg' => '530405:210', 'editKeywords' => '530615:180', 'editKeywordsPack' => '530795:52', 'editName' => '530847:279', 'editTitle' => '531126:190', 'editUpdated' => '531316:167', 'moveDown' => '531483:135', 'moveTo' => '531618:330', 'moveToFooter' => '531948:130', 'moveToList' => '532078:236', 'moveToMain' => '532314:127', 'moveUp' => '532441:134', 'remove' => '532575:140', 'removeConfirm' => '532715:617', 'specialFieldsOnEdit' => '533332:106', ), 'section_create' => array ( 'content' => '533438:256', 'contextNew' => '533694:132', 'contextNewMain' => '533826:141', 'edit' => '533967:527', 'editCaptionHidden' => '534494:117', 'editDescription' => '534611:201', 'editKeywordsPack' => '534812:52', 'editNameHidden' => '534864:142', 'editTitle' => '535006:190', 'helpNavigate' => '535196:852', 'specialFieldsAfterCreate' => '536048:133', 'specialFieldsOnCreate' => '536181:108', ), 'sectionBlog' => array ( 'editComment' => '536289:502', 'editCommentDisabled' => '536791:170', 'helpAbout' => '536961:844', 'helpCreate' => '537805:699', 'helpDone' => '538504:160', 'helpNavigate' => '538664:699', 'reindex' => '539363:390', 'reindexList' => '539753:222', 'sort' => '539975:479', 'sortAlphabetically' => '540454:147', 'sortCheaper' => '540601:131', 'sortEvent' => '540732:137', 'sortExpensive' => '540869:137', 'sortHits' => '541006:138', 'sortPost' => '541144:137', 'sortRatings' => '541281:144', 'sortRecents' => '541425:132', 'specialFieldsOnCreate' => '541557:82', 'specialFieldsOnEdit' => '541639:82', ), 'sectionBlog_create' => array ( 'blog' => '541721:377', 'blogPreset' => '542098:55', 'events' => '542153:412', 'eventsPreset' => '542565:90', 'galery' => '542655:421', 'galeryPreset' => '543076:90', 'news' => '543166:384', 'newsPreset' => '543550:88', 'podcast' => '543638:371', 'podcastPreset' => '544009:91', 'products' => '544100:473', 'productsPreset' => '544573:92', 'videocast' => '544665:408', 'videocastPreset' => '545073:93', ), 'sectionBlog_post' => array ( 'contextNew' => '545166:128', 'edit' => '545294:529', 'editCaption' => '545823:326', 'editCaptionHidden' => '546149:359', 'editContactAddress' => '546508:302', 'editContactMail' => '546810:313', 'editContactPhone' => '547123:240', 'editContactSite' => '547363:250', 'editContent' => '547613:369', 'editDescription' => '547982:323', 'editEventDate' => '548305:253', 'editEventPlace' => '548558:306', 'editImg' => '548864:282', 'editKeywords' => '549146:295', 'editKeywordsPack' => '549441:52', 'editMediaBox' => '549493:395', 'editName' => '549888:152', 'editNameHidden' => '550040:187', 'editProduct' => '550227:257', 'editSpecialFields' => '550484:75', 'editTitle' => '550559:308', 'editTitleRequired' => '550867:427', 'editUpdated' => '551294:167', 'msgRemoveConfirm' => '551461:444', 'new' => '551905:509', 'remove' => '552414:136', 'specialProductAvailable' => '552550:206', 'specialProductOrder' => '552756:190', 'specialProductPrice' => '552946:166', 'specialProductStock' => '553112:175', ), 'sectionCart' => array ( 'alertTimeout' => '553287:559', 'choosePaymentMethod' => '553846:111', 'choosePaymentMethodList' => '553957:81', 'contentPleaseConnect' => '554038:297', 'helpAbout' => '554335:271', 'helpInstructor' => '554606:175', 'listAction' => '554781:121', 'listCode' => '554902:119', 'listDescription' => '555021:129', 'listPrice' => '555150:122', 'listQuantity' => '555272:119', 'listTotal' => '555391:121', 'listValue' => '555512:121', 'specialFieldsOnCreate' => '555633:58', 'specialFieldsOnEdit' => '555691:58', ), 'sectionCart_create' => array ( 'content' => '555749:522', 'contentPreset' => '556271:424', ), 'sectionFolder' => array ( 'helpAbout' => '556695:890', 'specialFieldsOnCreate' => '557585:58', 'specialFieldsOnEdit' => '557643:58', ), 'sectionFolder_create' => array ( 'content' => '557701:408', 'contentPreset' => '558109:248', ), 'sectionFormulary' => array ( 'editMail' => '558357:226', 'fields' => '558583:410', 'fieldsList' => '558993:234', 'formulary' => '559227:110', 'formularyFields' => '559337:68', 'helpAbout' => '559405:566', 'helpInstructor' => '559971:177', 'review' => '560148:358', 'security' => '560506:591', 'securityAccess' => '561097:611', 'securityBasics' => '561708:570', 'securityBasicsEnable' => '562278:269', 'securityContent' => '562547:482', 'securityContentUrlBlock' => '563029:269', 'securityReview' => '563298:422', 'securityReviewEnable' => '563720:237', 'specialFieldsOnCreate' => '563957:78', 'specialFieldsOnEdit' => '564035:78', 'view' => '564113:91', 'viewFields' => '564204:72', ), 'sectionFormulary_create' => array ( 'contact' => '564276:434', 'contactPreset' => '564710:1203', 'formulary' => '565913:534', 'formularyPreset' => '566447:60', ), 'sectionFormulary_done' => array ( 'content' => '566507:544', 'custom' => '567051:291', 'edit' => '567342:664', 'editCaption' => '568006:334', 'editContent' => '568340:354', 'editRecognizeEcolabore' => '568694:275', 'editRecognizeHTML' => '568969:237', 'editRecognizeParagraphs' => '569206:267', 'editTitle' => '569473:266', 'editUpdated' => '569739:167', 'restore' => '569906:303', ), 'sectionFormulary_received' => array ( 'content' => '570209:467', 'list' => '570676:246', 'listNew' => '570922:127', 'selectColumns' => '571049:549', 'selectColumnsList' => '571598:235', ), 'sectionFormulary_record' => array ( 'content' => '571833:219', 'remove' => '572052:139', ), 'sectionFormulary_removed' => array ( 'content' => '572191:251', ), 'sectionFormulary_selectColumns' => array ( 'content' => '572442:437', ), 'sectionFormulary_statistics' => array ( 'content' => '572879:245', 'list' => '573124:1133', ), 'sectionGlossary' => array ( 'helpAbout' => '574257:613', 'helpInstructor' => '574870:178', 'specialFieldsOnCreate' => '575048:58', 'specialFieldsOnEdit' => '575106:58', ), 'sectionGlossary_create' => array ( 'content' => '575164:399', 'contentPreset' => '575563:731', ), 'sectionInfo' => array ( 'helpAbout' => '576294:428', 'helpInstructor' => '576722:174', 'specialFieldsOnCreate' => '576896:58', 'specialFieldsOnEdit' => '576954:58', ), 'sectionInfo_create' => array ( 'content' => '577012:431', 'contentPreset' => '577443:409', ), 'sectionMenu' => array ( 'helpAbout' => '577852:421', ), 'sectionMenu_create' => array ( 'menu' => '578273:412', 'menuPreset' => '578685:55', ), 'sectionPrivacyPolicy' => array ( 'helpAbout' => '578740:704', 'helpInstructor' => '579444:142', 'specialFieldsOnCreate' => '579586:58', 'specialFieldsOnEdit' => '579644:58', ), 'sectionPrivacyPolicy_create' => array ( 'content' => '579702:530', 'contentPreset' => '580232:456', ), 'sectionRedirect' => array ( 'content' => '580688:588', 'editURL' => '581276:281', 'helpAbout' => '581557:518', 'specialFieldsOnCreate' => '582075:46', 'specialFieldsOnEdit' => '582121:46', ), 'sectionRedirect_create' => array ( 'content' => '582167:531', 'contentPreset' => '582698:59', ), 'sectionSearch' => array ( 'helpAbout' => '582757:255', 'helpInstructor' => '583012:176', 'specialFieldsOnCreate' => '583188:58', 'specialFieldsOnEdit' => '583246:58', ), 'sectionSearch_create' => array ( 'content' => '583304:410', 'contentPreset' => '583714:390', ), 'sectionSubdomains' => array ( 'helpAbout' => '584104:451', 'helpInstructor' => '584555:140', 'list' => '584695:173', 'specialFieldsOnCreate' => '584868:58', 'specialFieldsOnEdit' => '584926:58', ), 'sectionSubdomains_create' => array ( 'content' => '584984:419', 'contentPreset' => '585403:447', ), 'sectionTeam' => array ( 'helpAbout' => '585850:375', 'helpCreate' => '586225:457', 'helpDone' => '586682:593', 'helpInstructor' => '587275:195', 'helpNavigate' => '587470:237', 'helpReturn' => '587707:243', 'listAllClients' => '587950:141', 'listAllGroups' => '588091:123', 'listAllMembers' => '588214:140', 'listAllPartners' => '588354:143', 'listAllStudents' => '588497:140', 'listAllSuppliers' => '588637:147', 'listSectorMembers' => '588784:154', 'specialFieldsOnCreate' => '588938:58', 'specialFieldsOnEdit' => '588996:58', ), 'sectionTeam_create' => array ( 'clients' => '589054:364', 'clientsPreset' => '589418:375', 'partners' => '589793:383', 'partnersPreset' => '590176:379', 'students' => '590555:374', 'studentsPreset' => '590929:400', 'subscriptions' => '591329:428', 'subscriptionsPreset' => '591757:433', 'suppliers' => '592190:384', 'suppliersPreset' => '592574:393', 'team' => '592967:388', 'teamPreset' => '593355:401', ), 'sectionTeam_group' => array ( 'edit' => '593756:411', 'editCaption' => '594167:396', 'editContent' => '594563:336', 'editName' => '594899:242', 'editTitle' => '595141:171', 'new' => '595312:221', 'remove' => '595533:138', 'removeConfirm' => '595671:657', ), 'sectionTeam_member' => array ( 'contentClient' => '596328:522', 'contentMember' => '596850:520', 'contentPartner' => '597370:524', 'contentStudant' => '597894:520', 'contentSubscription' => '598414:526', 'contentSuplier' => '598940:530', 'edit' => '599470:613', 'editGroup' => '600083:219', 'editGroupNone' => '600302:134', 'helpNavigate' => '600436:556', 'import' => '600992:555', 'import_helpAbout' => '601547:722', 'import_helpNavigate' => '602269:381', 'importList' => '602650:210', 'importListError' => '602860:385', 'inactive' => '603245:571', 'inactive_helpNavigate' => '603816:521', 'inactiveList' => '604337:216', 'new' => '604553:773', 'new_helpNavigate' => '605326:417', 'unlink' => '605743:160', 'unlinkMember' => '605903:872', 'unlinkMessage' => '606775:641', ), 'sectionTerms' => array ( 'helpAbout' => '607416:685', 'helpInstructor' => '608101:133', 'specialFieldsOnCreate' => '608234:58', 'specialFieldsOnEdit' => '608292:58', ), 'sectionTerms_create' => array ( 'content' => '608350:516', 'contentPreset' => '608866:454', ), 'system_form' => array ( 'add' => '609320:117', 'back' => '609437:121', 'cancel' => '609558:123', 'close' => '609681:122', 'create' => '609803:121', 'end' => '609924:68', 'endView' => '609992:50', 'finish' => '610042:121', 'formularyIdCrash' => '610163:427', 'go' => '610590:117', 'next' => '610707:119', 'previous' => '610826:127', 'previousFinish' => '610953:109', 'previousNext' => '611062:107', 'previousSubmit' => '611169:109', 'save' => '611278:119', 'saveCancel' => '611397:129', 'saveClose' => '611526:128', 'separator' => '611654:51', 'start' => '611705:72', 'startView' => '611777:53', 'submit' => '611830:121', 'submitCancel' => '611951:131', ), 'system_msg' => array ( 'alertConfigurationRestored' => '612082:182', 'alertConfigurationSaved' => '612264:156', 'alertDataUpdated' => '612420:338', 'alertInternalError' => '612758:376', 'alertOperationCanceled' => '613134:529', 'alertRequiredField' => '613663:547', 'alertUnexpectedError' => '614210:861', 'clearLanguageConfirm' => '615071:584', ), 'systemAccessDenied' => array ( 'content' => '615655:1278', 'contentProfile' => '616933:872', ), 'systemDefault' => array ( 'content' => '617805:618', 'help' => '618423:664', ), 'systemInstallation' => array ( 0 => '619087:248', '0description' => '619335:203', 1 => '619538:247', '1description' => '619785:198', 2 => '619983:133', '2description' => '620116:679', 'accessDenied' => '620795:751', 'adminCaption' => '621546:234', 'adminGender' => '621780:349', 'adminIdentifier' => '622129:263', 'adminMail' => '622392:199', 'adminPassword' => '622591:288', 'index' => '622879:550', 'systemHostingMode' => '623429:1817', 'systemHostingModeMultiple' => '625246:343', 'systemHostingModeSingle' => '625589:229', 'systemHttpsRedirect' => '625818:268', 'systemRewriteEngine' => '626086:313', 'templateForConfig' => '626399:146', ), 'tool' => array ( 'content' => '626545:395', ), 'toolConfig' => array ( 'content' => '626940:419', ), 'toolConfig_about' => array ( 'content' => '627359:425', 'edit' => '627784:288', ), 'toolConfig_languages' => array ( 'content' => '628072:393', 'currencies' => '628465:315', 'edit' => '628780:261', 'editCurrenciesManager' => '629041:253', 'editLanguagesManager' => '629294:241', 'select' => '629535:316', ), 'toolConfig_versioning' => array ( 'content' => '629851:611', 'edit' => '630462:288', ), 'toolMediaGalery' => array ( 'content' => '630750:423', ), 'user' => array ( 'content' => '631173:489', 'you' => '631662:211', ), 'userAdmin' => array ( 'content' => '631873:697', ), 'userAnonimous' => array ( 'content' => '632570:127', ), 'userDefault' => array ( 'content' => '632697:612', ), 'userHome_alerts' => array ( 'content' => '633309:340', 'mail' => '633649:239', 'phone' => '633888:239', ), 'userHome_default' => array ( 'content' => '634127:410', ), 'userHome_index' => array ( 'content' => '634537:444', 'domains' => '634981:135', 'recents' => '635116:139', ), 'userHome_mail' => array ( 'content' => '635255:374', 'contentFail' => '635629:201', 'contentMailSent' => '635830:316', 'contentReady' => '636146:289', 'contentVerified' => '636435:316', 'contextVerified' => '636751:165', 'editSecurity' => '636916:269', 'input' => '637185:120', 'messageTemplate' => '637305:1552', 'sent' => '638857:83', 'sentButtons' => '638940:111', 'sentUpdate' => '639051:123', 'update' => '639174:130', ), 'userHome_password' => array ( 'alertPasswordChanged' => '639304:375', 'content' => '639679:424', 'edit' => '640103:206', 'editRecoverPassword' => '640309:210', 'help' => '640519:957', 'msgInvalidToken' => '641476:487', 'msgPasswordRecovered' => '641963:452', ), 'userHome_personal' => array ( 'alertDataUpdated' => '642415:384', 'content' => '642799:422', 'edit' => '643221:284', 'help' => '643505:343', ), 'userHome_phone' => array ( 'alertInvalidCode' => '643848:630', 'check' => '644478:126', 'checkCode' => '644604:289', 'content' => '644893:414', 'contentVerified' => '645307:354', 'input' => '645661:98', 'inputPhone' => '645759:98', 'update' => '645857:150', 'verified' => '646007:792', 'verifiedButtons' => '646799:115', 'verifiedUpdate' => '646914:124', ), 'userHome_welcome' => array ( 'disabledF' => '647038:666', 'disabledM' => '647704:670', 'welcome' => '648374:875', 'welcomeToProfile' => '649249:891', ), 'userIndex' => array ( 'content' => '650140:489', ), 'userJoin' => array ( 'alertWelcome' => '650629:677', 'content' => '651306:544', 'editTermsAgree' => '651850:296', 'editTermsView' => '652146:63', 'helpDescription' => '652209:82', 'page0' => '652291:534', 'page1' => '652825:445', 'page1previous' => '653270:297', 'page2' => '653567:448', ), 'userRecoverPassword' => array ( 'content' => '654015:538', 'edit' => '654553:104', 'editAdminMailNotFound' => '654657:596', 'editAdminNotFound' => '655253:379', 'editIdentifier' => '655632:233', 'messageTemplate' => '655865:1539', 'msgMailSent' => '657404:842', ), ), 't' => array ( 'base' => array ( 'empty' => '658246:37', 'mail' => '658283:452', 'print' => '658735:580', 'responsive' => '659315:5279', 'simple' => '664594:557', 'system' => '665151:733', ), 'blocks' => array ( 'help' => '665884:146', 'personalite' => '666030:198', 'personalite_paragraph' => '666228:225', ), 'borders' => array ( 'card' => '666453:531', 'columns' => '666984:549', 'default' => '667533:1125', 'font' => '668658:262', 'format' => '668920:479', 'grid' => '669399:742', ), 'details' => array ( 'button_caption' => '670141:1150', 'button_title' => '671291:491', 'caption' => '671782:262', 'contact_address' => '672044:447', 'contact_mail' => '672491:255', 'contact_phone' => '672746:232', 'contact_site' => '672978:289', 'content' => '673267:494', 'description' => '673761:483', 'event_date' => '674244:303', 'img' => '674547:859', 'img_mini' => '675406:943', 'img_mini_title_description' => '676349:1618', 'info_hits' => '677967:203', 'info_owner' => '678170:310', 'info_posted' => '678480:258', 'info_posted_datetime' => '678738:286', 'info_posted_elapsed' => '679024:252', 'info_updated' => '679276:274', 'list_categories' => '679550:302', 'list_keywords' => '679852:352', 'list_location' => '680204:330', 'list_location_full' => '680534:369', 'list_location_inline' => '680903:330', 'media_audima' => '681233:322', 'media_audio' => '681555:705', 'media_box' => '682260:220', 'media_file' => '682480:497', 'media_font' => '682977:3012', 'media_video' => '685989:383', 'product_cart' => '686372:1549', 'product_price' => '687921:547', 'subitens' => '688468:96', 'title_1' => '688564:549', 'title_2' => '689113:270', 'title_3' => '689383:270', 'title_4' => '689653:554', 'title_5' => '690207:554', 'title_6' => '690761:554', ), 'fields' => array ( 'address' => '691315:2162', 'address_buscacep' => '693477:2869', 'checkbox' => '696346:542', 'checkbox_tree' => '696888:1841', 'descriptive' => '698729:294', 'end' => '699023:285', 'file' => '699308:497', 'list' => '699805:618', 'manager' => '700423:7344', 'phone' => '707767:1011', 'radio' => '708778:517', 'range' => '709295:557', 'select' => '709852:627', 'separator' => '710479:195', 'start' => '710674:834', 'submit' => '711508:654', 'text' => '712162:553', 'text_password' => '712715:512', 'text_small' => '713227:581', 'text_tiny' => '713808:595', 'textarea' => '714403:557', 'textarea_big' => '714960:566', 'textarea_small' => '715526:572', 'view' => '716098:403', 'view_end' => '716501:176', 'view_start' => '716677:225', ), 'fonts' => array ( 'arial' => '716902:167', 'book-antiqua' => '717069:191', 'century-gothic' => '717260:233', 'consolas' => '717493:334', 'courier-new' => '717827:205', 'helvetica-neue' => '718032:182', 'times-new-roman' => '718214:197', ), 'icons' => array ( 'action_add' => '718411:239', 'action_configure' => '718650:268', 'action_remove' => '718918:206', 'ecolabore_flower' => '719124:1200', 'menu' => '720324:283', 'nav_down_arrow' => '720607:242', 'nav_left_arrow' => '720849:247', 'nav_right_arrow' => '721096:247', 'nav_up_arrow' => '721343:239', 'square' => '721582:204', ), 'labels/action' => array ( 'add' => '721786:115', 'answer' => '721901:118', 'back' => '722019:121', 'cancel' => '722140:125', 'choose' => '722265:125', 'clear' => '722390:122', 'close' => '722512:114', 'configure' => '722626:131', 'confirm' => '722757:127', 'connect' => '722884:122', 'create' => '723006:114', 'download' => '723120:117', 'edit' => '723237:113', 'finish' => '723350:125', 'go' => '723475:115', 'move_down' => '723590:129', 'move_left' => '723719:132', 'move_right' => '723851:133', 'move_to' => '723984:128', 'move_up' => '724112:126', 'next' => '724238:114', 'ok' => '724352:107', 'pause' => '724459:114', 'play' => '724573:118', 'previous' => '724691:122', 'redo' => '724813:114', 'remove' => '724927:116', 'remove_object' => '725043:132', 'restore' => '725175:166', 'save' => '725341:113', 'submit' => '725454:115', 'undo' => '725569:115', 'update' => '725684:118', ), 'labels/currency' => array ( 'AED' => '725802:172', 'ALL' => '725974:127', 'ANG' => '726101:166', 'ARS' => '726267:129', 'AUD ' => '726396:51', 'AUD' => '726447:88', 'AWG' => '726535:134', 'BBD' => '726669:148', 'BDT' => '726817:141', 'BGN' => '726958:142', 'BHD' => '727100:160', 'BIF' => '727260:148', 'BMD' => '727408:149', 'BND' => '727557:139', 'BOB' => '727696:141', 'BRL' => '727837:138', 'BSD' => '727975:141', 'BTN' => '728116:148', 'BWP' => '728264:128', 'BYR' => '728392:136', 'BZD' => '728528:146', 'CAD ' => '728674:59', 'CAD' => '728733:86', 'CHF ' => '728819:66', 'CHF' => '728885:84', 'CLP' => '728969:127', 'CNY' => '729096:127', 'COP' => '729223:130', 'CRC' => '729353:140', 'CUP' => '729493:141', 'CVE' => '729634:150', 'CZK' => '729784:160', 'DJF' => '729944:148', 'DKK ' => '730092:59', 'DKK' => '730151:88', 'DOP' => '730239:145', 'DZD' => '730384:144', 'EEK' => '730528:144', 'EGP' => '730672:151', 'ETB' => '730823:135', 'EUR ' => '730958:59', 'EUR' => '731017:73', 'FJD' => '731090:144', 'FKP ' => '731234:51', 'FKP' => '731285:88', 'GBP ' => '731373:51', 'GBP' => '731424:85', 'GHS' => '731509:138', 'GMD ' => '731647:51', 'GMD' => '731698:84', 'GNF' => '731782:139', 'GTQ' => '731921:132', 'GYD' => '732053:146', 'HKD ' => '732199:66', 'HKD' => '732265:89', 'HNL' => '732354:131', 'HRK' => '732485:137', 'HTG' => '732622:82', 'HUF' => '732704:138', 'IDR ' => '732842:59', 'IDR' => '732901:86', 'ILS' => '732987:145', 'INR' => '733132:143', 'IQD' => '733275:152', 'IRR' => '733427:84', 'ISK' => '733511:138', 'JOD' => '733649:146', 'JPY ' => '733795:51', 'JPY' => '733846:83', 'KES' => '733929:144', 'KGS' => '734073:142', 'KHR' => '734215:142', 'KMF' => '734357:146', 'KPW' => '734503:140', 'KRW' => '734643:138', 'KWD' => '734781:153', 'KYD' => '734934:133', 'KZT ' => '735067:66', 'KZT' => '735133:88', 'LKR' => '735221:148', 'MAD' => '735369:156', 'MDL' => '735525:143', 'MKD' => '735668:146', 'MMK' => '735814:128', 'MNT' => '735942:146', 'MOP ' => '736088:51', 'MOP' => '736139:82', 'MRO' => '736221:142', 'MUR' => '736363:142', 'MVR' => '736505:139', 'MWK' => '736644:139', 'MXN' => '736783:128', 'MYR' => '736911:139', 'NAD ' => '737050:59', 'NAD' => '737109:86', 'NGN' => '737195:137', 'NIO' => '737332:142', 'NOK' => '737474:136', 'NPR' => '737610:137', 'NZD' => '737747:139', 'OMR ' => '737886:75', 'OMR' => '737961:80', 'PAB' => '738041:129', 'PEN' => '738170:137', 'PGK' => '738307:137', 'PHP' => '738444:136', 'PKR' => '738580:146', 'PLN' => '738726:144', 'PYG' => '738870:87', 'QAR ' => '738957:73', 'QAR' => '739030:83', 'RON ' => '739113:51', 'RON' => '739164:80', 'RUB' => '739244:149', 'RWF' => '739393:138', 'SAR' => '739531:158', 'SBD' => '739689:155', 'SCR' => '739844:143', 'SDG' => '739987:144', 'SEK' => '740131:136', 'SGD' => '740267:142', 'SHP' => '740409:136', 'SKK' => '740545:140', 'SLL' => '740685:142', 'SOS' => '740827:145', 'STD' => '740972:139', 'SVC' => '741111:141', 'SYP' => '741252:142', 'SZL' => '741394:145', 'THB ' => '741539:58', 'THB' => '741597:85', 'TND' => '741682:148', 'TOP' => '741830:138', 'TRY' => '741968:140', 'TTD' => '742108:157', 'TWD' => '742265:146', 'TZS' => '742411:131', 'UAH' => '742542:86', 'UGX' => '742628:143', 'USD ' => '742771:47', 'USD' => '742818:95', 'UYU' => '742913:143', 'UZS' => '743056:142', 'VEF' => '743198:150', 'VND' => '743348:136', 'VUV ' => '743484:59', 'VUV' => '743543:82', 'WST' => '743625:140', 'XAF' => '743765:154', 'XCD' => '743919:155', 'XOF' => '744074:162', 'XPF ' => '744236:51', 'XPF' => '744287:86', 'YER ' => '744373:66', 'YER' => '744439:83', 'ZAR' => '744522:134', 'ZMK ' => '744656:66', 'ZMK' => '744722:85', ), 'labels/date' => array ( 'day' => '744807:109', 'days_ago' => '744916:122', 'elapsed_1day' => '745038:135', 'elapsed_1hour' => '745173:140', 'elapsed_1minute' => '745313:144', 'elapsed_1month' => '745457:140', 'elapsed_1year' => '745597:139', 'elapsed_days' => '745736:162', 'elapsed_hours' => '745898:164', 'elapsed_minutes' => '746062:168', 'elapsed_months' => '746230:165', 'elapsed_now' => '746395:129', 'elapsed_years' => '746524:163', 'formated' => '746687:197', 'hour' => '746884:113', 'hours' => '746997:113', 'hours_ago' => '747110:124', 'minutes' => '747234:117', 'minutes_ago' => '747351:129', 'month' => '747480:111', 'month_short1' => '747591:109', 'month_short10' => '747700:109', 'month_short11' => '747809:109', 'month_short12' => '747918:109', 'month_short2' => '748027:109', 'month_short3' => '748136:109', 'month_short4' => '748245:109', 'month_short5' => '748354:109', 'month_short6' => '748463:109', 'month_short7' => '748572:109', 'month_short8' => '748681:109', 'month_short9' => '748790:109', 'month1' => '748899:117', 'month10' => '749016:117', 'month11' => '749133:119', 'month12' => '749252:119', 'month2' => '749371:120', 'month3' => '749491:113', 'month4' => '749604:113', 'month5' => '749717:110', 'month6' => '749827:112', 'month7' => '749939:112', 'month8' => '750051:115', 'month9' => '750166:120', 'seconds' => '750286:118', 'weekShort1' => '750404:109', 'weekShort2' => '750513:109', 'weekShort3' => '750622:109', 'weekShort4' => '750731:109', 'weekShort5' => '750840:109', 'weekShort6' => '750949:109', 'weekShort7' => '751058:109', 'year' => '751167:110', 'yesterday' => '751277:117', ), 'labels/field' => array ( 'address' => '751394:118', 'address_city' => '751512:113', 'address_complement' => '751625:126', 'address_country' => '751751:114', 'address_district' => '751865:117', 'address_number' => '751982:115', 'address_postal_code' => '752097:118', 'address_state' => '752215:114', 'address_street' => '752329:112', 'captcha_donotfill' => '752441:149', 'cart_add' => '752590:137', 'cart_go' => '752727:125', 'cart_item' => '752852:111', 'cart_items' => '752963:113', 'categories' => '753076:133', 'comment' => '753209:121', 'content' => '753330:118', 'description' => '753448:124', 'folder' => '753572:122', 'hits' => '753694:122', 'info_by' => '753816:108', 'info_posted' => '753924:123', 'info_updated' => '754047:128', 'keywords' => '754175:134', 'location' => '754309:116', 'location_at' => '754425:122', 'media_add_audio' => '754547:128', 'media_add_file' => '754675:129', 'media_add_video' => '754804:128', 'media_continuous_play' => '754932:142', 'media_downloads' => '755074:121', 'media_plays' => '755195:120', 'phone' => '755315:124', 'phone_area' => '755439:124', 'phone_country' => '755563:122', 'phone_number' => '755685:123', 'title' => '755808:122', 'user_identifier' => '755930:136', 'user_password' => '756066:116', 'user_repeat_password' => '756182:133', ), 'labels/lang' => array ( 'aa' => '756315:133', 'ab' => '756448:150', 'ae' => '756598:143', 'af' => '756741:150', 'ak' => '756891:134', 'am' => '757025:149', 'an' => '757174:148', 'ar' => '757322:148', 'as' => '757470:159', 'av' => '757629:143', 'ay' => '757772:139', 'az' => '757911:157', 'ba' => '758068:150', 'be' => '758218:165', 'bg' => '758383:157', 'bh' => '758540:156', 'bi' => '758696:144', 'bm' => '758840:147', 'bn' => '758987:151', 'bo' => '759138:158', 'br' => '759296:143', 'bs' => '759439:143', 'ca' => '759582:143', 'ce' => '759725:151', 'ch' => '759876:144', 'co' => '760020:139', 'cr' => '760159:145', 'cs' => '760304:138', 'cu' => '760442:181', 'cv' => '760623:148', 'cy' => '760771:139', 'da' => '760910:145', 'de' => '761055:141', 'dv' => '761196:158', 'dz' => '761354:151', 'ee' => '761505:135', 'el' => '761640:149', 'en' => '761789:116', 'eo' => '761905:148', 'es' => '762053:144', 'et' => '762197:143', 'eu' => '762340:139', 'fa' => '762479:144', 'ff' => '762623:138', 'fi' => '762761:144', 'fj' => '762905:152', 'fo' => '763057:144', 'fr' => '763201:144', 'fy' => '763345:140', 'ga' => '763485:142', 'gd' => '763627:154', 'gl' => '763781:141', 'gn' => '763922:146', 'gu' => '764068:159', 'gv' => '764227:136', 'ha' => '764363:148', 'he' => '764511:152', 'hi' => '764663:151', 'ho' => '764814:148', 'hr' => '764962:143', 'ht' => '765105:169', 'hu' => '765274:144', 'hy' => '765418:152', 'hz' => '765570:145', 'ia' => '765715:158', 'id' => '765873:160', 'ie' => '766033:158', 'ig' => '766191:132', 'ii' => '766323:149', 'ik' => '766472:143', 'in' => '766615:123', 'io' => '766738:130', 'is' => '766868:148', 'it' => '767016:144', 'iu' => '767160:158', 'iw' => '767318:117', 'ja' => '767435:146', 'ji' => '767581:76', 'jv' => '767657:146', 'ka' => '767803:160', 'kg' => '767963:138', 'ki' => '768101:142', 'kj' => '768243:150', 'kk' => '768393:149', 'kl' => '768542:158', 'km' => '768700:159', 'kn' => '768859:151', 'ko' => '769010:143', 'kr' => '769153:139', 'ks' => '769292:176', 'ku' => '769468:151', 'kv' => '769619:137', 'kw' => '769756:143', 'ky' => '769899:153', 'la' => '770052:137', 'lb' => '770189:165', 'lg' => '770354:140', 'li' => '770494:153', 'ln' => '770647:142', 'lo' => '770789:141', 'lt' => '770930:148', 'lu' => '771078:160', 'lv' => '771238:143', 'mg' => '771381:152', 'mh' => '771533:162', 'mi' => '771695:145', 'mk' => '771840:164', 'ml' => '772004:158', 'mn' => '772162:149', 'mo' => '772311:162', 'mr' => '772473:150', 'ms' => '772623:175', 'mt' => '772798:144', 'my' => '772942:159', 'na' => '773101:151', 'nb' => '773252:165', 'nd' => '773417:159', 'ne' => '773576:154', 'ng' => '773730:145', 'nl' => '773875:146', 'nn' => '774021:169', 'no' => '774190:146', 'nr' => '774336:161', 'nv' => '774497:146', 'ny' => '774643:146', 'oc' => '774789:143', 'oj' => '774932:151', 'om' => '775083:137', 'or' => '775220:147', 'os' => '775367:147', 'pa' => '775514:154', 'pi' => '775668:143', 'pl' => '775811:141', 'ps' => '775952:141', 'pt' => '776093:123', 'qu' => '776216:145', 'rm' => '776361:156', 'rn' => '776517:138', 'ro' => '776655:143', 'ru' => '776798:148', 'rw' => '776946:158', 'sa' => '777104:162', 'sc' => '777266:140', 'sd' => '777406:148', 'se' => '777554:161', 'sg' => '777715:138', 'si' => '777853:155', 'sk' => '778008:147', 'sl' => '778155:152', 'sm' => '778307:147', 'sn' => '778454:139', 'so' => '778593:144', 'sq' => '778737:142', 'sr' => '778879:148', 'ss' => '779027:139', 'st' => '779166:155', 'su' => '779321:150', 'sv' => '779471:140', 'sw' => '779611:144', 'ta' => '779755:148', 'te' => '779903:152', 'tg' => '780055:146', 'th' => '780201:158', 'ti' => '780359:151', 'tk' => '780510:152', 'tl' => '780662:141', 'tn' => '780803:141', 'to' => '780944:146', 'tr' => '781090:141', 'ts' => '781231:139', 'tt' => '781370:142', 'tw' => '781512:130', 'ty' => '781642:148', 'ug' => '781790:147', 'uk' => '781937:160', 'ur' => '782097:137', 'uz' => '782234:144', 've' => '782378:138', 'vi' => '782516:158', 'vo' => '782674:146', 'wa' => '782820:139', 'wo' => '782959:136', 'xh' => '783095:136', 'yi' => '783231:149', 'yo' => '783380:142', 'za' => '783522:146', 'zh' => '783668:158', 'zu' => '783826:133', ), 'labels/layout' => array ( 'assistant_close' => '783959:279', 'assistant_open' => '784238:181', 'editor_flag_green' => '784419:184', 'editor_flag_red' => '784603:191', 'first' => '784794:124', 'last' => '784918:121', 'menu' => '785039:135', 'menu_access' => '785174:151', 'menu_colapse' => '785325:146', 'menu_colapsed' => '785471:128', 'menu_opened' => '785599:126', 'next' => '785725:122', 'panel_left_close' => '785847:151', 'panel_left_open' => '785998:153', 'panel_right_close' => '786151:151', 'panel_right_open' => '786302:153', 'previous' => '786455:127', 'spotlight_end' => '786582:157', 'spotlight_start' => '786739:143', 'tabs' => '786882:119', 'tip_for' => '787001:127', 'top' => '787128:118', ), 'labels/status' => array ( 700 => '787246:116', 720 => '787362:117', 721 => '787479:111', 730 => '787590:118', ), 'layouts' => array ( 'audio_player' => '787708:1839', 'default' => '789547:1194', 'dialog' => '790741:184', 'dialog_basic' => '790925:222', 'dialog_cancel' => '791147:199', 'dialog_close' => '791346:413', 'dialog_select' => '791759:1556', 'dialog_tabs' => '793315:3561', ), 'lists' => array ( 'box' => '796876:311', 'default' => '797187:541', 'details' => '797728:42', 'formulary' => '797770:38', 'html' => '797808:31', 'layered' => '797839:415', 'menu_simple_vertical' => '798254:215', 'table' => '798469:191', 'table_simple' => '798660:184', ), 'modules' => array ( 'audio' => '798844:220', 'banner' => '799064:370', 'box' => '799434:350', 'breadcrumbs' => '799784:317', 'card' => '800101:170', 'cart' => '800271:289', 'comments' => '800560:272', 'comments_add' => '800832:250', 'content' => '801082:231', 'dinamic_blog' => '801313:398', 'dinamic_events' => '801711:384', 'dinamic_galery' => '802095:485', 'dinamic_news' => '802580:357', 'dinamic_podcast' => '802937:406', 'dinamic_products' => '803343:348', 'dinamic_recents' => '803691:408', 'dinamic_videocast' => '804099:835', 'file' => '804934:419', 'footer' => '805353:448', 'formulary' => '805801:210', 'formulary_edit' => '806011:226', 'formulary_system' => '806237:171', 'formulary_view' => '806408:178', 'grid' => '806586:271', 'hits' => '806857:284', 'html' => '807141:195', 'img' => '807336:307', 'languages' => '807643:471', 'list' => '808114:205', 'list_blog' => '808319:242', 'list_card' => '808561:101', 'list_events' => '808662:293', 'list_folder' => '808955:205', 'list_formulary' => '809160:544', 'list_galery' => '809704:370', 'list_glossary' => '810074:216', 'list_info_administrators' => '810290:237', 'list_news' => '810527:249', 'list_podcast' => '810776:243', 'list_products' => '811019:237', 'list_related' => '811256:213', 'list_search_results' => '811469:232', 'list_system' => '811701:103', 'list_videocast' => '811804:767', 'login' => '812571:252', 'navbar' => '812823:643', 'navbottom' => '813466:613', 'navmain' => '814079:449', 'pages' => '814528:337', 'pages_post' => '814865:350', 'post_blog' => '815215:126', 'post_events' => '815341:156', 'post_galery' => '815497:96', 'post_news' => '815593:133', 'post_podcast' => '815726:148', 'post_products' => '815874:121', 'post_videocast' => '815995:141', 'radiolegal' => '816136:304', 'related' => '816440:255', 'search' => '816695:203', 'search_options' => '816898:171', 'sort_blog' => '817069:175', 'system_menu' => '817244:204', 'title' => '817448:226', 'video' => '817674:299', ), 'palettes' => array ( 'default' => '817973:1445', 'white' => '819418:1136', ), 'scripts' => array ( 'empty' => '820554:131', ), 'styles' => array ( 'default' => '820685:50249', 'print' => '870934:1247', ), 'templates' => array ( 'default' => '872181:245', ), 'themes' => array ( 'default' => '872426:8071', ), ), 'f' => array ( 'icons' => array ( 'blank.gif' => '880497:68', 'ecolabore-flower.svg' => '880565:1270', 'ecolabore-humperstilshen-alert.png' => '881835:18219', 'ecolabore-humperstilshen-crash.png' => '900054:11061', 'ecolabore-humperstilshen-default.png' => '911115:10383', 'ecolabore-humperstilshen-error.png' => '921498:9283', 'ecolabore-humperstilshen-happy.png' => '930781:9594', 'ecolabore-humperstilshen-question.png' => '940375:10254', 'ecolabore-humperstilshen-tip.png' => '950629:8695', 'ecolabore-humperstilshen-welcome.png' => '959324:10383', 'ecolabore-humperstilshen-whait.png' => '969707:12007', 'hamburger.svg' => '981714:272', 'help64.gif' => '981986:2540', ), 'scripts' => array ( 'ecolabore-humperstilshen.js' => '984526:8447', ), 'styles' => array ( 'ecolabore-basics.css' => '992973:23429', 'ecolabore-print.css' => '1016402:909', ), ), ); //!packager:end_of_data_index //!file:engine/eclClass/eclClass_app.php; class eclClass_app { // class eclClass_app // const name = 'name'; -> the folder for the application // const menuType = 'section'; -> 'section', 'hidden', 'post', 'domain' // const dataFrom = ''; -> the name of the control to generate the content // const map = 'myModule_create myModule_edit myModule_config'; -> a space separated applications names // const access = 0; -> 0=all 1=connected 2=subscribed 3=member 4=owner or admin // const isDomain = false; -> true creates a subgroup of pages to navigate // const ignoreSubfolders = false; -> true ignore all childrens on the url static function is_child ($me, $name) { // function is_child return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper } // function constructor_helper static function dispatch ($document) { // function dispatch } // function dispatch } // class eclClass_app //!eof:engine/eclClass/eclClass_app.php; //!file:engine/eclClass/eclClass_filter.php; class eclClass_filter { // class eclClass_filter static function create ($fieldName, $control, $formulary) { // function create } // function create static function save ($fieldName, $control, $formulary) { // function save } // function save static function view ($fieldName, $control, $formulary) { // function view } // function view static function scope ($render, $arguments) { // function scope return array (); } // function scope static function target ($document, $value, $arguments) { // function target global $store; } // function target static function column ($document, $data, $name, $field, $url) { // function column return array ('caption' => $document->textMerge ('-')); } // function column } // class eclClass_filter //!eof:engine/eclClass/eclClass_filter.php; //!file:engine/eclClass/eclClass_mod.php; class eclClass_mod { // class eclClass_mod public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule } // function setModule } // class eclClass_mod //!eof:engine/eclClass/eclClass_mod.php; //!file:engine/eclClass/eclClass_scope.php; class eclClass_scope { // class eclClass_scope static function get ($render, $arguments) { // function get } // function get } // class eclClass_scope //!eof:engine/eclClass/eclClass_scope.php; //!file:engine/eclClass/eclClass_tag.php; class eclClass_tag { // class eclClass_tag static function render ($render, $arguments) { // function render return array (); } // function render } // class eclClass_tag //!eof:engine/eclClass/eclClass_tag.php; //!file:engine/eclEngine/eclEngine_application.php; class eclEngine_application { // class eclEngine_application public $applicationName; public $name; public $parent; public $pathway; public $groups; public $access; public $map = array (); public $data = array (); public $id = 0; public $domainId = 0; public $userId = 0; public $ignoreSubfolders = false; public $isDomain = false; public $menuType = 'hidden'; private $childrenByName = array (); private $children = false; public function __construct ($applicationName='system', $name='system', $parent=false, $document=false) { // function __construct global $store; $this->applicationName = $applicationName; $this->name = $name; $this->parent = $parent; if ($parent) { // inherit parent properties $this->pathway = $this->parent->pathway; $this->pathway[] = $this->name; // Vamos propagar propriedades herdadas $this->groups = $parent->groups; $this->access = $parent->access; $this->domainId = $parent->domainId; $this->userId = $parent->userId; } // inherit parent properties $class = 'eclApp_' . $applicationName; if (defined ($class . '::ignoreSubfolders')) $this->ignoreSubfolders = $class::ignoreSubfolders; if (defined ($class . '::dataFrom')) $this->data = $store->control->read ($class::dataFrom); if (defined ($class . '::map')) $this->map = explode (' ', $class::map); if (defined ($class . '::access') and $class::access > $this->access) $this->access = $class::access; if (defined ($class . '::isDomain')) $this->isDomain = $class::isDomain; // menu if (defined ($class . '::menuType')) $this->menuType = $class::menuType; elseif (is_callable (array ($class, 'get_menu_type'))) $this->menuType = $class::get_menu_type ($this, $document); // Chama a classe de aplicao para auxiliar na construo if (is_callable (array ($class, 'constructor_helper'))) $class::constructor_helper ($this, $document); } // function __construct public function getMap ($applicationName=false) { // function getMap global $mapPrepend, $map, $mapAppend; static $openedMaps = array (); if ($applicationName == false) $applicationName = $this->applicationName; if (isset ($openedMaps[$applicationName])) return $this->map = $openedMaps[$applicationName]; $openedMaps[$applicationName] = array (); if (SYSTEM_IS_PACKED) { // internal map if (isset ($mapPrepend[$applicationName])) $openedMaps[$applicationName] = $mapPrepend[$applicationName]; if (isset ($map[$applicationName])) $openedMaps[$applicationName] = array_merge ($openedMaps[$applicationName], $map[$applicationName]); if (isset ($mapAppend[$applicationName])) $openedMaps[$applicationName] = array_merge ($openedMaps[$applicationName], $mapAppend[$applicationName]); $this->map = $openedMaps[$applicationName]; return; } // internal map $result = array (); list ($prefix) = explode ('_', $applicationName, 2); $file = FOLDER_LIBRARY . $prefix . '/app_' . $applicationName . '_prepend.txt'; if (is_file ($file)) { // open file foreach (explode (LF, file_get_contents ($file)) as $line) { // each line $line = trim ($line); if (preg_match ('%^[a-zA-Z0-9_]+$%', $line)) $result[] = $line; } // each line } // open file if (isset ($map[$applicationName])) $result = array_merge ($result, $map[$applicationName]); $file = FOLDER_LIBRARY . $prefix . '/app_' . $applicationName . '_append.txt'; if (is_file ($file)) { // open file foreach (explode (LF, file_get_contents ($file)) as $line) { // each line $line = trim ($line); if (preg_match ('%^[a-zA-Z0-9_]+$%', $line)) $result[] = $line; } // each line } // open file $openedMaps[$applicationName] = $result; $this->map = $openedMaps[$applicationName]; } // function getMap public function child ($name, $document=false) { // function child if (isset ($this->childrenByName[$name])) return $this->childrenByName[$name]; // Ser que os filhos j foram todos abertos? if ($this->children !== false) return false; // Vamos percorrer o mapa, testando cada aplicao foreach ($this->map as $applicationName) { // each application $class = 'eclApp_' . $applicationName; if ( (defined ($class . '::name') and $name == $class::name) or (is_callable (array ($class, 'is_child')) and $class::is_child ($this, $name, $document))) { // child found $this->childrenByName[$name] = new eclEngine_application ($applicationName, $name, $this, $document); return $this->childrenByName[$name]; } // child found } // each application // No existe um filho com este nome return false; } // function child public function children ($document=false) { // function children if (!is_array ($this->children)) { // open children $this->children = array (); foreach ($this->map as $applicationName) { // each application $class = 'eclApp_' . $applicationName; $names = array (); if (defined ($class . '::name')) $names[] = $class::name; elseif (is_callable (array ($class, 'get_children_names'))) $names = $class::get_children_names ($this, $document); foreach ($names as $name) { // each name // Se este filho no foi chamado pelo nome, crie-o if (!isset ($this->childrenByName[$name])) $this->childrenByName[$name] = new eclEngine_application ($applicationName, $name, $this, $document); // Vamos copi-lo para a lista em ordem de ndice $this->children[] = $this->childrenByName[$name]; } // each name } // each application } // open children return $this->children; } // function children public function menuChildren ($document, $name=false) { // function menuChildren $menu = array (); if (!is_array ($this->children)) { // open children foreach ($this->map as $applicationName) { // each application $class = 'eclApp_' . $applicationName; $menuType = 'hidden'; if (defined ($class . '::menuType')) $menuType = $class::menuType; elseif (is_callable (array ($class, 'get_menu_type'))) $menuType = $class::get_menu_type ($this); switch ($menuType) { // switch menu type case 'post': if (!$name or !$class::is_child ($this, $name)) break; if (!isset ($this->childrenByName[$name])) $this->childrenByName[$name] = new eclEngine_application ($applicationName, $name, $this); // Vamos copi-lo para a lista em ordem de ndice if ($document->access ($this->childrenByName[$name]->access, $this->childrenByName[$name]->groups)) $menu[] = $this->childrenByName[$name]; break; case 'hidden': case 'domain': break; case 'section': default: $names = array (); if (defined ($class . '::name')) $names[] = $class::name; elseif (is_callable (array ($class, 'get_children_names'))) $names = $class::get_children_names ($this, $document); foreach ($names as $childName) { // each name // Se este filho no foi chamado pelo nome, crie-o if (!isset ($this->childrenByName[$childName])) $this->childrenByName[$childName] = new eclEngine_application ($applicationName, $childName, $this); // Vamos copi-lo para a lista em ordem de ndice if ($document->access ($this->childrenByName[$childName]->access, $this->childrenByName[$childName]->groups)) $menu[] = $this->childrenByName[$childName]; } // each name } // switch type } // each application return $menu; } // open children foreach ($this->children as $child) { // each child if ($child->menuType == 'hidden') continue; if ($child->menuType == 'post' and $child->name != $name) continue; if (!$document->access ($child->access, $child->groups)) continue; $menu[] = $child; } // each child return $menu; } // function menuChildren public function reset () { // function reset $this->children = false; $this->childrenByName = array (); } // function reset public function dispatch ($document) { // function dispatch $document->data = array_replace_recursive (array ('flags' => $this->flags ()), $this->data); $class = 'eclApp_' . $this->applicationName; if (is_callable (array ($class, 'dispatch'))) $class::dispatch ($document); } // function dispatch public function remove () { // function remove foreach ($this->children () as $child) { // each child $child->remove (); } // each child $this->reset (); $class = 'eclApp_' . $this->applicationName; if (is_callable ($class . '::remove')) $class::remove ($this); } // function remove public function flags () { // function flags if (is_object ($this->parent)) $flags = $this->parent->flags (); else $flags = array (); // Agora vamos fundir com as flags deste objeto - se houverem if (isset ($this->data['flags'])) $flags = array_replace ($flags, $this->data['flags']); return $flags; } // function flags public function findChild ($name) { // function findChild global $store, $system; if ($this->domainId) { // from domain $pathway = $store->domainContent->pathway ($this->domainId, $name); } // from domain elseif ($this->userId) { // from profile $pathway = $store->userContent->pathway ($this->userId, $name); } // from profile if ($pathway === false) return false; $me = $system; foreach ($pathway as $folder) { // loop folders $me = $me->child ($folder); if (!$me) return false; } // loop folders if (!$me) return false; return $me; } // function findChild public function findModuleTarget ($document, &$arguments) { // function findModuleTarget if (!$document->domain->domainId) return false; if (!isset ($arguments[0])) { // no arguments $arguments = array (false, '0'); return $document->application; } // no arguments if (is_numeric ($arguments[0])) { // numeric $arguments[1] = $arguments[0]; return $document->application; } // numeric if (!isset ($arguments[1]) or !is_numeric ($arguments[1])) $arguments[1] = '0'; $name = $arguments[0]; if (isset ($document->application->data['name']) and $name == $document->application->data['name']) return $document->application; if ($name == '-index') return $document->domain->child (''); if ($name == '-recents') return $document->domain->child ('-recents'); $me = $document->application->findChild ($name); if (!$me or !$document->access ($me->access, $me->groups)) return false; return $me; } // function findModuleTarget public function ignoreSession ($set=123) { // function ignoreSession static $ignore = false; if ($set != 123) $ignore = $set; return $ignore; } // function ignoreSession } // class eclEngine_application //!eof:engine/eclEngine/eclEngine_application.php; //!file:engine/eclEngine/eclEngine_document.php; class eclEngine_document { // class eclEngine_document // O preenchimento destas propriedades determinar a gerao do documento: public $mode = SYSTEM_HOSTING_MODE; public $protocol = 'http'; // string => the protocol used in the comunication public $beta = ''; public $host = 'localhost/'; // string => the main host public $pathway = array ('-blank'); // array => the pathway to route the application public $lang = false; // string | false => the language or auto define public $actions = array (); // array => the actions from url public $received = array (); // array => the posted data from formularies public $session = array (); // array => the session data $io->session->cache private $sid = 0; // o id da sesso private $cookie = true; // bool => If user agent accepts cookies public $rewriteEngine = false; // bool => if the Apache Rewrite Engine is enabled // Aps o incio da seo e do roteamento, estas propriedades estaro definidas: public $user; // object eclEngine_application => the user connected public $domain; // object eclEngine_application => the domain of this application public $subscription; // object eclEngine_application => the relationcheep between the user and the domain public $application; // object eclEngine_application => the application to be dispatched // Estas propriedades so preenchidas em __construct() com objetos auxiliares: public $render; // object eclEngine_render => the renderizer engine public $mod; // object eclEngine_mod => a loader for modules // Estas propriedades auxiliam no processamento da renderizao: public $defaultLang; // string => the preferred language if $lang is not available public $charset; // string => the charset public $data = array (); // array is the main content of the document public $buffer = ''; // string => the output document to be sent public $ids = array (); // array ids used in HTML id property to prevent duplicated identifiers public $templateEditable = false; // bool true if the user can edit template modules public $contentEditable = false; // bool true if the online visual editor is enable public $printableLayout = false; // bool true advises modules that the user wish to print the document public $reload = false; // false or an url string to redirect the browser public $preload = array (); // array eclEngine_application => an array with the applications to be dispatched before the main application public function __construct () { // function __construct global $system; $this->render = new eclEngine_render ($this); $this->mod = new eclEngine_mod ($this); $this->user = $system->child (SYSTEM_PROFILES_URI)->child ('-anonimous'); $this->subscription = $system->child (SYSTEM_PROFILES_URI)->child ('-anonimous'); } // function __construct public function __clone () { // function __clone $this->actions = array (); // array => the actions from url $this->received = array (); // array => the posted data from formularies unset ($this->session); $this->session = array (); // array => the session data $io->session->cache $this->mod = new eclEngine_mod ($this); $this->render = new eclEngine_render ($this); $this->data = array (); // array is the main content of the document $this->buffer = ''; // string => the output document to be sent $this->ids = array (); // array ids used in HTML id property to prevent duplicated identifiers $this->templateEditable = false; $this->contentEditable = false; $this->printableLayout = false; $this->reload = false; $this->preload = array (); // array eclEngine_application => an array with the applications to be dispatched before the main application } // function __clone public function route ($request=false) { // function route global $system; if (is_object ($request)) { // get request params $this->protocol = $request->protocol; $this->beta = $request->beta; $this->host = $request->host; $this->pathway = $request->pathway; $this->lang = $request->lang; $this->actions = $request->actions; $this->received = $request->received; $this->rewriteEngine = $request->rewriteEngine; } // get request params // Vamos procurar pelo nome do domnio $pathway = $this->pathway; $domainName = array_shift ($pathway); $this->domain = $system->child ($domainName); // Se o domnio no existir, vamos forar a aplicao systemDefault if (!is_object ($this->domain)) $this->domain = $system->child ('-default'); if (!count ($pathway)) $pathway = array (''); // Vamos rotear as subpastas chamando outra funo if ($this->domain->ignoreSubfolders == false) $this->application = $this->routeSubfolders ($this->domain, $pathway); else $this->application = $this->domain; // Se neste ponto no tivermos encontrado uma aplicao, novamente procuramos por uma aplicao padro if (!is_object ($this->application)) { // force app_system_error $this->domain = $system->child ('-default'); $this->application = $this->domain; } // force app_system_error } // function route private function routeSubfolders ($me, $pathway) { // function routeSubfolders $application = false; $folder = array_shift ($pathway); $application = $me->child ($folder); // a aplicao foi encontrada if (is_object ($application)) { // route children // Se a aplicao ignorar subpastas, retornamos esta aplicao if ($application->ignoreSubfolders) return $application; // Se no houverem mais subpastas, retornamos esta aplicao if (!count ($pathway)) return $application; // Se ainda no retornamos, rotearemos a prxima subpasta $application = $this->routeSubfolders ($application, $pathway); // Se o roteamento encontrou uma aplicao, retornaremos daqui if (is_object ($application)) return $application; } // route children // Se o filho no existir, procuramos uma aplicao que responda por padro $application = $me->child ('-default'); // Se no existir uma aplicao padro, retornamos daqui if ($application === false) return false; // Se a aplicao ignorar subpastas, retornamos esta aplicao if ($application->ignoreSubfolders) return $application; // Se no houverem mais subpastas, retornamos esta aplicao if (!count ($pathway)) return $application; // Se ainda no retornamos, rotearemos a prxima subpasta return $this->routeSubfolders ($application, $pathway); } // function routeSubfolders public function sessionStart ($ignore=false) { // function sessionStart global $io, $store, $system; if ($ignore) return; $this->session = &$io->session->cache; if (!defined ('ADMIN_IDENTIFIER') or !defined ('ADMIN_PASSWORD')) return; if (isset ($this->actions['logout'])) { // logout $this->session = array (); unset ($this->actions['logout']); return; } // logout if (isset ($this->actions['login'])) { // login $instance = isset ($this->actions['login'][1]) ? $this->actions['login'][1] : '1'; $name = isset ($this->received['login' . $instance . 'fields_name']) ? strtolower ($this->received['login' . $instance . 'fields_name']) : ''; $password = isset ($this->received['login' . $instance . 'fields_password']) ? strtolower ($this->received['login' . $instance . 'fields_password']) : ''; if ($name == ADMIN_IDENTIFIER and md5 ($password) == ADMIN_PASSWORD) { // admin $user['name'] = ADMIN_IDENTIFIER; $user['id'] = true; $user['password'] = ADMIN_PASSWORD; } // admin elseif (defined ('DATABASE_ENABLED') and DATABASE_ENABLED and preg_match ('/^[a-z0-9_-]+$/', $name)) $user = $store->user->open ($name); else $user = array (); if (isset ($user['password']) and $user['password'] == md5 ($password)) { // login pass true $this->session['user_id'] = $user['id']; $this->session['user_name'] = $name; } // login pass true else { // invalid login $this->mod->humperstilshen->loginError = true; } // invalid login } // login elseif (isset ($this->session['time']) and $this->session['time'] + SYSTEM_SESSION_TTL < TIME) { // session expired $this->session = array (); } // session expired if (isset ($this->actions['session'][1])) { // check session while (@ob_end_clean ()); if ($this->actions['session'][1] == 'check') { // check remaining time if (!isset ($this->session['time'])) print '0'; elseif (TIME - $this->session['time'] > SYSTEM_SESSION_TTL) print '0'; else print SYSTEM_SESSION_TTL - (TIME - $this->session['time']); exit; } // check remaining time $this->session['time'] = TIME; $io->close (); print SYSTEM_SESSION_TTL; exit; } // check session if (isset ($this->session['user_name'][0])) { // connected $this->user = $system->child (SYSTEM_PROFILES_URI)->child ($this->session['user_name']); if ($subscription = $store->domainContent->getUserSubscription ($this)) $this->subscription = $subscription; if (!isset ($this->session['time'])) { // first load $this->session['time'] = TIME; $this->preload[] = $this->user->child ('-welcome'); } // first load else { // else load $this->session['time'] = TIME; } // else load } // connected if (isset ($this->actions['session'])) { // keep connected $io->close (); print 'fail'; exit; } // keep connected } // function sessionStart public function dispatch () { // function dispatch global $system; // Antes de despachar a aplicao, definiremos o idioma if (isset ($this->domain->data['flags']['default_lang'])) $this->defaultLang = $this->domain->data['flags']['default_lang']; elseif (defined ('SYSTEM_DEFAULT_LANGUAGE')) $this->defaultLang = SYSTEM_DEFAULT_LANGUAGE; else $this->defaultLang = 'en'; if ($this->lang == false) $this->lang = $this->defaultLang; // Definiremos o conjunto de caractres if (isset ($this->application->flags['default_charset'])) $this->charset = $this->application->flags['default_charset']; else $this->charset = SYSTEM_DEFAULT_CHARSET; // Layout para impresso if ($this->actions ('layout', 'print')) $this->printableLayout = true; // Caso o acesso seja restrito, desviaremos o controle para outra aplicao if (!$this->access ($this->application->access)) { // access denied $application = $system->child ('-access-denied'); $application->pathway = $this->application->pathway; $application->groups = $this->application->groups; $application->access = $this->application->access; $application->parent = $this->application->parent; $this->application = $application; } // access denied else { // normal access // busca por aplicaes de alerta if (isset ($this->actions['preload']) and count ($this->actions['preload']) > 1) { // preload application array_shift ($this->actions['preload']); $preload = $system->child ('-preload'); foreach ($this->actions['preload'] as $name) { // loop names $preload = $preload->child ($name); if ($preload === false) break; if ($preload->ignoreSubfolders) break; } // loop names if ($preload !== false) $this->preload[] = $preload; } // preload application // rodaremos aplicaes preliminares foreach ($this->preload as $application) { // each preload application $application->dispatch ($this); } // each preload application } // normal access // Finalmente, despacharemos a aplicao $this->application->dispatch ($this); } // function dispatch public function render () { // function render global $io, $store, $system; if (SYSTEM_HTTPS_REDIRECT and $this->protocol != 'https') $this->reload = $this->url (true, true, true, 'https'); if ($this->reload) { // reload header ('Location: ' . $this->reload); $this->buffer = ''; } // reload if ($this->buffer != '') return; // Idioma e codificao $this->data['lang'] = $this->lang; $this->data['charset'] = $this->charset; // Data da gerao do documento if (isset ($this->application->data['updated'])) $this->data['date'] = date ('c', $this->application->data['updated']); else $this->data['date'] = date ('c'); // Moeda corrente if (isset ($this->data['flags']['currency'])) $this->data['currency'] = $this->data['flags']['currency']; else $this->data['currency'] = SYSTEM_DEFAULT_CURRENCY; // Nome e cdigo da moeda corrente $currency = $store->control->read ('labels/currency/' . $this->data['currency']); if (isset ($currency['text']['caption'])) $this->data['currency_caption'] = $currency['text']['caption']; else $this->data['currency_caption'] = $this->textMerge ($this->data['currency']); if (isset ($currency['local']['symbol'])) $this->data['currency_symbol'] = $currency['local']['symbol']; else $this->data['currency_symbol'] = $this->data['currency']; // Folha de estilo if (isset ($this->data['flags']['modLayout_sharedStyle'])) { // set shared references $this->data['url_styles'] = $this->urlFiles ($this->data['flags']['modLayout_sharedStyle'], true, '-shared'); $this->data['url_scripts'] = $this->urlFiles ($this->data['flags']['modLayout_sharedScript'], true, '-shared'); } // set shared references else { // define paths $template = $store->domainExtras->openChild ($this->domain->domainId, MODE_TEMPLATE, 0, 'templates/default'); if (isset ($template['updated'])) { // updated $date = TIME; $this->data['url_styles'] = $this->url (array ($this->domain->name, '-styles', 'ecolabore-generated-template-' . $date . '.css'), false); $this->data['url_icons'] = $this->url (array ($this->domain->name, '-icons', 'ecolabore-icons-' . $date . '.svg'), false); $this->data['url_scripts'] = $this->url (array ($this->domain->name, '-scripts', 'ecolabore-scripts-' . $date . '.js'), false); } // updated else { // static $this->data['url_styles'] = $this->url (array ($this->domain->name, '-styles', 'ecolabore-generated-template.css'), false); $this->data['url_icons'] = $this->url (array ($this->domain->name, '-icons', 'ecolabore-icons.svg'), false); $this->data['url_scripts'] = $this->url (array ($this->domain->name, '-scripts', 'ecolabore-scripts.js'), false); } // static } // define paths // Flags de acesso if ($this->access (1)) { // user is connected $this->data['user_is_connected'] = 1; if ($this->access (2)) { // user is subscribed $this->data['user_is_subscribed'] = 1; if ($this->access (3)) { // user is member $this->data['user_is_member'] = 1; if ($this->access (4)) $this->data['user_is_admin'] = 1; } // user is member } // user is subscribed } // user is connected if ($this->contentEditable) $this->data['editor_is_enabled'] = 1; // Renderiza o documento if ($this->printableLayout) $documentBase = $store->control->read ('base/print'); elseif (isset ($this->data['flags']['modLayout_base']) and $store->control->read ('base/' . $this->data['flags']['modLayout_base'])) $documentBase = $store->control->read ('base/' . $this->data['flags']['modLayout_base']); else $documentBase = $store->control->read ('base/responsive'); if (!isset ($documentBase['html'])) exit ('Template not found or not valid'); if (isset ($documentBase['parsed'])) $this->render->render_tags_level ($documentBase['parsed']); else $this->render->render_tags ($documentBase['html']); // Cola os recortes $this->renderCuts (); // Recolhe o documento pronto $this->buffer = $this->render->buffer; } // function render private function renderCuts () { // function renderCuts $render = $this->render; if (isset ($render->cuts['style'])) $render->cuts['style'] = $render->tags['style_open'] . CRLF . $render->cuts['style'] . $render->tags['style_close'] . CRLF; if (isset ($render->cuts['script']) or isset ($render->cuts['footerscript'])) { // script if (isset ($render->cuts['script'])) $render->cuts['script'] = $render->tags['script_open'] . CRLF . $render->cuts['script']; else $render->cuts['script'] = $render->tags['script_open'] . CRLF; if (isset ($render->cuts['footerscript'])) $render->cuts['script'] .= $render->cuts['footerscript']; $render->cuts['script'] .= $render->tags['script_close'] . CRLF; } // script for ($index = $render->pasteIndex; $index; $index--) { // loop cuts if (isset ($render->cuts[$render->pasteNames[$index]])) $render->buffer = substr_replace ($render->buffer, $render->cuts[$render->pasteNames[$index]], $render->pastePointer[$index], 0); } // loop cuts } // function renderCuts public function access ($level, $groups=false) { // function access if (!$level) return true; if (!defined ('ADMIN_IDENTIFIER')) return false; if (!$this->user->userId and $this->user->name != ADMIN_IDENTIFIER) return false; if ($level == 1) return true; if ($level == 2 and $this->subscription->domainId) return true; if ($groups === false) $groups = $this->application->groups; foreach ($groups as $group) { // walk groups list $status = $group->check ($this); if ($status >= $level) return true; } // walk groups list return false; } // function access public function actions () { // function actions $args = func_get_args (); if (!isset ($this->actions[$args[0]])) return false; $actions = $this->actions[$args[0]]; foreach ($args as $arg) { // each argument if ($arg != array_shift ($actions)) return false; } // each argument return true; } // function actions public function createFormulary ($controlName=false, $data=false, $prefix='edit') { // function createFormulary return new eclEngine_formulary ($this, $controlName, $data, $prefix); } // function createFormulary public function createListItem ($data=false, $local=array ()) { // function createListItem return new eclEngine_listItem ($this, $data, $local); } // function createListItem public function createMail () { // function createMail return new eclIo_smtp (); } // function createMail public function createModule ($name, $arguments=array ()) { // function createModule if (!preg_match ('/^[a-z][a-z0-9_]*$/', $name)) $name = 'default'; $mod = new eclEngine_module ($this); $this->mod->$name->setModule ($mod, $arguments); if (isset ($mod->data['local']['name'])) $name = $mod->data['local']['name']; if (isset ($this->ids[$name])) { // more instances $this->ids[$name]++; $mod->data['local']['name'] = $name . '_' . $this->ids[$name]; } // more instances else { // first instance $this->ids[$name] = 1; $mod->data['local']['name'] = $name; } // first instance return $mod; } // function createModule public function dataMerge ($data) { // function dataMerge global $store; if (is_string ($data)) $data = $store->control->read ($data); foreach ($data as $key => $value) { // each value switch ($key) { // switch key case 'text': case 'flags': case 'local': if (!is_array ($value)) break; foreach ($value as $field => $content) { // each field $this->data[$key][$field] = $content; } // each field break; default: $this->data[$key] = $value; } // switch key } // each value } // function dataMerge public function dataReplace ($data) { // function dataReplace global $store; if (is_string ($data)) $data = $store->control->read ($data); $this->data = array_replace_recursive (array ('flags' => $this->application->flags ()), $data); } // function dataReplace public function selectLanguage ($field) { // function selectLanguage static $cs = array (0 => 'UTF-8', 1 => 'ISO-8859-1'); // Se no houver contedo if (!is_array ($field) or !$field) return array (1 => '', 3 => $this->lang); // Vamos procurar o contedo no idioma do documento if (isset ($field[$this->lang])) { // found lang $content = $field[$this->lang]; $content[TEXT_LANG] = $this->lang; } // found lang elseif (isset ($field[$this->defaultLang])) { // default lang $content = $field[$this->defaultLang]; $content[TEXT_LANG] = $this->defaultLang; } // default lang else { // next language $lang = key ($field); $content = current ($field); $content[TEXT_LANG] = $lang; } // next language // Se no for especificada uma codificao if (!isset ($content[TEXT_CHARSET])) $content[TEXT_CHARSET] = 0; // UTF-8 // Se o contedo estiver em uma codificao diferente da do documento if (isset ($cs[$content[TEXT_CHARSET]]) and $cs[$content[TEXT_CHARSET]] != $this->charset) $content[TEXT_CONTENT] = mb_convert_encoding ($content[TEXT_CONTENT], $this->charset, $cs[$content[TEXT_CHARSET]]); return $content; } // function selectLanguage public function textRender ($field) { // function textRender $render = $this->render; $buffer = $render->buffer; $render->buffer = ''; $render->render ($this->selectLanguage ($field)); $result = $render->buffer; $render->buffer = $buffer; return $result; } // function textRender public function textMerge () { // function textMerge $result[$this->lang][TEXT_CONTENT] = ''; if ($this->charset == 'ISO-8859-1') $result[$this->lang][TEXT_CHARSET] = 1; $result[$this->lang][TEXT_HTML] = 2; foreach (func_get_args () as $field) { // each field if (is_string ($field)) $result[$this->lang][TEXT_CONTENT] .= $field; elseif (is_array ($field)) { // select language $content = $this->selectLanguage ($field); $result[$this->lang][TEXT_CONTENT] .= $content[TEXT_CONTENT]; } // select language elseif (is_int ($field)) $result[$this->lang][TEXT_CONTENT] .= strval ($field); } // each field return $result; } // function textMerge public function url ($pathway=true, $lang=true, $actions=true, $protocol=true) { // function url if ($protocol === true) $protocol = $this->protocol . '://'; elseif ($protocol === false) $protocol = 'http://'; else $protocol .= '://'; // Pathway if ($pathway === true) $pathway = $this->application->pathway; elseif (!is_array ($pathway) or !$pathway) $pathway = array ($this->domain->name); // Lang if ($lang === true) $lang = $this->lang; if ($lang !== false and $lang != $this->defaultLang) $pathway[] = $lang; // Actions if ($actions !== false) { // actions if (isset ($this->session['sid'])) { // add sid if (is_string ($actions)) $actions .= '_sid-' . $this->session['sid']; else $actions = '_sid-' . $this->session['sid']; } // add sid if (is_string ($actions)) $pathway[] = $actions; } // actions if ($this->mode == 0) { // hide default domain name if ($pathway[0] == SYSTEM_DEFAULT_DOMAIN_NAME or $pathway[0] == '-default') array_shift ($pathway); else $pathway[0] = '-' . $pathway[0]; } // hide default domain name elseif ($this->mode == 2) { // virtual hosts enabled $domain = array_shift ($pathway); if ($domain == SYSTEM_DEFAULT_DOMAIN_NAME) $url = $protocol . $this->beta . SYSTEM_HOST . '/'; else $url = $protocol . $this->beta . $domain . '.' . SYSTEM_HOST . '/'; if (!$this->rewriteEngine) { // add script name if (!$pathway) { // empty if (SYSTEM_SCRIPT_NAME == 'index.php') return $url; else return $url . SYSTEM_SCRIPT_NAME; } // empty $url .= SYSTEM_SCRIPT_NAME . '?url='; } // add script name if ($pathway) $url .= implode ('/', $pathway); return $url; } // virtual hosts enabled $url = $protocol . $this->host; if (!$this->rewriteEngine) { // add script name if (!$pathway) { // empty if (SYSTEM_SCRIPT_NAME == 'index.php') return $url; else return $url . SYSTEM_SCRIPT_NAME; } // empty $url .= SYSTEM_SCRIPT_NAME . '?url='; } // add script name $url .= implode ('/', $pathway); return $url; } // function url public function urlFiles ($file, $domain=true, $special='-files') { // function urlFiles if (is_bool ($domain)) $domain = $this->domain->name; if (SYSTEM_HOSTING_MODE == 2) { // virtual hosts enabled if ($domain == SYSTEM_DEFAULT_DOMAIN_NAME) $url = $this->protocol . '://' . $this->beta . SYSTEM_HOST . '/'; else $url = $this->protocol . '://' . $this->beta . $domain . '.' . SYSTEM_HOST . '/'; if (!$this->rewriteEngine) $url .= SYSTEM_SCRIPT_NAME . '?url='; $url .= $special . '/' . $file; return $url; } // virtual hosts enabled $url = $this->protocol . '://' . $this->host; if (!$this->rewriteEngine) $url .= SYSTEM_SCRIPT_NAME . '?url='; if (SYSTEM_HOSTING_MODE == 0) return $url . $special . '/' . $file; return $url . $domain . '/' . $special . '/' . $file; } // function urlFiles } // class eclEngine_document //!eof:engine/eclEngine/eclEngine_document.php; //!file:engine/eclEngine/eclEngine_formulary.php; class eclEngine_formulary extends eclEngine_listItem { // class eclEngine_formulary public $document; public $application; public $protocol = true; public $pathway = true; public $lang = true; public $action = true; public $multipart = false; public $data; public $flags = array (); public $received; public $prefix; public $errorMsg = false; public $required = false; public $hidden = array (); public $posteriori = 0; // 0=all 1=normal_only 2=posteriori_only public $submited = false; private $receivedCommands; private $baseTarget = ''; private $baseName = ''; public $control = array (); public $children = array (); private $level = 0; private $tower = array (); private $index = 0; public function __construct ($document, $controlName=false, $data=array (), $prefix='edit') { // function __construct global $store; $this->document = $document; $this->application = $document->application; $this->received = $document->received; if (isset ($document->data['flags'])) $this->flags = $document->data['flags']; $this->data = $data; $this->prefix = $prefix; if ($controlName !== false) { // open control if (is_array ($controlName)) $this->control = $controlName; else $this->control = $store->control->read ($controlName); if (isset ($this->control['flags'])) $this->flags = array_replace ($this->flags, $this->control['flags']); if (isset ($this->flags['prefix'])) $this->prefix = $this->flags['prefix']; if (isset ($this->flags['action'])) $this->action = $this->flags['action']; } // open control // check formulary id if (!$this->prefix or isset ($document->ids[$this->prefix])) $this->control['children'] = array ('_start', '_formularyIdCrash', '_end'); else { // correct insertion $document->ids[$this->prefix] = 1; $this->hidden[$this->prefix] = 'yes'; if (isset ($this->received[$this->prefix])) $this->submited = true; $this->prefix .= '_'; } // correct insertion if (isset ($this->control['children'])) $this->control['children'] = array_values ($this->control['children']); } // function __construct public function command ($command) { // function command if (!isset ($this->receivedCommands)) { // load commands if (!$this->submited) $this->receivedCommands = array (); else { // received $start = strlen ($this->prefix); foreach (array_keys ($this->received) as $key) { // each key if (substr ($key, 0, $start) != $this->prefix) continue; if (substr ($key, $start, 8) == 'command_') $this->receivedCommands[substr ($key, $start + 8)] = true; } // each key } // received } // load commands if (isset ($this->receivedCommands[$command])) return true; return false; } // function command public function levelUp ($control) { // function levelUp if (!isset ($control['children'])) return; $control['children'] = array_values ($control['children']); $this->level++; $this->tower[$this->level] = array ( 'children' => $this->children, 'control' => $this->control, 'index' => $this->index ); $this->children = array (); $this->control = $control; $this->index = 0; } // function levelUp public function insertControlChildren ($control) { // function insertControlChildren if (!isset ($control['children'])) return; $control['children'] = array_values ($control['children']); $this->level++; $this->tower[$this->level] = array ( 'control' => $this->control, 'index' => $this->index ); $this->control = $control; $this->index = 0; } // function insertControlChildren private function nextControl () { // function nextControl do { // loop levels if (isset ($this->control['flags']['base_target'])) $this->baseTarget = $this->control['flags']['base_target']; else $this->baseTarget = ''; if (isset ($this->control['flags']['base_name'])) $this->baseName = $this->control['flags']['base_name'] . '_'; else $this->baseName = ''; if (isset ($this->control['children'][$this->index])) { // child found $this->index++; return $this->control['children'][$this->index - 1]; } // found if (!$this->level) return false; $floor = $this->tower[$this->level]; if (isset ($floor['children'])) { // children level down end ($floor['children'])->children = $this->children; $this->children = $floor['children']; } // children level down $this->control = $floor['control']; $this->index = $floor['index']; unset ($this->tower[$this->level]); $this->level--; } // loop levels while (true); } // function nextControl public function create () { // function create global $store; $this->children = array (); $this->index = 0; if (!isset ($this->control['children'])) return $this; while ($name = $this->nextControl ()) { // each child if (is_string ($name)) { // open control if ($name[0] == '_') $name = 'system_form' . $name; $control = $store->control->read ($name); } // open control elseif (is_array ($name) and isset ($name['flags']['field_name'])) { // embed control $control = $name; $name = $control['flags']['field_name']; } // embed control else continue; // condition if (isset ($control['flags']['condition']) and !$this->condition ($control['flags']['condition'])) continue; // display field if (isset ($control['flags']['field_display']) and !$this->condition ($control['flags']['field_display'])) continue; // field name if (isset ($control['flags']['field_name'])) $fieldName = $this->prefix . $this->baseName . $control['flags']['field_name']; else $fieldName = $this->prefix . $this->baseName . $name; // required if (isset ($control['flags']['required'])) { // required $this->required = true; $control['required'] = 1; } // required // help if (isset ($control['flags']['help'])) $control['help'] = 1; // filter if (isset ($control['flags']['filter'])) { // use filter if (preg_match ('%^[a-z][a-zA-Z0-9_]*$%', $control['flags']['filter'])) { // valid filter name $filter = 'eclFilter_' . $control['flags']['filter']; if (isset ($control['flags']['view'])) $item = $filter::view ($fieldName, $control, $this); else $item = $filter::create ($fieldName, $control, $this); if (is_object ($item)) $this->appendChild ($item); } // valid filter name } // use filter else { // no filter if (isset ($control['flags']['type'])) $type = $control['flags']['type']; else $type = 'unknown'; $this->appendChild ($name, array ( 'name' => $fieldName, 'type' => $type )); } // no filter } // each child return $this; } // function create public function save ($posteriori=0) { // function save global $store; $this->index = 0; if (!$this->submited) return false; if (!isset ($this->control['children'])) return false; while ($name = $this->nextControl ()) { // each child if (is_string ($name)) { // open control if ($name[0] == '_') continue; $control = $store->control->read ($name); } // open control elseif (is_array ($name) and isset ($name['flags']['field_name'])) { // embed control $control = $name; $name = $control['flags']['field_name']; } // embed control else continue; if (!isset ($control['flags']['filter'])) continue; if (!preg_match ('%^[a-z][a-zA-Z0-9_]*$%', $control['flags']['filter'])) continue; if (isset ($control['flags']['condition']) and !$this->condition ($control['flags']['condition'])) continue; if (isset ($control['flags']['posteriori']) and $posteriori == 1) continue; if (!isset ($control['flags']['posteriori']) and $posteriori == 2) continue; if (isset ($control['flags']['view'])) continue; if (isset ($control['flags']['field_name'])) $fieldName = $this->prefix . $this->baseName . $control['flags']['field_name']; else $fieldName = $this->prefix . $this->baseName . $name; $filter = 'eclFilter_' . $control['flags']['filter']; $filter::save ($fieldName, $control, $this); } // each child if ($this->errorMsg) return false; return true; } // function save public function restore ($data=array ()) { // function restore global $store; if ($this->controlName === false) return false; $control = $store->control->read ($this->controlName); if (isset ($control['flags'])) $this->flags = array_replace ($this->flags, $control['flags']); if (isset ($control['children'])) { // children exists foreach ($control['children'] as $name) { // each child if ($name[0] == '_') $name = 'formulary' . $name; $control = $store->control->read ($name); if ( (!isset ($control['flags']['condition']) or $this->condition ($control['flags']['condition'])) and isset ($control['flags']['target'])) { // valid condition $target = $control['flags']['target']; $field = $this->getField ($target, $data); $this->setField ($target, $field); } // valid condition } // each child } // children exists } // function restore public function removeLanguage ($lang) { // function removeLanguage if (!isset ($this->data['text'])) return; foreach (array_keys ($this->data['text']) as $key) { // each field if (isset ($this->data['text'][$key][$lang])) unset ($this->data['text'][$key][$lang]); } // each field } // function removeLanguage public function getField ($path, $data=false) { // function getField $path = $this->baseTarget . $path; if (!strlen ($path)) return false; if ($data === false) $data = $this->data; $pathway = explode ('/', $path); $level = count ($pathway); $found[0] = $data; for ($i = 0; $i < $level; ) { // loop levels if (!isset ($found[$i][$pathway[$i]])) return false; $return = $found[$i][$pathway[$i]]; $i++; if ($level == $i) return $return; $found[$i] = $return; } // loop levels } // function getField public function setField ($path, $value=false) { // function setField $path = $this->baseTarget . $path; if (!strlen ($path)) return; $pathway = explode ('/', $path); $level = count ($pathway); $data = $this->data; do { // its not a loop if ($level == 1) { // level 1 $data[$pathway[0]] = $value; break; } // level 1 if (!isset ($data[$pathway[0]])) $data[$pathway[0]] = array (); if ($level == 2) { // level 2 $data[$pathway[0]][$pathway[1]] = $value; break; } // level 2 if (!isset ($data[$pathway[0]][$pathway[1]])) $data[$pathway[0]][$pathway[1]] = array (); if ($level == 3) { // level 3 $data[$pathway[0]][$pathway[1]][$pathway[2]] = $value; break; } // level 3 if (!isset ($data[$pathway[0]][$pathway[1]][$pathway[2]])) $data[$pathway[0]][$pathway[1]][$pathway[2]] = array (); if ($level == 4) { // level 4 $data[$pathway[0]][$pathway[1]][$pathway[2]][$pathway[3]] = $value; break; } // level 4 if (!isset ($data[$pathway[0]][$pathway[1]][$pathway[2]][$pathway[3]])) $data[$pathway[0]][$pathway[1]][$pathway[2]][$pathway[3]] = array (); if ($level == 5) { // level 5 $data[$pathway[0]][$pathway[1]][$pathway[2]][$pathway[3]][$pathway[4]] = $value; break; } // level 5 if (!isset ($data[$pathway[0]][$pathway[1]][$pathway[2]][$pathway[3]][$pathway[4]])) $data[$pathway[0]][$pathway[1]][$pathway[2]][$pathway[3]][$pathway[4]] = array (); if ($level == 6) { // level 6 $data[$pathway[0]][$pathway[1]][$pathway[2]][$pathway[3]][$pathway[4]][$pathway[5]] = $value; break; } // level 6 break; } // its not a loop while ('Ill never be evaluated'); if ($value === false) { // empty value switch ($level) { // clear fields case 6: if (!$data[$pathway[0]][$pathway[1]][$pathway[2]][$pathway[3]][$pathway[4]][$pathway[5]]) unset ($data[$pathway[0]][$pathway[1]][$pathway[2]][$pathway[3]][$pathway[4]][$pathway[5]]); case 5: if (!$data[$pathway[0]][$pathway[1]][$pathway[2]][$pathway[3]][$pathway[4]]) unset ($data[$pathway[0]][$pathway[1]][$pathway[2]][$pathway[3]][$pathway[4]]); case 4: if (!$data[$pathway[0]][$pathway[1]][$pathway[2]][$pathway[3]]) unset ($data[$pathway[0]][$pathway[1]][$pathway[2]][$pathway[3]]); case 3: if (!$data[$pathway[0]][$pathway[1]][$pathway[2]]) unset ($data[$pathway[0]][$pathway[1]][$pathway[2]]); case 2: if (!$data[$pathway[0]][$pathway[1]]) unset ($data[$pathway[0]][$pathway[1]]); case 1: if (!$data[$pathway[0]]) unset ($data[$pathway[0]]); } // clear fields } // empty value $this->data = $data; } // function setField public function setErrorMsg ($control, $fieldName, $msg=false, $value=false) { // function setErrorMsg if ($this->errorMsg) return; $local = $control['flags']; unset ($local['icon']); if (isset ($local['error_msg'])) $local['msg'] = $local['error_msg']; elseif ($msg !== false) $local['msg'] = $msg; else $local['msg'] = 'system_msg_alertErrorField'; $local['name'] = $fieldName; $local['return_id'] = $fieldName; if (isset ($control['text']['caption'])) $local['field_caption'] = $control['text']['caption']; if ($value !== false) $local['value'] = $this->htmlSpecialChars ($value); $this->errorMsg = $local; } // function setErrorMsg public function setRequiredMsg ($control, $fieldName, $msg=false) { // function setRequiredMsg if ($this->errorMsg) return; $local = $control['flags']; unset ($local['icon']); if (isset ($local['required_msg'])) $local['msg'] = $local['required_msg']; elseif ($msg !== false) $local['msg'] = $msg; else $local['msg'] = 'system_msg_alertRequiredField'; $local['name'] = $fieldName; $local['return_id'] = $fieldName; if (isset ($control['text']['caption'])) $local['field_caption'] = $control['text']['caption']; $this->errorMsg = $local; } // function setRequiredMsg public function condition ($condition) { // function condition if (!$condition) return true; $not = false; // Vamos separar os membros OR $or_list = explode ('||', $condition); foreach ($or_list as $or_condition) { // each or condition $result = true; $or_condition = trim ($or_condition); // Para cada membro OR, vamos criar uma lista AND $and_list = explode ('&&', $or_condition); foreach ($and_list as $and_condition) { // each and condition $c = trim ($and_condition); if ($c[0] == '!') { // negative operator on $not = true; $c = trim (substr ($c, 1)); } // negative operator on if (!$not and (!isset ($this->flags[$c]) or !$this->flags[$c]))$result = false; elseif ($not and isset ($this->flags[$c]) and $this->flags[$c])$result = false; $not = false; } // each and condition if ($result) return true; } // each or condition return false; } // function condition public function htmlSpecialChars ($string) { // function htmlSpecialChars return str_replace (array ('&', '<', '"'), array ('&', '<', '"'), $string ); } // function htmlSpecialChars public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; if (isset ($this->flags['modFormulary_preset'])) $template = 'formulary_' . $this->flags['modFormulary_preset']; elseif ($document->application->isDomain) $template = 'formulary_system'; else $template = 'formulary'; $mod->data = $document->render->block ('modules/' . $template); $mod->childrenMerge ($this->create ()); if (!$mod->children) return; if (isset ($this->control['local'])) { // set local scope if (isset ($mod->data['local'])) $mod->data['local'] = array_replace ($mod->data['local'], $this->control['local']); else $mod->data['local'] = $this->control['local']; } // set local scope if (isset ($this->control['text']['caption'])) $mod->data['local']['caption'] = $this->control['text']['caption']; $mod->data['local']['list'] = 'formulary'; // Se o mdulo pode ser editado if (!$document->application->isDomain and $document->templateEditable and $document->access (4, $document->domain->groups)) { // reference $pathway = array ($document->domain->name, '-personalite', 'modules', $template); $mod->data['local']['personalite_url'] = $document->url ($pathway); $caption = $store->control->read ('modFormulary_edit'); $mod->data['local']['personalite_caption'] = $caption['text']['caption']; } // reference $mod->enabled = true; } // function setModule } // class eclEngine_formulary //!eof:engine/eclEngine/eclEngine_formulary.php; //!file:engine/eclEngine/eclEngine_io.php; class eclEngine_io { // class eclEngine_io public $buffer = ''; public function __construct () { // function __construct $this->log = new eclIo_log (); } // function __construct public function __get ($name) { // function __get $class = 'eclIo_' . $name; $this->$name = new $class ($this); return $this->$name; } // function __get public function close () { // function close if (isset ($this->session)) $this->session->close (); foreach ($this as $name => $driver) { // close each driver if ($name == 'buffer' or $name == 'session' or $name == 'log' or $name == 'request') continue; if (!isset ($driver->isPhantom)) $driver->close (); } // close each driver // log o penltimo a ser fechado $this->log->close (); $this->buffer = $this->log->buffer; $this->request->close (); } // function close } // class eclEngine_io //!eof:engine/eclEngine/eclEngine_io.php; //!file:engine/eclEngine/eclEngine_listItem.php; class eclEngine_listItem { // class eclEngine_listItem public $document; public $me = false; public $data; public $children = array (); public function __construct ($document, $from=false, $local=array ()) { // function __construct global $store; $this->document = $document; if (is_string ($from)) $this->data = $store->control->read ($from); elseif (is_object ($from)) { // from object $this->data = $from->data; if (get_class ($from) == 'eclEngine_application') $this->me = $from; } // from object elseif (is_array ($from)) $this->data = $from; if ($local) { // local if (!$this->data) $this->data = $local; else $this->data = array_replace_recursive ($this->data, $local); } // local } // function __construct public function appendChild ($from=false, $local=array ()) { // function appendChild if (is_object ($from) and isset ($from->document)) { // from list item if ($local) $from->data = array_replace_recursive ($from->data, $local); $this->children[] = $from; return $from; } // from list item else $this->children[] = new eclEngine_listItem ($this->document, $from, $local); return end ($this->children); } // function appendChild public function childrenMerge ($from) { // function childrenMerge if (is_object ($from)) { // is object foreach ($from->children as $child) { // each child if (isset ($child->document)) $this->children[] = $child; else $this->children[] = new eclEngine_listItem ($this->document, $child); } // each child } // is object } // function childrenMerge public function url ($pathway=true, $lang=true, $action=true, $protocol=true) { // function url if ($pathway === true) { // get pathway if (isset ($this->me->pathway)) $pathway = $this->me->pathway; else $pathway = $this->document->application->pathway; } // get pathway $this->data['pathway'] = $pathway; $this->data['url'] = $this->document->url ($pathway, $lang, $action, $protocol); return $this; } // function url public function appendFolder ($folder) { // function appendFolder if (!isset ($this->data['pathway'])) { // set pathway if (isset ($this->me->pathway)) $this->data['pathway'] = $this->me->pathway; else $this->data['pathway'] = $this->document->application->pathway; } // set pathway $this->data['pathway'][] = $folder; $this->data['url'] = $this->document->url ($this->data['pathway']); return $this; } // function appendFolder public function confirm ($name, $formulary=false) { // function confirm if (!isset ($this->data['url'])) $this->data['url'] = $this->document->mod->humperstilshen->dialog ($name, array ('url' => $this->document->url ()), $formulary); else $this->data['url'] = $this->document->mod->humperstilshen->dialog ($name, array ('url' => $this->data['url']), $formulary); return $this; } // function confirm public function popUpOpen ($width=410, $height=600) { // function popUpOpen if (!isset ($this->data['url'])) $this->data['url'] = $this->document->url (); $this->data['url'] = "javaScript:humperstilshen.popUpOpen('" . $this->data['url'] . "', " . $width . ", " . $height . ")"; return $this; } // function popUpOpen public function dialog ($data) { // function dialog $this->data['url'] = $this->document->mod->humperstilshen->dialog ($data); return $this; } // function dialog public function active ($active=true) { // function active if ($active) $this->data['active'] = 1; return $this; } // function active public function virtual ($virtual=true) { // function virtual if ($virtual) $this->data['virtual'] = 1; return $this; } // function virtual public function set ($name, $value=1) { // function set if (!$value) unset ($this->data[$name]); elseif ($value === true) $this->data[$name] = 1; else $this->data[$name] = $value; return $this; } // function set public function swapTitle ($title=array ()) { // function swapTitle if (is_array ($this->data) and isset ($this->data['text']['title'])) $this->data['caption'] = $this->data['text']['title']; return $this; } // function swapTitle public function getVar ($name) { // function getVar if ($name[0] == '$') $name = substr ($name, 1); if (!is_array ($this->data)) return false; if (isset ($this->data[$name])) return $this->data[$name]; if (isset ($this->data['text'][$name])) return $this->data['text'][$name]; if (isset ($this->data['local'][$name])) return $this->data['local'][$name]; return false; } // function getVar public function editable ($access) { // function editable if (!$this->document->contentEditable) return $this; if ($access) $this->data['editable'] = 1; return $this; } // function editable public function sort ($sortBy="created", $sortDirection="asc") { // function sort if (!$this->children) return; $sorted = array (); $unsorted = array (); foreach ($this->children as $child) { // each child if (isset ($child->data[$sortBy])) $sorted[$child->data[$sortBy]][] = $child; else $unsorted[] = $child; } // each child if ($sortDirection == "asc") ksort ($sorted); else krsort ($sorted); $sorted[] = $unsorted; $result = array (); foreach ($sorted as $group) { // each group foreach ($group as $child) { // each child $result[] = $child; } // each child } // each group $this->children = $result; return $this; } // function sort } // class eclEngine_listItem //!eof:engine/eclEngine/eclEngine_listItem.php; //!file:engine/eclEngine/eclEngine_mod.php; class eclEngine_mod { // class eclEngine_mod private $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function __get ($name) { // function __get $class = 'eclMod_mod' . ucfirst ($name); $this->$name = new $class ($this->document); return $this->$name; } // function __get public function __set ($name, $value) { // function __set if (is_object ($value)) $this->$name = $value; elseif (is_string ($value)) { // new module $class = 'eclMod_' . $value; $this->$name = new $class ($this->document); } // new module } // function __set } // class eclEngine_mod //!eof:engine/eclEngine/eclEngine_mod.php; //!file:engine/eclEngine/eclEngine_module.php; class eclEngine_module extends eclEngine_listItem { // class eclEngine_module public $document; public $data = array (); public $children = array (); public $enabled = false; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function tr () { // function tr return $this->appendChild (); } // function tr public function td ($data) { // function td if (!$this->children) $this->appendChild (); $child = $this->document->createListItem ($data); $this->children[count ($this->children) - 1]->children[] = $child; return $child; } // function td } // class eclEngine_module //!eof:engine/eclEngine/eclEngine_module.php; //!file:engine/eclEngine/eclEngine_render.php; class eclEngine_render { // class eclEngine_render public $document; public $buffer = ''; public $data = false; public $me = false; public $mod = array (); public $children = array (); public $index = 0; public $blocks = array (); public $tags = array ( 'p_open' => '

', 'p_close' => '

', 'h1_open' => '

', 'h1_close' => '

', 'h2_open' => '

', 'h2_close' => '

', 'h3_open' => '

', 'h3_close' => '

', 'h4_open' => '

', 'h4_close' => '

', 'h5_open' => '
', 'h5_close' => '
', 'h6_open' => '
', 'h6_close' => '
', 'ul_open' => '', 'ol_open' => '
    ', 'ol_close' => '
', 'ol_open_first' => '
    ', 'al_open' => '
      ', 'al_close' => '
    ', 'li_open' => '
  1. ', 'li_close' => '
  2. ', 'pre_open' => '
    ', 
    'pre_close' => '
    ', 'code_open' => '
    ', 
    'code_close' => '
    ', 'inline_code_open' => '', 'inline_code_close' => '', 'style_open' => '', 'script_open' => '', 'hr' => '
    ' ); public $editableTags = array ( 'editable_open' => '', 'editable_open_empty' => '', 'editable_close' => '', 'p_open' => '

    ', 'p_close' => '

    ', 'h1_open' => '

    ', 'h1_close' => '

    ', 'h2_open' => '

    ', 'h2_close' => '

    ', 'h3_open' => '

    ', 'h3_close' => '

    ', 'h4_open' => '

    ', 'h4_close' => '

    ', 'h5_open' => '
    ', 'h5_close' => '
    ', 'h6_open' => '
    ', 'h6_close' => '
    ', 'ul_open' => '', 'ol_open' => '
      ', 'ol_close' => '
    ', 'ol_open_first' => '
      ', 'al_open' => '
        ', 'al_close' => '
      ', 'li_open' => '
    1. ', 'li_close' => '
    2. ', 'pre_open' => '
      ', 
      'pre_close' => '
      ', 'code_open' => '
      ', 
      'code_close' => '
      ', 'inline_code_open' => '', 'inline_code_close' => '', 'style_open' => '', 'script_open' => '', 'hr' => '
      ' ); public $css = array (); public $js = array (); public $cuts = array (); public $cutOnce = array (); public $scissorsIndex = 0; public $scissors = array (); public $pasteIndex = 0; public $pastePointer = array (); public $pasteNames = array (); public $tagsStack = array (); private $levelIndex = 0; private $levelArray = array (); public function __construct ($document=false) { // function __construct $this->document = $document; } // function __construct public function levelUp ($data) { // function levelUp $this->levelIndex++; $this->levelArray[$this->levelIndex] = array (); $a = &$this->levelArray[$this->levelIndex]; if (isset ($data['me'])) { // me $a['me'] = $this->me; $this->me = $data['me']; } // me if (isset ($data['data']) or isset ($data['local']) or isset ($data['text'])) { // data $a['data'] = $this->data; $this->data = array (); if (isset ($data['data'])) $this->data = $data['data']; if (isset ($data['local'])) $this->data = array_replace ($this->data, $data['local']); if (isset ($data['text'])) $this->data = array_replace ($this->data, $data['text']); } // data if (isset ($data['mod'])) { // mod $a['mod'] = $this->mod; $this->mod = $data['mod']; } // mod if (isset ($data['blocks'])) { // blocks $a['blocks'] = $this->blocks; $this->blocks = array_replace ($this->blocks, $data['blocks']); } // blocks if (isset ($data['css_src'])) { // css foreach ($data['css_src'] as $css) { // each css $this->css[$css] = true; } // each css } // css if (isset ($data['js_src'])) { // js foreach ($data['js_src'] as $js) { // each js $this->js[$js] = true; } // each js } // js if (isset ($data['children'])) { // children $a['children'] = $this->children; $a['index'] = $this->index; $this->children = $data['children']; if (isset ($data['index'])) $this->index = $data['index']; else $this->index = 0; } // children } // function levelUp public function levelDown () { // function levelDown foreach ($this->levelArray[$this->levelIndex] as $property => $value) { // each item $this->$property = $value; } // each item unset ($this->levelArray[$this->levelIndex]); $this->levelIndex--; } // function levelDown public function render ($content) { // function render static $s = array ('&', '<', '"'); static $r = array ('&', '<', '"'); if (is_string ($content)) $content = array ( TEXT_CONTENT => $content, TEXT_HTML => 2, TEXT_ECOLABORE => 1 ); if (!isset ($content[TEXT_CONTENT])) return; if (!strlen ($content[TEXT_CONTENT]) and !isset ($content[TEXT_EDITABLE])) return; if (isset ($content[TEXT_FORMAT]) and $content[TEXT_FORMAT]) { // text format if ($content[TEXT_FORMAT] == 2) { // pre formated text $content[TEXT_CONTENT] = str_replace ($s, $r, $content[TEXT_CONTENT]); $this->text2pre ($content); $this->buffer .= $content[TEXT_CONTENT]; return; } // pre formated text $this->text2html ($content); } // text format if (isset ($content[TEXT_ECOLABORE]) and $content[TEXT_ECOLABORE]) { // render tags $tagsLevel = count ($this->tagsStack); $this->render_tags ($content); for ($i = count ($this->tagsStack) - $tagsLevel; $i > 0; $i--) { // close pending tags $item = end ($this->tagsStack); $class = 'eclTag_end' . $item[0]; $class::render ($this, array ()); } // close pending tags } // render tags elseif ( (!isset ($content[TEXT_FORMAT]) or !$content[TEXT_FORMAT]) and (!isset ($content[TEXT_HTML]) or !$content[TEXT_HTML])) $this->buffer .= str_replace ($s, $r, $content[TEXT_CONTENT]); else $this->buffer .= $content[TEXT_CONTENT]; } // function render private function text2pre (&$content) { // function text2pre $string = trim ($content[TEXT_CONTENT]); // Converte quebras de linhas Windows para Linux $string = str_replace (CRLF, LF, $string); $string = str_replace (LF, CRLF, $string); $content[TEXT_CONTENT] = $this->tags['pre_open'] . $string . $this->tags['pre_close']; } // function text2pre private function filter_html ($string, $text_html=1, $editable=false) { // function filter_html static $valid_tags = array ( 'b' => true, // Texto em negrito 'br' => true, // Quebra de linha forada 'caption' => true, // Legenda de tabela 'col' => true, // Coluna de tabela 'colgroup' => true, // Grupo de colunas de tabela 'div' => true, // Contentor genrico 'em' => true, // nfase 'hr' => true, // Barra horizontal 'i' => true, // Texto em itlico 'mark' => true, // Destaque 's' => true, // Texto em negrito 'small' => true, // Texto pequeno 'span' => true, // Contentor genrico 'strong' => true, // Texto grande 'sub' => true, // Texto Subescrito 'sup' => true, // Texto superescrito 'table' => true, // Tabela 'tbody' => true, // Corpo de tabela 'td' => true, // Clula de tabela 'tfoot' => true, // Rodap de tabela 'th' => true, // Cabealho de tabela 'thead' => true, // Cabealho de tabela 'tr' => true, // Linha de tabela 'u' => true, // Texto sublinhado 'wbr' => true // Local propcio para quebra de linha ); // As tags que no trabalham em pares. static $single_tags = array ( 'br' => true, 'hr' => true, 'wbr' => true ); // A lista de argumentos permitidos por padro static $valid_arguments = array ( '/' => true, // Argumento padro para marcaes singulares 'abbr' => true, // Cabealho - legenda 'alt' => true, // Descrio 'axis' => true, // Lista de cabealhos relacionados 'cellpadding' => true, // Preenchimento da clula 'cellspacing' => true, // Espaamento entre clulas 'cite' => true, // Endereo da citao 'colspan' => true, // Nmero de colunas ocupadas pela clula 'frame' => true, // Parte do quadro a ser renderizado 'header' => true, // Cabealho 'height' => true, // Altura 'href' => true, // Endereo 'lang' => true, // Idioma 'name' => true, // Nome 'rowspan' => true, // Nmero de linhas ocupadas pela clula 'rules' => true, 'title' => true, // Ttulo - legenda 'local' => true, // Campo coberto pelas clulas do cabealho 'span' => true, 'src' => true, // Endereo do recurso 'style' => true, // Regras de folha de estilo 'summary' => true, // Descrio de estrutura para sada em fala 'width' => true // Largura ); if ($editable) { // editable content if (!$text_html) $string = str_replace ('<', '<', $string); $buffer = ''; $length = strlen ($string); $pointer = 0; do { // loop string $offset = strcspn ($string, '[', $pointer); if (!$offset) { // empty offset if (substr ($string, $pointer, 13) != '[placeholder:') $buffer .= $this->editableTags['editable_open_empty'] . $this->editableTags['editable_close']; } // empty offset else $buffer .= $this->editableTags['editable_open'] . substr ($string, $pointer, $offset) . $this->editableTags['editable_close']; $pointer += $offset; if ($pointer >= $length) return $buffer; $offset = strcspn ($string, ']', $pointer); $offset += strspn ($string, ']', $pointer + $offset); $markup = substr ($string, $pointer, $offset); if (substr ($markup, 0, 13) == '[placeholder:') { // placeholder $buffer .= ''; if ($pointer + $offset >= $length) return $buffer; } // placeholder else $buffer .= $markup; $pointer += $offset; } // loop string while (true); } // editable content // Se todo o HTML for permitido if ($text_html == 2) return $string; // Se nenhum HTML for permitido if (!$text_html) return str_replace ('<', '<', $string); // O resultado $result = ''; // O ponteiro que utilizaremos para percorrer a string $pointer = 0; // Vamos iniciar um loop infinito para percorrer a string while (true) { // infinity loop // Vamos procurar o incio de uma tag ("<") $start = strpos ($string, '<', $pointer); // Se no for encontrado, a tarefa terminou e sairemos do loop if ($start === false) { // tag not found $result .= substr ($string, $pointer); return $result; } // tag not found // Vamos procurar o fim da tag (">") $start++; $end = strpos ($string, '>', $start); /// Se no for encontrado, a tarefa terminou e sairemos do loop if ($end === false) { // tag end not found $result .= str_replace ('<', '<', substr ($string, $pointer)); return $result; } // tag end not found // Vamos recortar o contedo da tag e fazer uma anlize $tag = substr ($string, $start, $end - $start); $end++; // Vamos recortar cada elemento da tag preg_match_all ('/([a-zA-Z]+)([=]["][^"]*["])?\ ?\/?/', $tag, $preg); $array = $preg[1]; // O primeiro elemento corresponde prpria tag $original = array_shift ($array); $type = strtolower ($original); // Vamos comparar o primeiro elemento com a lista de tags vlidas $accept = false; if (isset ($valid_tags[$type])) { // accept tag $accept = true; // Vamos comparar os demais elementos com a lista de argumentos vlidos foreach ($array as $argument) { // each argument $argument = strtolower ($argument); if (!isset ($valid_arguments[$argument])) { // invalid argument $accept = false; break; } // invalid argument } // each argument } // accept tag // Se toda a tag foi aceita if ($accept) { // allow tag // Se a tag trabalha sozinha if (isset ($single_tags[$type])) { // allow single tag $result .= substr ($string, $pointer, $end - $pointer); } // allow single tag // Outro caso, iremos procurar uma tag de fechamento correspondente else { // allow double tag $close_tag = ''; $close_start = strpos ($string, $close_tag, $end); // Se a tag de fechamento no foi encontrada if ($close_start === false) { // deny no closed tag $result .= str_replace ('<', '<', substr ($string, $pointer, $end - $pointer)); } // deny no closed tag // Se encontramos a tag de fechamento else { // close tag found $result .= substr ($string, $pointer, $end - $pointer); // IMPORTANTE: O contedo encontrado entre as tags // ser analizado em busca de outras tags $result .= $this->filter_html (substr ($string, $end, $close_start - $end)); $result .= $close_tag; $end = $close_start + strlen ($close_tag); } // close tag found } // allow double tag } // allow tag // Caso a tag ou algum argumento no foi permitido else { // deny - escape html special chars $result .= str_replace ('<', '<', substr ($string, $pointer, $end - $pointer)); } // deny - escape html special chars // Avanaremos o ponteiro para continuar a anlize $pointer = $end; } // infinity loop } // function filter_html private function text2html (&$content) { // function text2html $string = trim ($content[TEXT_CONTENT]); isset ($content[TEXT_HTML]) ? $text_html = $content[TEXT_HTML] : $text_html = 0; isset ($content[TEXT_ECOLABORE]) ? $text_ecolabore = $content[TEXT_ECOLABORE] : $text_ecolabore = 0; isset ($content[TEXT_EDITABLE]) ? $editable = $content[TEXT_EDITABLE] : $editable = false; if ($editable) $marks = $this->editableTags; else $marks = $this->tags; // Converte quebras de linhas Windows para Linux $string = str_replace (CRLF, LF, $string); // o cumprimento total da string $strlen = strlen ($string); // Os ponteiros indicando o incio e o fim de um pargrafo $paragraph_start = 0; $paragraph_end = 0; // O resultado final $result = ''; // Anota se necessrio um pargrafo intermedirio $previousIsParagraph = false; // enquanto o ponteiro no alcanar o final da string while ($paragraph_start < $strlen) { // move pointer // um pargrafo delimitado por uma quebra de linha -- modificado v4.01 $paragraph_end = strpos ($string, LF, $paragraph_start); if ($paragraph_end === false) $paragraph_end = $strlen; else $paragraph_end++; // pega o primeiro caractre do pargrafo $char = $string[$paragraph_start]; switch ($char) { // switch char // Ignora os caractres case CR: case LF: case "\t": $paragraph_end = $paragraph_start + 1; break; // Listas case '*': case '#': case '@': if ($editable and !$previousIsParagraph) $result .= $marks['p_open'] . $this->filter_html ('', 2, $editable) . $marks['p_close'] . LF; $previousIsParagraph = false; $paragraph = substr ($string, $paragraph_start, $paragraph_end - $paragraph_start); // Separa as linhas do pargrafo $lines = explode (LF, $paragraph); $last = ''; $last_level = 0; // Percorre as linhas deste pargrafo foreach ($lines as $line) { // each line if (!strlen (trim ($line))) continue; // Quantos smbolos existem no incio desta linha $current_level = strspn ($line, '*#@'); // Recorta os smbolos encontrados para anlize posterior $current = substr ($line, 0, $current_level); $line = $this->filter_html (trim (substr ($line, $current_level)), $text_html, $editable); // Uma verso mais descomplicada da linha acima: // Retira os smbolos do incio da linha // $line = substr ($line, $current_level); // $line = trim ($line); // $line = $this->filter_html ($line, $text_html, $editable); // Se no houverem smbolos no incio desta linha, trata-se de uma // quebra acidental, o que nos leva a emendar esta linha com a linha anterior if (!$current_level and strlen ($line)) $result .= ' ' . $line; else { // valid line // Vamos comparar os smbolos da linha atual com a linha anterior // para determinar at que ponto so iguais for ($equal = 0; $equal < $last_level and $equal < $current_level and $current[$equal] == $last[$equal]; $equal++) { } // compare levels // Se o resultado indica que precisamos descer algum nvel da lista for ($level = $last_level; $level > $equal; $level--) { // loop level down $char = $last[$level - 1]; if ($char == '*') $result .= $marks['li_close'] . LF . $marks['ul_close'] . LF; elseif ($char == '#') $result .= $marks['li_close'] . LF . $marks['ol_close'] . LF; else $result .= $marks['li_close'] . LF . $marks['al_close'] . LF; } // loop level down // Se fechamos uma lista, a linha atual dever ser criada como um novo item if ($last_level > $equal and $equal) { // new item after close a list $result .= $marks['li_close'] . LF . $marks['li_open']; } // new item after close a list // Se o prefixo da lista anterior for idntico ao desta, // simplesmente criamos um novo item if ($last_level == $equal and $current_level == $equal and $equal) { // item in same level $result .= $marks['li_close'] . LF . $marks['li_open']; } // item in same level // Se for preciso criar sublistas for ($level = $equal; $level < $current_level; $level++) { // level up if ($level) $result .= LF; $char = $current[$level]; if ($char == '*') $result .= $marks['ul_open'] . LF . $marks['li_open']; elseif ($char == '#' and $level == 0) $result .= $marks['ol_open_first'] . LF . $marks['li_open']; elseif ($char == '#') $result .= $marks['ol_open'] . LF . $marks['li_open']; else $result .= $marks['al_open'] . LF . $marks['li_open']; } // level up // Finalmente, colocamos o contedo desta linha $result .= $line; // Preparamos a prxima iterao anotando os itens desta linha como // sendo os smbolos da linha anterior $last = $current; $last_level = $current_level; } // valid line } // each line // Acrescenta o fechamento do ltimo item da lista for ($level = $last_level; $level > 0; $level--) { // loop level down $char = $last[$level - 1]; if ($char == '*') $result .= $marks['li_close'] . LF . $marks['ul_close'] . LF; elseif ($char == '#') $result .= $marks['li_close'] . LF . $marks['ol_close'] . LF; else $result .= $marks['li_close'] . LF . $marks['al_close'] . LF; } // loop level down break; // Cabelhos - ou Ttulos case '=': $previousIsParagraph = true; $paragraph = substr ($string, $paragraph_start, $paragraph_end - $paragraph_start); // Vamos ver quantos smbolos = tem no incio do pargrafo $level = strspn ($paragraph, '='); // Se forem de 1 a 6 if ($level <= 6) { // valid header level // Vamos filtrar o pargrafo, removendo os sinais de = no incio e no final $paragraph = trim ($paragraph, "= \r\n\t"); $paragraph = $this->filter_html ($paragraph, $text_html, $editable); $result .= $marks['h' . $level . '_open'] . $paragraph . $marks['h' . $level . '_close'] . LF; } // valid header level // Se tiverem mais de 6 sinais de =, ser tratado como um pargrafo normal else $result .= $marks['p_open'] . $this->filter_html (trim ($paragraph), $text_html, $editable) . $marks['p_close'] . LF; break; // Um separador horizontal case '-': $paragraph = substr ($string, $paragraph_start, $paragraph_end - $paragraph_start); // Quantos hifens ("-") tem no pargrafo $level = strspn ($paragraph, '-'); // Vamos limpar o pargrafo $clean = trim ($paragraph, "- \r\n\t"); // Somente se houverem mais de 4 hifens e se no houver restado nada aps a limpeza if ($level > 4 and !strlen ($clean)) { // insert separator if ($editable and !$previousIsParagraph) $result .= $marks['p_open'] . $this->filter_html ('', 2, $editable) . $marks['p_close'] . LF; $previousIsParagraph = false; $result .= $marks['hr'] . LF; } // insert separator // Caso contrrio, este ser mais um pargrafo comum else { // insert paragraph $previousIsParagraph = true; $result .= $marks['p_open'] . $this->filter_html (trim ($paragraph), $text_html, $editable) . $marks['p_close'] . LF; } // insert paragraph break; // procura por marcaes que alteram o mtodo de formatao case '[': $start = $paragraph_start + 1; // Procura por ] $end = strpos ($string, ']', $start); // Se for encontrado if (is_int ($end)) { // end of tag found // Recortamos a tag $tag = substr ($string, $start, $end - $start); list ($type) = explode (':', $tag); $original = $type; // Vamos analizar seu contedo switch ($type) { // switch tag case 'style': case 'script': // Se no for permitido script ou style, as marcas sero convertidas if ($text_html != 2) $type = 'pre'; case 'code': case 'pre': // Vamos procurar pela marca de fechamento $close_tag = '[/' . $original . ']'; $close_length = strlen ($close_tag); $close_pos = strpos ($string, $close_tag, $end); // Se a encontrarmos if ($close_pos) { // close tag found if ($editable and !$previousIsParagraph) $result .= $marks['p_open'] . $this->filter_html ('', 2, $editable) . $marks['p_close'] . LF; $previousIsParagraph = false; $paragraph_end = $close_pos + $close_length; $end++; $paragraph = substr ($string, $end, $close_pos - $end); // Se o conteudo for do tipo code ou pre, escapamos o HTML if ($type == 'code' or $type == 'pre') $paragraph = str_replace ('<', '<', $paragraph); // Se o contedo for do tipo code e for preciso pular as marcaes if ($type == 'code' and $text_ecolabore) $paragraph = '[jump]' . str_replace ('[/jump]', '[[/jump]/jump][jump]', $paragraph) . '[/jump]'; $result .= $marks[$type . '_open'] . $paragraph . $marks[$type . '_close'] . LF; break 2; } // close tag found // outras marcaes sero consideradas como um pargrafo normal // simplesmente deixando o fluxo do programa prosseguir } // switch tag } // end of tag found // Um pargrafo normal default: $paragraph = trim (substr ($string, $paragraph_start, $paragraph_end - $paragraph_start)); if ($editable and substr ($paragraph, 0, 13) == '[placeholder:') { // placeholder $result .= $marks['p_open'] . $this->filter_html ($paragraph, 2, $editable) . $marks['p_close'] . LF; $previousIsParagraph = true; } // placeholder elseif ($text_ecolabore and strlen ($paragraph) > 1 and $paragraph[0] == '[' and $paragraph[strlen ($paragraph) - 1] == ']') { // markup alone if ($editable and !$previousIsParagraph) $result .= $marks['p_open'] . $this->filter_html ('', 2, $editable) . $marks['p_close'] . LF; $previousIsParagraph = false; $result .= $paragraph; } // markup alone else { // insert paragraph $previousIsParagraph = true; $result .= $marks['p_open'] . $this->filter_html ($paragraph, $text_html, $editable) . $marks['p_close'] . LF; } // insert paragraph } // switch char // Movemos o ponteiro adiante $paragraph_start = $paragraph_end; } // move pointer if ($editable and !$previousIsParagraph) $result .= $marks['p_open'] . $this->filter_html ('', 2, $editable) . $marks['p_close'] . LF; // converte quebras de linhas Linux para Windows $result = str_replace (LF, CRLF, $result); $content[TEXT_CONTENT] = $result; } // function text2html /* * 0 type * 1 value * 2 arguments * 3 sublevel * 4 silent * 5 parse error * * Type values * 0 string buffer * 1 function * 2 variable * 3 number * 4 operator * 5 precedent operator */ public function render_tags ($content, $parseOnly=false) { // function render_tags if (is_string ($content)) $_string = $content; elseif (is_array ($content) and isset ($content[1])) $_string = $content[TEXT_CONTENT]; else return; $_length = strlen ($_string); $_pointer = 0; $_array = array (); $_level = 1; $_index = array (1 => 0); PARSE_TAG_SEEK: $_pos = strpos ($_string, '[', $_pointer); if ($_pos === false) { // open tag not found $_array[$_level][$_index[$_level]] = array (0, substr ($_string, $_pointer)); goto PARSE_END_OF_STRING; } // open tag not found if ($_pos > $_pointer) { // buffer $_array[$_level][$_index[$_level]] = array (0, substr ($_string, $_pointer, $_pos - $_pointer)); $_index[$_level]++; } // buffer $_pointer = $_pos + 1; if ($_pointer == $_length) goto PARSE_END_OF_STRING; $_char = ord ($_string[$_pointer]); if ($_char == 93) { // [] $_array[$_level][$_index[$_level]] = array (0, '['); $_index[$_level]++; $_pointer++; if ($_pointer == $_length) goto PARSE_END_OF_STRING; goto PARSE_TAG_SEEK; } // [] PARSE_NEXT_INSTRUCTION: while ($_char == 9 or $_char == 10 or $_char == 13 or $_char == 32) // tab 9 lf 10 cr 13 espace 32 { // empty space $_pointer++; if ($_pointer == $_length) goto PARSE_END_OF_STRING; $_char = ord ($_string[$_pointer]); } // empty space if ($_char == 47 and $_pointer + 1 < $_length and ($_string[$_pointer + 1] == '/' or $_string[$_pointer + 1] == '*')) { // comment $_pointer++; $_char = ord ($_string[$_pointer]); if ($_char == 47) { // inline comment $_offset = strcspn ($_string, "\r\n;]", $_pointer); $_pointer += $_offset; if ($_pointer == $_length) goto PARSE_END_OF_STRING; $_char = ord ($_string[$_pointer]); } // inline comment elseif ($_char == 42) { // block comment $_pos = strpos ($_string, '*/', $_pointer); if ($_pos === false) goto PARSE_END_OF_STRING; $_pointer = $_pos + 2; if ($_pointer == $_length) goto PARSE_END_OF_STRING; $_char = ord ($_string[$_pointer]); } // block comment goto PARSE_NEXT_INSTRUCTION; } // comment if ($_char == 125) { // } level down $_level--; if (!$_level) goto PARSE_END_OF_STRING; $_array[$_level][$_index[$_level]][3] = $_array[$_level + 1]; $_index[$_level]++; unset ($_array[$_level + 1]); $_pointer++; if ($_pointer == $_length) goto PARSE_END_OF_STRING; $_char = ord ($_string[$_pointer]); goto PARSE_NEXT_INSTRUCTION; } // } level down if ($_char == 96) { // ` string $_pointer++; if ($_pointer == $_length) goto PARSE_END_OF_STRING; $pos = strpos ($_string, '`', $_pointer); if ($pos === false) goto PARSE_END_OF_STRING; $_array[$_level][$_index[$_level]] = array ( 0 => 0, 1 => substr ($_string, $_pointer, $pos - $_pointer) ); $_index[$_level]++; $_pointer = $pos + 1; if ($_pointer == $_length) goto PARSE_END_OF_STRING; $_char = ord ($_string[$_pointer]); goto PARSE_NEXT_INSTRUCTION; } // ` string $_offset = strcspn ($_string, '{};]', $_pointer); if (!$_offset) goto PARSE_END_OF_INSTRUCTION; $length = $_pointer + $_offset; $pointer = $_pointer; $char = ord ($_string[$pointer]); $silent = false; $name = ''; $level = 1; $index[1] = 0; $array = array (1 => array ()); if ($char == 64) { // @ silent $silent = true; while ($char == 9 or $char == 10 or $char == 13 or $char == 32 or $char == 64) // tab 9 lf 10 cr 13 espace 32 @ 64 { // empty space $pointer++; if ($pointer == $length) goto PARSE_END_OF_ARGUMENTS; $char = ord ($_string[$pointer]); } // empty space } // @ silent if ($char == 47) { // / end function $name .= 'end'; $pointer++; if ($pointer == $length) goto PARSE_END_OF_ARGUMENTS; $char = ord ($_string[$pointer]); } // / end function if ( ($char >= 65 and $char <= 90) or $char == 95 or ($char >= 97 and $char <= 122)) { // a-z _ A-Z do { // . a-z _ A-Z 0-9 $name .= $_string[$pointer]; $pointer++; if ($pointer == $length) goto PARSE_END_OF_ARGUMENTS; $char = ord ($_string[$pointer]); } // . a-z _ A-Z 0-9 while ($char == 46 or ($char >= 65 and $char <= 90) or $char == 95 or ($char >= 97 and $char <= 122) or ($char >= 48 and $char <= 57)); } // a-z _ A-Z // Elimina parnteses e espaos desnecessrios while ($char == 9 or $char == 10 or $char == 13 or $char == 32) // tab 9 lf 10 cr 13 espace 32 { // empty space $pointer++; if ($pointer == $length) goto PARSE_END_OF_ARGUMENTS; $char = ord ($_string[$pointer]); } // empty space if ($char == 40) { // () $char = ord ($_string[$length - 1]); while ($char == 9 or $char == 10 or $char == 13 or $char == 32 or $char == 64) // tab 9 lf 10 cr 13 espace 32 @ 64 { // rtrim $length--; $char = ord ($_string[$length - 1]); } // rtrim if ($char == 41) $length--; $pointer++; if ($pointer == $length) goto PARSE_END_OF_ARGUMENTS; $char = ord ($_string[$pointer]); } // () if ($char == 58 or $char == 94 or $char == 42) { // : ^ * string $pointer++; if ($pointer == $length) goto PARSE_END_OF_ARGUMENTS; if ($char == 94) $name = 'up'; if ($char == 42) $name = 'footnote'; $offset = strcspn ($_string, '{]', $pointer); $array[1][0] = array ( 0 => 0, 1 => substr ($_string, $pointer, $offset) ); $_offset = ($pointer + $offset) - $_pointer; goto PARSE_END_OF_ARGUMENTS; } // : ^ * string goto PARSE_NEXT_ARGUMENT_NO_DOWN; PARSE_NEXT_ARGUMENT: while (isset ($down[$level])) { // operator level down unset ($down[$level]); $level--; if (!$level) goto PARSE_END_OF_ARGUMENTS; $array[$level][$index[$level]][2] = $array[$level + 1]; unset ($array[$level + 1]); $index[$level]++; } // operator level down PARSE_NEXT_ARGUMENT_NO_DOWN: while ($char == 9 or $char == 10 or $char == 13 or $char == 32) // tab 9 lf 10 cr 13 espace 32 { // empty space $pointer++; if ($pointer == $length) goto PARSE_END_OF_ARGUMENTS; $char = ord ($_string[$pointer]); } // empty space if ($char == 45 or $char == 46 or ($char >= 48 and $char <= 57)) { // number $buffer = ''; do { // loop numbers $buffer .= $_string[$pointer]; $pointer++; if ($pointer == $length) break; $char = ord ($_string[$pointer]); } // loop numbers while ($char == 46 or ($char >= 48 and $char <= 57)); $array[$level][$index[$level]] = array ( 0 => 3, 1 => $buffer ); $index[$level]++; if ($pointer == $length) goto PARSE_END_OF_ARGUMENTS; $char = ord ($_string[$pointer]); goto PARSE_NEXT_ARGUMENT; } // number if ($char == 36) { // $ variable $pointer++; if ($pointer == $length) goto PARSE_END_OF_ARGUMENTS; $buffer = ''; do { // . a-z _ A-Z 0-9 $buffer .= $_string[$pointer]; $pointer++; if ($pointer == $length) break; $char = ord ($_string[$pointer]); } // . a-z _ A-Z 0-9 while ($char == 45 or $char == 46 or ($char >= 65 and $char <= 90) or $char == 95 or ($char >= 97 and $char <= 122) or ($char >= 48 and $char <= 57)); $array[$level][$index[$level]] = array ( 0 => 2, 1 => $buffer ); $index[$level]++; if ($pointer == $length) goto PARSE_END_OF_ARGUMENTS; $char = ord ($_string[$pointer]); goto PARSE_NEXT_ARGUMENT; } // $ variable if ( ($char >= 65 and $char <= 90) or $char == 95 or ($char >= 97 and $char <= 122)) { // function $buffer = ''; do { // . a-z _ A-Z 0-9 $buffer .= $_string[$pointer]; $pointer++; if ($pointer == $length) break; $char = ord ($_string[$pointer]); } // . a-z _ A-Z 0-9 while ($char == 46 or ($char >= 65 and $char <= 90) or $char == 95 or ($char >= 97 and $char <= 122) or ($char >= 48 and $char <= 57)); if ($buffer == 'and' or $buffer == 'or') { // operator if (!$index[$level]) goto PARSE_END_OF_ARGUMENTS; $index[$level]--; $operand = $array[$level][$index[$level]]; $array[$level][$index[$level]] = array (0 => 4, 1 => $buffer); // puts the operand into argument list $level++; $array[$level] = array (0 => $operand); $index[$level] = 1; // Alert to down a level after next operand $down[$level] = true; goto PARSE_NEXT_ARGUMENT_NO_DOWN; } // operator else $array[$level][$index[$level]] = array (0 => 1, 1 => $buffer); if ($pointer == $length) goto PARSE_END_OF_ARGUMENTS; while ($char == 9 or $char == 10 or $char == 13 or $char == 32 or $char == 44) // tab 9 lf 10 cr 13 espace 32 , 44 { // empty space $pointer++; if ($pointer == $length) goto PARSE_END_OF_ARGUMENTS; $char = ord ($_string[$pointer]); } // empty space if ($char == 40) { // ( level up $pointer++; if ($pointer == $length) goto PARSE_END_OF_ARGUMENTS; $level++; $index[$level] = 0; $array[$level] = array (); $char = ord ($_string[$pointer]); goto PARSE_NEXT_ARGUMENT; } // ( level up $index[$level]++; $char = ord ($_string[$pointer]); goto PARSE_NEXT_ARGUMENT; } // function if ($char == 40) { // ( level up $array[$level][$index[$level]] = array ( 0 => 1, 1 => '' ); $level++; $index[$level] = 0; $array[$level] = array (); $pointer++; if ($pointer == $length) goto PARSE_END_OF_ARGUMENTS; $char = ord ($_string[$pointer]); goto PARSE_NEXT_ARGUMENT; } // ( level up if ($char == 41) { // ) level down $level--; if (!$level) goto PARSE_END_OF_ARGUMENTS; $array[$level][$index[$level]][2] = $array[$level + 1]; $index[$level]++; while (isset ($down[$level])) { // operator level down unset ($down[$level]); $level--; if (!$level) goto PARSE_END_OF_ARGUMENTS; $array[$level][$index[$level]][2] = $array[$level + 1]; $index[$level]++; } // operator level down $pointer++; if ($pointer == $length) goto PARSE_END_OF_ARGUMENTS; $char = ord ($_string[$pointer]); goto PARSE_NEXT_ARGUMENT; } // ) level down if ($char == 96) { // ` string $pointer++; if ($pointer == $_length) goto PARSE_END_OF_STRING; $pos = strpos ($_string, '`', $pointer); if ($pos === false) goto PARSE_END_OF_STRING; $array[$level][$index[$level]] = array ( 0 => 0, 1 => substr ($_string, $pointer, $pos - $pointer) ); $index[$level]++; if ($pos > $length) { // new ending $pointer = $pos + 1; $_pointer = $pointer; $_offset = strcspn ($_string, ';{]', $pointer); if (!$_offset) goto PARSE_END_OF_ARGUMENTS; $length = $pointer + $_offset; } // new ending else $pointer = $pos + 1; if ($pointer == $length) goto PARSE_END_OF_ARGUMENTS; $char = ord ($_string[$pointer]); goto PARSE_NEXT_ARGUMENT; } // ` string if ($char == 33) { // ! operator $pointer++; if ($pointer == $length) goto PARSE_END_OF_ARGUMENTS; $char = ord ($_string[$pointer]); $array[$level][$index[$level]] = array (0 => 5, 1 => '!'); $level++; $array[$level] = array (); $index[$level] = 0; // Alert to down a level after next operand $down[$level] = true; goto PARSE_NEXT_ARGUMENT_NO_DOWN; } // ! operator if ($char == 38 or $char == 42 or $char == 43 or $char == 45 or $char == 47 or $char == 60 or $char == 61 or $char == 62) { // = + - / * += -= /= *= == & | operadores $buffer = $_string[$pointer]; $pointer++; if ($pointer == $length) goto PARSE_END_OF_ARGUMENTS; $char = ord ($_string[$pointer]); if ($char == 38 or $char == 42 or $char == 43 or $char == 45 or $char == 47 or $char == 60 or $char == 61 or $char == 62) { // second operator $buffer .= $_string[$pointer]; $pointer++; if ($pointer == $length) goto PARSE_END_OF_ARGUMENTS; $char = ord ($_string[$pointer]); } // second operator if (!$index[$level]) goto PARSE_END_OF_ARGUMENTS; $index[$level]--; $operand = $array[$level][$index[$level]]; $array[$level][$index[$level]] = array (0 => 4, 1 => $buffer); // puts the operand into argument list $level++; $array[$level] = array (0 => $operand); $index[$level] = 1; // Alert to down a level after next operand $down[$level] = true; goto PARSE_NEXT_ARGUMENT_NO_DOWN; } // = + - / * += -= /= *= == & | operadores // salta caractres no reconhecidos at aqui $pointer++; if ($pointer < $length) { // unrecognized char $char = ord ($_string[$pointer]); goto PARSE_NEXT_ARGUMENT; } // unrecognized char PARSE_END_OF_ARGUMENTS: while (isset ($down[$level])) { // operator level down unset ($down[$level]); $level--; if (!$level) break; $array[$level][$index[$level]][2] = $array[$level + 1]; unset ($array[$level + 1]); } // operator level down if (strlen ($name) or $array[1]) { // creates a new function if ($name == 'noparse') { // noparse $offset = strcspn ($_string, ']', $_pointer); $_pointer += $offset + 1; $end = strpos ($_string, '[/noparse', $_pointer); if ($end === false) $end = $_length; $_array[$_level][$_index[$_level]] = array ( 0 => 0, 1 => substr ($_string, $_pointer, $end), 2 => array (), 4 => false ); $_pointer = $end; if ($_pointer == $_length) goto PARSE_END_OF_STRING; $_pointer += 9; $_char = ord ($_string[$_pointer]); if ($_pointer == $_length) goto PARSE_END_OF_STRING; goto PARSE_NEXT_INSTRUCTION; } // noparse $_array[$_level][$_index[$_level]] = array ( 0 => 1, 1 => $name, 2 => $array[1], 4 => $silent ); $_pointer += $_offset; if ($_pointer == $_length) goto PARSE_END_OF_STRING; $_char = ord ($_string[$_pointer]); if ($_char == 123) { // { level up $_level++; $_array[$_level] = array (); $_index[$_level] = 0; $_pointer++; if ($_pointer == $_length) goto PARSE_END_OF_STRING; $_char = ord ($_string[$_pointer]); goto PARSE_NEXT_INSTRUCTION; } // { level up else $_index[$_level]++; goto PARSE_END_OF_INSTRUCTION; } // creates a new function $_pointer += $_offset; if ($_pointer == $_length) goto PARSE_END_OF_STRING; $_char = ord ($_string[$_pointer]); PARSE_END_OF_INSTRUCTION: if ($_char == 59) { // ; end of instruction $_pointer++; if ($_pointer == $_length) goto PARSE_END_OF_STRING; $_char = ord ($_string[$_pointer]); goto PARSE_NEXT_INSTRUCTION; } // ; end of instruction if ($_char == 93) { // ] $_pointer++; if ($_pointer == $_length) goto PARSE_END_OF_STRING; if (ord ($_string[$_pointer]) == 13) { // cr $_pointer++; if ($_pointer == $_length) goto PARSE_END_OF_STRING; } // cr if (ord ($_string[$_pointer]) == 10) { // lf $_pointer++; if ($_pointer == $_length) goto PARSE_END_OF_STRING; } // lf goto PARSE_TAG_SEEK; } // ] // unrecognized char $_pointer++; if ($_pointer == $_length) goto PARSE_END_OF_STRING; $_char = ord ($_string[$_pointer]); goto PARSE_NEXT_INSTRUCTION; PARSE_END_OF_STRING: if ($parseOnly) return $_array[1]; $this->render_tags_level ($_array[1]); } // function render_tags public function render_tags_level ($array) { // function render_tags_level $length = count ($array); if (!$length) return; $index = 0; goto LEVEL_NEXT_INSTRUCTION_1; LEVEL_NEXT_INSTRUCTION: $index++; if ($index == $length) return; LEVEL_NEXT_INSTRUCTION_1: $current = $array[$index]; if (!isset ($current[1])) goto LEVEL_NEXT_INSTRUCTION; if ($current[0] == 0) { // buffer $this->buffer .= $current[1]; goto LEVEL_NEXT_INSTRUCTION; } // buffer if (isset ($current[2]) and $current[2]) $arguments = $this->render_tags_arguments ($current[2]); else $arguments = array (); switch ($current[1]) { // switch function name case 'if': if ($arguments and ( (is_string ($arguments[0]) and strlen ($arguments[0]) and $arguments[0] != '0') or (!is_string ($arguments[0]) and $arguments[0]) )) { // if condition evaluates true if (isset ($current[3]) and $current[3]) $this->render_tags_level ($current[3]); goto LEVEL_NEXT_INSTRUCTION; } // if condition evaluates true while ($index + 1 != $length and isset ($array[$index + 1][1]) and $array[$index + 1][1] == 'elseif') { // loop elseif $current = $array[$index + 1]; if (isset ($current[2])) { // conditions exists $arguments = $this->render_tags_arguments ($current[2]); if ($arguments and $arguments[0]) { // elseif condition evaluates true if (isset ($current[3]) and $current[3]) $this->render_tags_level ($current[3]); $index++; goto LEVEL_NEXT_INSTRUCTION; } // elseif condition evaluates true } // conditions exists $index++; } // loop elseif if ($index + 1 != $length and isset ($array[$index + 1][1]) and $array[$index + 1][1] == 'else') { // else $current = $array[$index + 1]; if (isset ($current[3]) and $current[3]) $this->render_tags_level ($current[3]); $index++; } // else goto LEVEL_NEXT_INSTRUCTION; case 'elseif': case 'else': goto LEVEL_NEXT_INSTRUCTION; case 'loop': do { // loop if (isset ($current[3]) and $current[3]) $this->render_tags_level ($current[3]); } // loop while (eclTag_loop::render ($this)); goto LEVEL_NEXT_INSTRUCTION; case '': if (isset ($arguments[0]) and (!isset ($current[4]) or !$current[4])) $this->buffer .= strval ($arguments[0]); goto LEVEL_NEXT_INSTRUCTION; default: if (!preg_match ('/^[a-z][a-z0-9_]+$/', $current[1])) goto LEVEL_NEXT_INSTRUCTION; $class = 'eclTag_' . $current[1]; $local = $class::render ($this, $arguments); if (!is_array ($local) or !$local) { // empty if ($index + 1 != $length and isset ($array[$index + 1][1]) and $array[$index + 1][1] == 'else') { // else $current = $array[$index + 1]; if (isset ($current[3]) and $current[3]) $this->render_tags_level ($current[3]); $index++; } // else goto LEVEL_NEXT_INSTRUCTION; } // empty if (isset ($current[4]) and $current[4]) goto LEVEL_NEXT_INSTRUCTION; if (isset ($current[3]) and $current[3]) { // not empty $this->levelUp ($local); $this->render_tags_level ($current[3]); $this->levelDown (); goto LEVEL_NEXT_INSTRUCTION; } // not empty if (isset ($local['parsed'])) { // parsed content $this->levelUp ($local); $this->render_tags_level ($local['parsed']); $this->levelDown (); goto LEVEL_NEXT_INSTRUCTION; } // parsed content if (isset ($local['html'][0])) { // render html $this->levelUp ($local); $this->render_tags ($local['html']); $this->levelDown (); goto LEVEL_NEXT_INSTRUCTION; } // render html switch ($current[1]) { // switch tag case 'audio': case 'box': case 'dinamic': case 'file': case 'html': case 'img': case 'mod': case 'table': case 'video': $this->levelUp ($local); // eclRender_renderBorders_none::render ($this); $border = $this->block ('borders/default'); $this->render ($border['html']); $this->levelDown (); goto LEVEL_NEXT_INSTRUCTION; } // switch tag } // switch function name goto LEVEL_NEXT_INSTRUCTION; } // function render_tags_level public function getVar ($name) { // function getVar if ($name[0] == '$') $name = substr ($name, 1); for ($watchDog = 10; $watchDog; $watchDog--) { // loop search value $value = $this->getVarSearch ($name); if (!is_string ($value)) return $value; if (!isset ($value[0])) return $value; if ($value[0] != '$') return $value; $name = substr ($value, 1); } // loop search value } // function getVar private function getVarSearch ($name) { // function getVarSearch global $system; $parts = explode ('.', $name); if (count ($parts) == 1) { // local scope if (isset ($this->data[$name])) return $this->data[$name]; if (isset ($this->data['text'][$name])) return $this->data['text'][$name]; if (isset ($this->data['local'][$name])) return $this->data['local'][$name]; if (is_array ($this->data)) { // control mode if (isset ($this->data[$name])) return $this->data[$name]; if (isset ($this->data['text'][$name])) return $this->data['text'][$name]; if (isset ($this->data['local'][$name])) return $this->data['local'][$name]; } // control mode if (is_object ($this->data)) { // application mode } // application mode return ''; } // local scope list ($prefix, $name) = $parts; switch ($prefix) { // switch scope name case 'mod': if (isset ($this->mod[$name])) return $this->mod[$name]; if (isset ($this->mod['text'][$name])) return $this->mod['text'][$name]; if (isset ($this->mod['local'][$name])) return $this->mod['local'][$name]; return ''; case 'system': $me = $system; break; case 'user': case 'subscription': if ($this->document->pathway[0] != SYSTEM_PROFILES_URI or !isset ($document->data['user_data_access_enabled'])) { // prevent access to user data switch ($name) { // switch name case 'caption': case 'title': break; default: return 'Access denied for user data'; } // switch name } // prevent access to user data case 'domain': case 'home': $me = $this->document->$prefix; break; case 'document': $me = $this->document; break; case 'session': if (isset ($this->document->session[$name])) return $this->document->session[$name]; if (isset ($this->document->session['text'][$name])) return $this->document->session['text'][$name]; if (isset ($this->document->session['local'][$name])) return $this->document->session['local'][$name]; return ''; default: return ''; } // switch scope name if (isset ($me->data[$name])) return $me->data[$name]; if (isset ($me->data['text'][$name])) return $me->data['text'][$name]; if (isset ($me->data['local'][$name])) return $me->data['local'][$name]; return ''; } // function getVarSearch private function render_tags_arguments ($array) { // function render_tags_arguments $arguments = array (); foreach ($array as $current) { // each argument switch ($current[0]) { // switch argument type case 0: case 3: $arguments[] = $current[1]; break; case 1: if (isset ($current[2]) and $current[2]) $sub = $this->render_tags_arguments ($current[2]); else $sub = array (); if ($current[1] == '') { // anonimous function if (isset ($sub[0])) $arguments[] = $sub[0]; } // anonimous function else { // sub function if (preg_match ('/^[a-z][a-z0-9_]*$/', $current[1])) { // valid function $func = 'eclTag_' . $current[1]; $arguments[] = $func::render ($this, $sub); } // valid function } // sub function break; case 2: $arguments[] = $this->getVar ($current[1]); break; case 4: if (!isset ($current[2]) or !$current[2]) break; $sub = $this->render_tags_arguments ($current[2]); if (count ($sub) < 2) break; switch ($current[1]) { // switch operator case 'and': if ($sub[0] and $sub[1]) $arguments[] = 1; else $arguments[] = 0; break; case 'or': if ($sub[0]) $arguments[] = $sub[0]; elseif ($sub[1]) $arguments[] = $sub[1]; else $arguments[] = ''; break; } // switch operator break; case 5: if (!isset ($current[2]) or !$current[2]) break; $sub = $this->render_tags_arguments ($current[2]); if (!count ($sub)) break; switch ($current[1]) { // switch operator case '!': if ($sub[0]) $arguments[] = 0; else $arguments[] = 1; } // switch operator break; } // switch argument type } // each argument return $arguments; } // function render_tags_arguments public function toKeyword ($key) { // function toKeyword static $convert = array ('a' => 'a', 'b' => 'b', 'c' => 'c', 'd' => 'd', 'e' => 'e', 'f' => 'f', 'g' => 'g', 'h' => 'h', 'i' => 'i', 'j' => 'j', 'k' => 'k', 'l' => 'l', 'm' => 'm', 'n' => 'n', 'o' => 'o', 'p' => 'p', 'q' => 'q', 'r' => 'r', 's' => 's', 't' => 't', 'u' => 'u', 'v' => 'v', 'w' => 'w', 'x' => 'x', 'y' => 'y', 'z' => 'z', 'A' => 'a', 'B' => 'b', 'C' => 'c', 'D' => 'd', 'E' => 'e', 'F' => 'f', 'G' => 'g', 'H' => 'h', 'I' => 'i', 'J' => 'j', 'K' => 'k', 'L' => 'l', 'M' => 'm', 'N' => 'n', 'O' => 'o', 'P' => 'p', 'Q' => 'q', 'R' => 'r', 'S' => 's', 'T' => 't', 'U' => 'u', 'V' => 'v', 'W' => 'w', 'X' => 'x', 'Y' => 'y', 'Z' => 'z', '' => 'a', '' => 'a', '' => 'a', '' => 'a', '' => 'a', '' => 'a', '' => 'a', '' => 'a', '' => 'a', '' => 'a', '' => 'c', '' => 'c', '' => 'e', '' => 'e', '' => 'e', '' => 'e', '' => 'e', '' => 'e', '' => 'i', '' => 'i', '' => 'i', '' => 'i', '' => 'i', '' => 'i', '' => 'o', '' => 'o', '' => 'o', '' => 'o', '' => 'o', '' => 'o', '' => 'o', '' => 'o', '' => 'u', '' => 'u', '' => 'u', '' => 'u', '' => 'u', '' => 'u', '' => 'y', '' => 'y', '' => 'y', '' => 'y', '-' => '-', '1' => '1', '2' => '2', '3' => '3', '4' => '4', '5' => '5', '6' => '6', '7' => '7', '8' => '8', '9' => '9', '0' => '0', '_' => '_', ' ' => '_'); // The $last will remember the last character of the convertion // to prevent duplicated spacing "__" or "--" in the name $result = ''; $last = ' '; foreach (str_split ($key) as $char) { // each char if (!isset ($convert[$char])) continue; $valid = $convert[$char]; if ($valid != $last) { // not repeated separator if ($valid == '-' or $valid == ' ' or $valid == '_') $last = $valid; else $last = ''; $result .= $valid; } // not repeated separator } // each char return trim ($result, '-_'); } // function toKeyword public function block ($name) { // function block global $store; static $opened = false; if (!strpos ($name, '/')) return array (); if (!$opened and !$this->blocks) { // open $opened = true; if ($this->document->domain->domainId) { // open template $children = $store->domainExtras->children ($this->document->domain->domainId, MODE_TEMPLATE, 0); foreach ($children as $data) { // each block $this->blocks[$data['name']] = $data; } // each block } // open template } // open if (isset ($this->blocks[$name])) return $this->blocks[$name]; return $store->control->read ($name); } // function block public function stackPop ($type) { // function stackPop $exists = false; foreach ($this->tagsStack as $item) { // each stack item if ($item[0] == $type) { // exists $exists = true; break; } // exists } // each item if (!$exists) return false; do { // loop each level $item = end ($this->tagsStack); if ($item[0] == $type) { // found $item = array_pop ($this->tagsStack); return $item[1]; } // found $class = 'eclTag_end' . $item[0]; $class::render ($render, array ()); } // each stack item while (true); } // function stackPop } // class eclEngine_render //!eof:engine/eclEngine/eclEngine_render.php; //!file:engine/eclEngine/eclEngine_store.php; class eclEngine_store { // class eclEngine_store public function __get ($name) { // function __get $class = 'eclStore_' . $name; $this->$name = new $class; return $this->$name; } // function __get public function close () { // function close foreach ($this as $name => $driver) { // close each driver if (!isset ($driver->isPhantom)) $driver->close (); } // close each driver } // function close } // class eclEngine_store //!eof:engine/eclEngine/eclEngine_store.php; //!file:engine/eclFilter/eclFilter_amount.php; /* * Valid control flags: * control_type text_tiny_leftfield | text_tiny | text_small | range * control_filter = integer * control_target * control_field_name * control_clear * control_default_value * control_clear_default_value => clear the field when the value is the default value * control_min_input => adjust the value if received is smaller * control_max_input => adjust the value if received is bigger * control_step => for use with range inputs * control_help * control_help_msg */ class eclFilter_amount { // class eclFilter_amount static function create ($fieldName, $control, $formulary) { // function create $local['name'] = $fieldName; // type if (isset ($control['flags']['type'])) $local['type'] = $control['flags']['type']; else $local['type'] = 'text_small'; // help if (isset ($control['flags']['help']) and !isset ($control['flags']['help_msg'])) $local['help_msg'] = 'system_msg_filterIntegerHelp'; // target if (isset ($control['flags']['target'])) $value = $formulary->getField ($control['flags']['target']); else $value = false; // default_value if ($value === false and isset ($control['flags']['default_value'])) $value = $control['flags']['default_value']; $local['value'] = $value; if (isset ($control['flags']['min_input'])) $local['min'] = $control['flags']['min_input']; if (isset ($control['flags']['max_input'])) $local['max'] = $control['flags']['max_input']; if (isset ($control['flags']['step'])) $local['step'] = $control['flags']['step']; $formulary->appendChild ($control, $local); } // function create static function save ($fieldName, $control, $formulary) { // function save if (isset ($formulary->received[$fieldName])) { // received value $value = $formulary->received[$fieldName]; if (!preg_match ('/^[-]?[0-9]+$/', $value)) $value = false; } // received value else $value = false; // clear if ($value === false and !isset ($control['flags']['clear'])) $value = 0; if (isset ($control['flags']['default_value']) and isset ($control['flags']['clear_default_value']) and $value == $control['flags']['default_value']) $value = false; if ($value !== false) { // valid value settype ($value, 'int'); // min_input if (isset ($control['flags']['min_input']) and $value < $control['flags']['min_input']) $value = $control['flags']['min_input']; // max_input if (isset ($control['flags']['max_input']) and $value > $control['flags']['max_input']) $value = $control['flags']['max_input']; } // received value // target if (isset ($control['flags']['target'])) $formulary->setField ($control['flags']['target'], $value); } // function save } // class eclFilter_amount //!eof:engine/eclFilter/eclFilter_amount.php; //!file:engine/eclFilter/eclFilter_caption.php; class eclFilter_caption { // class eclFilter_caption static function create ($fieldName, $control, $formulary) { // function create static $s = array ('&', '<', '"'); static $r = array ('&', '<', '"'); static $cs = array ('UTF-8', 'ISO-8859-1'); $document = $formulary->document; $item = $document->createListItem ($control); $item->data['name'] = $fieldName; if (isset ($control['flags']['type'])) $item->data['type'] = $control['flags']['type']; else $item->data['type'] = 'text'; if (isset ($control['flags']['target']) and $text = $formulary->getField ($control['flags']['target'])) { // get field $lang = $document->lang; $charset = $document->charset; if (isset ($text[$lang])) $found = $text[$lang]; elseif (isset ($control['flags']['monolang'])) $found = current ($text); if (isset ($found[TEXT_CONTENT])) { // contents exists if (!isset ($found[TEXT_CHARSET])) $found[TEXT_CHARSET] = 0; if ($charset != $cs[$found[TEXT_CHARSET]]) $value = mb_convert_encoding ($found[TEXT_CONTENT], $charset, $cs[$found[TEXT_CHARSET]]); else $value = $found[TEXT_CONTENT]; $item->data['value'] = str_replace ($s, $r, $value); } // contents exists } // get field return $item; } // function create static function save ($fieldName, $control, $formulary) { // function save if (!isset ($formulary->received[$fieldName]) or $formulary->received[$fieldName] == '') { // empty field if (isset ($control['flags']['required'])) return $formulary->setRequiredMsg ($control, $fieldName); if (isset ($formulary->data['text']['title'][$formulary->document->lang][1])) $caption = $formulary->data['text']['title'][$formulary->document->lang][1]; if (!isset ($caption) or !$caption) return $formulary->setRequiredMsg ($control, $fieldName); } // empty field else $caption = $formulary->received[$fieldName]; $charset = $formulary->document->charset; $lenght = mb_strlen ($caption, $charset); if ($lenght > 36) { // cut caption $caption = mb_substr ($caption, 0, 36, $charset); $lenght = mb_strrpos ($caption, ' ', 30, $charset); if ($lenght) $caption = mb_substr ($caption, 0, $lenght, $charset); $caption .= '...'; } // cut caption if (isset ($control['flags']['target'])) { // set field $current = $formulary->getField ($control['flags']['target']); $current === false ? $current = array () : null; $lang = $formulary->document->lang; if (isset ($current[$lang])) unset ($current[$lang]); if ($caption !== false) { // received data $caption = str_replace (array (CR, LF), array ('', ' '), $caption); $current[$lang][TEXT_CONTENT] = $caption; if ($charset == 'ISO-8859-1') $current[$lang][TEXT_CHARSET] = 1; } // received data if (!$current)$current = false; $formulary->setField ($control['flags']['target'], $current); } // set field } // function save } // class eclFilter_caption //!eof:engine/eclFilter/eclFilter_caption.php; //!file:engine/eclFilter/eclFilter_checkbox.php; /* * Valid control flags * control_type = checkbox * control_filter = checkbox * control_target * control_field_name * control_invert => invert selection before showing and before saving * control_clear => if value == 0, clears the target flag * control_true_value => specifies a value to save when checked, like 'yes' - note that its depends of control_invert * control_false_value => specifies a value to save when not checked, like 'no' - note that its depends of control_invert * control_help * control_help_msg */ class eclFilter_checkbox { // class eclFilter_checkbox static function create ($fieldName, $control, $formulary) { // function create $local['name'] = $fieldName; // type if (isset ($control['flags']['type'])) $local['type'] = $control['flags']['type']; else $local['type'] = 'checkbox'; // help if (isset ($control['flags']['help']) and !isset ($control['flags']['help_msg'])) $local['help_msg'] = 'system_filterCheckboxHelp'; // value $value = 0; if (isset ($control['flags']['target'])) $value = $formulary->getField ($control['flags']['target']); if (isset ($control['flags']['true_value'])) { // predefined value if ($value == $control['flags']['true_value']) $value = 1; else $value = 0; } // predefined value elseif (isset ($control['flags']['false_value'])) { // predefined false value if ($value == $control['flags']['false_value']) $value = 0; else $value = 1; } // predefined false value elseif ($value) $value = 1; else $value = 0; // invert if (isset ($control['flags']['invert'])) $value ? $value = 0 : $value = 1; if ($value) $local['value'] = 1; $formulary->appendChild ($control, $local); } // function create static function save ($fieldName, $control, $formulary) { // function save if (isset ($formulary->received[$fieldName]) and $formulary->received[$fieldName]) $value = 1; else $value = 0; // invert if (isset ($control['flags']['invert'])) $value ? $value = 0 : $value = 1; // clear if (isset ($control['flags']['clear']) and !$value) $value = false; // true value if ($value and isset ($control['flags']['true_value'])) $value = $control['flags']['true_value']; // false value elseif (!$value and isset ($control['flags']['false_value'])) $value = $control['flags']['false_value']; // target if (isset ($control['flags']['target'])) $formulary->setField ($control['flags']['target'], $value); } // function save } // class eclFilter_checkbox //!eof:engine/eclFilter/eclFilter_checkbox.php; //!file:engine/eclFilter/eclFilter_end.php; class eclFilter_end { // class eclFilter_end static function create ($fieldName, $control, $formulary) { // function create $item = $formulary->appendChild (); $item->data['type'] = 'end'; foreach ($formulary->hidden as $name => $value) { // each hidden field $item->appendChild (false, array ( 'name' => $name, 'value' => $value )); } // each hidden field } // function create static function save ($fieldName, $control, $formulary) { // function save } // function save } // class eclFilter_end //!eof:engine/eclFilter/eclFilter_end.php; //!file:engine/eclFilter/eclFilter_formulary.php; /* * Valid control flags * control_filter = formulary * control_base_target = A prefix for each control_target, like 'path/' * control_base_name = a prefix for each field name, like 'path' * * Note that the control needs children */ class eclFilter_formulary { // class eclFilter_formulary static function create ($fieldName, $control, $formulary) { // function create if (!isset ($control['children'])) return; // name $local['name'] = $fieldName; // type if (isset ($control['flags']['type'])) $local['type'] = $control['flags']['type']; else $local['type'] = 'fields'; $formulary->appendChild ($control, $local); $formulary->levelUp ($control); } // function create static function save ($fieldName, $control, $formulary) { // function save $formulary->insertControlChildren ($control); } // function save } // class eclFilter_formulary //!eof:engine/eclFilter/eclFilter_formulary.php; //!file:engine/eclFilter/eclFilter_free.php; /* * Valid control flags * control_type = text_small | text | text_tiny | textarea_small | textarea | textarea_big | textarea_full * control_filter = free * control_target * control_field_name * control_default_value * control_help * control_help_msg * control_error * control_error_msg * control_required * control_required_msg * control_clear */ class eclFilter_free { // class eclFilter_free static function create ($fieldName, $control, $formulary) { // function create $local['name'] = $fieldName; // type if (isset ($control['flags']['type'])) $local['type'] = $control['flags']['type']; else $local['type'] = 'textarea'; // help if (isset ($control['flags']['help']) and !isset ($control['flags']['help_msg'])) $local['help_msg'] = 'system_filterFreeHelp'; // target if (isset ($control['flags']['target'])) $value = $formulary->htmlSpecialChars ($formulary->getField ($control['flags']['target'])); else $value = false; // default value if ( ($value === false or $value === '') and isset ($control['flags']['default_value'])) $value = $control['flags']['default_value']; $local['value'] = $value; $formulary->appendChild ($control, $local); } // function create static function save ($fieldName, $control, $formulary) { // function save if (isset ($formulary->received[$fieldName]) and strlen ($formulary->received[$fieldName])) $value = $formulary->received[$fieldName]; else $value = false; // required if ($value === false and isset ($control['flags']['required'])) return $formulary->setRequiredMsg ($control, $fieldName); // clear if ($value === false and !isset ($control['flags']['clear'])) $value = ''; // target if (isset ($control['flags']['target'])) $formulary->setField ($control['flags']['target'], $value); } // function save } // class eclFilter_free //!eof:engine/eclFilter/eclFilter_free.php; //!file:engine/eclFilter/eclFilter_integer.php; /* * Valid control flags: * control_type text_tiny_leftfield | text_tiny | text_small | range * control_filter = integer * control_target * control_field_name * control_clear * control_default_value * control_clear_default_value => clear the field when the value is the default value * control_min_input => adjust the value if received is smaller * control_max_input => adjust the value if received is bigger * control_step => for use with range inputs * control_help * control_help_msg */ class eclFilter_integer { // class eclFilter_integer static function create ($fieldName, $control, $formulary) { // function create $local['name'] = $fieldName; // type if (isset ($control['flags']['type'])) $local['type'] = $control['flags']['type']; else $local['type'] = 'text_small'; // help if (isset ($control['flags']['help']) and !isset ($control['flags']['help_msg'])) $local['help_msg'] = 'system_msg_filterIntegerHelp'; // target if (isset ($control['flags']['target'])) $value = $formulary->getField ($control['flags']['target']); else $value = false; // default_value if ($value === false and isset ($control['flags']['default_value'])) $value = $control['flags']['default_value']; $local['value'] = $value; if (isset ($control['flags']['min_input'])) $local['min'] = $control['flags']['min_input']; if (isset ($control['flags']['max_input'])) $local['max'] = $control['flags']['max_input']; if (isset ($control['flags']['step'])) $local['step'] = $control['flags']['step']; $formulary->appendChild ($control, $local); } // function create static function save ($fieldName, $control, $formulary) { // function save if (isset ($formulary->received[$fieldName])) { // received value $value = $formulary->received[$fieldName]; if (!preg_match ('/^[-]?[0-9]+$/', $value)) $value = false; } // received value else $value = false; // clear if ($value === false and !isset ($control['flags']['clear'])) $value = 0; if (isset ($control['flags']['default_value']) and isset ($control['flags']['clear_default_value']) and $value == $control['flags']['default_value']) $value = false; if ($value !== false) { // valid value settype ($value, 'int'); // min_input if (isset ($control['flags']['min_input']) and $value < $control['flags']['min_input']) $value = $control['flags']['min_input']; // max_input if (isset ($control['flags']['max_input']) and $value > $control['flags']['max_input']) $value = $control['flags']['max_input']; } // received value // target if (isset ($control['flags']['target'])) $formulary->setField ($control['flags']['target'], $value); } // function save } // class eclFilter_integer //!eof:engine/eclFilter/eclFilter_integer.php; //!file:engine/eclFilter/eclFilter_keywords.php; /* * Valid control flags * control_filter = keywords */ class eclFilter_keywords { // class eclFilter_keywords static function create ($fieldName, $control, $formulary) { // function create } // function create static function save ($fieldName, $control, $formulary) { // function save global $io; // If a previous problem was ocurred saving the formulary, we need to abort if ($formulary->errorMsg !== false) return false; $data = &$formulary->data; if (isset ($data['name'])) $keywords = $data['name']; else $keywords = ''; foreach (array ('caption', 'title', 'author', 'licence') as $field) { // each text field if (isset ($data['text'][$field])) { // field exists foreach ($data['text'][$field] as $language) { // each language if (!isset ($language[TEXT_CHARSET]) or $language[TEXT_CHARSET] == 0) $keywords .= ' ' . mb_convert_encoding ($language[TEXT_CONTENT], 'ISO-8859-1', 'UTF-8'); elseif ($language[TEXT_CHARSET] == 1) $keywords .= ' ' . $language[TEXT_CONTENT]; } // each language } // field exists } // each text field $keywords = str_replace (array ('#', ';'), '', $keywords); if (isset ($data['text']['keywords'])) { // set hash tags $buffer = ''; foreach ($data['text']['keywords'] as $language) { // each language if (!isset ($language[TEXT_CHARSET]) or $language[TEXT_CHARSET] == 0) $buffer .= ' ' . mb_convert_encoding ($language[TEXT_CONTENT], 'ISO-8859-1', 'UTF-8'); elseif ($language[TEXT_CHARSET] == 1) $buffer .= ' ' . $language[TEXT_CONTENT]; } // each language foreach (explode (' ', $buffer) as $key) { // filter each keyword $key = str_replace (array ('#', ';'), '', $key); if (!strlen ($key)) continue; $keywords .= ' :' . $key . ':'; } // filter each keyword } // set hash tags $formulary->data['keywords'] = implode (' ', eclIo_database::filterKeywords ($keywords)); } // function save } // class eclFilter_keywords //!eof:engine/eclFilter/eclFilter_keywords.php; //!file:engine/eclFilter/eclFilter_regexp.php; /* * Valid control flags * control_type = text_small | text | text_tiny | textarea_small | textarea | textarea_big | textarea_full * control_filter = regexp * control_target * control_field_name * control_regexp => an regular expression like /[a-z][a-z0-9_-]+ * control_default_value * control_help * control_help_msg * control_error * control_error_msg * control_required * control_required_msg * control_clear */ class eclFilter_regexp { // class eclFilter_regexp static function create ($fieldName, $control, $formulary) { // function create $local['name'] = $fieldName; // type if (isset ($control['flags']['type'])) $local['type'] = $control['flags']['type']; else $local['type'] = 'text'; // help if (isset ($control['flags']['help']) and !isset ($control['flags']['help_msg'])) $local['help_msg'] = 'system_filterFreeHelp'; // target if (isset ($control['flags']['target'])) $value = $formulary->htmlSpecialChars ($formulary->getField ($control['flags']['target'])); else $value = false; // default value if ( ($value === false or $value === '') and isset ($control['flags']['default_value'])) $value = $control['flags']['default_value']; $local['value'] = $value; $formulary->appendChild ($control, $local); } // function create static function save ($fieldName, $control, $formulary) { // function save if (isset ($formulary->received[$fieldName]) and strlen ($formulary->received[$fieldName])) $value = $formulary->received[$fieldName]; else $value = false; // required if ($value === false and isset ($control['flags']['required'])) return $formulary->setRequiredMsg ($control, $fieldName); // the regular expression if ($value !== false and isset ($control['flags']['regexp']) and !preg_match ($control['flags']['regexp'], $value)) return $formulary->setErrorMsg ($control, $fieldName); // clear if ($value === false and !isset ($control['flags']['clear'])) $value = ''; // target if (isset ($control['flags']['target'])) $formulary->setField ($control['flags']['target'], $value); } // function save } // class eclFilter_regexp //!eof:engine/eclFilter/eclFilter_regexp.php; //!file:engine/eclFilter/eclFilter_select.php; /* * Valid control flags * control_type = select | select_list | radio_group * control_filter = select * control_target * control_field_name * control_help * control_help_msg * control_value_cast string | int * control_default_value * control_mask_values * control_clear */ class eclFilter_select { // class eclFilter_select static function create ($fieldName, $control, $formulary) { // function create $item = $formulary->appendChild ($control); // name $item->data['name'] = $fieldName; // type if (isset ($control['flags']['type'])) $item->data['type'] = $control['flags']['type']; else $item->data['type'] = 'select'; // help if (isset ($control['flags']['help']) and !isset ($control['flags']['help_msg'])) $item->data['help_msg'] = 'system_filterSelectHelp'; // target if (!isset ($control['flags']['target'])) return; $value = $formulary->getField ($control['flags']['target']); // Default value if ($value === false and isset ($control['flags']['default_value'])) $value = $control['flags']['default_value']; // children if (isset ($control['children'])) { // children exists $counter = 0; foreach ($control['children'] as $child_name) { // each child $counter++; $child = $item->appendChild ($child_name); if (isset ($child->data['flags']['value'])) { // value exists if (isset ($control['flags']['mask_values'])) $child->data['value'] = $counter; else $child->data['value'] = $child->data['flags']['value']; if ($child->data['value'] == $value) $child->data['active'] = 1; } // value exists $child->data['name'] = $fieldName; } // each child } // children exists } // function create static function save ($fieldName, $control, $formulary) { // function save global $store; if (isset ($formulary->received[$fieldName])) $value = trim ($formulary->received[$fieldName], ' '); else $value = false; $found = false; if (isset ($control['children'])) { // children exists $counter = 0; foreach ($control['children'] as $child_name) { // each child $child = $store->control->read ($child_name); $counter++; if (!isset ($child['flags']['value'])) continue; if (isset ($control['flags']['mask_values'])) { // mask value if ($value == $counter) { // value found $found = $child['flags']['value']; break; } // value found continue; } // mask value if ($child['flags']['value'] === $value) { // value found $found = $value; break; } // value found } // each child } // children exists $value = $found; if ($value === false and isset ($control['flags']['default_value'])) $value = $control['flags']['default_value']; // Clear default value if (isset ($control['flags']['default_value']) and isset ($control['flags']['clear']) and $value === $control['flags']['default_value']) $value = false; // cast if (isset ($control['flags']['cast']) and $control['flags']['cast'] == 'int') settype ($value, 'int'); // clear if (!isset ($control['flags']['default_value']) and isset ($control['flags']['clear']) and !$value) $value = false; if ($value === false and isset ($control['flags']['required'])) { // required field if (isset ($control['flags']['error_msg'])) return $formulary->setRequiredMsg ($control, $fieldName, $control['flags']['error_msg']); return $formulary->setRequiredMsg ($control, $fieldName); } // required field // value cast if ($value !== false and isset ($control['flags']['value_cast']) and $control['flags']['value_cast'] == 'int') $value = intval ($value); // target if (isset ($control['flags']['target'])) $formulary->setField ($control['flags']['target'], $value); } // function save } // class eclFilter_select //!eof:engine/eclFilter/eclFilter_select.php; //!file:engine/eclFilter/eclFilter_start.php; class eclFilter_start { // class eclFilter_start static function create ($fieldName, $control, $formulary) { // function create $item = $formulary->appendChild (); $item->data['type'] = 'start'; if (isset ($formulary->flags['field_name'])) $item->data['name'] = $formulary->flags['field_name']; if (isset ($formulary->flags['action'])) $formulary->action = $formulary->flags['action']; $item->data['url'] = $formulary->document->url ($formulary->pathway, $formulary->lang, $formulary->action, $formulary->protocol); if ($formulary->multipart or isset ($formulary->flags['multipart'])) $item->data['multipart'] = 1; } // function create static function save ($fieldName, $control, $formulary) { // function save } // function save } // class eclFilter_start //!eof:engine/eclFilter/eclFilter_start.php; //!file:engine/eclFilter/eclFilter_submit.php; class eclFilter_submit { // class eclFilter_submit static function create ($fieldName, $control, $formulary) { // function create global $store; $item = $formulary->document->createListItem (); if (isset ($control['children'])) { // children exists foreach ($control['children'] as $name) { // each submit item if ($name[0] == '_') $name = 'system_form' . $name; $data = $store->control->read ($name); if (!isset ($data['flags']['field_name'])) continue; if (!isset ($data['text']['caption'])) continue; if ($data['flags']['field_name'] == 'clear_language' and (!isset ($formulary->data['text']['caption']) or count ($formulary->data['text']['caption']) == 1)) continue; $local['name'] = $formulary->prefix . 'command_' . $data['flags']['field_name']; $item->appendChild ($data, $local); } // each submit item } // children exists else { // self submit if (isset ($control['flags']['field_name'])) $item->appendChild ($control, array ('name' => $formulary->prefix . 'command_' . $control['flags']['field_name'])); else $item->appendChild ($control); } // self submit $item->data['type'] = 'submit'; return $item; } // function create static function save ($fieldName, $control, $formulary) { // function save } // function save } // class eclFilter_submit //!eof:engine/eclFilter/eclFilter_submit.php; //!file:engine/eclFilter/eclFilter_text.php; /* * control_type = text_small | text | textarea_small | textarea | textarea_big | textarea_full * control_filter = text * control_target * control_field_name * control_monolang = forces a unique language * * control_format_enable * control_format_force * control_html_enable * control_html_force * control_ecolabore_enable * control_ecolabore_force * * control_help * control_help_msg * control_required * control_required_msg */ class eclFilter_text { // class eclFilter_text static function create ($fieldName, $control, $formulary) { // function create static $s = array ('&', '<', '"'); static $r = array ('&', '<', '"'); static $cs = array ('UTF-8', 'ISO-8859-1'); $document = $formulary->document; $item = $document->createListItem ($control); // name $item->data['name'] = $fieldName; // type if (isset ($control['flags']['type'])) $item->data['type'] = $control['flags']['type']; else $item->data['type'] = 'text'; // help if (isset ($control['flags']['help']) and !isset ($control['flags']['help_msg'])) $item->data['help_msg'] = 'system_filterTextHelp'; // target if (isset ($control['flags']['target']) and $text = $formulary->getField ($control['flags']['target'])) { // get field $text = $formulary->getField ($control['flags']['target']); $lang = $document->lang; $defaultLang = $document->defaultLang; $charset = $document->charset; if (isset ($text[$lang])) $found = $text[$lang]; elseif (isset ($text[$defaultLang])) $found = $text[$defaultLang]; else $found = current ($text); if (isset ($found[TEXT_CONTENT])) { // contents exists if (!isset ($found[TEXT_CHARSET])) $found[TEXT_CHARSET] = 0; if ($charset != $cs[$found[TEXT_CHARSET]]) $value = mb_convert_encoding ($found[TEXT_CONTENT], $charset, $cs[$found[TEXT_CHARSET]]); else $value = $found[TEXT_CONTENT]; $item->data['value'] = str_replace ($s, $r, $value); } // contents exists } // get field return $item; } // function create static function save ($fieldName, $control, $formulary) { // function save $flags = $formulary->flags; if (isset ($control['flags']['target'])) { // set field $current = $formulary->getField ($control['flags']['target']); $current === false ? $current = array () : null; if (isset ($control['flags']['monolang'])) $current = array (); $lang = $formulary->document->lang; if (isset ($current[$lang])) unset ($current[$lang]); if (!isset ($formulary->received[$fieldName]) or $formulary->received[$fieldName] == '') { // empty field if (isset ($control['flags']['required']) and !$current) return $formulary->setRequiredMsg ($control, $fieldName); $formulary->received[$fieldName] = false; } // empty field if ($formulary->received[$fieldName] !== false) { // received data $current[$lang][TEXT_CONTENT] = $formulary->received[$fieldName]; if ($formulary->document->charset == 'ISO-8859-1') $current[$lang][TEXT_CHARSET] = 1; if (isset ($control['flags']['format_enable'])) { // format enable if (isset ($flags['text_format_choose']) and isset ($formulary->received['text_format'])) $current[$lang][TEXT_FORMAT] = 2; elseif (isset ($flags['text_format_force'])) { // format force if ($flags['text_format_force']) $current[$lang][TEXT_FORMAT] = 1; } // format force elseif (!isset ($flags['text_format_choose'])) $current[$lang][TEXT_FORMAT] = 1; } // format enable elseif (isset ($control['flags']['format_force'])) $current[$lang][TEXT_FORMAT] = $control['flags']['format_force']; if (isset ($control['flags']['html_enable'])) { // html enable if (isset ($flags['text_html_choose']) and isset ($formulary->received['text_html'])) $current[$lang][TEXT_HTML] = 2; elseif (isset ($flags['text_html_force'])) { // html force if ($flags['text_html_force']) $current[$lang][TEXT_HTML] = $flags['text_html_force']; } // html force elseif (!isset ($flags['text_html_choose'])) $current[$lang][TEXT_HTML] = 1; } // html enable elseif (isset ($control['flags']['html_force'])) $current[$lang][TEXT_HTML] = $control['flags']['html_force']; if (isset ($control['flags']['ecolabore_enable'])) { // ecolabore enable if (isset ($flags['text_ecolabore_choose']) and isset ($formulary->received['text_ecolabore'])) $current[$lang][TEXT_ECOLABORE] = 1; elseif (isset ($flags['text_ecolabore_force'])) { // force ecolabore if ($flags['text_ecolabore_force']) $current[$lang][TEXT_ECOLABORE] = 1; } // force ecolabore elseif (!isset ($flags['text_ecolabore_choose']) and !isset ($flags['text_ecolabore_disabled'])) $current[$lang][TEXT_ECOLABORE] = 1; } // ecolabore enable elseif (isset ($control['flags']['ecolabore_force'])) $current[$lang][TEXT_ECOLABORE] = $control['flags']['ecolabore_force']; } // received data if (!$current)$current = false; $formulary->setField ($control['flags']['target'], $current); } // set field } // function save } // class eclFilter_text //!eof:engine/eclFilter/eclFilter_text.php; //!file:engine/eclFilter/eclFilter_timestamp.php; /* * Valid control flags: * control_type = date * control_filter = timestamp * control_target * control_field_name * control_help * control_help_msg * * The default value for this field is aways "now" */ class eclFilter_timestamp { // class eclFilter_timestamp static function create ($fieldName, $control, $formulary) { // function create global $io, $store; $item = $formulary->appendChild ($control); // name $item->data['name'] = $fieldName; // control_type if (isset ($control['flags']['control_type'])) $item->data['type'] = $control['flags']['control_type']; else $item->data['type'] = 'date'; // help if (isset ($control['flags']['control_help']) and !isset ($control['flags']['control_help_msg'])) $item->data['control_help_msg'] = 'systemFormulary_filterDateHelp'; // target if (isset ($control['flags']['control_target'])) $value = $formulary->getField ($control['flags']['control_target']); if (!$value) $value = TIME; $valueY = date ('Y', $value); $valueM = date ('m', $value); $valueD = date ('j', $value); $valueH = date ('H', $value); $valueI = date ('i', $value); $valueI = intval ($valueI / 5) * 5; $local = array ('name' => $fieldName); $year = $item->appendChild (false, $local); $month = $item->appendChild (false, $local); $day = $item->appendChild (false, $local); $hour = $item->appendChild (false, $local); $minutes = $item->appendChild (false, $local); for ($y = 2030; $y > 1969; $y--) { // each year $local = array ('value' => $y); if ($y == $valueY) $local['active'] = 1; $year->appendChild (false, $local); } // each year for ($m = 12; $m > 0; $m--) { // each month $local = array ('value' => $m); if ($m == $valueM) $local['active'] = 1; $month->appendChild ($store->control->read ('labels/date/month' . $m), $local); } // each month for ($d = 31; $d > 0; $d--) { // each day $local = array ('value' => $d); if ($d == $valueD) $local['active'] = 1; $day->appendChild (false, $local); } // each day for ($h = 23; $h >= 0; $h--) { // each hour $value = str_pad ($h, '0', STR_PAD_LEFT); $local = array ('value' => $value); $hour->appendChild (false, $local) ->active ($h == $valueH); } // each hour for ($i = 55; $i >= 0; $i -= 5) { // each minute $value = str_pad ($i, '0', STR_PAD_LEFT); $local = array ('value' => $value); if ($i == $valueI) $local['active'] = 1; $minutes->appendChild (false, $local); } // each minute } // function create static function save ($fieldName, $control, $formulary) { // function save global $io; $received = $formulary->received; if ( isset ($received[$fieldName . '_year']) and isset ($received[$fieldName . '_month']) and isset ($received[$fieldName . '_day']) ) { // received value $y = intval ($received[$fieldName . '_year']); $m = intval ($received[$fieldName . '_month']); $d = intval ($received[$fieldName . '_day']); isset ($received[$fieldName . '_hours']) ? $hours = intval ($received[$fieldName . '_hours']) : $hours = 0; isset ($received[$fieldName . '_minutes']) ? $minutes = intval ($received[$fieldName . '_minutes']) : $minutes = 0; $value = mktime ($hours, $minutes, 0, $m, $d, $y); } // received value else $value = TIME; // target if (isset ($control['flags']['control_target'])) $formulary->setField ($control['flags']['control_target'], $value); } // function save } // class eclFilter_timestamp //!eof:engine/eclFilter/eclFilter_timestamp.php; //!file:engine/eclFilter/eclFilter_view.php; /* * Valid control flags * control_type = view * control_filter = flag_view * control_target * control_field_name * control_default_value */ class eclFilter_view { // class eclFilter_view static function create ($fieldName, $control, $formulary) { // function create $local['name'] = $fieldName; // type if (isset ($control['flags']['type'])) $local['type'] = $control['flags']['type']; else $local['type'] = 'view'; // target if (isset ($control['flags']['target'])) $value = $formulary->getField ($control['flags']['target']); else $value = false; if ($value !== false and $value !== '') $local['content'] = $formulary->document->textMerge ($value); elseif (isset ($control['flags']['default_value'])) $local['content'] = $document->textMerge ($control['flags']['default_value']); $formulary->appendChild ($control, $local); } // function create static function save ($fieldName, $control, $formulary) { // function save } // function save } // class eclFilter_view //!eof:engine/eclFilter/eclFilter_view.php; //!file:engine/eclIo/eclIo_cachedControls.php; class eclIo_cachedControls { // class eclIo_cachedControls private $enabled = false; private $file; private $externalString2; private $databaseString2; public function __construct () { // function __construct global $dataMap; if (!isset ($dataMap) or !$dataMap or !defined ('SYSTEM_COMPILER_HALT_OFFSET')) return; $this->file = fopen (SYSTEM_SCRIPT_PATH, 'rb'); $this->enabled = true; } // function __construct public function read ($mode, $path, $name) { // function read global $dataMap; if (!$this->enabled) return array (); if (!isset ($dataMap[$mode][$path][$name])) return array (); list ($offset, $length) = explode (':', $dataMap[$mode][$path][$name]); fseek ($this->file, SYSTEM_COMPILER_HALT_OFFSET + $offset); return unserialize ($this->stringFromDatabase (fread ($this->file, $length))); } // function read public function file ($path, $name, $mode='f') { // function file global $dataMap; if (!isset ($dataMap[$mode][$path][$name])) return ''; list ($offset, $length) = explode (':', $dataMap[$mode][$path][$name]); fseek ($this->file, SYSTEM_COMPILER_HALT_OFFSET + $offset); return $this->stringFromDatabase (fread ($this->file, $length)); } // function file public function stringFromDatabase ($string) { // function stringFromDatabase if (!isset ($this->externalString2)) { // set replaces $this->externalString2 = array ( chr (0), chr (10), chr (13), chr (26), chr (39), chr (92) ); $this->databaseString2 = array ( '#0', '#n', '#r', '#z', '#s', '#e' ); } // set replacements return str_replace ('#c', '#', str_replace ($this->databaseString2, $this->externalString2, $string)); } // function stringFromDatabase public function close () { // function close if ($this->enabled) fclose ($this->file); } // function close } // class eclIo_cachedControls //!eof:engine/eclIo/eclIo_cachedControls.php; //!file:engine/eclIo/eclIo_database.php; /* * Fields types * primary_key * tinyint * mediumint * int * time * name * password * array * keywords */ class eclIo_database { // class eclIo_database private $tables; private $batchQuery = array (); private $databasePrefix = ''; private $client; private $database; private $databaseString, $externalString, $databaseString2, $externalString2; public $status = false; private $pdo; public $verbose = true; public $performed_queries = ''; private $last_query; public function __construct ($io, $database=false) { // function __construct if (!$database and (!defined ('DATABASE_ENABLED') or !DATABASE_ENABLED)) return; try { // try if ($database) { // from file $this->client = 'sqlite'; $this->database = $database; $this->pdo = new PDO ('sqlite:' . $database); } // from file else { // from server $this->client = DATABASE_CLIENT; $this->database = DATABASE_DB; if (DATABASE_CLIENT == 'sqlite') { // sqlite if (!is_dir (FOLDER_DATABASE)) mkdir (FOLDER_DATABASE); $this->pdo = new PDO ('sqlite:' . FOLDER_DATABASE . '.system.db'); } // sqlite else { // shared database $this->pdo = new PDO (DATABASE_CLIENT . ':host=' . DATABASE_HOST . ';dbname=' . DATABASE_DB, DATABASE_USER, DATABASE_PASSWORD); $this->databasePrefix = DATABASE_PREFIX; } // shared database } // from server $this->status = true; } // try catch (PDOException$e) { // catch if (defined ('DATABASE_DISPLAY_ERRORS') and DATABASE_DISPLAY_ERRORS) print 'Database connection error: ' . $e->getMessage () . '
      '; if (defined ('DATABASE_LOG_ERRORS') and DATABASE_LOG_ERRORS) { // log errors if (!is_dir (FOLDER_DATABASE)) mkdir (FOLDER_DATABASE); $string = '#On: ' . date ('c s u') . CRLF . '#client: ' . $this->client . ' database:' . $this->database . CRLF . '#Database connection error: ' . $e->getMessage () . CRLF . CRLF; file_put_contents (FOLDER_DATABASE . '.database.log', $string, FILE_APPEND); } // log errors $this->status = false; } // catch } // function __construct public function reconnect () { // function reconnect global $io; if (!$io->systemConstants->check ('DATABASE_ENABLED') or !$io->systemConstants->constants['DATABASE_ENABLED']) return; try { // try $c = $io->systemConstants->constants; if ($c['DATABASE_CLIENT'] == 'sqlite') { // sqlite if (!is_dir (FOLDER_DATABASE)) mkdir (FOLDER_DATABASE); $this->pdo = new PDO ('sqlite:' . FOLDER_DATABASE . '.system.db'); } // sqlite else $this->pdo = new PDO ($c['DATABASE_CLIENT'] . ':host=' . $c['DATABASE_HOST'] . ';dbname=' . $c['DATABASE_DB'], $c['DATABASE_USER'], $c['DATABASE_PASSWORD']); $this->status = true; } // try catch (PDOException$e) { // catch $io->log->addMessage ('Database connection error: ' . $e->getMessage (), __CLASS__); $this->status = false; } // catch } // function reconnect public function query ($query) { // function query global $io; if (!$this->status or !is_string ($query) or !isset ($query[0])) return array (); $this->performed_queries .= $query . CRLF; $result = $this->pdo->query ($query); if ($this->pdo->errorCode () != '00000' and $this->verbose) { // error $error = $this->pdo->errorCode (); $info = $this->pdo->errorInfo (); $string = '#Date: ' . date ('c s u') . CRLF . '#client: ' . $this->client . ' database:' . $this->database . CRLF . $query . CRLF . '#The error: ' . $error . CRLF; if (isset ($info[2])) $string .= '# ' . $info[2] . CRLF; $string .= CRLF; $this->performed_queries .= '# Error' . CRLF; $this->performed_queries .= '# ' . $error . CRLF; if (isset ($info[2])) $this->performed_queries .= '# ' . $info[2] . CRLF; if (defined ('DATABASE_DISPLAY_ERRORS') and DATABASE_DISPLAY_ERRORS) print nl2br (eclEngine_formulary::htmlSpecialChars ($string)); if (defined ('DATABASE_LOG_ERRORS') and DATABASE_LOG_ERRORS) { // log errors if (!is_dir (FOLDER_DATABASE)) mkdir (FOLDER_DATABASE); file_put_contents (FOLDER_DATABASE . '.database.log', $string, FILE_APPEND); } // log errors return array (); } // error if (!is_object ($result)) return array (); $return = array (); foreach ($result as $row) { // each row $return[] = $row; } // each row return $return; } // function query public function batchQuery ($query) { // function batchQuery if (!is_array ($query) or !count ($query)) return; $this->last_query = implode (";" . CRLF, $query); $this->performed_queries .= $this->last_query; foreach ($query as $call) { // each query $this->pdo->query ($call); } // each query } // function batchQuery public function insertId () { // function insertId return intval ($this->pdo->lastInsertId ()); } // function insertId public function affectedRows () { // function affectedRows if ($this->client == 'mysql') { // mysql if (is_array ($this->pdo->query ('mysql_affected_rows()'))) { // is array foreach ($this->pdo->query ('mysql_affected_rows()') as $row) { // each row return current ($row); } // each row } // is array } // mysql return 0; } // function affectedRows public function error () { // function error $error = $this->pdo->errorInfo (); if ($error) return $error[2]; return ''; } // function error public function commit () { // function commit } // function commit public function tableEnabled ($table) { // function tableEnabled if (!$this->status) return false; if (!isset ($this->tables)) { // list tables if ($this->client == 'mysql') $rows = $this->query ('SHOW TABLES'); else $rows = $this->query ("SELECT `name` FROM sqlite_master WHERE `type`='table'"); foreach ($rows as $row) { // each table $this->tables[current ($row)] = true; } // each table } // list tables $table_name = $this->databasePrefix . $table->name; if (isset ($this->tables[$table_name])) return true; $this->create ($table); $this->tables = array (); if ($this->client == 'mysql') $rows = $this->query ('SHOW TABLES'); else $rows = $this->query ("SELECT `name` FROM sqlite_master WHERE `type`='table'"); foreach ($rows as $row) { // each table $this->tables[current ($row)] = true; } // each table $table_name = $this->databasePrefix . $table->name; if (isset ($this->tables[$table_name])) return true; return false; } // function tableEnabled public function create ($table) { // function create if (!count ($table->fields)) return false; // Create table description $lines = array (); foreach ($table->fields as $fieldName => $fieldType) { // each field switch ($fieldType) { // switch field type case 'primary_key': if ($this->client == 'mysql') $lines[] = '`' . $fieldName . '` MEDIUMINT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY'; else $lines[] = '`' . $fieldName . '` INTEGER PRIMARY KEY'; break; case 'tinyint': $lines[] = '`' . $fieldName . '` TINYINT UNSIGNED NOT NULL'; break; case 'mediumint': $lines[] = '`' . $fieldName . '` MEDIUMINT UNSIGNED NOT NULL'; break; case 'int': case 'time': $lines[] = '`' . $fieldName . '` INTEGER UNSIGNED NOT NULL'; break; case 'name': case 'password': if ($this->client == 'mysql') $lines[] = '`' . $fieldName . '` CHAR(32) BINARY NOT NULL'; else $lines[] = '`' . $fieldName . '` BLOB NOT NULL'; break; case 'array': case 'binary': case 'keywords': if ($this->client == 'mysql') $lines[] = '`' . $fieldName . '` MEDIUMBLOB NOT NULL'; else $lines[] = '`' . $fieldName . '` BLOB NOT NULL'; break; } // switch type } // each field // The query $this->query ('CREATE TABLE `' . $this->databasePrefix . $table->name . "` (" . CRLF . implode ("," . CRLF, $lines) . CRLF . ")" . CRLF); // Index if (isset ($table->index)) { // index exists foreach ($table->index as $index_name => $index_fields) { // each index $this->query ('CREATE INDEX `' . $index_name . '` ON `' . $this->databasePrefix . $table->name . '` (`' . implode ('`, `', $index_fields) . '`)'); } // each index } // index exists } // function create public function insert ($table, &$data) { // function insert global $io; $fields = array (); $values = array (); foreach ($table->fields as $fieldName => $fieldType) { // each field switch ($fieldType) { // switch filter case 'primary_key': break; case 'tinyint': case 'mediumint': case 'int': if (!isset ($data[$fieldName])) $data[$fieldName] = 0; $fields[] = $fieldName; $values[] = strval (intval ($data[$fieldName])); break; case 'name': if (!isset ($data[$fieldName]) or !preg_match ('%^[a-zA-Z0-9@:./_-]*$%', $data[$fieldName])) $data[$fieldName] = ''; $fields[] = $fieldName; $values[] = "'" . $data[$fieldName] . "'"; break; case 'time': if (!isset ($data[$fieldName]) or !is_int ($data[$fieldName]) or $data[$fieldName] == 0) $data[$fieldName] = TIME; $fields[] = $fieldName; $values[] = strval (intval ($data[$fieldName])); break; case 'array': $fields[] = $fieldName; if (!isset ($data[$fieldName]) or !is_array ($data[$fieldName])) $data[$fieldName] = array (); if (!$data[$fieldName]) $values[] = "''"; else $values[] = "'" . $this->stringToDatabase (serialize ($data[$fieldName])) . "'"; break; case 'keywords': $fields[] = $fieldName; if (!isset ($data[$fieldName]) or !is_string ($data[$fieldName])) $data[$fieldName] = ''; if (!isset ($data[$fieldName][0])) $values[] = "''"; else $values[] = "'" . implode (' ', $this->filterKeywords ($data[$fieldName])) . "'"; break; case 'password': if (!isset ($data[$fieldName]) or !is_string ($data[$fieldName])) $data[$fieldName] = ''; $fields[] = $fieldName; $values[] = "'" . strval (md5 ($data[$fieldName])) . "'"; break; case 'binary': $fields[] = $fieldName; if (!isset ($data[$fieldName]) or !is_string ($data[$fieldName])) $data[$fieldName] = ''; if (!isset ($data[$fieldName][0])) $values[] = "''"; else $values[] = "'" . $this->stringToDatabase ($data[$fieldName]) . "'"; break; default: break; } // switch filter } // each field // The query $this->query ('INSERT INTO `' . $this->databasePrefix . $table->name . '` (`' . implode ('`, `', $fields) . '`) VALUES (' . implode (', ', $values) . ')'); $data['id'] = $this->insertId (); return $data['id']; } // function insert public function select ($table, $where, $limit='', $returnRows=false) { // function select $results = array (); $conditions = array (); foreach ($where as $fieldName => $field_value) { // each where condition if (isset ($table->fields[$fieldName])) { // valid field switch ($table->fields[$fieldName]) { // switch filter case 'primary_key': case 'tinyint': case 'mediumint': case 'int': case 'time': if (is_int ($field_value)) $conditions[] = '`' . $fieldName . '`=' . strval ($field_value); elseif (is_string ($field_value) and is_numeric ($field_value)) $conditions[] = '`' . $fieldName . '`=' . $field_value; elseif (is_string ($field_value) and preg_match ('%^[<=>\ ]*[0-9]+$%', trim ($field_value))) $conditions[] = '`' . $fieldName . '` ' . $field_value; elseif (is_array ($field_value)) { // set $field_value = implode (', ', $field_value); if (preg_match ('%[0-9, ]+%', $field_value)) $conditions[] = '`' . $fieldName . '` IN(' . $field_value . ')'; } // set break; case 'name': if (preg_match ('%^[a-zA-Z0-9@:/._-]+$%', $field_value)) $conditions[] = '`' . $fieldName . "`='" . $field_value . "'"; break; case 'password': $conditions[] = '`' . $fieldName . "`='" . strval (md5 ($field_value)) . "'"; break; case 'keywords': foreach ($this->filterKeywords ($field_value) as $keyword) { // each keyword $conditions[] = '`' . $fieldName . "` LIKE('%" . $keyword . "%')"; } // each keyword break; } // switch filter } // valid field } // each where condition if ($conditions) { // conditions exists // The query if ($returnRows) { // select return columns foreach ($returnRows as $fieldName) { // each column if (!isset ($table->fields[$fieldName])) continue; $columns[] = '`' . $fieldName . '`'; $returnColumns[$fieldName] = $table->fields[$fieldName]; } // each column } // select return columns if (isset ($columns)) $columns = implode (', ', $columns); else $columns = '*'; $rows = $this->query ('SELECT ' . $columns . ' FROM `' . $this->databasePrefix . $table->name . '` WHERE ' . implode (' AND ', $conditions) . $limit); if (!isset ($returnColumns)) $returnColumns = $table->fields; // Extract rows foreach ($rows as $row) { // each row $data = array (); foreach ($returnColumns as $fieldName => $fieldType) { // each field switch ($fieldType) { // switch filter case 'primary_key': case 'tinyint': case 'mediumint': case 'int': case 'time': $data[$fieldName] = intval ($row[$fieldName]); break; case 'array': if (isset ($row[$fieldName][0])) $data[$fieldName] = unserialize ($this->stringFromDatabase ($row[$fieldName])); else $data[$fieldName] = array (); break; default: if (isset ($row[$fieldName][0])) $data[$fieldName] = $this->stringFromDatabase ($row[$fieldName]); else $data[$fieldName] = ''; } // switch filter } // each field $results[] = $data; } // each row return $results; } // conditions exists return array (); } // function select public function update ($table, $data, $originalData) { // function update $id = intval ($data['id']); if (!$id) return; $set = array (); foreach ($table->fields as $fieldName => $fieldType) { // each field if (!isset ($data[$fieldName])) $data[$fieldName] = false; if (!isset ($originalData[$fieldName]) or $data[$fieldName] != $originalData[$fieldName]) { // field changed switch ($fieldType) { // switch filter case 'tinyint': case 'mediumint': case 'int': case 'time': $set[] = '`' . $fieldName . '`=' . strval (intval ($data[$fieldName])); break; case 'name': if (is_string ($data[$fieldName]) and preg_match ('%^[a-zA-Z0-9@:/._-]*$%', $data[$fieldName])) $set[] = '`' . $fieldName . "`='" . $data[$fieldName] . "'"; break; case 'array': if (!is_array ($data[$fieldName])) $data[$fieldName] = array (); $set[] = '`' . $fieldName . "`='" . $this->stringToDatabase (serialize ($data[$fieldName])) . "'"; break; case 'password': if (md5 (strval ($data[$fieldName])) != $originalData[$fieldName]) $set[] = '`' . $fieldName . "`='" . md5 ($data[$fieldName]) . "'"; break; case 'keywords': if (isset ($data[$fieldName][0])) { // filter keywords $keywords = implode (' ', $this->filterKeywords (strval ($data[$fieldName]))); if (!isset ($originalData[$fieldName]) or $keywords != $originalData[$fieldName]) $set[] = '`' . $fieldName . "`='" . $keywords . "'"; break; } // filter keywords if (isset ($originalData[$fieldName][0])) $set[] = '`' . $fieldName . "`=''"; break; case 'binary': if (!is_string ($data[$fieldName]) or !isset ($data[$fieldName][0])) $set[] = '`' . $fieldName . "`=''"; else $set[] = '`' . $fieldName . "`='" . $this->stringToDatabase ($data[$fieldName]) . "'"; break; } // switch filter } // field changed } // each field if (count ($set)) { // valid fields changed $this->batchQuery[] = 'UPDATE `' . $this->databasePrefix . $table->name . '` SET ' . implode (', ', $set) . ' WHERE `id`=' . $id; } // valid fields changed } // function update public function delete ($table, $where) { // function delete $conditions = array (); foreach ($where as $fieldName => $field_value) { // each where condition if (isset ($table->fields[$fieldName])) { // valid field switch ($table->fields[$fieldName]) { // switch filter case 'primary_key': case 'tinyint': case 'mediumint': case 'int': case 'time': if (is_numeric ($field_value)) $conditions[] = '`' . $fieldName . '`=' . strval ($field_value); break; case 'name': if (preg_match ('%^[a-zA-Z0-9@:/._-]*$%', $field_value)) $conditions[] = '`' . $fieldName . "`='" . $field_value . "'"; break; } // switch filter } // valid field } // each where condition // The query $this->query ('DELETE FROM `' . $this->databasePrefix . $table->name . '` WHERE ' . implode (' AND ', $conditions)); } // function delete public function drop ($table) { // function drop $this->query ('DROP TABLE `' . $this->databasePrefix . $table->name . '`'); } // function drop public function close () { // function close global $io; $this->batchQuery ($this->batchQuery); $this->batchQuery = array (); // $io->log->addMessage ($this->performed_queries, 'database'); } // function close public function stringToDatabase ($string) { // function stringToDatabase if (!isset ($this->externalString)) { // set replace sequence $this->externalString = array ( '#', chr (0), chr (26), // chr (34), chr (39), chr (92) ); $this->databaseString = array ( '#c', '#0', '#z', // '#q', '#s', '#e' ); } // set replace sequence return str_replace ($this->externalString, $this->databaseString, $string); } // function stringToDatabase public function stringFromDatabase ($string) { // function stringFromDatabase if (!isset ($this->externalString2)) { // set replace sequence $this->externalString2 = array ( chr (0), chr (26), chr (34), chr (39), chr (92) ); $this->databaseString2 = array ( '#0', '#z', '#q', '#s', '#e' ); } // set replace sequence if (strpos ($string, '\\') === false) return str_replace ('#c', '#', str_replace ($this->databaseString2, $this->externalString2, $string)); return stripslashes ($string); } // function stringFromDatabase public static function filterKeywords ($string) { // function filterKeywords static $convert = array ('a' => 'a', 'b' => 'b', 'c' => 'c', 'd' => 'd', 'e' => 'e', 'f' => 'f', 'g' => 'g', 'h' => 'h', 'i' => 'i', 'j' => 'j', 'k' => 'k', 'l' => 'l', 'm' => 'm', 'n' => 'n', 'o' => 'o', 'p' => 'p', 'q' => 'q', 'r' => 'r', 's' => 's', 't' => 't', 'u' => 'u', 'v' => 'v', 'w' => 'w', 'x' => 'x', 'y' => 'y', 'z' => 'z', 'A' => 'a', 'B' => 'b', 'C' => 'c', 'D' => 'd', 'E' => 'e', 'F' => 'f', 'G' => 'g', 'H' => 'h', 'I' => 'i', 'J' => 'j', 'K' => 'k', 'L' => 'l', 'M' => 'm', 'N' => 'n', 'O' => 'o', 'P' => 'p', 'Q' => 'q', 'R' => 'r', 'S' => 's', 'T' => 't', 'U' => 'u', 'V' => 'v', 'W' => 'w', 'X' => 'x', 'Y' => 'y', 'Z' => 'z', '' => 'a', '' => 'a', '' => 'a', '' => 'a', '' => 'a', '' => 'a', '' => 'a', '' => 'a', '' => 'a', '' => 'a', '' => 'c', '' => 'c', '' => 'e', '' => 'e', '' => 'e', '' => 'e', '' => 'e', '' => 'e', '' => 'i', '' => 'i', '' => 'i', '' => 'i', '' => 'i', '' => 'i', '' => 'o', '' => 'o', '' => 'o', '' => 'o', '' => 'o', '' => 'o', '' => 'o', '' => 'o', '' => 'u', '' => 'u', '' => 'u', '' => 'u', '' => 'u', '' => 'u', '' => 'y', '' => 'y', '' => 'y', '' => 'y', ' ' => ' ', '-' => '-', '1' => '1', '2' => '2', '3' => '3', '4' => '4', '5' => '5', '6' => '6', '7' => '7', '8' => '8', '9' => '9', '0' => '0', '_' => ' ', ':' => ':', ';' => ';'); // The $last will remember the last character of the convertion // to prevent duplicated spacing "__" or "--" in the name $result = ''; $last = ' '; foreach (str_split ($string) as $char) { // each char if (!isset ($convert[$char])) continue; $valid = $convert[$char]; if ($valid != $last) { // not repeated separator if ($valid == '-' or $valid == ' ') $last = $valid; else $last = ''; $result .= $valid; } // not repeated separator } // each char $words = explode (' ', $result); $keywords = array (); $validWords = array (); foreach ($words as $word) { // each word $validWords[strlen ($word)][] = $word; } // each word krsort ($validWords); foreach ($validWords as $index => $group) { // each group if ($index < 3) break; foreach ($group as $word) { // each word $valid = true; foreach ($keywords as $value) { // each keyword if (is_int (strpos ($value, $word))) { // existing word $valid = false; } // existing word } // each keyword if ($valid) $keywords[] = $word; } // each word } // each group sort ($keywords); return $keywords; } // function filterKeywords } // class eclIo_database //!eof:engine/eclIo/eclIo_database.php; //!file:engine/eclIo/eclIo_file.php; class eclIo_file { // class eclIo_file private $openedFiles = array (); public function &open ($name) { // function & if (!isset ($this->openedFiles[$name])) { // open file if (is_file ($name)) $this->openedFiles[$name][0] = $this->string2array (file_get_contents ($name, FILE_BINARY)); else $this->openedFiles[$name][0] = array (); $this->openedFiles[$name][1] = $this->openedFiles[$name][0]; } // open file $data = &$this->openedFiles[$name][0]; return $data; } // function & public function read ($name) { // function read if (is_file ($name)) return $this->string2array (file_get_contents ($name, FILE_BINARY)); return array (); } // function read public function close () { // function close foreach ($this->openedFiles as $name => $contents) { // each opened file // protection mode // 'array2string ($contents[0])); if (!$contents[0] and is_file ($name)) unlink ($name); } // each opened files } // function close public static function array2string ($array, $level=0) { // function array2string $string = ''; foreach ($array as $key => $value) { // each item if (is_int ($key) and $level < 2) $string .= '#='; elseif (is_int ($key)) $string .= strval ($key) . '='; elseif (is_string ($key)) $string .= "'" . str_replace ("'", "''", $key) . "'="; else continue; if (is_int ($value)) $string .= strval ($value) . CRLF; elseif (is_string ($value)) $string .= "'" . str_replace ("'", "''", $value) . "'" . CRLF; elseif (is_array ($value)) $string .= '{' . CRLF . self::array2string ($value, $level + 1) . '}' . CRLF; else $string .= '0' . CRLF; } // each item return $string; } // function array2string public static function string2array ($string, $counter1=0) { // function string2array if (!is_string ($string)) return array (); // acrescentamos string recebida uma quebra de linha $string .= LF; // o cumprimento total da string $strlen = strlen ($string); // o ponteiro que percorrer a string $pointer = 0; // o edifcio $building = array (); // o andar em que nos encontramos $floor = 1; $building[$floor] = array (); // O contador que substituir os coringas encontrados $counter[$floor] = $counter1; // Sinalizadores $buffer = ''; $buffer_enabled = false; $buffer_string = false; $key_enabled = false; // iremos varrer a string at que o ponteiro alcance seu cumprimento total while ($pointer < $strlen) { // get char // capturamos o caractre da string que se encontra sob o ponteiro $char = $string[$pointer]; // Verificamos que caractre este switch ($char) { // char // ao encontrar uma quebra de linha, criamos um novo item de array case "\n": if (!$buffer_string)settype ($buffer, 'int'); if ($key_enabled) { // creates a value $building[$floor][$key] = $buffer; } // creates a value $buffer = ''; $key_enabled = false; $buffer_enabled = false; $buffer_string = false; break; // ao encontrar "=", o que estiver no $buffer representa a chave de um item case '=': if ($buffer_enabled) { // creates key if ($buffer == '#') { // counter $buffer = $counter[$floor]; $counter[$floor]++; } // counter elseif (!$buffer_string) { // numeric settype ($buffer, 'int'); } // numeric $key = $buffer; $buffer = ''; $buffer_enabled = false; $buffer_string = false; $key_enabled = true; } // creates key break; // ao encontrar "{", subiremos um andar case '{': if ($key_enabled) { // sublevel $array_key[$floor] = $key; $floor++; $building[$floor] = array (); $counter[$floor] = 0; } // sublevel $key = ''; $key_enabled = false; $buffer = ''; $buffer_enabled = false; $buffer_string = false; break; // ao encontrar "}", copiamos o array do andar corrente para o item atual do andar inferior e descemos um andar case '}': if ($floor <= 1) break 2; $building[$floor - 1][$array_key[$floor - 1]] = $building[$floor]; $counter[$floor] = 0; $floor--; $buffer = ''; $buffer_enabled = false; $buffer_string = false; $key = ''; $key_enabled = false; break; // Ao encontrar "'", procuramos uma string com apstrofos duplicados ("''") case "'": case '"': loop_escape_char: $n_close_string = strpos ($string, $char, $pointer + 1); if ($n_close_string === false) break; $buffer .= substr ($string, $pointer + 1, $n_close_string - ($pointer + 1)); $buffer_enabled = true; $buffer_string = true; $pointer = $n_close_string; if ($string[$pointer + 1] != $char) break; $buffer .= $char; $pointer++; goto loop_escape_char; // Caractres ignorados case "\r": case "\t": case ' ': break; // Ao encontrar "/" ou "<", seguiremos ignorando uma linha de comentrio case '<': case '/': $n_close_string = strpos ($string, LF, $pointer + 1); if ($n_close_string === false) break; else { // coment $pointer = $n_close_string - 1; } // coment break; // outros caractres so guardados em $buffer default: $buffer .= $char; $buffer_enabled = true; break; } // char // avana o ponteiro para o prximo caractre $pointer++; } // get char return $building[1]; } // function string2array } // class eclIo_file //!eof:engine/eclIo/eclIo_file.php; //!file:engine/eclIo/eclIo_fileBinary.php; class eclIo_fileBinary { // class eclIo_fileBinary private $openedFiles = array (); public function &open ($name) { // function & if (!isset ($this->openedFiles[$name])) { // open file if (is_file ($name)) $this->openedFiles[$name][0] = file_get_contents ($name); else $this->openedFiles[$name][0] = ''; $this->openedFiles[$name][1] = $this->openedFiles[$name][0]; } // open file $data = &$this->openedFiles[$name][0]; return $data; } // function & public function close () { // function close foreach ($this->openedFiles as $name => $contents) { // each opened file if (strlen ($contents[0]) and $contents[0] != $contents[1]) file_put_contents ($name, $contents[0]); if (!strlen ($contents[0]) and is_file ($name)) unlink ($name); } // each opened files } // function close } // class eclIo_fileBinary //!eof:engine/eclIo/eclIo_fileBinary.php; //!file:engine/eclIo/eclIo_htaccess.php; class eclIo_htaccess { // class eclIo_htaccess public function regenerate () { // function regenerate $string = '#!Ecolabore Engine (c)2017 - Copyleft by Angelo Beck' . CRLF . '# Do not change these lines. Changes will be made from system.' . CRLF . CRLF . '' . CRLF . 'RewriteEngine On' . CRLF . CRLF . '# Forbiden invalid requests' . CRLF . 'RewriteRule [@%<>&] - [F]' . CRLF . CRLF . '# redirect all requests for the index' . CRLF . 'RewriteRule .* ' . SYSTEM_SCRIPT_NAME . '?RewriteEngine=On [L]' . CRLF . CRLF . '' . CRLF . '#!End of Ecolabore Engine settings' . CRLF; file_put_contents ('.htaccess', $string); } // function regenerate public function close () { // function close } // function close } // class eclIo_htaccess //!eof:engine/eclIo/eclIo_htaccess.php; //!file:engine/eclIo/eclIo_log.php; class eclIo_log { // class eclIo_log public $cache = ''; public $silent = false; public $buffer = ''; private $messages = array (); private $startTime; public function __construct () { // function __construct $this->startTime = microtime (true); } // function __construct public function addMessage ($message, $group='') { // function addMessage $this->messages[$group][] = $message; } // function addMessage public function close () { // function close if ($this->silent) return; $this->buffer = "'; } // function close } // class eclIo_log //!eof:engine/eclIo/eclIo_log.php; //!file:engine/eclIo/eclIo_packager.php; class eclIo_packager { // class eclIo_packager private $databaseString; private $externalString; private $dataBuffer; private $dataIndex; private $clearFiles; private $index_contents; private $folder_engine, $folder_library, $folder_shared, $folder_templates; private $packMediaFiles; public $nlMode = CRLF; public $indentLevel = 100; public $indent = "\t"; public $outputFileExtension = '.ecl.php'; public function __construct () { // function __construct global $io; defined ('SYSTEM_IS_PACKED') or define ('SYSTEM_IS_PACKED', false); $this->externalString = array ( '#', chr (0), chr (10), chr (13), chr (26), chr (39), chr (92) ); $this->databaseString = array ( '#c', '#0', '#n', '#r', '#z', '#s', '#e' ); if ($io->systemConstants->check ('FOLDER_ENGINE')) $this->folder_engine = $io->systemConstants->constants['FOLDER_ENGINE']; else $this->folder_engine = FOLDER_ENGINE; if ($io->systemConstants->check ('FOLDER_LIBRARY')) $this->folder_library = $io->systemConstants->constants['FOLDER_LIBRARY']; else $this->folder_library = FOLDER_LIBRARY; if ($io->systemConstants->check ('FOLDER_SHARED')) $this->folder_shared = $io->systemConstants->constants['FOLDER_SHARED']; else $this->folder_shared = FOLDER_SHARED; if ($io->systemConstants->check ('FOLDER_TEMPLATES')) $this->folder_templates = $io->systemConstants->constants['FOLDER_TEMPLATES']; else $this->folder_templates = FOLDER_TEMPLATES; } // function __construct public function pack ($params=array ()) { // function pack if (defined ('SYSTEM_IS_PACKED') and SYSTEM_IS_PACKED) return false; set_time_limit (300); ignore_user_abort (true); isset ($params['pack_mode']) or $params['pack_mode'] = 'export'; isset ($params['filename']) or $params['filename'] = 'install.php'; isset ($params['clear_source_files']) or $params['clear_source_files'] = false; isset ($params['pack_media_files']) or $params['pack_media_files'] = false; $this->packMediaFiles = $params['pack_media_files']; $this->dataBuffer = ''; $this->dataIndex = array (); $this->index_contents = file_get_contents (PATH_ROOT . SYSTEM_SCRIPT_NAME); $this->clearFiles = array (); $this->pack_controls (); $this->pack_shared (); $this->pack_templates (); $this->pack_embeded (); $settings = array ( 'SYSTEM_IS_PACKED' => true, 'SYSTEM_PACKED_DATE' => date ('r', TIME) ); if ($params['pack_mode'] == 'export') $fileName = PATH_ROOT . $params['filename']; else $fileName = PATH_ROOT . SYSTEM_SCRIPT_NAME; $package = fopen ($fileName, 'a+b'); ftruncate ($package, 0); fwrite ($package, $this->get_index_header ()); fwrite ($package, $this->set_packager_settings ($settings)); fwrite ($package, $this->pack_map ()); fwrite ($package, $this->pack_data_map ()); fwrite ($package, $this->pack_scripts ()); fwrite ($package, $this->get_index_footer ()); fwrite ($package, $this->dataBuffer); fclose ($package); if (!$params['clear_source_files'] or $params['pack_mode'] == 'export') return; // delete source files foreach ($this->clearFiles as $file) { // clear each source file unlink ($file); } // clear each source file // clear empty folders $folders = array (PATH_ENGINE, PATH_LIBRARY, PATH_SHARED, PATH_TEMPLATES); $list = array (); foreach ($folders as $level1) { // each level 1 if ($level1[0] == '.') continue; if (!is_dir ($level1)) continue; $list[] = $level1; foreach (scandir ($level1) as $level2) { // each level 2 if ($level2[0] == '.') continue; $level2 = $level1 . $level2 . '/'; if (!is_dir ($level2)) continue; $list[] = $level2; foreach (scandir ($level2) as $level3) { // each level 3 if ($level3[0] == '.') continue; $level3 = $level2 . $level3 . '/'; if (!is_dir ($level3)) continue; $list[] = $level3; foreach (scandir ($level3) as $level4) { // each level 4 if ($level4[0] == '.') continue; $level4 = $level3 . $level4 . '/'; if (!is_dir ($level4)) continue; $list[] = $level4; } // each level 4 } // each level 3 } // each level 2 } // each level 1 $list = array_reverse ($list); foreach ($list as $dir) { // each dir if (count (scandir ($dir)) == 2) rmdir ($dir); } // each dir } // function pack private function get_index_header () { // function get_index_header $indexFile = &$this->index_contents; $start = strpos ($indexFile, '//!' . 'packager:start_of_files'); if (!$start) exit ('markup "//!' . 'packager:start_of_files" not found in index.php'); $start += strlen ('//!' . 'packager:start_of_files'); $indexHeader = substr ($indexFile, 0, $start) . CRLF; return $indexHeader; } // function get_index_header private function get_index_footer () { // function get_index_footer $indexFile = $this->index_contents; $start = strpos ($indexFile, '//!' . 'packager:end_of_files'); if (!$start) exit ('markup "//!' . 'packager:end_of_files" not found in index.php'); if (defined ('SYSTEM_COMPILER_HALT_OFFSET')) $indexFooter = substr ($indexFile, $start, SYSTEM_COMPILER_HALT_OFFSET - $start); else $indexFooter = substr ($indexFile, $start) . CRLF . '__halt_' . 'compiler();'; return $indexFooter; } // function get_index_footer private function set_packager_settings ($settings) { // function set_packager_settings $buffer = '//!' . 'start_of_packager_settings' . CRLF . CRLF; foreach ($settings as $key => $value) { // each setting $buffer .= 'define(' . "'" . $key . "'" . ', '; if (is_string ($value)) $buffer .= "'" . str_replace ("'", "\'", $value) . "'"; elseif (is_int ($value)) $buffer .= strval ($value); elseif ($value === false) $buffer .= 'false'; else $buffer .= 'true'; $buffer .= ');' . CRLF; } // each setting $buffer .= CRLF . '//!' . 'end_of_packager_settings' . CRLF; return $buffer; } // function set_packager_settings private function pack_map () { // function pack_map $map = array (); foreach (scandir (PATH_LIBRARY) as $module) { // scan library if ($module[0] == '.') continue; foreach (scandir (PATH_LIBRARY . $module) as $name) { // each file if (!is_file (PATH_LIBRARY . $module . '/' . $name)) continue; if (substr ($name, 0, 4) != 'app_' or substr ($name, - 4) != '.txt') continue; $this->clearFiles[] = PATH_LIBRARY . $module . '/' . $name; if (substr ($name, - 12) == '_prepend.txt') { // prepend map $target = 'prepend'; $applicationName = substr ($name, 4, - 12); } // prepend map else { // append $target = 'append'; $applicationName = substr ($name, 4, - 11); } // append $content = file_get_contents (PATH_LIBRARY . $module . '/' . $name); $lines = array (); foreach (explode ("\n", $content) as $line) { // each line $line = trim ($line); if (strlen ($line) and preg_match ('/^[a-zA-Z0-9_]+$/', $line)) $map[$target][$applicationName][] = $line; } // each line } // each file } // scan library if (!$map) return ''; $buffer = '//!' . 'packager:start_of_map' . CRLF; $buffer .= CRLF; if (isset ($map['prepend'])) { // prepend $buffer .= '$mapPrepend = array (' . CRLF; foreach ($map['prepend'] as $module => $list) { // each module $buffer .= "'" . $module . "' => array ('" . implode ("', '", $list) . "')," . CRLF; } // each module $buffer .= ');' . CRLF . CRLF; } // prepend if (isset ($map['append'])) { // append $buffer .= '$mapAppend = array (' . CRLF; foreach ($map['append'] as $module => $list) { // each module $buffer .= "'" . $module . "' => array ('" . implode ("', '", $list) . "')," . CRLF; } // each module $buffer .= ');' . CRLF . CRLF; } // append $buffer .= '//!' . 'packager:end_of_map' . CRLF; return $buffer; } // function pack_map private function add ($mode, $path, $name, $content) { // function add $content = str_replace ($this->externalString, $this->databaseString, $content); $offset = strlen ($this->dataBuffer); $length = strlen ($content); $this->dataBuffer .= $content; $this->dataIndex[$mode][$path][$name] = strval ($offset) . ':' . strval ($length); } // function add private function pack_controls () { // function pack_controls foreach ($this->getAllFilesNames (PATH_LIBRARY) as $file) { // each file $parts = explode ('/', $file); $name = array_pop ($parts); $last = array_pop ($parts); if ($last == '_controls') $mode = 'c'; elseif ($last == '_help') $mode = 'h'; else continue; if (substr ($file, - 8) == '.ecl.php') { // control $name = substr ($name, 0, - 8); $this->clearFiles[] = PATH_LIBRARY . $file; $content = serialize (eclIo_file::string2array (file_get_contents (PATH_LIBRARY . $file))); } // control elseif (!$this->packMediaFiles) continue; else { // media $this->clearFiles[] = PATH_LIBRARY . $file; $content = file_get_contents (PATH_LIBRARY . $file); } // media $path = implode ('_', $parts); $this->add ($mode, $path, $name, $content); } // each file } // function pack_controls private function pack_shared () { // function pack_shared foreach ($this->getAllFilesNames (PATH_SHARED) as $file) { // each file if (substr ($file, - 8) != '.ecl.php') continue; $this->clearFiles[] = PATH_SHARED . $file; $content = serialize (eclIo_file::string2array (file_get_contents (PATH_SHARED . $file))); $parts = explode ('/', $file); $name = array_pop ($parts); $path = implode ('/', $parts); $this->add ('s', $path, substr ($name, 0, - 8), $content); } // each file } // function pack_shared private function pack_templates () { // function pack_templates foreach ($this->getAllFilesNames (PATH_TEMPLATES) as $file) { // each file $parts = explode ('/', $file); $name = array_pop ($parts); if (substr ($file, - 8) != '.ecl.php') continue; $name = substr ($name, 0, - 8); $this->clearFiles[] = PATH_TEMPLATES . $file; $content = serialize (eclIo_file::string2array (file_get_contents (PATH_TEMPLATES . $file))); $path = implode ('/', $parts); $this->add ('t', $path, $name, $content); } // each file } // function pack_templates private function pack_embeded () { // function pack_embeded foreach ($this->getAllFilesNames (PATH_SHARED) as $file) { // each file if (substr ($file, - 8) == '.ecl.php') continue; if (!$this->packMediaFiles and substr ($file, - 4) == '.mp3') continue; $this->clearFiles[] = PATH_SHARED . $file; $content = file_get_contents (PATH_SHARED . $file); $parts = explode ('/', $file); $name = array_pop ($parts); $path = implode ('/', $parts); $this->add ('f', $path, $name, $content); } // each file } // function pack_embeded private function pack_data_map () { // function pack_data_map $dataIndex = '//!' . 'packager:start_of_data_index' . CRLF; $dataIndex .= '$dataMap = array (' . CRLF; $dataIndex .= $this->array2php ($this->dataIndex) . CRLF; $dataIndex .= ');' . CRLF; $dataIndex .= '//!' . 'packager:end_of_data_index' . CRLF; return $dataIndex; } // function pack_data_map private function pack_scripts () { // function pack_scripts $buffer = ''; $allFiles = array (); foreach ($this->getAllFilesNames (PATH_ENGINE) as $file) { // loop engine files if (substr ($file, - 8) == '.ecl.php') continue; if (substr ($file, - 4) != '.php') continue; $allFiles[PATH_ENGINE . $file] = 'engine/' . $file; } // loop engine files foreach ($this->getAllFilesNames (PATH_LIBRARY) as $file) { // loop library files if (substr ($file, - 8) == '.ecl.php') continue; if (substr ($file, - 4) != '.php') continue; $allFiles[PATH_LIBRARY . $file] = 'library/' . $file; } // loop library files foreach ($allFiles as $fromFileName => $toFileName) { // get all scripts $this->clearFiles[] = $fromFileName; $string = file_get_contents ($fromFileName); if (substr ($string, 0, 5) == '') $string = substr ($string, 0, - 2); $buffer .= '//!' . 'file:' . $toFileName . ';' . CRLF . $string . '//' . '!eof:' . $toFileName . ';' . CRLF; } // get all files return $buffer; } // function pack_scripts public static function array2php ($array) { // function array2php if (!is_array ($array)) return ''; // a string resultante $string = ''; foreach ($array as $key => $value) { // each item if (is_int ($key)) $string .= strval ($key); else $string .= "'" . $key . "'"; $string .= ' => '; if ($value === false) $string .= 'false'; elseif ($value === true) $stirng .= 'true'; elseif (is_int ($value) or is_float ($value)) $string .= strval ($value); elseif (is_string ($value)) $string .= "'" . $value . "'"; elseif (is_array ($value)) $string .= 'array (' . CRLF . self::array2php ($value) . ')'; else $string .= "''"; $string .= ',' . CRLF; } // each item return $string; } // function array2php public function extract ($params=array ()) { // function extract if (!defined ('SYSTEM_IS_PACKED') or !SYSTEM_IS_PACKED) return; set_time_limit (3600); ignore_user_abort (true); $this->index_contents = file_get_contents (PATH_ROOT . SYSTEM_SCRIPT_NAME); $this->extract_scripts ($params); $this->extract_controls ($params); $this->extract_map (); $this->extract_shared ($params); $this->extract_templates ($params); $this->extract_embeded (); $settings = array ('SYSTEM_IS_PACKED' => false); if (isset ($params['output_data_file_extension'])) $settings['SYSTEM_DATA_FILE_EXTENSION'] = $params['output_data_file_extension']; $buffer = $this->get_index_header (); $buffer .= $this->set_packager_settings ($settings); $buffer .= $this->get_index_footer (); if (isset ($params['create_backup'])) { // create beckup if (isset ($params['filename'])) $fileName = $params['filename']; else $fileName = 'install.php'; $package = fopen (PATH_ROOT . $fileName, 'a+b'); ftruncate ($package, 0); fwrite ($package, $this->index_contents); fclose ($package); } // create backup $index = fopen (PATH_ROOT . SYSTEM_SCRIPT_NAME, 'a+b'); ftruncate ($index, 0); fwrite ($index, $buffer); fclose ($index); } // function extract private function extract_scripts ($params) { // function extract_scripts global $io; $string = $this->index_contents; $pointer = 0; $numFiles = 0; for ($watchDog = 0; $watchDog < 2000; $watchDog++) { // loop $pointer = strpos ($string, '//!' . 'file:', $pointer); if ($pointer === false) break; $pointer += 8; $end = strpos ($string, ";", $pointer); $length = $end - $pointer; $pathway = substr ($string, $pointer, $length); $numFiles++; $pointer = $end + 1; $end = strpos ($string, '//!' . 'eof:' . $pathway, $pointer); if ($end === false) break; $length = $end - $pointer; $file = ''; $file = $io->scriptFormat->format ($file, $params); $folders = explode ('/', $pathway); if ($folders[0] == 'engine') $folders[0] = $this->folder_engine; elseif ($folders[0] == 'library') $folders[0] = $this->folder_library; if (substr ($folders[0], - 1) == '/') $folders[0] = substr ($folders[0], 0, - 1); $fileName = implode ('/', $folders); $this->filePutContents (PATH_ROOT, $fileName, $file); } // loop } // function extract_scripts private function extract_map () { // function extract_map global $mapPrepend, $mapAppend; // extract maps foreach ($mapPrepend as $application => $names) { // each map list ($module) = explode ('_', $application); $content = implode (CRLF, $names); $this->filePutContents (PATH_ROOT, $this->folder_library . $module . '/app_' . $application . '_prepend.txt', $content); } // each map foreach ($mapAppend as $application => $names) { // each map list ($module) = explode ('_', $application); $content = implode (CRLF, $names); $this->filePutContents (PATH_ROOT, $this->folder_library . $module . '/app_' . $application . '_append.txt', $content); } // each map } // function extract_map private function extract_controls () { // function extract_controls global $io, $dataMap; // extract controls foreach ($dataMap['c'] as $module => $names) { // each module controls $path = str_replace ('_', '/', $module); foreach ($names as $name => $pos) { // each name $content = $io->file->array2string ($io->cachedControls->read ('c', $module, $name), '#'); $this->filePutContents (PATH_ROOT, $this->folder_library . $path . '/_controls/' . $name . '.ecl.php', $content); } // each name } // each module controls foreach ($dataMap['h'] as $module => $names) { // each module help $path = str_replace ('_', '/', $module); foreach ($names as $name => $pos) { // each name if (strpos ($name, '.') === false) { // control $content = $io->file->array2string ($io->cachedControls->read ('h', $module, $name), '#'); $this->filePutContents (PATH_ROOT, $this->folder_library . $path . '/_help/' . $name . '.ecl.php', $content); } // control else { // media $content = $io->cachedControls->file ($module, $name, 'h'); $this->filePutContents (PATH_ROOT, $this->folder_library . $path . '/_help/' . $name, $content); } // media } // each name } // each module help } // function extract_controls private function extract_shared () { // function extract_shared global $io, $dataMap; foreach ($dataMap['s'] as $path => $names) { // each module foreach ($names as $name => $pos) { // each name $content = $io->file->array2string ($io->cachedControls->read ('s', $path, $name)); $this->filePutContents (PATH_ROOT, $this->folder_shared . $path . '/' . $name . '.ecl.php', $content); } // each name } // each module } // function extract_shared private function extract_templates () { // function extract_templates global $io, $dataMap; foreach ($dataMap['t'] as $path => $names) { // each module foreach ($names as $name => $pos) { // each name $content = $io->file->array2string ($io->cachedControls->read ('t', $path, $name)); $this->filePutContents (PATH_ROOT, $this->folder_templates . $path . '/' . $name . '.ecl.php', $content); } // each name } // each module } // function extract_templates private function extract_embeded () { // function extract_embeded global $io, $dataMap; foreach ($dataMap['f'] as $path => $names) { // each module foreach ($names as $name => $pos) { // each name $content = $io->cachedControls->file ($path, $name); $this->filePutContents (PATH_ROOT, $this->folder_shared . $path . '/' . $name, $content); } // each name } // each module } // function extract_embeded public function getAllFilesNames ($basedir, $path='', $files=array ()) { // function getAllFilesNames foreach (scandir ($basedir . $path) as $name) { // loop scandir if ($name[0] == '.') continue; if (is_dir ($basedir . $path . $name)) $files = $this->getAllFilesNames ($basedir, $path . $name . '/', $files); elseif (is_file ($basedir . $path . $name)) $files[] = $path . $name; } // loop scandir return $files; } // function getAllFilesNames public function filePutContents ($basedir, $file, $string) { // function filePutContents $parts = explode ('/', $file); $name = array_pop ($parts); $dir = $basedir; foreach ($parts as $folder) { // each folder $dir .= $folder . '/'; if (!is_dir ($dir)) mkdir ($dir); } // each folder file_put_contents ($basedir . $file, $string); } // function filePutContents public function close () { // function close } // function close } // class eclIo_packager //!eof:engine/eclIo/eclIo_packager.php; //!file:engine/eclIo/eclIo_request.php; class eclIo_request { // class eclIo_request public $protocol; public $beta = ''; public $host; public $pathway; public $lang = false; public $actions = array (); public $received = array (); public $uploaded = array (); public $rewriteEngine = false; private $headers = array (); private $headersRemove = array (); private $headersRemoveAll = false; public function __construct () { // function __construct global $io; // Protocol if (isset ($_SERVER['HTTPS']) and $_SERVER['HTTPS'] == 'on') $this->protocol = 'https'; else $this->protocol = 'http'; // Beta if (isset ($_GET['beta'])) $this->beta = 'beta.'; // Rewrite Engine if (isset ($_GET['RewriteEngine'])) $this->rewriteEngine = true; elseif (SYSTEM_REWRITE_ENGINE and strpos (' ' . strtolower ($_SERVER['SERVER_SOFTWARE']), 'apache') and !is_file (PATH_ROOT . '.htaccess')) $io->htaccess->regenerate (); // Root dir $root = substr ($_SERVER['SCRIPT_NAME'], 1, - strlen (SYSTEM_SCRIPT_NAME)); // host $host = $_SERVER['SERVER_NAME']; // uri $uri = substr ($_SERVER['REQUEST_URI'], 1 + strlen ($root)); if ($pos = strpos ($uri, '=')) $uri = substr ($uri, $pos + 1); elseif (substr ($uri, 0, strlen (SYSTEM_SCRIPT_NAME)) == SYSTEM_SCRIPT_NAME) $uri = substr ($uri, strlen (SYSTEM_SCRIPT_NAME)); // pathway $pathway = array (); foreach (explode ('/', $uri) as $dir) { // each dir if (preg_match ('%^[a-zA-Z0-9._+-]+$%', $dir)) $pathway[] = $dir; } // each dir // Actions if (substr (end ($pathway), 0, 1) == '_') { // actions $actions_groups = explode ('_', substr (array_pop ($pathway), 1)); foreach ($actions_groups as $action_group) { // each action group // uma ao pode ter argumentos separados por hifem "-" $action_parts = explode ('-', $action_group); $this->actions[$action_parts[0]] = $action_parts; } // each action group } // actions // Reconheceremos por ventura algum idioma if ($this->isLanguage (end ($pathway))) $this->lang = array_pop ($pathway); reset ($pathway); // set reference mode if (SYSTEM_HOSTING_MODE == 2) { // working in Portal mode $main_host_length = strlen (SYSTEM_HOST); $v_host = substr ($host, 0, - $main_host_length); $parts = explode ('.', $v_host); if ($parts and $parts[0] == 'beta') $this->beta = array_shift ($parts) . '.'; elseif ($parts and $parts[0] == 'www') array_shift ($parts); if ($parts and strlen ($parts[0])) array_unshift ($pathway, $parts[0]); else array_unshift ($pathway, SYSTEM_DEFAULT_DOMAIN_NAME); $this->host = SYSTEM_HOST . '/'; $this->pathway = $pathway; } // working in Portal mode elseif (SYSTEM_HOSTING_MODE == 1) { // subdomains in subfolders // Domnio padro caso no haja uma pasta if (!$pathway) $pathway[0] = SYSTEM_DEFAULT_DOMAIN_NAME; elseif ($pathway[0] == '-' . SYSTEM_ADMIN_URI or $pathway[0] == '-' . SYSTEM_PROFILES_URI) $pathway[0] = substr ($pathway[0], 1); $this->host = $host . '/' . $root; $this->pathway = $pathway; } // subdomains in subfolders else { // single mode if ($pathway and ($pathway[0] == '-' . SYSTEM_ADMIN_URI or $pathway[0] == '-' . SYSTEM_PROFILES_URI)) $pathway[0] = substr ($pathway[0], 1); else array_unshift ($pathway, SYSTEM_DEFAULT_DOMAIN_NAME); $this->host = $host . '/' . $root; $this->pathway = $pathway; } // single mode if (!get_magic_quotes_gpc ()) $this->received = $_POST; else { // unescape string - magic quotes off $received = array (); foreach ($_POST as $key => $value) { // each field $received[$key] = str_replace (array ('\\\\', '\\\'', '\\"'), array ('\\', '\'', '"'), $value); } // each field $this->received = $received; } // unescape string -- magic quotes off foreach ($_FILES as $name => $entry) { // each uploaded file if (is_string ($entry['name'])) { // single file $this->uploaded[$name][0] = $entry; continue; } // single file $count = count ($entry['name']); for ($i = 0; $i < $count; $i++) { // loop index foreach ($entry as $key => $array) { // each key $this->uploaded[$name][$i][$key] = $array[$i]; } // each key } // loop index } // each uploaded file } // function __construct public function isLanguage ($lang) { // function isLanguage global $store; if (strlen ($lang) != 2) return false; if ($lang == 'pt' or $lang == 'en' or $lang == 'es' or $lang == 'it' or $lang == 'fr') return true; if ($store->control->read ('labels/lang/' . $lang)) return true; return false; } // function isLanguage public function header ($header) { // function header $this->headers[] = $header; } // function header public function headerRemove ($header=false) { // function headerRemove if ($header === false) $this->headersRemoveAll = true; else $this->headersRemove[] = $header; } // function headerRemove public function giveBack ($document) { // function giveBack global $io; if (isset ($this->actions['html'])) { // output page source print nl2br (str_replace (array ('&', '<', '"'), array ('&', '<', '"'), $document->buffer)); if (!$io->log->silent) print nl2br (str_replace (array ('&', '<', '"'), array ('&', '<', '"'), $io->buffer)); } // output page source else { // normal output print $document->buffer; if (!$io->log->silent) print $io->buffer; } // normal output if ($this->headersRemoveAll) header_remove (); elseif ($this->headersRemove) { // clear headers foreach ($this->headersRemove as $header) { // clear each header header_remove ($header); } // clear each header } // clear headers header ('HTTP/1.1 200 OK'); header ('X-Powered-By: ECOLABORE/' . SYSTEM_VERSION); header ("Cache-Control: no-cache, must-revalidate, max-age=0"); header ('Content-Type: text/html; charset=' . strtolower ($document->charset)); header ('Content-length: ' . strval (ob_get_length ())); if (isset ($document->application->data['flags']['modLayout_cacheable'])) { // cacheable header_remove ('Pragma'); header_remove ('Expires'); header ('Cache-Control: public, only-if-cached, max-age=' . $document->application->data['flags']['modLayout_cacheable']); } // cacheable foreach ($this->headers as $header) { // each header header ($header); } // each header header ('Connection: close'); ob_end_flush (); } // function giveBack public function close () { // function close } // function close } // class eclIo_request //!eof:engine/eclIo/eclIo_request.php; //!file:engine/eclIo/eclIo_scriptFormat.php; class eclIo_scriptFormat { // class eclIo_scriptFormat private $indent = CHR_HT; private $indentStart = 3; private $tokens; private $length; private $index = 0; private $level = 0; private $buffer = ''; private $lastFormat = array (); private $addNewLine = 0; public function format ($script, $params=array ()) { // function format $this->indent = CHR_HT; $this->indentStart = 3; $this->tokens = array (); $this->length = 0; $this->index = 0; $this->level = 0; $this->buffer = ''; $this->lastFormat = array (); $this->addNewLine = 0; if (isset ($params['script_indent'])) { // overwrite indentation string $this->indent = ''; foreach (explode (',', $params['script_indent']) as $int) { // loop chars $this->indent .= chr (intval (trim ($int, ', _'))); } // loop chars if (!strlen ($this->indent)) $this->indent = CHR_HT; } // overwrite indentation string if (isset ($params['script_indent_start'])) $this->indentStart = intval ($params['script_indent_start']); if (isset ($params['script_accessibility'])) { // accessibility $accessibility = true; $this->indent = ''; } // accessibility else $accessibility = false; $script = str_replace (CRLF, LF, $script); $this->tokens = token_get_all ($script); $this->length = count ($this->tokens); $names = array (); $nextName = ''; $inParentesis = 0; $inFunctionHeader = false; $afterTernary = false; $allowNextLevel = false; while (true) { // loop tokens list ($code, $string, $line, $newLine) = $this->getToken (); switch ($code) { // switch code case 0: break 2; case 1: switch ($string) { // switch string token case '"': case "'": case '@': case '!': case '&': $format = array ('newLineBefore' => $newLine, 'spaceAfter' => 0); $this->buffer .= $this->getIndent ($format) . $string; break 2; case ',': $format = array ('spaceBefore' => 0); $this->buffer .= $this->getIndent ($format) . $string . CHR_WSP; break 2; case '.': $format = array ('newLineBefore' => $newLine, 'spaceAfter' => 0); $this->buffer .= $this->getIndent ($format) . CHR_WSP . $string . CHR_WSP; break 2; case '=': if ($inFunctionHeader) $format = array ('spaceBefore' => 0, 'spaceAfter' => 0); else $format = array ('spaceBefore' => 1, 'spaceAfter' => 1); $this->buffer .= $this->getIndent ($format) . $string; break 2; // Exigem espaos antes e aps case '%': case '+': case '-': case '/': case '*': case '~': case '^': case '|': case '<': case '>': $format = array ('spaceBefore' => 1, 'spaceAfter' => 1); $this->buffer .= $this->getIndent ($format) . $string; break 2; case '?': $afterTernary = true; $format = array ('spaceBefore' => 1, 'spaceAfter' => 1); $this->buffer .= $this->getIndent ($format) . $string; break 2; case ':': if ($afterTernary) { // after ternary $afterTernary = false; $format = array ('spaceBefore' => 1, 'spaceAfter' => 1); $this->buffer .= $this->getIndent ($format) . $string; break 2; } // after ternary $format = array ('spaceBefore' => 0, 'newLineAfter' => 1); $this->buffer .= $this->getIndent ($format) . $string; if ($allowNextLevel !== false) { // allow next level $allowNextLevel = false; $this->level++; } // allow next level break 2; case '(': $inParentesis++; $this->level++; if ($accessibility) $format = array ('spaceBefore' => 1); else $format = array ('spaceBefore' => 0); $this->buffer .= $this->getIndent ($format) . $string; break 2; case ')': $inParentesis--; $this->level--; $format = array ('newLineBefore' => $newLine); $this->buffer .= $this->getIndent ($format) . $string; if (!$inParentesis) { // next token list ($nextCode, $nextString, $line, $nextNewLine) = $this->getNextToken (); if ($nextString != ':') $allowNextLevel = false; } // next token break 2; case '[': case ']': $format = array ('spaceBefore' => 0); $this->getIndent ($format); $this->buffer .= $string; break 2; case '{': $allowNextLevel = false; list ($nextCode, $nextString, $nextLine, $nextNewLine) = $this->getNextToken (); $inFunctionHeader = false; if (isset ($names[$this->level + 1])) { // comment is set $comment = $names[$this->level + 1]['comment']; $format = array ('newLineBefore' => 1, 'newLineAfter' => $names[$this->level + 1]['openNewLineAfter']); $this->buffer .= $this->getIndent ($format) . $string . ' // ' . $comment; if ($nextCode == T_COMMENT and $nextNewLine == 0) $this->getToken (); $this->level++; break 2; } // comment is set $format = array ('newLineBefore' => 1, 'newLineAfter' => 1); $this->buffer .= $this->getIndent ($format) . $string; $this->level++; $allowNextLevel = false; break 2; case '}': $this->level--; list ($nextCode, $nextString, $nextLine, $nextNewLine) = $this->getNextToken (); $format = array ('newLineBefore' => 1, 'newLineAfter' => 1); if (isset ($names[$this->level + 1])) { // comment is set $comment = $names[$this->level + 1]['comment']; $format = array ('newLineBefore' => 1, 'newLineAfter' => $names[$this->level + 1]['closeNewLineAfter']); $this->buffer .= $this->getIndent ($format) . $string . ' // ' . $comment; if ($nextCode == T_COMMENT and $nextNewLine == 0) $this->getToken (); unset ($names[$this->level + 1]); break 2; } // comment is set $format = array ('newLineBefore' => 1, 'newLineAfter' => 1); $this->buffer .= $this->getIndent ($format) . $string; break 2; case ';': if ($inParentesis) $format = array ('spaceBefore' => 0, 'spaceAfter' => 1); else $format = array ('spaceBefore' => 0, 'newLineAfter' => 1); $this->buffer .= $this->getIndent ($format) . $string; break 2; } // switch string token break; case T_DOC_COMMENT: case T_COMMENT: // // or #, and /+* *+/ in PHP 5 $string = rtrim ($string, CHR_HT . LF . '* /'); if (substr ($string, 0, 2) == '/' . '*') { // doc comment $string = ltrim ($string, CHR_HT . LF . '* /'); $lines = array (); foreach (explode (LF, $string) as $line) { // each line $lines[] = trim ($line, CHR_HT . LF . '/ *'); } // each line $string = '/' . '*' . LF . '* ' . implode (LF . '* ', $lines) . LF . '*' . '/'; $newLine = 2; } // doc comment $this->addNewLine = 1; if (!$newLine) $format = array ('spaceBefore' => 1, 'newLineAfter' => 1); else $format = array ('newLineBefore' => $newLine, 'newLineAfter' => 1); $this->buffer .= $this->getIndent ($format) . $string; break; // a resolver case T_CLASS: // class list ($nextCode, $nextString, $nextLine, $nextNewLine) = $this->getNextToken (); $allowNextLevel = $string; $comment = $string . ' ' . $nextString; $names[$this->level + 1] = array ('comment' => $comment, 'openNewLineAfter' => 2, 'closeNewLineAfter' => 2); $format = array ('newLineBefore' => $newLine, 'spaceAfter' => 1); $this->buffer .= $this->getIndent ($format) . $string; break; case T_FUNCTION: // function or cfunction list ($nextCode, $nextString, $nextLine, $nextNewLine) = $this->getNextToken (); $allowNextLevel = $string; $inFunctionHeader = true; $comment = $string . ' ' . $nextString; $names[$this->level + 1] = array ('comment' => $comment, 'openNewLineAfter' => 1, 'closeNewLineAfter' => 2); $format = array ('newLineBefore' => $newLine, 'spaceAfter' => 1); $this->buffer .= $this->getIndent ($format) . $string; break; // Regular tokens // Exigem espao aps case T_ABSTRACT: // abstract case T_CONST: // const case T_FINAL: // final case T_INTERFACE: // interface case T_PRIVATE: // private case T_PUBLIC: // public case T_PROTECTED: // protected $format = array ('newLineBefore' => $newLine, 'spaceAfter' => 1); $this->buffer .= $this->getIndent ($format) . $string; break; // Exigem espaos antes e aps case T_AND_EQUAL: // &= case T_AS: // as case T_BOOLEAN_AND: // && case T_BOOLEAN_OR: // || case T_CLONE: // clone case T_CONCAT_EQUAL: // .= case T_DIV_EQUAL: // /= case T_DOUBLE_ARROW: // => case T_EXTENDS: // extends case T_IMPLEMENTS: // implements case T_INSTANCEOF: // instanceof type operators (available since PHP 5.0.0) case T_IS_EQUAL: // == case T_IS_GREATER_OR_EQUAL: // >= case T_IS_IDENTICAL: // === case T_IS_NOT_EQUAL: // != or <> case T_IS_NOT_IDENTICAL: // !== case T_IS_SMALLER_OR_EQUAL: // <= case T_LOGICAL_AND: // and case T_LOGICAL_OR: // or case T_LOGICAL_XOR: // xor case T_MINUS_EQUAL: // -= case T_MOD_EQUAL: // %= case T_MUL_EQUAL: // *= case T_NEW: // new case T_OR_EQUAL: // |= case T_PLUS_EQUAL: // += case T_SL: // << case T_SL_EQUAL: // <<= case T_SR: // >> case T_SR_EQUAL: // >>= case T_XOR_EQUAL: // ^= $format = array ('spaceBefore' => 1, 'spaceAfter' => 1); $this->buffer .= $this->getIndent ($format) . $string; break; // No pode estar no incio da linha nem admitem espao aps case T_ARRAY: // array() case T_ARRAY_CAST: // (array) case T_BOOL_CAST: // (bool) or (boolean) case T_DOUBLE_CAST: // (real), (double) or (float) case T_INT_CAST: // (int) or (integer) case T_OBJECT_CAST: // (object) case T_STRING_CAST: // (string) $format = array ('newLineBefore' => 0, 'spaceAfter' => 0); $this->buffer .= $this->getIndent ($format) . $string; break; // No admite espao ou quebra de linha aps case T_ECHO: // echo() case T_EMPTY: // empty() case T_EVAL: // eval() case T_EXIT: // exit or die case T_INCLUDE: // include() case T_INCLUDE_ONCE: // include_once() case T_ISSET: // isset() case T_OBJECT_OPERATOR: // -> case T_REQUIRE: // require() case T_REQUIRE_ONCE: // require_once() case T_UNSET: // unset() case T_UNSET_CAST: // (unset) $format = array ('newLineBefore' => $newLine, 'spaceAfter' => 0); $this->buffer .= $this->getIndent ($format) . $string; break; // No admitem quebra de linha aps case T_DEC: // -- case T_DNUMBER: // decimal number like 0.12, etc case T_INC: // ++ case T_VARIABLE: // $foo $format = array ('newLineBefore' => $newLine, 'newLineAfter' => 0); $this->buffer .= $this->getIndent ($format) . $string; break; case T_CONSTANT_ENCAPSED_STRING: // 'a' or "a" // No admitem quebra de linha aps $format = array ('newLineBefore' => $newLine, 'newLineAfter' => 0); $this->buffer .= $this->getIndent ($format) . $string; break; case T_CLASS_C: // __CLASS__ case T_DIR: // __DIR__ case T_FILE: // __FILE__ case T_FUNC_C: // __FUNCTION__ case T_LINE: // __LINE__ case T_METHOD_C: // __METHOD__ case T_NS_C: // __NAMESPACE__ $format = array ('newLineBefore' => 0, 'newLineAfter' => 0); $this->buffer .= $this->getIndent ($format) . $string; break; // Exige quebra de linha admite espao aps case T_BREAK: // break case T_RETURN: // return if (!$newLine) $newLine = 1; $format = array ('newLineBefore' => $newLine, 'spaceAfter' => 1); $this->buffer .= $this->getIndent ($format) . $string; break; // Exige quebra de linha no admite espao aps case T_ENDDECLARE: // enddeclare case T_ENDFOR: // endfor case T_ENDFOREACH: // endforeach case T_ENDIF: // endif case T_ENDSWITCH: // endswitch case T_ENDWHILE: // endwhile $this->level--; if (!$newLine) $newLine = 1; $format = array ('newLineBefore' => $newLine, 'spaceAfter' => 0); $this->buffer .= $this->getIndent ($format) . $string; break; case T_CATCH: // catch case T_DECLARE: // declare case T_ELSEIF: // elseif or else if case T_FOR: // for case T_FOREACH: // foreach case T_IF: // if case T_WHILE: // while case T_SWITCH: // switch $allowNextLevel = $string; $nextName = $string; case T_CONTINUE: // continue case T_DEFAULT: // default case T_LIST: // list() if (!$newLine) $newLine = 1; $format = array ('newLineBefore' => $newLine, 'spaceAfter' => 0); $this->buffer .= $this->getIndent ($format) . $string; break; // Exige quebra de linha e espao aps case T_CASE: // case $format = array ('newLineBefore' => $newLine, 'spaceAfter' => 1); $this->level--; $this->buffer .= $this->getIndent ($format) . $string; $this->level++; break; case T_GLOBAL: // global case T_GOTO: // goto case T_NAMESPACE: // namespace case T_PRINT: // print() case T_STATIC: // static case T_THROW: // throw case T_VAR: // var if (!$newLine) $newLine = 1; $format = array ('newLineBefore' => $newLine, 'spaceAfter' => 1); $this->buffer .= $this->getIndent ($format) . $string; break; // Exige quebra de linha antes e aps case T_DO: // do case T_ELSE: // else case T_TRY: // try if (!$newLine) $newLine = 1; $format = array ('newLineBefore' => $newLine, 'newLineAfter' => 1); $this->buffer .= $this->getIndent ($format) . $string; break; // Exige 2 quebras de linha aps case T_OPEN_TAG: // ?php, ? or % $format = array ('spaceBefore' => 0, 'newLineAfter' => 2); $this->buffer .= $this->getIndent ($format) . trim ($string); break; // Exige 2 quebras de linha antes case T_CLOSE_TAG: // ? or % case T_HALT_COMPILER: // magic halt_compiler $format = array ('newLineBefore' => 2, 'spaceAfter' => 0); break; // Exige 2 quebras de linhas antes e espao aps case T_USE: // use $format = array ('newLineBefore' => 2, 'spaceAfter' => 1); $this->buffer .= $this->getIndent ($format) . $string; break; // Tokens no utilizados case T_START_HEREDOC: // <<< case T_END_HEREDOC: // heredoc syntax case T_CURLY_OPEN: // {$lt: case T_DOLLAR_OPEN_CURLY_BRACES: // ${ case T_ENCAPSED_AND_WHITESPACE: // " $a" case T_INLINE_HTML: // text outside PHP case T_NS_SEPARATOR: // \ namespaces (available since PHP 5.3.0) case T_NUM_STRING: // "$a[0]" case T_OPEN_TAG_WITH_ECHO: // $newLine); $this->buffer .= $this->getIndent ($format) . $string; break; } // switch code } // loop tokens $this->buffer .= LF . LF . '?' . '>'; if (isset ($params['script_nl']) and $params['script_nl'] == 'CRLF') $this->buffer = str_replace (LF, CRLF, $this->buffer); return $this->buffer; } // function format private function getToken () { // function getToken if ($this->index == $this->length) return array (0, '', 0, 0); $token = $this->tokens[$this->index]; $this->index++; $nl = $this->addNewLine; $this->addNewLine = 0; if (is_array ($token) and $token[0] == 371) { // spacer for ($i = 0; $i < strlen ($token[1]); $i++) { // loop char if ($token[1][$i] == LF) $nl++; } // loop char $token = $this->tokens[$this->index]; $this->index++; if ($this->index == $this->length) return array (0, '', 0, 0); } // spacer if (is_string ($token)) return array (1, $token, 0, $nl); $token[3] = $nl; return $token; } // function getToken private function getNextToken () { // function getNextToken static $line = 1; $index = $this->index + 1; if ($index >= $this->length) return array (0, '', 0, 0); $token = $this->tokens[$index]; $index++; if (is_array ($token) and $token[0] == 371) { // spacer $nl = 0; for ($i = 0; $i < strlen ($token[1]); $i++) { // loop char if ($token[1][$i] == LF) $nl++; } // loop char $token = $this->tokens[$index]; $index++; if ($index == $this->length) return array (0, '', 0, 0); } // spacer else $nl = 0; if (is_string ($token)) return array (1, $token, $line, $nl); $token[3] = $nl; return $token; } // function getNextToken private function getIndent ($format) { // function getIndent $lastFormat = $this->lastFormat; $this->lastFormat = $format; if (isset ($format['spaceBefore'])) { // space before if ($format['spaceBefore']) return CHR_WSP; return ''; } // space before if (isset ($lastFormat['spaceAfter'])) { // space after last token if ($lastFormat['spaceAfter']) return CHR_WSP; return ''; } // space after last token $nl = 0; if (isset ($format['newLineBefore'])) $nl = $format['newLineBefore']; if (isset ($lastFormat['newLineAfter']) and $lastFormat['newLineAfter'] > $nl) $nl = $lastFormat['newLineAfter']; if (!$nl) return ''; $buffer = LF; if ($nl > 1) $buffer .= LF; for ($i = $this->indentStart; $i <= $this->level; $i++) { // loop levels $buffer .= $this->indent; } // loop levels return $buffer; } // function getIndent public function close () { // function close } // function close } // class eclIo_scriptFormat //!eof:engine/eclIo/eclIo_scriptFormat.php; //!file:engine/eclIo/eclIo_sendFile.php; class eclIo_sendFile { // class eclIo_sendFile static public function send ($path, $params) { // function send error_reporting (0); if (SYSTEM_TIME_LIMIT) set_time_limit (0); while (@ob_end_clean ()); // turn off compression on the server // if (is_callable ('apache_setenv')) // apache_setenv ('no-gzip', 1); $headers = is_callable ('apache_request_headers') ? apache_request_headers () : array (); // ini_set ('zlib.output_compression', 'Off'); $parts = self::get_file_parts ($path); header_remove ('Pragma'); header_remove ('Expires'); header_remove ('X-Powered-By'); if (!$parts) { // bad request header ('HTTP/1.0 400 Bad Request'); return 400; } // bad request if (!is_file ($path)) { // file not found header ('HTTP/1.0 404 Not Found'); return 404; } // file not found $name = $parts[0]; $mime = $parts[1]; $size = filesize ($path); $start = 0; $end = $size - 1; $updated = filemtime ($path); $eTag = md5 ($name . $updated); if (isset ($headers['ETag']) and $headers['ETag'] == $eTag) { // not modified header ('HTTP/1.1 304 Not Modified'); return 304; } // not modified if (isset ($headers['If-Modified-Since']) and $headers['If-Modified-Since'] == $updated) { // not modified header ('HTTP/1.1 304 Not Modified'); return 304; } // not modified $stream = fopen ($path, 'rb'); if (!$stream and $size > 2000000) { // internal error header ('HTTP/1.0 500 Internal Server Error'); return 500; } // internal error header ('HTTP/1.1 200 OK'); header ('Access-Control-Allow-Origin: *'); // allow a file to be streamed instead of sent as an attachment if (isset ($_REQUEST['stream'])) header ('Content-Disposition: inline;'); elseif (isset ($params['Content-Disposition']) and $params['Content-Disposition'] == 'inline') header ('Content-Disposition: inline;'); elseif (isset ($params['Filename'])) header ('Content-Disposition: attachment; filename="' . $params['Filename'] . '"'); else header ('Content-Disposition: attachment; filename="' . $name . '"'); if (isset ($params['Cache-Control'])) header ('Cache-Control: ' . $params['Cache-Control']); header ('ETag: "' . $eTag . '"'); header ('Last-Modified: ' . $updated); header ('Content-Type: ' . $mime); if ($stream) header ('Accept-Ranges: bytes'); // check if http_range is sent by browser (or download manager) if (isset ($_SERVER['HTTP_RANGE'])) { // requested range list ($requested_size_unit, $requested_range_orig) = explode ('=', $_SERVER['HTTP_RANGE'], 2); // multiple ranges could be specified at the same time, but for simplicity only serve the first range // http://tools.ietf.org/id/draft-ietf-http-range-retrieval-00.txt list ($range) = explode (',', $requested_range_orig, 2); list ($start) = explode ('-', $range); $start = intval ($start); if ($requested_size_unit != 'bytes' or $start >= $end) { // out of range header ('HTTP/1.1 416 Requested Range Not Satisfiable'); return 416; } // out of range } // requested range //Only send partial content header if downloading a piece of the file (IE workaround) if ($stream and $start > 0) { // partial content header ('HTTP/1.1 206 Partial Content'); header ('Content-Range: bytes ' . strval ($start) . '-' . $end . '/' . $size); header ('Content-Length: ' . ( ($end - $start) + 1)); } // partial content else header ('Content-Length: ' . $size); if (!$stream) { // fopen failed print file_get_contents ($path); return 0; } // fopen failed fseek ($stream, $start); fpassthru ($stream); fclose ($stream); return 0; } // function send static public function get_file_parts ($file) { // function get_file_parts $parts = explode ('/', $file); // cant read from root directory (protection) if (count ($parts) < 2) return false; $name = array_pop ($parts); $n = strrpos ($name, '.'); if (!$n) return array ($name, "application/octet-stream"); $extension = strtolower (substr ($name, $n + 1)); switch ($extension) { // switch extension case 'js': $mime = 'application/javascript'; break; case 'json': $mime = 'application/json'; break; case 'jpg': case 'jpeg': case 'jpe': $mime = 'image/jpg'; break; case 'png': case 'gif': case 'bmp': case 'tiff': $mime = 'image/' . $extension; break; case 'css': $mime = 'text/css'; break; case 'xml': $mime = 'application/xml'; break; case 'doc': case 'docx': $mime = 'application/msword'; break; case 'xls': case 'xlt': case 'xlm': case 'xld': case 'xla': case 'xlc': case 'xlw': case 'xll': $mime = 'application/vnd.ms-excel'; break; case 'ppt': case 'pps': $mime = 'application/vnd.ms-powerpoint'; break; case 'rtf': $mime = 'application/rtf'; break; case 'pdf': $mime = 'application/pdf'; break; case 'html': case 'htm': case 'php': $mime = 'text/html'; break; case 'txt': $mime = 'text/plain'; break; case 'mpeg': case 'mpg': case 'mpe': $mime = 'video/mpeg'; break; case 'mp3': $mime = 'audio/mpeg'; break; case 'wav': $mime = 'audio/wav'; break; case 'aiff': case 'aif': $mime = 'audio/aiff'; break; case 'avi': $mime = 'video/msvideo'; break; case 'wmv': $mime = 'video/x-ms-wmv'; break; case 'mov': $mime = 'video/quicktime'; break; case 'zip': $mime = 'application/zip'; break; case 'tar': $mime = 'application/x-tar'; break; case 'swf': $mime = 'application/x-shockwave-flash'; break; default: if (function_exists ('mime_content_type')) { // discover file type $mime = mime_content_type ($path); } // discover file type else $mime = 'application/octet-stream'; } // switch extension return array ($name, $mime); } // function get_file_parts public function close () { // function close } // function close } // class eclIo_sendFile //!eof:engine/eclIo/eclIo_sendFile.php; //!file:engine/eclIo/eclIo_session.php; class eclIo_session { // class eclIo_session public $cache = array (); public function __construct () { // function __construct if (SYSTEM_HOSTING_MODE == 2) session_set_cookie_params (0, '/', '.' . SYSTEM_HOST); @session_start (); $this->cache = $_SESSION; } // function __construct public function close () { // function close $_SESSION = $this->cache; } // function close } // class eclIo_session //!eof:engine/eclIo/eclIo_session.php; //!file:engine/eclIo/eclIo_sms.php; class eclIo_sms { // class eclIo_sms public function enabled () { // function enabled if (defined ('INTEGRATION_PAPO_SMS_ENABLE') and INTEGRATION_PAPO_SMS_ENABLE) return true; return false; } // function enabled public function send ($sms) { // function send global $io; if (defined ('INTEGRATION_PAPO_SMS_ENABLE') and INTEGRATION_PAPO_SMS_ENABLE) return $io->integrationSMS->send ($sms); return false; } // function send public function close () { // function close } // function close } // class eclIo_sms //!eof:engine/eclIo/eclIo_sms.php; //!file:engine/eclIo/eclIo_smtp.php; class eclIo_smtp { // class eclIo_smtp private $enabled = false; private $host; private $port; private $user; private $password; private $from; private $to = array (); private $cc = array (); private $bcc = array (); private $subject = ''; private $destinations = ''; private $alternativeContents = array (); private $relatedContents = array (); private $attachmentContents = array (); public $rejected = array (); public $log = ''; public function __construct ($host=false, $port=false, $user=false, $password=false, $from=false) { // function __construct if (!defined ('INTEGRATION_SMTP_ENABLE') or !INTEGRATION_SMTP_ENABLE) return; $this->host = $host ? $host : INTEGRATION_SMTP_HOST; $this->port = $port ? $port : INTEGRATION_SMTP_PORT; $this->user = $user ? $user : INTEGRATION_SMTP_USER; $this->password = $password ? $password : INTEGRATION_SMTP_PASSWORD; $this->from = $from ? $from : INTEGRATION_SMTP_FROM; $this->enabled = true; } // function __construct public function to ($to) { // function to foreach (explode (';', $to) as $copy) { // each copy $this->to[] = trim ($copy); } // each copy return $this; } // function to public function cc ($cc) { // function cc foreach (explode (';', $cc) as $copy) { // each copy $this->cc[] = trim ($copy); } // each copy return $this; } // function cc public function bcc ($bcc) { // function bcc foreach (explode (';', $bcc) as $copy) { // each copy $this->bcc[] = trim ($copy); } // each copy return $this; } // function bcc public function subject ($subject, $charset='UTF-8') { // function subject $this->subject = 'Subject: =?' . $charset . '?Q?' . quoted_printable_encode ($subject) . '?=' . CRLF; return $this; } // function subject public function contentHTML ($html, $charset='UTF-8', $description="Message in HTML format") { // function contentHTML $this->alternativeContents[] = 'Content-type: text/html;charset=' . $charset . CRLF . 'Content-Description: =?' . $charset . '?Q?' . quoted_printable_encode ($description) . '?=' . CRLF . 'Content-Disposition: inline' . CRLF . 'Content-Transfer-Encoding: base64' . CRLF . CRLF . chunk_split (base64_encode ($html)) . CRLF; return $this; } // function contentHTML public function contentTXT ($text, $charset='UTF-8', $description="Message in plain text format") { // function contentTXT $this->alternativeContents[] = 'Content-type: text/plain;charset=' . $charset . CRLF . 'Content-Description: =?' . $charset . '?Q?' . quoted_printable_encode ($description) . '?=' . CRLF . 'Content-Disposition: inline' . CRLF . 'Content-Transfer-Encoding: base64' . CRLF . CRLF . chunk_split (base64_encode ($text)) . CRLF; return $this; } // function contentTXT public function relatedImg ($path, $cid) { // function relatedImg $fileName = array_pop (explode ('/', $path)); $fileExtension = strtolower (array_pop (explode ('.', $fileName))); $mime = array ( 'jpg' => 'image/jpeg', 'jpeg' => 'image/jpeg', 'gif' => 'image/gif', 'png' => 'image/png' ); $contents = file_get_contents ($path); $this->relatedContents[] = 'Content-Type: ' . $mime[$fileExtension] . '; name="' . $fileName . '"' . CRLF . 'Content-Disposition: inline; filename="' . $fileName . '"' . CRLF . 'Content-Transfer-Encoding: base64' . CRLF . 'Content-ID: <' . $cid . '>' . CRLF . CRLF . chunk_split (base64_encode ($contents)) . CRLF . CRLF; return $this; } // function relatedImg public function attachment ($path) { // function attachment $fileName = array_pop (explode ('/', $path)); if (function_exists ('mime_content_type')) $mime = mime_content_type ($path); else $mime = 'application/octet-stream'; $contents = file_get_contents ($path); $this->attachmentContents[] = 'Content-Type: ' . $mime . '; name="' . $fileName . '"' . CRLF . 'Content-Disposition: attachment; filename="' . $fileName . '"' . CRLF . 'Content-Transfer-Encoding: base64' . CRLF . CRLF . chunk_split (base64_encode ($contents)) . CRLF . CRLF; return $this; } // function attachment public function send () { // function send if (!$this->enabled) return array ('msg' => 'adminMail_smtp_alertDisabled'); if (SYSTEM_TIME_LIMIT) set_time_limit (0); // Opens a socket $this->socket = @fsockopen ($this->host, $this->port, $errNo, $errMsg, INTEGRATION_SMTP_TTL); if (!$this->socket) return array ('msg' => 'adminMail_smtp_alertSocketError', 'server' => $this->host); // Ehlo $this->putContents ("EHLO " . $this->host . CRLF); if ($this->discoverError ()) return array ('msg' => 'adminMail_smtp_alertSocketError', 'server' => $this->host); // Auth login $this->putContents ("AUTH LOGIN" . CRLF); if ($this->discoverError ()) return array ('msg' => 'adminMail_smtp_alertSocketError', 'server' => $this->host); // Username $this->putContents (base64_encode ($this->user) . CRLF); if ($this->discoverError ()) return array ('msg' => 'adminMail_smtp_alertLoginError', 'server' => $this->host, 'user' => $this->user); // Password $this->putContents (base64_encode ($this->password) . CRLF); if ($this->discoverError ()) return array ('msg' => 'adminMail_smtp_alertLoginError', 'server' => $this->host, 'user' => $this->user); // mail from $this->putContents ("MAIL FROM: <" . $this->from . ">" . CRLF); if ($this->discoverError ()) return array ('msg' => 'adminMail_smtp_alertLoginError', 'server' => $this->host, 'user' => $this->user); // Test the destinations if ($error = $this->rcpt ()) return $error; // data command $this->putContents ("DATA" . CRLF); if ($this->discoverError ()) return array ('msg' => 'adminMail_smtp_alertSendingError', 'to' => $this->to); list ($headers, $content) = explode (CRLF . CRLF, $this->getMessageBody (), 2); // The message $out = 'MIME-Version: 1.0' . CRLF . 'From: <' . $this->from . '>' . CRLF . $this->destinations . $this->subject . 'Date: ' . date ('D, d M Y H:i:s O') . CRLF . 'Message-ID: <' . date ('YmdHis') . "." . md5 (microtime ()) . "." . $this->from . '>' . CRLF // . 'User-Agent: ' . SYSTEM_GENERATOR . ' ' . SYSTEM_VERSION . ' ' . SYSTEM_RELEASE . CRLF . 'Importance: normal' . CRLF . $headers . CRLF . CRLF; $this->putContents ($out); if ($this->discoverError ()) return array ('msg' => 'adminMail_smtp_alertSendingError', 'to' => implode ('; ', $this->to)); // Content $this->putContents ($content . CRLF . '.' . CRLF); if ($this->discoverError ()) return array ('msg' => 'adminMail_smtp_alertSendingError', 'to' => $this->to); // Close the socket fclose ($this->socket); return false; } // function send private function getContents () { // function getContents $c = $this->socket; $buffer = ''; while ($str = @fgets ($c, 515)) { // loop reading $buffer .= $str; // if the 4th character is a space then we are done reading // so just break the loop if (substr ($str, 3, 1) == " ") break; } // loop reading $this->log .= $buffer; return $buffer; } // function getContents private function putContents ($out) { // function putContents if (!@fwrite ($this->socket, $out)) exit ('connection was broken'); $this->log .= $out; return true; } // function putContents private function discoverError () { // function discoverError $lines = $this->getContents (); $lines = trim ($lines); if (strlen ($lines) < 4) return true; if ($lines[0] == '5') return true; return false; } // function discoverError private function getMessageBody () { // function getMessageBody $alternativeBoundary = md5 (TIME . 'ALTERNATIVE'); $relatedBoundary = md5 (TIME . 'RELATIVE'); $attachmentBoundary = md5 (TIME . 'ATTACHMENT'); if (count ($this->alternativeContents) == 1) $alternativeBody = $this->alternativeContents[0]; elseif (count ($this->alternativeContents) > 1) $alternativeBody = 'Content-Type: multipart/alternative; boundary="' . $alternativeBoundary . '"' . CRLF . CRLF . '--' . $alternativeBoundary . CRLF . implode (CRLF . '--' . $alternativeBoundary . CRLF, $this->alternativeContents) . CRLF . '--' . $alternativeBoundary . '--' . CRLF; array_unshift ($this->relatedContents, $alternativeBody); if (count ($this->relatedContents) == 1) $relatedBody = $this->relatedContents[0]; else $relatedBody = 'Content-Type: multipart/related; boundary="' . $relatedBoundary . '"' . CRLF . CRLF . '--' . $relatedBoundary . CRLF . implode (CRLF . '--' . $relatedBoundary . CRLF, $this->relatedContents) . CRLF . '--' . $relatedBoundary . '--' . CRLF; array_unshift ($this->attachmentContents, $relatedBody); if (count ($this->attachmentContents) == 1) return $this->attachmentContents[0]; return 'Content-Type: multipart/mixed; boundary="' . $attachmentBoundary . '"' . CRLF . CRLF . '--' . $attachmentBoundary . CRLF . implode (CRLF . '--' . $attachmentBoundary . CRLF, $this->attachmentContents) . CRLF . '--' . $attachmentBoundary . '--' . CRLF; } // function getMessageBody private function rcpt () { // function rcpt foreach ($this->to as $recipient) { // each recipient $this->putContents ("RCPT TO: <" . $recipient . ">" . CRLF); if ($this->discoverError ()) $this->rejected[] = $recipient; else $to[] = $recipient; } // each recipient foreach ($this->cc as $recipient) { // each recipient $this->putContents ("RCPT TO: <" . $recipient . ">" . CRLF); if ($this->discoverError ()) $this->rejected[] = $recipient; else $cc[] = $recipient; } // each recipient foreach ($this->bcc as $recipient) { // each recipient $this->putContents ("RCPT TO: <" . $recipient . ">" . CRLF); if ($this->discoverError ()) $this->rejected[] = $recipient; else $bcc[] = $recipient; } // each recipient if (isset ($to) and $to) $this->destinations .= 'To: ' . implode (",\r\n\t", $to) . CRLF; if (isset ($cc) and $cc) $this->destinations .= 'Cc: ' . implode (",\r\n\t", $cc) . CRLF; if (isset ($bcc) and $bcc) $this->destinations .= 'Bcc: ' . implode (",\r\n\t", $bcc) . CRLF; if (!strlen ($this->destinations)) return array ('msg' => 'adminMail_smtp_alertToError', 'to' => implode ('; ', $this->rejected)); return false; } // function rcpt public function close () { // function close } // function close } // class eclIo_smtp //!eof:engine/eclIo/eclIo_smtp.php; //!file:engine/eclIo/eclIo_sqlite.php; class eclIo_sqlite { // class eclIo_sqlite protected $databases = array (); public function connect ($database) { // function connect if (!isset ($this->databases[$database])) { // open file global $io; $this->databases[$database] = new eclIo_database ($io, $database); } // open file return $this->databases[$database]; } // function connect public function close () { // function close foreach ($this->databases as $database) { // each domain $database->close (); } // each domain } // function close } // class eclIo_sqlite //!eof:engine/eclIo/eclIo_sqlite.php; //!file:engine/eclIo/eclIo_systemConstants.php; class eclIo_systemConstants { // class eclIo_systemConstants public $constants; public $originalRows; public $components; public $aliases; public $map; public function __construct () { // function __construct global $components, $aliases, $map; $this->components = $components; $this->aliases = $aliases; $this->map = $map; $this->constants = array (); if (!is_file (SYSTEM_CONFIG_FILE)) return; $file = file_get_contents (SYSTEM_CONFIG_FILE); foreach (explode (LF, $file) as $line) { // loop each line if (!strlen ($line)) continue; if (preg_match ('%define\ ?[(][\'"]([a-zA-Z0-9_]+)[\'"][,]\ ?([^)]+)%', $line, $results)) { // is a definition line list (, $key, $value) = $results; if ($value == 'true') $value = true; elseif ($value == 'false') $value = false; elseif (is_numeric ($value)) $value = intval ($value); elseif ($value[0] == "'") $value = substr ($value, 1, - 1); $this->constants[$key] = $value; } // is a definition line } // loop each line $this->originalRows = $this->constants; } // function __construct public function set ($name, $value) { // function set $this->constants[$name] = $value; if (!defined ($name)) define ($name, $value); } // function set public function check ($name) { // function check if (isset ($this->constants[$name])) return true; return false; } // function check public function drop ($name) { // function drop if (isset ($this->constants[$name])) unset ($this->constants[$name]); } // function drop public function get ($name) { // function get if (isset ($this->constants[$name])) return $this->constants[$name]; if (defined ($name)) return constant ($name); return false; } // function get public function close () { // function close global $aliases, $components; if ($this->constants == $this->originalRows and $this->aliases == $aliases and $this->components == $components) return; $grouped = array (); foreach ($this->constants as $key => $value) { // group constants @list ($prefix) = explode ('_', $key); $grouped[$prefix][$key] = $value; } // group constants $string = ' $value) { // each constant if ($value === false) $string .= "define ('" . $key . "', false);" . CRLF; elseif ($value === true) $string .= "define ('" . $key . "', true);" . CRLF; elseif (is_int ($value)) $string .= "define ('" . $key . "', " . strval ($value) . ");" . CRLF; elseif (is_string ($value)) $string .= "define ('" . $key . "', '" . str_replace (array ("'", "\\", "\r", "\n"), "", $value) . "');" . CRLF; } // each constant $string .= CRLF; } // each group $string .= '$components = array ('; $string .= eclIo_packager::array2php ($this->components) . CRLF; $string .= ');' . CRLF . CRLF; $string .= '$aliases = array ('; $string .= eclIo_packager::array2php ($this->aliases) . CRLF; $string .= ');' . CRLF . CRLF; $string .= '$map = array ('; $string .= eclIo_packager::array2php ($this->map) . CRLF; $string .= ');' . CRLF . CRLF; $string .= '?>'; file_put_contents (SYSTEM_CONFIG_FILE, $string); } // function close } // class eclIo_systemConstants //!eof:engine/eclIo/eclIo_systemConstants.php; //!file:engine/eclIo/eclIo_webservice.php; class eclIo_webservice { // class eclIo_webservice public function request ($url, $data=array ()) { // function request global $io; if (!$data) return $this->json2array (file_get_contents ($url)); if (!function_exists ('curl_init')) { // error $io->log->addMessage ('curl library not found'); return array (); } // error $data = $this->array2json ($data); $ch = curl_init ($url); curl_setopt ($ch, CURLOPT_CUSTOMREQUEST, "POST"); curl_setopt ($ch, CURLOPT_POSTFIELDS, $data); curl_setopt ($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt ($ch, CURLOPT_HTTPHEADER, array ( 'Content-Type: application/json', 'Content-Length: ' . strlen ($data)) ); $result = curl_exec ($ch); return $this->json2array ($result); } // function request public function read () { // function read $string = file_get_contents ("php://input"); return $this->json2array ($string); } // function read public function send ($data) { // function send print $this->array2json ($data); header_remove (); header ('HTTP/1.1 200 OK'); header ('X-Powered-By: ECOLABORE/' . SYSTEM_VERSION); header ("Cache-Control: no-cache, must-revalidate, max-age=0"); header ('Content-Type: text/json; charset=utf-8'); header ('Content-length: ' . strval (ob_get_length ())); } // function send static function array2json ($array) { // function array2json $buffer = ''; if (!is_array ($array) or !$array) return '{}'; reset ($array); $key = key ($array); if ($key === 0) { // is indexed array $buffer .= '[' . CRLF; foreach ($array as $key => $value) { // each value if ($key) $buffer .= ',' . CRLF; if ($value === true) $buffer .= 'true'; elseif ($value === false) $buffer .= 'false'; elseif (is_int ($value)) $buffer .= strval ($value); elseif (is_float ($value)) $buffer .= strval ($value); elseif (is_string ($value)) $buffer .= '"' . str_replace ('"', '\\"', $value) . '"'; elseif (is_array ($value)) $buffer .= self::array2json ($value); } // each value $buffer .= CRLF . ']'; return $buffer; } // is indexed array $buffer .= '{' . CRLF; $index = 0; foreach ($array as $key => $value) { // each array element if ($index++) $buffer .= ',' . CRLF; $buffer .= '"' . str_replace ('"', '\\"', $key) . '":'; if ($value === true) $buffer .= 'true'; elseif ($value === false) $buffer .= 'false'; elseif (is_int ($value)) $buffer .= strval ($value); elseif (is_float ($value)) $buffer .= strval ($value); elseif (is_string ($value)) $buffer .= '"' . str_replace ('"', '\\"', $value) . '"'; elseif (is_array ($value)) $buffer .= self::array2json ($value); } // each array element $buffer .= CRLF . '}'; return $buffer; } // function array2json public static function json2array ($string) { // function json2array $pointer = 0; $floor = 0; $array[0] = array (); $key[0] = false; $isFloat = false; $value = array (); while (isset ($string[$pointer])) { // each character switch ($string[$pointer]) { // switch char case ' ': case "\r": case "\n": case "\t": $pointer++; break; case '[': case '{': $pointer++; $floor++; $array[$floor] = array (); $key[$floor] = false; $value = array (); break; case ']': case '}': $pointer++; if (!is_array ($value)) { // append last item if ($key[$floor] === false) $array[$floor][] = $value; else $array[$floor][$key[$floor]] = $value; $key[$floor] = false; $value = array (); } // append last item if ($floor < 0) return $array[0]; $floor--; if ($key[$floor] === false) $array[$floor][] = $array[$floor + 1]; else $array[$floor][$key[$floor]] = $array[$floor + 1]; $key[$floor] = false; break; case ':': $pointer++; if (!is_array ($value) and !is_bool ($value) and preg_match ('/^[$a-zA-Z][a-zA-Z0-9_-]*$/', $value)) $key[$floor] = $value; elseif (!is_array ($value) and !is_bool ($value) and preg_match ('/^[0-9]+$/', $value)) $key[$floor] = intval ($value); $value = array (); break; case ',': $pointer++; if (is_array ($value)) break; if ($key[$floor] === false) $array[$floor][] = $value; else $array[$floor][$key[$floor]] = $value; break; case '"': $pointer++; $start = $pointer; $pointer = strpos ($string, '"', $pointer); if ($pointer === false) return $array[0]; while ($string[$pointer - 1] == CHR_BSLASH) { // loop escaped quotes $pointer = strpos ($string, '"', $pointer + 1); if ($pointer === false) return $array[0]; } // loop escaped quotes $value = substr ($string, $start, $pointer - $start); $pointer++; break; case 't': case 'T': $pointer += 4; $value = true; break; case 'f': case 'F': $pointer += 5; $value = false; break; case '.': case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': $value = ''; while (isset ($string[$pointer])) { // search numbers switch ($string[$pointer]) { // switch chars case '.': $isFloat = true; case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': $value .= $string[$pointer]; $pointer++; break; default: if ($isFloat) $value = floatval ($value); else $value = intval ($value); $isFloat = false; break 2; } // switch chars } // search numbers break; } // switch char } // each character if (count ($array[0]) == 1 and isset ($array[0][0])) return $array[0][0]; return $array[0]; } // function json2array public function close () { // function close } // function close } // class eclIo_webservice //!eof:engine/eclIo/eclIo_webservice.php; //!file:engine/eclScope/eclScope_address.php; class eclScope_address { // class eclScope_address static function get ($render, $arguments) { // function get $data['data'] = $render->getVar ('address'); return $data; } // function get } // class eclScope_address //!eof:engine/eclScope/eclScope_address.php; //!file:engine/eclScope/eclScope_audima.php; class eclScope_audima { // class eclScope_audima static function get ($render, $arguments) { // function get global $store, $system; if ($render->me === false) return false; $document = $render->document; $me = $render->me; if ($document->data['id'] != $me->data['id']) return array (); if (isset ($me->data['extras']['audio_0'])) return array (); $data = array ('local' => array ('audima' => 1)); return $data; } // function get } // class eclScope_audima //!eof:engine/eclScope/eclScope_audima.php; //!file:engine/eclScope/eclScope_audio.php; class eclScope_audio { // class eclScope_audio static function get ($render, $arguments) { // function get global $store, $system; if ($render->me === false) return false; $document = $render->document; $me = $render->me; $number = $render->getVar ('mod.number'); if (!$number) $number = '0'; $extras = $me->data['extras']; $target = 'audio_' . $number; if (!isset ($extras[$target])) { // no media if (!$me->id or !$me->domainId) return false; if (!$document->access (4, $me->groups)) return; $data['local']['editable'] = 1; $pathway = $me->pathway; $domain = array_shift ($pathway); array_unshift ($pathway, $domain, '-personalite', 'extras', $target); $url = $document->url ($pathway); $data['local']['url'] = "javaScript:humperstilshen.popUpOpen('" . $url . "', 300, 200)"; return $data; } // no media $data['local'] = $extras[$target]; if (isset ($data['local']['files']['audio'])) { // url $data['local']['url_download'] = $document->urlFiles ($data['local']['files']['audio'], true, '-downloads'); $data['local']['url_play'] = $document->urlFiles ($data['local']['files']['audio'], true, '-play'); } // url //!start version 3 compatibility if (isset ($data['local']['audio'])) { // Version 3 compatibility $data['local']['url_download'] = $document->urlFiles ($data['local']['audio'], true, '-downloads'); $data['local']['url_play'] = $document->urlFiles ($data['local']['audio'], true, '-play'); } // Version 3 compatibility //!end version 3 compatibility if (isset ($data['local']['play'])) $data['local']['play'] = strval ($data['local']['play']); //!start version 3 compatibility elseif (isset ($data['local']['plays'])) $data['local']['play'] = strval ($data['local']['plays']); //!end version 3 compatibility return $data; } // function get } // class eclScope_audio //!eof:engine/eclScope/eclScope_audio.php; //!file:engine/eclScope/eclScope_card.php; class eclScope_card { // class eclScope_card static function get ($render, $arguments) { // function get if (isset ($render->me->data['extras']['card']['local'])) return $render->me->data['extras']['card']; return; } // function get } // class eclScope_card //!eof:engine/eclScope/eclScope_card.php; //!file:engine/eclScope/eclScope_cart.php; class eclScope_cart { // class eclScope_cart static function get ($render, $arguments) { // function get global $store; $document = $render->document; if (!$render->getVar ('value')) return; if (!$store->domainContent->findMarker ($document->domain->domainId, 12)) return; $data['local'] = $render->data; $data['local']['url'] = $document->url (true, true, '_preload-cart'); return $data; } // function get } // class eclScope_cart //!eof:engine/eclScope/eclScope_cart.php; //!file:engine/eclScope/eclScope_categories.php; class eclScope_categories { // class eclScope_categories static function get ($render, $arguments) { // function get global $store; if (!isset ($render->data['domain_id']) or !isset ($render->data['name'])) return false; $document = $render->document; $domainId = $render->data['domain_id']; $name = $render->data['name']; $data = array (); $sections = $store->domainContent->mode ($domainId, MODE_SECTION); foreach ($sections as $section) { // each section if (!isset ($section['flags']['section_type']) or $section['flags']['section_type'] != 'categories') continue; $categories = $store->domainContent->children ($document->domain->domainId, MODE_CATEGORY, $section['id']); if (!$categories) continue; $group = $document->createListItem ($section); foreach ($categories as $category) { // each category if (!isset ($category['links']['pages']) or !in_array ($name, $category['links']['pages'])) continue; $group->appendChild ($category) ->swapTitle () ->url ($store->domainContent->pathway ($domainId, $category['id'])); } // each category if ($group->children) $data['children'][] = $group; } // each section return $data; } // function get } // class eclScope_categories //!eof:engine/eclScope/eclScope_categories.php; //!file:engine/eclScope/eclScope_credits.php; class eclScope_credits { // class eclScope_credits static function get ($render, $arguments) { // function get if (!isset ($render->data['text']['author'])) return false; $data = $render->data; if (isset ($render->data['extras']['credits'])) $data['local'] = $render->data['extras']['credits']; return $data; } // function get } // class eclScope_credits //!eof:engine/eclScope/eclScope_credits.php; //!file:engine/eclScope/eclScope_date.php; class eclScope_date { // class eclScope_date static function get ($render, $arguments) { // function get global $store; $document = $render->document; if (!isset ($arguments[0])) return false; $time = intval ($arguments[0]); if (!$time) return false; if (isset ($arguments[1]) and $time == intval ($arguments[1])) return false; $parts = explode ('-', date ('Y-m-d-H-i-n', $time)); $local['y'] = $parts[0]; $local['m'] = $parts[1]; $local['d'] = $parts[2]; $local['h'] = $parts[3]; $local['i'] = $parts[4]; $local['n'] = $parts[5]; if ($parts[2] == 1) $local['th'] = 'st'; elseif ($parts[2] == 2) $local['th'] = 'nd'; elseif ($parts[2] == 3) $local['th'] = 'rd'; else $local['th'] = 'th'; $month = $render->block ('labels/date/month' . $parts[5]); if (isset ($month['text']['caption'])) $local['month'] = $month['text']['caption']; $data['local'] = $local; return $data; } // function get } // class eclScope_date //!eof:engine/eclScope/eclScope_date.php; //!file:engine/eclScope/eclScope_date_elapsed.php; class eclScope_date_elapsed { // class eclScope_date_elapsed static function get ($render, $arguments) { // function get global $store; if (!isset ($arguments[0])) return false; $time = intval ($arguments[0]); if (!$time) return false; $dif = TIME - $time; if ($dif <= 60) $message = 'now'; elseif ($dif <= 120) $message = '1minute'; elseif ($dif <= 3600) { $message = 'minutes'; $local['i'] = intval ($dif / 60); } elseif ($dif <= 7200) $message = '1hour'; elseif ($dif <= 86400) { $message = 'hours'; $local['h'] = intval ($dif / 3600); } elseif ($dif <= 172800) $message = '1day'; elseif ($dif <= 2592000) { $message = 'days'; $local['d'] = intval ($dif / 86400); } elseif ($dif <= 5184000) $message = '1month'; elseif ($dif <= 31104000) { $message = 'months'; $local['m'] = intval ($dif / 2592000); } elseif ($dif <= 62208000) $message = '1year'; else { $message = 'years'; $local['y'] = intval ($dif / 31104000); } $description = $render->block ('labels/date/elapsed_' . $message); $local['elapsed'] = $description['text']['caption']; $data['local'] = $local; return $data; } // function get } // class eclScope_date_elapsed //!eof:engine/eclScope/eclScope_date_elapsed.php; //!file:engine/eclScope/eclScope_file.php; class eclScope_file { // class eclScope_file static function get ($render, $arguments) { // function get global $store, $system; $document = $render->document; if (isset ($render->data['extras'])) $extras = $render->data['extras']; else $extras = array (); $number = $render->getVar ('mod.number'); if (!$number) $number = '0'; $target = 'file_' . $number; if (!isset ($extras[$target])) { // no media $pathway = $render->getVar ('pathway'); if (!$pathway) { // get pathway if (!isset ($render->data['id']) or !isset ($render->data['domain_id'])) return false; $id = $render->data['id']; $pathway = $store->domainContent->pathway ($render->data['domain_id'], $id); } // get pathway $me = $document->domain->parent; foreach ($pathway as $folder) { // each folder $me = $me->child ($folder); if (!$me) return; } // each folder if (!$document->access (4, $me->groups)) return; $data['local']['editable'] = 1; $domain = array_shift ($pathway); array_unshift ($pathway, $domain, '-personalite', 'extras', $target); $url = $document->url ($pathway); $data['local']['url'] = "javaScript:humperstilshen.popUpOpen('" . $url . "', 300, 200)"; return $data; } // no media $data['local'] = $extras[$target]; if (isset ($data['local']['files']['file'])) { // url $data['local']['url_download'] = $document->urlFiles ($data['local']['files']['file'], true, '-downloads'); $data['local']['url_play'] = $document->urlFiles ($data['local']['files']['file'], true, '-play'); } // url //!start version 3 compatibility if (isset ($data['local']['file'])) { // Version 3 compatibility $data['local']['url_download'] = $document->urlFiles ($data['local']['file'], true, '-downloads'); $data['local']['url_play'] = $document->urlFiles ($data['local']['file'], true, '-play'); } // Version 3 compatibility //!end version 3 compatibility if (isset ($data['local']['play'])) $data['local']['play'] = strval ($data['local']['play']); //!start version 3 compatibility elseif (isset ($data['local']['plays'])) $data['local']['play'] = strval ($data['local']['plays']); //!end version 3 compatibility return $data; } // function get } // class eclScope_file //!eof:engine/eclScope/eclScope_file.php; //!file:engine/eclScope/eclScope_fonts.php; class eclScope_fonts { // class eclScope_fonts static function get ($render, $arguments) { // function get global $store; if (!isset ($render->data['extras']['fonts'])) return false; $document = $render->document; $fonts = $render->data['extras']['fonts']; $data = array (); $demonstration = $store->control->read ('dialog_fonts_demonstration'); if (isset ($document->session['scope-fonts-demonstration'])) $demonstration = array_replace ($demonstration, $document->session['scope-fonts-demonstration']); $demonstration['ref_demonstration'] = $document->url ($document->domain->name, '-dialog', 'font-change-preview'); foreach (array ('light-' => '-light', '' => '', 'heavy-' => '-heavy') as $prefix => $sufix) { // each family if (!isset ($fonts[$prefix . 'regular'])) continue; $local = array (); $local['font-family'] = 'ecl-' . $render->data['name'] . $sufix; foreach (array ('regular', 'italic', 'bold', 'bold-italic') as $style) { // each style if (!isset ($fonts[$prefix . $style])) continue; $local[$style . '-url'] = $document->urlFiles ($fonts[$prefix . $style], true, '-files/fonts'); $parts = explode ('.', $fonts[$prefix . $style]); $local[$style . '-format'] = end ($parts); } // each style if (isset ($fonts[$prefix . 'stack-start'])) { // start of stack $buffer = ''; $list = explode (',', $fonts[$prefix . 'stack-start']); foreach ($list as $font) { // each font $font = trim ($font, '"\' '); if (isset ($font[0])) { // add font $buffer .= 'local("' . $font . '"), '; } // add font } // each font if (isset ($buffer[0])) $local['stack-start'] = $buffer; } // start of stack $buffer = $local['font-family']; if (isset ($fonts[$prefix . 'stack-end'])) { // end of stack $list = explode (',', $fonts[$prefix . 'stack-end']); foreach ($list as $font) { // each font $font = trim ($font, '"\' '); if (isset ($font[0])) { // add font if (strpos ($font, ' ')) $buffer .= ", '" . $font . "'"; else $buffer .= ', ' . $font; } // add font } // each font } // end of stack $local['stack'] = $buffer; if ($prefix == 'light-') $caption = $store->control->read ('labels/detail/font_light'); elseif ($prefix == 'heavy-') $caption = $store->control->read ('labels/detail/font_heavy'); else $caption = $store->control->read ('labels/detail/font_normal'); $local['caption'] = $caption['text']['caption']; $data['children'][] = $document->createListItem ($local, $demonstration); } // each family return $data; } // function get } // class eclScope_fonts //!eof:engine/eclScope/eclScope_fonts.php; //!file:engine/eclScope/eclScope_home.php; class eclScope_home { // class eclScope_home static function get ($render, $arguments) { // function get global $store; $document = $render->document; $home = $document->application; while (!$home->isDomain) { // loop up $home = $home->parent; } // loop up $data['data'] = $home->data; if ($home !== $document->application and $document->application->name != '') $data['data']['url'] = $document->url ($home->pathway); if ($document->contentEditable and $document->application->name == '') $data['data']['editable'] = 1; return $data; } // function get } // class eclScope_home //!eof:engine/eclScope/eclScope_home.php; //!file:engine/eclScope/eclScope_img.php; class eclScope_img { // class eclScope_img static function get ($render, $arguments) { // function get global $store; $document = $render->document; $extras = $render->getVar ('extras'); if (!isset ($extras['img_0'])) return false; $domainId = $render->getVar ('domain_id'); $domainName = $store->domain->getName ($domainId); $scope = array ('data' => array ()); $data = &$scope['data']; $data = $extras['img_0']; $data['url'] = $render->getVar ('url'); if (isset ($data['files']['img'])) $data['url_img'] = $document->urlFiles ($data['files']['img'], $domainName); // Version 3 compatibility elseif (isset ($data['img'])) $data['url_img'] = $document->urlFiles ($data['img'], $domainName); if (isset ($data['files']['img_mini'])) $data['url_img_mini'] = $document->urlFiles ($data['files']['img_mini'], $domainName); // Version 3 compatibility elseif (isset ($data['img_mini'])) $data['url_img_mini'] = $document->urlFiles ($data['img_mini'], $domainName); if (!isset ($data['local']['description'])) { // provides a description $data['local']['description'] = $render->getVar ('description'); if ($data['local']['description'] == '') $data['local']['description'] = $render->getVar ('title'); if ($data['local']['description'] == '') $data['local']['description'] = $render->getVar ('caption'); } // provides a description return $scope; } // function get } // class eclScope_img //!eof:engine/eclScope/eclScope_img.php; //!file:engine/eclScope/eclScope_location.php; class eclScope_location { // class eclScope_location static function get ($render, $arguments) { // function get global $store, $system; if (!isset ($render->data['domain_id']) or !isset ($render->data['name'])) return false; $document = $render->document; $domainId = $render->data['domain_id']; $domainName = $store->domain->getName ($domainId); $name = $render->data['name']; $domain = $system->child ($domainName); $me = $domain->findChild ($name); if ($me == false) return false; $levels = array (); $levels[] = $me; while (!$me->parent->isDomain) { // loop levels $me = $me->parent; $levels[] = $me; } // loop levels $data['children'] = array (); $length = count ($levels); for ($i = $length - 1; $i > 0; $i--) { // each level $data['children'][] = $document->createListItem ($levels[$i]->data) ->url ($levels[$i]->pathway); } // each level if (!count ($data['children'])) $data['children'][] = $document->createListItem ($levels[0]->data) ->url ($levels[0]->pathway); return $data; } // function get } // class eclScope_location //!eof:engine/eclScope/eclScope_location.php; //!file:engine/eclScope/eclScope_locationFull.php; class eclScope_locationFull { // class eclScope_locationFull static function get ($render, $arguments) { // function get global $store, $system; if (!isset ($render->data['domain_id']) or !isset ($render->data['name'])) return false; $document = $render->document; $domainId = $render->data['domain_id']; $domainName = $store->domain->getName ($domainId); $name = $render->data['name']; $domain = $system->child ($domainName); $me = $domain->findChild ($name); if ($me == false) return false; $levels = array (); $levels[] = $me; while (!$me->isDomain) { // loop levels $me = $me->parent; $levels[] = $me; } // loop levels $data['children'] = array (); $length = count ($levels); for ($i = $length - 1; $i >= 0; $i--) { // each level if ($i == $length - 1) $data['children'][] = $document->createListItem ($levels[$i]->data) ->swapTitle () ->url ($levels[$i]->pathway); else $data['children'][] = $document->createListItem ($levels[$i]->data) ->url ($levels[$i]->pathway); } // each level return $data; } // function get } // class eclScope_locationFull //!eof:engine/eclScope/eclScope_locationFull.php; //!file:engine/eclScope/eclScope_system.php; class eclScope_system { // class eclScope_system static function get ($render, $arguments) { // function get global $system; $data['data'] = $system->data; return $data; } // function get } // class eclScope_system //!eof:engine/eclScope/eclScope_system.php; //!file:engine/eclScope/eclScope_user.php; class eclScope_user { // class eclScope_user static function get ($render, $arguments) { // function get global $store; $document = $render->document; if (!isset ($arguments[0]) or !$arguments[0]) return false; if ($document->user->userId == $arguments[0]) { // you return $store->control->read ('user_you'); } // you $userName = $store->user->getName ($arguments[0]); $user = $store->userContent->open ($arguments[0], '-register'); if (!$user) return; $data['local'] = $user; $data['local']['url'] = $render->document->url (array (SYSTEM_PROFILES_URI, $userName)); return $data; } // function get } // class eclScope_user //!eof:engine/eclScope/eclScope_user.php; //!file:engine/eclScope/eclScope_video.php; class eclScope_video { // class eclScope_video static function get ($render, $arguments) { // function get global $store; $document = $render->document; $extras = $render->getVar ('extras'); $target = 'video'; $number = $render->getVar ('mod.number'); if (!$number) $number = '0'; if (!isset ($extras[$target . '_' . $number])) { // no media $pathway = $render->getVar ('pathway'); if (!$pathway) return; $me = $document->domain->parent; foreach ($pathway as $folder) { // each folder $me = $me->child ($folder); if (!$me) return; } // each folder if (!$document->access (4, $me->groups)) return; $data['local']['editable'] = 1; $domain = array_shift ($pathway); array_unshift ($pathway, $domain, '-personalite', 'extras', $target . '_' . $number); $url = $document->url ($pathway); $data['local']['url'] = "javaScript:humperstilshen.popUpOpen('" . $url . "', 300, 200)"; return $data; } // no media $data['local'] = $extras[$target . '_' . $number]; if (isset ($data['local']['files'][$target])) { // url $data['local']['url_download'] = $document->urlFiles ($data['local']['files'][$target], true, '-downloads'); $data['local']['url_play'] = $document->urlFiles ($data['local']['files'][$target], true, '-play'); } // url return $data; } // function get } // class eclScope_video //!eof:engine/eclScope/eclScope_video.php; //!file:engine/eclStore/eclStore_control.php; class eclStore_control { // class eclStore_control public $name = 'unknown'; public $controls = array (); private $render; public $php = ''; public function __construct () { // function __construct $this->render = new eclEngine_render (); } // function __construct public function read ($controlName) { // function read global $aliases, $components, $io, $store; if (isset ($this->controls[$controlName])) return $this->controls[$controlName]; $folders = explode ('/', $controlName); $count = count ($folders); switch ($count) { // switch number of folders case 1: $parts = explode ('_', $controlName, 3); $name = array_pop ($parts); if (isset ($aliases[$parts[0]]) and isset ($components[$aliases[$parts[0]]])) $file = PATH_COMPONENTS . $aliases[$parts[0]] . '/' . $components[$aliases[$parts[0]]] . '/' . implode ('/', $parts) . '/_controls/' . $name . '.ecl.php'; else $file = PATH_LIBRARY . implode ('/', $parts) . '/_controls/' . $name . '.ecl.php'; $path = implode ('_', $parts); $prefix = $path . '_'; $mode = 'c'; break; default: $file = PATH_TEMPLATES . $controlName . '.ecl.php'; $name = array_pop ($folders); $path = implode ('/', $folders); $prefix = $path . '/'; $mode = 't'; } // switch number of folders if (SYSTEM_PACKED_SHARED_FIRST) { // packed first $control = $io->cachedControls->read ($mode, $path, $name); if (!$control) $control = $io->file->read ($file); } // packed first else { // external first $control = $io->file->read ($file); if (!$control) $control = $io->cachedControls->read ($mode, $path, $name); } // external first if (isset ($control['children'])) { // children exists foreach ($control['children'] as &$child) { // each child if ($child[0] == '~') $child = $prefix . substr ($child, 1); } // each child } // children exists if (isset ($control['flags'])) { // flags exists foreach ($control['flags'] as &$value) { // each flag if (is_string ($value) and strlen ($value) and $value[0] == '~') $value = $prefix . substr ($value, 1); } // each flags } // flags exists if (isset ($control['flags']['caption'])) { // set caption if (!isset ($control['text'])) $control['text'] = array (); $caption = $this->read ($control['flags']['caption']); if (isset ($caption['text'])) $control['text'] = array_replace ($caption['text'], $control['text']); } // set caption if (isset ($control['html'])) $control['parsed'] = $this->render->render_tags ($control['html'], true); $this->controls[$controlName] = $control; return $control; } // function read public function scandir ($mode, $dir) { // function scandir global $dataMap, $io; if (SYSTEM_IS_PACKED) { // system packed if (isset ($dataMap[$mode][$dir])) { // dir found $names = array (); foreach ($dataMap[$mode][$dir] as $name => $value) { // each name $names[] = $name; } // each name return $names; } // dir found // search subfolders $dir .= '/'; $length = strlen ($dir); $names = array (); foreach ($dataMap[$mode] as $name => $value) { // each dir if (strlen ($name) <= $length) continue; if (substr ($name, 0, $length) == $dir) $names[] = substr ($name, $length); } // each dir return $names; } // system packed if ($mode == 'c') { // control mode if (!is_dir (PATH_LIBRARY . $dir . '/_controls')) return array (); $names = array (); foreach (scandir (PATH_LIBRARY . $dir . '/_controls') as $name) { // each name if ($name[0] == '.') continue; if (substr ($name, - 8) == '.ecl.php') $names[] = substr ($name, 0, - 8); } // each name return $names; } // control mode if ($mode == 's') { // shared mode if (!is_dir (PATH_SHARED . $dir)) return array (); $names = array (); foreach (scandir (PATH_SHARED . $dir) as $name) { // each name if ($name[0] == '.') continue; $names[] = $name; } // each name return $names; } // shared mode if ($mode == 't') { // template mode if (!is_dir (PATH_TEMPLATES . $dir)) return array (); $names = array (); foreach (scandir (PATH_TEMPLATES . $dir) as $name) { // each name if ($name[0] == '.') continue; if (substr ($name, - 8) == '.ecl.php') $name = substr ($name, 0, - 8); $names[] = $name; } // each name return $names; } // templates mode return array (); } // function scandir public function close () { // function close } // function close public function renderToPhp ($array) { // function renderToPhp $length = count ($array); if (!$length) return; $index = 0; goto LEVEL_NEXT_INSTRUCTION_1; LEVEL_NEXT_INSTRUCTION: $index++; if ($index == $length) return; LEVEL_NEXT_INSTRUCTION_1: $current = $array[$index]; if (!isset ($current[1])) goto LEVEL_NEXT_INSTRUCTION; if ($current[0] == 0) { // buffer $this->php .= '$buffer .= ' . "'" . str_replace ("'", CHR_BSLASH . "'", $current[1]) . "';" . CRLF; goto LEVEL_NEXT_INSTRUCTION; } // buffer if (isset ($current[2]) and $current[2]) $arguments = $this->renderArgumentsToPhp ($current[2]); else $arguments = array (); switch ($current[1]) { // switch function name case 'if': $this->php .= 'if (' . $arguments[0] . '){' . CRLF; if (isset ($current[3]) and $current[3]) $this->renderToPhp ($current[3]); $this->php .= '}' . CRLF; while ($index + 1 != $length and isset ($array[$index + 1][1]) and $array[$index + 1][1] == 'elseif') { // loop elseif $current = $array[$index + 1]; if (isset ($current[2]) and isset ($current[3]) and $current[3]) { // conditions and block exists $arguments = $this->renderArgumentsToPhp ($current[2]); $this->php .= 'elseif (' . $arguments[0] . '){' . CRLF; $this->renderToPhp ($current[3]); $this->php .= '}' . CRLF; } // conditions and block exists $index++; } // loop elseif if ($index + 1 != $length and isset ($array[$index + 1][1]) and $array[$index + 1][1] == 'else') { // else $current = $array[$index + 1]; if (isset ($current[3]) and $current[3]) { // block exists $this->php .= 'else {' . CRLF; $this->renderToPhp ($current[3]); $this->php .= '}' . CRLF; } // block exists $index++; } // else goto LEVEL_NEXT_INSTRUCTION; case 'loop': $this->php .= 'do {' . CRLF; if (isset ($current[3]) and $current[3]) $this->renderToPhp ($current[3]); $this->php .= '} while (eclTag_loop::render ($render));' . CRLF; goto LEVEL_NEXT_INSTRUCTION; case '': $this->php .= '$buffer .= ' . implode (' . ', $arguments) . ';' . CRLF; goto LEVEL_NEXT_INSTRUCTION; default: $class = 'eclTag_' . $current[1]; if (!preg_match ('/^[a-z][a-zA-Z0-9_]*$/', $class)) goto LEVEL_NEXT_INSTRUCTION; if (isset ($current[3]) and $current[3]) { // not empty $this->php .= '$local = ' . $class . '::render ($render, array(' . implode (', ', $arguments) . '));' . CRLF; $this->php .= '$render->levelUp ($local);' . CRLF; $this->renderToPhp ($current[3]); $this->php .= '$render->levelDown ();' . CRLF; goto LEVEL_NEXT_INSTRUCTION; } // not empty switch ($current[1]) { // switch return value tags functions case 'nl': $this->php .= '$buffer .= CRLF;' . CRLF; break; case 'details': case 'field': case 'help': case 'interactive': case 'lang': case 'list': case 'modlist': case 'personalite': case 'scope': $this->php .= '$local = ' . $class . '::render ($render, array (' . implode (', ', $arguments) . '));' . CRLF; $this->php .= 'if (isset ($local["parsed"])) { // parsed content $render->levelUp ($local); $render->render_tags_level ($local["parsed"]); $render->levelDown (); } // parsed content elseif (isset ($local["html"])) { // render html $render->levelUp ($local); $render->render_tags ($local["html"]); $render->levelDown (); } // render html '; break; case 'box': case 'img': case 'mod': case 'table': $this->php .= '$local = ' . $class . '::render ($render, array (' . implode (', ', $arguments) . ')); if ($local){ $render->levelUp ($local); if (isset ($local["parsed"])) $render->render_tags_level ($local["parsed"]); elseif (isset ($local["html"])) $render->render_tags ($local["html"]); else eclRender_renderBorders_none::render ($render); $render->levelDown (); } '; break; default: $this->php .= $class . '::render ($render, array (' . implode (', ', $arguments) . '));' . CRLF; } // switch return tag functions goto LEVEL_NEXT_INSTRUCTION; } // switch function name goto LEVEL_NEXT_INSTRUCTION; } // function renderToPhp private function renderArgumentsToPhp ($array) { // function renderArgumentsToPhp $arguments = array (); foreach ($array as $current) { // each argument switch ($current[0]) { // switch argument type case 0: $arguments[] = "'" . str_replace ("'", CHR_BSLASH . "'", $current[1]) . "'"; break; case 3: $arguments[] = strval ($current[1]); break; case 1: if (isset ($current[2]) and $current[2]) $sub = $this->renderArgumentsToPhp ($current[2]); else $sub = array (); if ($current[1] == '') { // anonimous function if (isset ($sub[0])) $arguments[] = $sub[0]; } // anonimous function else { // sub function $func = 'eclTag_' . $current[1]; $arguments[] = $func . '::render ($render, array (' . implode (', ', $sub) . '));' . CRLF; } // sub function break; case 2: $arguments[] = '$render->getVar (' . "'" . $current[1] . "'" . ')'; break; case 4: if (!isset ($current[2]) or !$current[2]) break; $sub = $this->renderArgumentsToPhp ($current[2]); if (count ($sub) < 2) break; switch ($current[1]) { // switch operator case 'and': $arguments[] = '(' . $sub[0] . ' and ' . $sub[1] . ')'; break; case 'or': $arguments[] = 'eclTag_or::render ($render, array (' . $sub[0] . ', ' . $sub[1] . '))'; break; } // switch operator break; case 5: if (!isset ($current[2]) or !$current[2]) break; $sub = $this->renderArgumentsToPhp ($current[2]); if (!count ($sub)) break; switch ($current[1]) { // switch operator case '!': $arguments[] = '!' . $sub[0]; } // switch operator break; } // switch argument type } // each argument return $arguments; } // function renderArgumentsToPhp } // class eclStore_control //!eof:engine/eclStore/eclStore_control.php; //!file:engine/eclStore/eclStore_domain.php; class eclStore_domain { // class eclStore_domain public $name = 'domain'; // Describe fields structure public $fields = array ( // Indexing 'id' => 'primary_key', // Class identifiers 'name' => 'name', 'aliase' => 'name', 'status' => 'tinyint' ); public $insertedData = array (); private $rows = array (); private $originalRows = array (); private $indexByName = array (); private $database = false; public function __construct () { // function __construct global $io; if ($io->database->tableEnabled ($this)) $this->database = $io->database; } // function __construct public function insert ($data) { // function insert if ($this->database) { // insert into database $id = $this->database->insert ($this, $data); $data['id'] = $id; $this->rows[$id] = $data; $this->originalRows[$id] = $data; $this->indexByName[$data['name']] = $id; return $id; } // insert into database return $data['name']; } // function insert public function &open ($name) { // function & global $io; if (isset ($this->indexByName[$name])) { // row found $id = $this->indexByName[$name]; $return = &$this->rows[$id]; return $return; } // row found if ($this->database) { // open from database $rows = $this->database->select ($this, array ('name' => $name)); if ($rows) { // row found $data = $rows[0]; $id = $data['id']; $this->rows[$id] = $data; $this->originalRows[$id] = $data; $this->indexByName[$name] = $id; $return = &$this->rows[$id]; return $return; } // row found } // open from database $file = FOLDER_DOMAINS . $name . '/.domain.db'; if (is_file ($file)) { // file found $row = array ( 'id' => $name, 'status' => 2 ); $this->rows[$name] = &$row; $this->indexByName[$name] = $name; return $row; } // file found $row = array (); return $row; } // function & public function &openById ($id) { // function & if (!isset ($this->rows[$id])) { // open if (is_int ($id) and $this->database) { // open from database $rows = $this->database->select ($this, array ('id' => $id)); if ($rows) { // row found $data = $rows[0]; $this->rows[$id] = $data; $this->originalRows[$id] = $data; $this->indexByName[$data['name']] = $id; $return = &$this->rows[$id]; return $return; } // row found } // open from database $this->rows[$id] = array (); $this->indexByName[$id] = $id; } // open $return = &$this->rows[$id]; return $return; } // function & public function getId ($name) { // function getId if (!isset ($this->indexByName[$name])) $this->open ($name); if (isset ($this->indexByName[$name])) return $this->indexByName[$name]; else return false; } // function getId public function getName ($id) { // function getName if (!isset ($this->rows[$id])) $this->openById ($id); if (isset ($this->rows[$id]['name'])) return $this->rows[$id]['name']; return ''; } // function getName public function getStatus ($name) { // function getStatus if (!isset ($this->indexByName[$name])) $this->open ($name); if (!isset ($this->indexByName[$name])) return 0; $id = $this->indexByName[$name]; $row = &$this->rows[$id]; return $row['status']; } // function getStatus public function childrenNames () { // function childrenNames $names = array (); foreach (scandir (FOLDER_DOMAINS) as $dirName) { // each directory if ($dirName[0] != '.') $names[] = $dirName; } // each directory return $names; } // function childrenNames public function delete ($id) { // function delete if (isset ($this->originalRows[$id])) { // domain in database $this->database->delete ($this, array ('id' => $id)); $this->rows[$id] = array (); unset ($this->originalRows[$id]); } // domain in database } // function delete public function close () { // function close foreach ($this->originalRows as $id => $originalRow) { // each row if ($this->rows[$id] != $originalRow) $this->database->update ($this, $this->rows[$id], $originalRow); } // each row } // function close } // class eclStore_domain //!eof:engine/eclStore/eclStore_domain.php; //!file:engine/eclStore/eclStore_domainContent.php; class eclStore_domainContent { // class eclStore_domainContent public $name = 'domain_content'; public $fields = array ( // Indexing 'domain_id' => 'mediumint', 'mode' => 'tinyint', 'parent_id' => 'mediumint', 'master_id' => 'mediumint', 'id' => 'primary_key', // Class identifiers 'name' => 'name', 'marker' => 'tinyint', 'status' => 'tinyint', 'access' => 'tinyint', 'subscription_id' => 'mediumint', 'owner_id' => 'mediumint', 'place_id' => 'mediumint', // Dates 'created' => 'time', 'updated' => 'time', 'event_start' => 'time', 'event_end' => 'time', 'coments_last_update' => 'time', // More sort options 'index' => 'mediumint', 'hits' => 'int', 'value' => 'mediumint', 'spotlight' => 'tinyint', // Contents 'text' => 'array', 'local' => 'array', 'flags' => 'array', 'extras' => 'array', 'links' => 'array', 'keywords' => 'keywords' ); // Index public $index = array ( 'domain_find_children' => array ('domain_id', 'mode', 'parent_id'), 'domain_find_name' => array ('domain_id', 'name'), 'domain_find_owner' => array ('owner_id', 'mode') ); private $indexByName = array (); public $indexByParent = array (); public $chargedParents = array (); public $chargedMode = array (); private $rows = array (); private $originalRows = array (); private $deletedRows = array (); private $notFound = array (); private $database = false; private $openedDatabases = array (); public $lastInsertedData = array (); public function __construct () { // function __construct global $io; if ($io->database->tableEnabled ($this)) $this->database = $io->database; } // function __construct public function getDatabase ($domainName) { // function getDatabase global $io; if (!isset ($this->openedDatabases[$domainName])) { // open database $this->openedDatabases[$domainName] = $io->sqlite->connect (FOLDER_DOMAINS . $domainName . '/.domain.db'); } // open database if ($this->openedDatabases[$domainName]->tableEnabled ($this)) return $this->openedDatabases[$domainName]; return false; } // function getDatabase public function indexFoundRows ($rows, $domainName=0) { // function indexFoundRows $found = array (); foreach ($rows as $data) { // each row if ($data['name'][0] == ':') continue; if (!$data['domain_id']) $data['domain_id'] = $domainName; $domainId = $data['domain_id']; $id = $data['id']; if (!isset ($this->deletedRows[$domainId][$id])) { // row not deleted if (!isset ($this->rows[$domainId][$id])) { // row not indexed $this->rows[$domainId][$id] = $data; $this->originalRows[$domainId][$id] = $data; $this->indexByName[$domainId][$data['name']] = $id; $this->indexByParent[$domainId][$data['mode']][$data['parent_id']][$id] = $id; $found[] = $data; } // row not indexed else $found[] = $this->rows[$domainId][$id]; } // row not deleted } // each row return $found; } // function indexFoundRows public function insert ($domainId, &$data) { // function insert global $io; if (is_int ($domainId) and $this->database) $database = $this->database; elseif (is_string ($domainId) and $database = $this->getDatabase ($domainId)) null; else return 0; $data['domain_id'] = $domainId; if (!isset ($data['parent_id'])) $data['parent_id'] = 0; $data['index'] = count ($this->children ($domainId, $data['mode'], $data['parent_id'])); if (!isset ($data['name']) or !strlen ($data['name'])) $data['name'] = 't' . strval (TIME); $where = array ('domain_id' => $domainId, 'name' => $data['name']); if ($database->select ($this, $where, ' LIMIT 1', array ('id'))) { // prevent duplicated name $test = 0; do { // loop names $test++; $name = $data['name'] . '-' . str_pad (strval ($test), 3, '0', STR_PAD_LEFT); $where = array ('domain_id' => $domainId, 'name' => $name); } // loop names while ($database->select ($this, $where, ' LIMIT 1', array ('id'))); $data['name'] = $name; } // prevent duplicated names $id = $database->insert ($this, $data); $data['id'] = $id; $this->rows[$domainId][$id] = $data; $this->originalRows[$domainId][$id] = $data; $this->indexByName[$domainId][$data['name']] = $id; $this->indexByParent[$domainId][$data['mode']][$data['parent_id']][$id] = $id; $this->lastInsertedData = $data; return $id; } // function insert public function &open ($domainId, $name, $access=4) { // function & if (!isset ($this->indexByName[$domainId][$name])) { // open if (isset ($this->notFound[$domainId][$name])) { // registered not found $found = array (); return $found; } // registered not found if (is_int ($domainId) and $this->database) $this->indexFoundRows ($this->database->select ($this, array ('domain_id' => $domainId, 'name' => $name), ' LIMIT 1')); elseif (is_string ($domainId) and $database = $this->getDatabase ($domainId)) $this->indexFoundRows ($database->select ($this, array ('name' => $name), ' LIMIT 1'), $domainId); } // open $found = array (); if (isset ($this->indexByName[$domainId][$name])) { // row found $id = $this->indexByName[$domainId][$name]; $found = &$this->rows[$domainId][$id]; if ($found['access'] <= $access) return $found; } // row found else $this->notFound[$domainId][$name] = true; $empty = array (); return $empty; } // function & public function &openById ($domainId, $id, $access=4) { // function & if (!isset ($this->rows[$domainId][$id])) { // open if (is_int ($domainId) and $this->database) $this->indexFoundRows ($this->database->select ($this, array ('domain_id' => $domainId, 'id' => $id))); elseif (is_string ($domainId) and $database = $this->getDatabase ($domainId)) $this->indexFoundRows ($database->select ($this, array ('id' => $id)), $domainId); } // open $found = array (); if (isset ($this->rows[$domainId][$id])) { // found $found = &$this->rows[$domainId][$id]; if ($found['access'] <= $access) return $found; } // found $empty = array (); return $empty; } // function & public function &openChild ($domainId, $mode, $parentId, $name, $access=4) { // function & if (!isset ($this->chargedParents[$domainId][$mode][$parentId])) { // open if (is_int ($domainId) and $this->database) { // parents from database $this->chargedParents[$domainId][$mode][$parentId] = true; $this->indexFoundRows ($this->database->select ($this, array ( 'domain_id' => $domainId, 'mode' => $mode, 'parent_id' => $parentId ))); } // parents from database elseif (is_string ($domainId) and $database = $this->getDatabase ($domainId)) { // parents from file $this->indexFoundRows ($database->select ($this, array ( 'mode' => $mode, 'parent_id' => $parentId )), $domainId); } // parents from file } // open if (isset ($this->indexByParent[$domainId][$mode][$parentId])) { // children exists foreach ($this->indexByParent[$domainId][$mode][$parentId] as $id) { // each child if ($this->rows[$domainId][$id]['name'] == $name) { // found $found = &$this->rows[$domainId][$id]; if ($found['access'] <= $access) return $found; $empty = array (); return $empty; } // found } // each child } // children exists $found = array (); return $found; } // function & public function children ($domainId, $mode, $parentId, $access=4, $max=0, $offset=0, $sort='index', $direction='asc') { // function children if (!isset ($this->chargedParents[$domainId][$mode][$parentId])) { // open if (isset ($this->chargedMode[$domainId][$mode])) return array (); if (is_int ($domainId) and $this->database) { // parents from database $this->chargedParents[$domainId][$mode][$parentId] = true; $this->indexFoundRows ($this->database->select ($this, array ( 'domain_id' => $domainId, 'mode' => $mode, 'parent_id' => $parentId ))); } // parents from database elseif (is_string ($domainId) and $database = $this->getDatabase ($domainId)) { // parents from file $this->chargedParents[$domainId][$mode][$parentId] = true; $this->indexFoundRows ($database->select ($this, array ( 'mode' => $mode, 'parent_id' => $parentId )), $domainId); } // parents from database } // open if (isset ($this->indexByParent[$domainId][$mode][$parentId])) { // children exists $sorted = array (); $rows = $this->rows[$domainId]; foreach ($this->indexByParent[$domainId][$mode][$parentId] as $id) { // each child if ($rows[$id]['access'] <= $access) $sorted[$rows[$id][$sort]][] = $rows[$id]; } // each child if ($direction == 'desc') krsort ($sorted); else ksort ($sorted); if ($max == 0) $max = count ($this->indexByParent[$domainId][$mode][$parentId]); else $max += $offset; $list = array (); $i = - 1; foreach ($sorted as $doubled) { // each doubled foreach ($doubled as $item) { // each item $i++; if ($i >= $offset and $i < $max) $list[] = $item; elseif ($i > $max) break 2; } // each item } // each doubled return $list; } // children exists return array (); } // function children public function childrenNames ($domainId, $mode, $parentId, $access=4, $max=0, $offset=0, $sort='index', $direction='asc') { // function childrenNames $children = $this->children ($domainId, $mode, $parentId, $access, $max, $offset, $sort, $direction); $names = array (); foreach ($children as $child) { // each child $names[] = $child['name']; } // each child return $names; } // function childrenNames public function mode ($domainId, $mode) { // function mode if (!isset ($this->chargedMode[$domainId][$mode])) { // open if (is_int ($domainId) and is_object ($this->database)) { // mode from database $this->chargedMode[$domainId][$mode] = $this->indexFoundRows ($this->database->select ($this, array ( 'domain_id' => $domainId, 'mode' => $mode ))); } // mode from database elseif (is_string ($domainId) and $database = $this->getDatabase ($domainId)) { // mode from file $this->chargedMode[$domainId][$mode] = $this->indexFoundRows ($database->select ($this, array ( 'mode' => $mode )), $domainId); } // mode from file else $this->chargedMode[$domainId][$mode] = array (); // index chargedParents if (!isset ($this->chargedParents[$domainId])) $this->chargedParents[$domainId] = array (); if (!isset ($this->chargedParents[$domainId][$mode])) $this->chargedParents[$domainId][$mode] = array (); foreach ($this->chargedMode[$domainId][$mode] as $row) { // each row if (!$row or !isset ($row['id']) or !isset ($row['parent_id'])) continue; if (!isset ($this->chargedParents[$domainId][$mode][$row['parent_id']]) or !is_array ($this->chargedParents[$domainId][$mode][$row['parent_id']])) $this->chargedParents[$domainId][$mode][$row['parent_id']] = array (); $this->chargedParents[$domainId][$mode][$row['parent_id']][$row['id']] = true; $this->indexByParent[$domainId][$mode][$row['parent_id']][$row['id']] = $row['id']; } // each row } // open return $this->chargedMode[$domainId][$mode]; } // function mode public function findMarker ($domainId, $marker, $mode=MODE_SECTION) { // function findMarker static $markers = array (); if (!isset ($markers[$domainId][$mode])) { // charge mode if (!isset ($markers[$domainId])) $markers[$domainId] = array (); if (!isset ($markers[$domainId][$mode])) $markers[$domainId][$mode] = array (); foreach ($this->mode ($domainId, $mode) as $data) { // each row if ($data['access'] > 30) continue; if (!isset ($markers[$domainId][$mode][$data['marker']])) $markers[$domainId][$mode][$data['marker']] = $data['id']; } // each row } // charge mode if (isset ($markers[$domainId][$mode][$marker])) return $markers[$domainId][$mode][$marker]; return false; } // function findMarker public function search ($where, $access=4, $max=0, $offset=0, $sort='created', $direction='desc') { // function search if ( (!isset ($where['domain_id']) or is_int ($where['domain_id'])) and is_object ($this->database)) { // search on database $rows = $this->indexFoundRows ($this->database->select ($this, $where)); } // search on database elseif (isset ($where['domain_id']) and is_string ($where['domain_id']) and $database = $this->getDatabase ($where['domain_id'])) { // search on file unset ($where['domain_id']); $rows = $this->indexFoundRows ($database->select ($this, $where), $where['domain_id']); } // search on file else $rows = array (); if ($rows) { // children exists $sorted = array (); foreach ($rows as $row) { // each child if ($row['access'] <= $access) $sorted[$row[$sort]][] = $row; } // each child if ($direction == 'desc') krsort ($sorted); else ksort ($sorted); if ($max == 0) $max = count ($rows); else $max += $offset; $list = array (); $i = - 1; foreach ($sorted as $doubled) { // each doubled foreach ($doubled as $item) { // each item $i++; if ($i >= $offset and $i < $max) $list[] = $item; elseif ($i > $max) break 2; } // each item } // each doubled return $list; } // children exists return array (); } // function search public function childrenReindex ($domainId, $mode, $parentId) { // function childrenReindex foreach ($this->children ($domainId, $mode, $parentId) as $index => $child) { // each child $this->rows[$domainId][$child['id']]['index'] = $index; } // each child } // function childrenReindex public function pathway ($domainId, $name) { // function pathway global $store; $pathway = array (); if (is_int ($name)) $data = $this->openById ($domainId, $name); else $data = $this->open ($domainId, $name); if (!$data) return false; $id = $data['id']; do { // loop levels if (isset ($this->rows[$domainId][$id])) $data = $this->rows[$domainId][$id]; else $data = $this->openById ($domainId, $id); if (!$data) return false; if ($data['parent_id'] != 0 or $data['mode'] != MODE_SECTION or !isset ($data['flags']['section_type']) or $data['flags']['section_type'] != 'menu') array_unshift ($pathway, $data['name']); $id = $data['parent_id']; if ($id == 1) $id = 0; if (!$id and $data['mode'] != MODE_SECTION and $data['marker']) { // find special section $id = $this->findMarker ($domainId, $data['marker']); if (!$id) return false; } // find special section } // loop levels while ($id); array_unshift ($pathway, $store->domain->getName ($domainId)); return $pathway; } // function pathway public function delete ($domainId, $id) { // function delete if (defined ('TRACKING_REMOVED_PAGES') and TRACKING_REMOVED_PAGES) { // do not remove page $data = &$this->openById ($domainId, $id); $data['access'] = 255; if (strlen ($data['name']) == 32) $data['name'] = substr ($data['name'], - 2); $data['name'] = ':' . $data['name']; return; } // do not remove page if (isset ($this->rows[$domainId][$id])) { // remove from index $data = $this->rows[$domainId][$id]; $this->deletedRows[$domainId][$id] = $id; $this->rows[$domainId][$id] = array (); unset ($this->originalRows[$domainId][$id]); unset ($this->indexByParent[$domainId][$data['mode']][$data['parent_id']][$id]); unset ($this->indexByName[$domainId][$data['name']][$id]); } // remove from index if (is_int ($domainId) and $this->database) { // delete from database $this->database->delete ($this, array ('id' => $id)); } // delete from database elseif (is_string ($domainId) and $database = $this->getDatabase ($domainId)) { // delete from file $database->delete ($this, array ('id' => $id)); } // delete from file } // function delete public function export ($domainId, $fileName) { // function export $where = array ('domain_id' => $domainId); $select = array ('id', 'name'); $rows = $this->database->select ($this, $where, '', $select); $index = 0; $names = array (); foreach ($rows as $row) { // each row if ($row['name']) $names[$row['id']] = $row['name']; else { // create name $index++; $names[$row['id']] = '-untitled-' . $index; } // create name } // each row unset ($rows); $file = fopen ($fileName, 'w+b'); $header = true; $rows = $this->database->select ($this, $where); foreach ($rows as $row) { // each row $data = array (); foreach ($row as $key => $value) { // each field if (is_int ($key)) continue; switch ($key) { // switch key case 'id': case 'domain_id': break; case 'parent_id': case 'master_id': case 'owner_id': case 'place_id': if ($value === 0) $data[substr ($key, 0, - 3)] = '""'; else $data[substr ($key, 0, - 3)] = '"' . $names[$value] . '"'; break; default: if (is_int ($value)) $data[$key] = strval ($value); elseif (is_string ($value)) $data[$key] = '"' . $value . '"'; elseif (is_array ($value) and $value) $data[$key] = '"' . $this->database->stringToDatabase (serialize ($value)) . '"'; else $data[$key] = '""'; } // switch key } // each field if ($header) { // create header $buffer = implode ("\t", array_keys ($data)) . CRLF; fwrite ($file, $buffer); } // create header $buffer = implode ("\t", $data) . CRLF; fwrite ($file, $buffer); $header = false; } // each row fclose ($file); } // function export public function import ($domainId, $fileName) { // function import $string = file_get_contents ($fileName); $rows = array (); $names = array (); $header = true; foreach (explode (CRLF, $string) as $line) { // each row if ($header) { // header $headers = explode ("\t", $line); $header = false; continue; } // header foreach (explode ("\t", $line) as $index => $field) { // each field $key = $headers[$index]; switch ($key) { // switch column name case 'parent': case 'master': case 'owner': case 'place': break; } // switch column name } // each field } // each row } // function import public function specialSelect ($domainId, $where, $limit='', $returnRows=false) { // function specialSelect if ( (!isset ($where['domain_id']) or is_int ($where['domain_id'])) and is_object ($this->database)) return $this->database->select ($this, $where, $limit, $returnRows); if (isset ($where['domain_id']) and is_string ($where['domain_id']) and $database = $this->getDatabase ($where['domain_id'])) { // search on file unset ($where['domain_id']); return $database->select ($this, $where, $limit, $returnRows); } // search on file return array (); } // function specialSelect public function getUserSubscription ($document) { // function getUserSubscription if (!$document->domain->domainId) return false; if (!$document->user->userId) return false; $where = array ( 'domain_id' => $document->domain->domainId, 'mode' => MODE_SUBSCRIPTION, 'owner_id' => $document->user->userId ); $rows = $this->search ($where); if (!$rows) return false; return $document->domain->child ('-subscriptions')->child ($rows[0]['name']); } // function getUserSubscription public function close () { // function close foreach ($this->originalRows as $domainId => $domainRows) { // each domain foreach ($domainRows as $id => $originalRow) { // each row if ($this->rows[$domainId][$id] != $originalRow) { // data changed if (is_int ($domainId)) $this->database->update ($this, $this->rows[$domainId][$id], $originalRow); elseif (is_string ($domainId) and $database = $this->getDatabase ($domainId)) $database->update ($this, $this->rows[$domainId][$id], $originalRow); } // data changed } // each row } // each domain $this->indexByName = array (); $this->indexByParent = array (); $this->chargedParents = array (); $this->rows = array (); $this->originalRows = array (); $this->deletedRows = array (); $this->notFound = array (); } // function close } // class eclStore_domainContent //!eof:engine/eclStore/eclStore_domainContent.php; //!file:engine/eclStore/eclStore_domainExtras.php; class eclStore_domainExtras { // class eclStore_domainExtras public $name = 'domain_extras'; public $fields = array ( // Indexing 'domain_id' => 'mediumint', 'mode' => 'tinyint', 'parent_id' => 'mediumint', 'master_id' => 'mediumint', 'id' => 'primary_key', // Class identifiers 'name' => 'name', 'status' => 'mediumint', 'access' => 'tinyint', 'subscription_id' => 'mediumint', 'owner_id' => 'mediumint', // Dates 'created' => 'time', 'updated' => 'time', // Contents 'text' => 'array', 'local' => 'array', 'extras' => 'array', 'html' => 'binary' ); // Index public $index = array ( 'domain_find_extras' => array ('domain_id', 'mode', 'parent_id'), 'domain_find_extras_owner' => array ('owner_id', 'mode') ); public $indexByParent = array (); public $chargedParents = array (); public $chargedMode = array (); private $rows = array (); private $originalRows = array (); private $deletedRows = array (); private $notFound = array (); private $database = false; private $openedDatabases = array (); public $lastInsertedData = array (); public function __construct () { // function __construct global $io; if ($io->database->tableEnabled ($this)) $this->database = $io->database; } // function __construct public function getDatabase ($domainName) { // function getDatabase global $io; if (!isset ($this->openedDatabases[$domainName])) { // open database $this->openedDatabases[$domainName] = $io->sqlite->connect (FOLDER_DOMAINS . $domainName . '/.domain.db'); } // open database if ($this->openedDatabases[$domainName]->tableEnabled ($this)) return $this->openedDatabases[$domainName]; return false; } // function getDatabase public function indexFoundRows ($rows, $domainName=0) { // function indexFoundRows $found = array (); foreach ($rows as $data) { // each row if ($data['access'] == 255) continue; if (!$data['domain_id']) $data['domain_id'] = $domainName; $domainId = $data['domain_id']; $id = $data['id']; if (!isset ($this->deletedRows[$domainId][$id])) { // row not deleted if (!isset ($this->rows[$domainId][$id])) { // row not indexed $this->rows[$domainId][$id] = $data; $this->originalRows[$domainId][$id] = $data; $this->indexByParent[$domainId][$data['mode']][$data['parent_id']][$id] = $id; $found[] = $data; } // row not indexed else $found[] = $this->rows[$domainId][$id]; } // row not deleted } // each row return $found; } // function indexFoundRows public function insert ($domainId, &$data) { // function insert global $io; if (is_int ($domainId) and $this->database) $database = $this->database; elseif (is_string ($domainId) and $database = $this->getDatabase ($domainId)) null; else return 0; $data['domain_id'] = $domainId; if (!isset ($data['parent_id'])) $data['parent_id'] = 0; $id = $database->insert ($this, $data); $data['id'] = $id; $this->rows[$domainId][$id] = $data; $this->originalRows[$domainId][$id] = $data; $this->indexByParent[$domainId][$data['mode']][$data['parent_id']][$id] = $id; $this->lastInsertedData = $data; return $id; } // function insert public function &openById ($domainId, $id, $access=4) { // function & if (!isset ($this->rows[$domainId][$id])) { // open if (is_int ($domainId) and $this->database) $this->indexFoundRows ($this->database->select ($this, array ('domain_id' => $domainId, 'id' => $id))); elseif (is_string ($domainId) and $database = $this->getDatabase ($domainId)) $this->indexFoundRows ($database->select ($this, array ('id' => $id)), $domainId); } // open $found = array (); if (isset ($this->rows[$domainId][$id])) { // found $found = &$this->rows[$domainId][$id]; if ($found['access'] <= $access) return $found; } // found $empty = array (); return $empty; } // function & public function children ($domainId, $mode, $parentId, $access=4) { // function children if (!isset ($this->chargedParents[$domainId][$mode][$parentId])) { // open if (isset ($this->chargedMode[$domainId][$mode])) return array (); if (is_int ($domainId) and $this->database) { // parents from database $this->chargedParents[$domainId][$mode][$parentId] = true; $this->indexFoundRows ($this->database->select ($this, array ( 'domain_id' => $domainId, 'mode' => $mode, 'parent_id' => $parentId ))); } // parents from database elseif (is_string ($domainId) and $database = $this->getDatabase ($domainId)) { // parents from file $this->chargedParents[$domainId][$mode][$parentId] = true; $this->indexFoundRows ($database->select ($this, array ( 'mode' => $mode, 'parent_id' => $parentId )), $domainId); } // parents from database } // open if (isset ($this->indexByParent[$domainId][$mode][$parentId])) { // return found rows $found = array (); foreach ($this->indexByParent[$domainId][$mode][$parentId] as $id) { // each row $found[] = $this->rows[$domainId][$id]; } // each row return $found; } // return found rows else return array (); } // function children public function &openChild ($domainId, $mode, $parentId, $name) { // function & $children = $this->children ($domainId, $mode, $parentId); foreach ($children as $data) { // each child if ($data['name'] != $name) continue; $found = &$this->openById ($domainId, $data['id']); return $found; } // each child $found = array (); return $found; } // function & public function mode ($domainId, $mode) { // function mode if (!isset ($this->chargedMode[$domainId][$mode])) { // open if (is_int ($domainId) and is_object ($this->database)) { // mode from database $this->chargedMode[$domainId][$mode] = $this->indexFoundRows ($this->database->select ($this, array ( 'domain_id' => $domainId, 'mode' => $mode ))); } // mode from database elseif (is_string ($domainId) and $database = $this->getDatabase ($domainId)) { // mode from file $this->chargedMode[$domainId][$mode] = $this->indexFoundRows ($database->select ($this, array ( 'mode' => $mode )), $domainId); } // mode from file else $this->chargedMode[$domainId][$mode] = array (); // index chargedParents if (!isset ($this->chargedParents[$domainId])) $this->chargedParents[$domainId] = array (); if (!isset ($this->chargedParents[$domainId][$mode])) $this->chargedParents[$domainId][$mode] = array (); foreach ($this->chargedMode[$domainId][$mode] as $row) { // each row if (!$row or !isset ($row['id']) or !isset ($row['parent_id'])) continue; if (!isset ($this->chargedParents[$domainId][$mode][$row['parent_id']]) or !is_array ($this->chargedParents[$domainId][$mode][$row['parent_id']])) $this->chargedParents[$domainId][$mode][$row['parent_id']] = array (); $this->chargedParents[$domainId][$mode][$row['parent_id']][$row['id']] = true; $this->indexByParent[$domainId][$mode][$row['parent_id']][$row['id']] = $row['id']; } // each row } // open return $this->chargedMode[$domainId][$mode]; } // function mode public function search ($where, $access=4) { // function search if ( (!isset ($where['domain_id']) or is_int ($where['domain_id'])) and is_object ($this->database)) { // search on database return $this->indexFoundRows ($this->database->select ($this, $where)); } // search on database elseif (isset ($where['domain_id']) and is_string ($where['domain_id']) and $database = $this->getDatabase ($where['domain_id'])) { // search on file unset ($where['domain_id']); return $this->indexFoundRows ($database->select ($this, $where), $where['domain_id']); } // search on file else return array (); } // function search public function createVersion ($domainId, &$from, $document) { // function createVersion $lang = $document->lang; $from['flags']['updated_' . $lang] = TIME; $data = array ( 'domain_id' => $domainId, 'mode' => MODE_VERSION, 'parent_id' => $from['id'], 'name' => $document->lang, 'owner_id' => $document->user->userId, 'created' => TIME, 'updated' => TIME, 'text' => array () ); foreach (array_keys ($from['text']) as $field) { // each field if (isset ($from['text'][$field][$lang])) $data['text'][$field] = array ($lang => $from['text'][$field][$lang]); } // each field if (isset ($from['extras'])) { // extras exists $data['extras'] = array (); foreach ($from['extras'] as $target => $extras) { // each extra list ($prefix) = explode ('_', $target); switch ($prefix) { // switch prefix case 'box': if (isset ($from['extras'][$target]['text'])) { // text exists foreach ($from['extras'][$target]['text'] as $field => $value) { // each field if (isset ($value[$lang])) $data['extras'][$target]['text'][$field][$lang] = $value[$lang]; } // each field } // text exists if (isset ($from['extras'][$target]['local'])) $data['extras'][$target]['local'] = $from['extras'][$target]['local']; } // switch prefix } // each extra } // extras exists $this->insert ($domainId, $data); } // function createVersion public function clearLanguage ($document) { // function clearLanguage global $store; $me = $document->application; if (!isset ($me->data['text']['caption']) or count ($me->data['text']['caption']) < 2) return; if ($document->actions ('version', 'clear') and isset ($document->actions['version'][2]) and strlen ($document->actions['version'][2]) == 2) { // language clear $lang = $document->actions['version'][2]; foreach (array_keys ($me->data['text']) as $field) { // each field unset ($me->data['text'][$field][$lang]); if (!$me->data['text'][$field]) unset ($me->data['text'][$field]); } // each field foreach (array_keys ($me->data['extras']) as $target) { // each target list ($prefix) = explode ('_', $target, 2); switch ($prefix) { // switch prefix case 'box': if (isset ($me->data['extras'][$field]['text'])) { // text exists foreach (array_keys ($me->data['extras'][$target]['text']) as $field) { // each field unset ($me->data['extras'][$target]['text'][$field][$lang]); if (!$me->data['extras'][$target]['text'][$field]) unset ($me->data['extras'][$target]['text'][$field]); } // each field if (!$me->data['extras'][$target]['text']) unset ($me->data['extras'][$target]); } // text exists } // switch prefix } // each target } // language clear if (count ($me->data['text']['caption']) > 1 and isset ($me->data['text']['caption'][$document->lang])) { // context clear language $langCaption = $store->control->read ('labels/lang/' . $document->lang); $document->mod->context->appendChild ('labels/action/remove_language') ->set ('lang_caption', $langCaption['text']['caption']) ->url (true, true, '_version-remove-' . $document->lang) ->confirm ('system_msg_clearLanguageConfirm'); } // context clear language } // function clearLanguage public function versioning ($document) { // function versioning $this->clearLanguage ($document); $me = $document->application; if (isset ($me->data['flags']['updated_' . $document->lang])) $updated = $me->data['flags']['updated_' . $document->lang]; else $updated = $me->data['updated']; $versions = $this->children ($me->domainId, MODE_VERSION, $me->id); if (!$versions) return; $undo = array (); $redo = array (); $current = false; foreach ($versions as $version) { // each version if ($version['name'] != $document->lang) continue; if ($version['created'] < $updated) $undo[] = $version; elseif ($version['created'] == $updated) $current = true; elseif ($version['created'] > $updated) $redo[] = $version; } // each version if ($document->actions ('version', 'undo') and $undo) { // undo $update = array_pop ($undo); if ($current) $redo = true; } // undo elseif ($document->actions ('version', 'redo') and $redo) { // redo $update = array_shift ($redo); if ($current) $undo = true; } // redo if (isset ($update)) { // update $lang = $document->lang; $data = &$me->data; $data['updated'] = $update['created']; $data['flags']['updated_' . $lang] = $update['created']; $fields = array_keys (array_replace ($data['text'], $update['text'])); foreach ($fields as $field) { // update each field if (!isset ($data['text'][$field])) $data['text'][$field] = $update['text'][$field]; elseif (isset ($update['text'][$field][$lang])) $data['text'][$field][$lang] = $update['text'][$field][$lang]; else { // clear unset ($data['text'][$field][$lang]); if (!$data['text'][$field]) unset ($data['text'][$field]); } // clear } // update each field if (isset ($data['extras']) and $data['extras']) { // filter extras $modules = array_keys (array_replace ($data['extras'], $update['extras'])); foreach ($modules as $target) { // each target list ($prefix) = explode ('_', $target); switch ($prefix) { // switch prefix case 'box': if (!isset ($data['extras'][$target])) { // recreate $data['extras'][$target] = $update['extras'][$target]; break; } // recreate $fields = array_keys (array_replace ($data['extras'][$target]['text'], $update['extras'][$field]['text'])); foreach ($fields as $field) { // each field if (isset ($update['extras'][$target]['text'][$field][$lang])) $data['extras'][$target]['text'][$field][$lang] = $update['extras'][$target]['text'][$field][$lang]; else { // clear language unset ($update['extras'][$target]['text'][$field][$lang]); if (!$data['extras'][$target]['text'][$field]) unset ($data['extras'][$target]['text'][$field]); } // clear language } // each field if (!$data['extras'][$target]['text']) unset ($data['extras'][$target]); } // switch prefix } // each target } // filter extras $document->dataReplace ($me->data); } // update if ($undo) $document->mod->context->appendChild ('labels/action/undo') ->url (true, true, '_version-undo'); if ($redo) $document->mod->context->appendChild ('labels/action/redo') ->url (true, true, '_version-redo'); } // function versioning public function delete ($domainId, $id) { // function delete if (defined ('TRACKING_REMOVED_PAGES') and TRACKING_REMOVED_PAGES) { // do not remove page $data = &$this->openById ($domainId, $id); $data['access'] = 255; return; } // do not remove page if (isset ($this->rows[$domainId][$id])) { // remove from index $data = $this->rows[$domainId][$id]; $this->deletedRows[$domainId][$id] = $id; $this->rows[$domainId][$id] = array (); unset ($this->originalRows[$domainId][$id]); unset ($this->indexByParent[$domainId][$data['mode']][$data['parent_id']][$id]); } // remove from index if (is_int ($domainId) and $this->database) { // delete from database $this->database->delete ($this, array ('id' => $id)); } // delete from database elseif (is_string ($domainId) and $database = $this->getDatabase ($domainId)) { // delete from file $database->delete ($this, array ('id' => $id)); } // delete from file } // function delete public function deleteAllChildren ($domainId, $parentId) { // function deleteAllChildren $where = array ( 'domain_id' => $domainId, 'parent_id' => $parentId ); foreach ($this->search ($where) as $data) { // each row $this->delete ($domainId, $data['id']); } // each row } // function deleteAllChildren public function close () { // function close foreach ($this->originalRows as $domainId => $domainRows) { // each domain foreach ($domainRows as $id => $originalRow) { // each row if ($this->rows[$domainId][$id] != $originalRow) { // data changed if (is_int ($domainId)) $this->database->update ($this, $this->rows[$domainId][$id], $originalRow); elseif (is_string ($domainId) and $database = $this->getDatabase ($domainId)) $database->update ($this, $this->rows[$domainId][$id], $originalRow); } // data changed } // each row } // each domain $this->indexByParent = array (); $this->chargedParents = array (); $this->rows = array (); $this->originalRows = array (); $this->deletedRows = array (); $this->notFound = array (); } // function close } // class eclStore_domainExtras //!eof:engine/eclStore/eclStore_domainExtras.php; //!file:engine/eclStore/eclStore_domainFile.php; class eclStore_domainFile { // class eclStore_domainFile public function unlink ($domainId, $name) { // function unlink global $store; $domainName = $store->domain->getName ($domainId); if (!is_string ($name) or !strlen ($name)) return; if (is_file (FOLDER_DOMAINS . $domainName . '/' . $name)) unlink (FOLDER_DOMAINS . $domainName . '/' . $name); } // function unlink public function scanPrefixedFiles ($domainId, $prefix) { // function scanPrefixedFiles global $store; $domainName = $store->domain->getName ($domainId); $prefix .= CHR_FNS; $prefixLength = strlen ($prefix); $names = array (); $dir = scandir (FOLDER_DOMAINS . $domainName); foreach ($dir as $fileName) { // each file if (substr ($fileName, 0, $prefixLength) == $prefix) $names[] = $fileName; } // each file return $names; } // function scanPrefixedFiles public function deletePrefixedFiles ($domainId, $prefix, $mode=false) { // function deletePrefixedFiles global $store; $domainName = $store->domain->getName ($domainId); $prefix .= CHR_FNS; $prefixLength = strlen ($prefix); $dir = scandir (FOLDER_DOMAINS . $domainName); foreach ($dir as $fileName) { // each file if (substr ($fileName, 0, $prefixLength) == $prefix) { // valid file if ($mode === false) unlink (FOLDER_DOMAINS . $domainName . '/' . $fileName); else { // select file type $type = substr ($fileName, - 4); switch ($type) { // switch file type case '.jpg': case '.gif': case '.png': if ($mode == MODE_IMG) unlink (FOLDER_DOMAINS . $domainName . '/' . $fileName); break; default: if ($mode == MODE_FILE) unlink (FOLDER_DOMAINS . $domainName . '/' . $fileName); } // switch file type } // select file type } // valid file } // each file } // function deletePrefixedFiles public function clonePrefixedFiles ($domainId, $prefix, $newPrefix) { // function clonePrefixedFiles global $store; $domainName = $store->domain->getName ($domainId); $prefix .= CHR_FNS; $newPrefix .= CHR_FNS; $prefixLength = strlen ($prefix); $dir = scandir (FOLDER_DOMAINS . $domainName); foreach ($dir as $fileName) { // each file if (substr ($fileName, 0, $prefixLength) == $prefix) { // valid file $newFileName = $newPrefix . substr ($fileName, $prefixLength); copy (FOLDER_DOMAINS . $domainName . '/' . $fileName, FOLDER_DOMAINS . $domainName . '/' . $newFileName); } // valid file } // each file } // function clonePrefixedFiles public function renamePrefixedFiles ($domainId, $prefix, $newPrefix) { // function renamePrefixedFiles global $store; $domainName = $store->domain->getName ($domainId); $newPrefix .= CHR_FNS; $prefix .= CHR_FNS; $prefixLength = strlen ($prefix); $dir = scandir (FOLDER_DOMAINS . $domainName); foreach ($dir as $fileName) { // each file if (substr ($fileName, 0, $prefixLength) == $prefix) { // valid file $oldFileName = FOLDER_DOMAINS . $domainName . '/' . $fileName; $newFileName = FOLDER_DOMAINS . $domainName . '/' . $newPrefix . substr ($fileName, $prefixLength); rename ($oldFileName, $newFileName); } // valid file } // each file } // function renamePrefixedFiles public function close () { // function close } // function close } // class eclStore_domainFile //!eof:engine/eclStore/eclStore_domainFile.php; //!file:engine/eclStore/eclStore_domainGroup.php; class eclStore_domainGroup { // class eclStore_domainGroup public $name = 'domain_group'; public $fields = array ( 'domain_id' => 'mediumint', 'group_id' => 'mediumint', 'user_id' => 'mediumint', 'status' => 'tinyint' ); // Index public $index = array ( 'group_find_user' => array ('user_id'), 'domain_find_group' => array ('domain_id', 'group_id') ); private $database = false; private $groups = array (); public function __construct () { // function __construct global $io; if ($io->database->tableEnabled ($this)) $this->database = $io->database; } // function __construct public function getStatus ($domainId, $groupId, $userId) { // function getStatus $this->open ($domainId, $groupId); if (isset ($this->groups[$domainId][$groupId][0][$userId])) return $this->groups[$domainId][$groupId][0][$userId]; return 0; } // function getStatus public function &open ($domainId, $groupId) { // function & if (isset ($this->groups[$domainId][$groupId][0])) return $this->groups[$domainId][$groupId][0]; if (is_int ($domainId) and $this->database) { // from database $this->groups[$domainId][$groupId][0] = array (); $group = &$this->groups[$domainId][$groupId][0]; foreach ($this->database->select ($this, array ('domain_id' => $domainId, 'group_id' => $groupId)) as $row) { // each row $group[$row['user_id']] = $row['status']; } // each row $this->groups[$domainId][$groupId][1] = $this->groups[$domainId][$groupId][0]; } // from database $return = &$this->groups[$domainId][$groupId][0]; return $return; } // function & public function getDomainUsers ($domainId) { // function getDomainUsers $return = array (); if (is_int ($domainId) and $this->database) { // from database foreach ($this->database->select ($this, array ('domain_id' => $domainId)) as $row) { // each row $return[$row['user_id']] = $row['status']; } // each row } // from database return $return; } // function getDomainUsers public function getDomainGroups ($domainId) { // function getDomainGroups $groups = array (); if (is_int ($domainId) and $this->database) { // from database foreach ($this->database->select ($this, array ('domain_id' => $domainId)) as $row) { // each row $groups[$row['group_id']] = $row['group_id']; } // each row } // from database return $groups; } // function getDomainGroups public function getUserLinks ($userId) { // function getUserLinks if ($this->database) return $this->database->select ($this, array ('user_id' => $userId)); return array (); } // function getUserLinks public function getDomainSubscribedUsers ($domainId) { // function getDomainSubscribedUsers $users = array (); if (is_int ($domainId) and $this->database) { // from database foreach ($this->database->select ($this, array ('domain_id' => $domainId)) as $row) { // each row if ($row['status'] == 5) $users[$row['user_id']] = $row['group_id']; } // each row } // from database return $users; } // function getDomainSubscribedUsers public function close () { // function close if (!$this->database) return; foreach ($this->groups as $domainId => $groups) { // each domain foreach ($groups as $groupId => $group) { // each group if (!$group[0] and $group[1]) $this->database->delete ($this, array ('domain_id' => $domainId, 'group_id' => $groupId)); elseif ($group[0] != $group[1]) { // modify group foreach ($group[0] as $userId => $status) { // each user if (!isset ($group[1][$userId])) { // insert $data = array ('domain_id' => $domainId, 'group_id' => $groupId, 'user_id' => $userId, 'status' => $status); $this->database->insert ($this, $data); } // insert elseif ($group[1][$userId] != $status) { // change status $originalData = $this->database->select ($this, array ('domain_id' => $domainId, 'group_id' => $groupId, 'user_id' => $userId)); $data = $originalData; $data['status'] = $status; $this->database->update ($this, $data, $originalData); } // change status else unset ($group[1][$userId]); } // each user foreach ($group[1] as $userId => $status) { // delete remain users in group $this->database->delete ($this, array ('domain_id' => $domainId, 'group_id' => $groupId, 'user_id' => $userId)); } // delete remain users in group } // modify group } // each group } // each domain $this->groups = array (); } // function close } // class eclStore_domainGroup //!eof:engine/eclStore/eclStore_domainGroup.php; //!file:engine/eclStore/eclStore_user.php; class eclStore_user { // class eclStore_user public $name = 'user'; // Describe fields structure public $fields = array ( // Indexing 'id' => 'primary_key', // Class identifiers 'name' => 'name', 'mail' => 'name', 'phone' => 'name', 'document' => 'name', 'password' => 'password', 'status' => 'tinyint' ); public $insertedData = array (); private $rows = array (); private $originalRows = array (); private $indexByName = array (); private $database; public function __construct () { // function __construct global $io; if ($io->database->tableEnabled ($this)) $this->database = $io->database; } // function __construct public function insert ($data) { // function insert global $io; if (!is_dir (FOLDER_PROFILES)) mkdir (FOLDER_PROFILES); if (!is_dir (FOLDER_PROFILES . $data['name'])) mkdir (FOLDER_PROFILES . $data['name']); if ($this->database) { // insert into database $id = $this->database->insert ($this, $data); $data['id'] = $id; $this->rows[$id] = $data; $this->originalRows[$id] = $data; $this->indexByName[$data['name']] = $id; return $id; } // insert into database return 0; } // function insert public function &open ($name) { // function & global $io; if (isset ($this->indexByName[$name])) { // row found $id = $this->indexByName[$name]; $return = &$this->rows[$id]; return $return; } // row found if ($this->database) { // open from database $rows = $this->database->select ($this, array ('name' => $name)); if ($rows) { // row found $data = $rows[0]; $id = $data['id']; $this->rows[$id] = $data; $this->originalRows[$id] = $data; $this->indexByName[$name] = $id; $return = &$this->rows[$id]; return $return; } // row found } // open from database $return = array (); return $return; } // function & public function &openById ($id) { // function & if (isset ($this->rows[$id])) { // row found $row = &$this->rows[$id]; return $row; } // row found if (is_int ($id) and $this->database) { // open from database $rows = $this->database->select ($this, array ('id' => $id)); if ($rows) { // row found $data = $rows[0]; $this->rows[$id] = $data; $this->originalRows[$id] = $data; $this->indexByName[$data['name']] = $id; $return = &$this->rows[$id]; return $return; } // row found } // open from database $row = array (); return $row; } // function & public function getId ($name) { // function getId if (!isset ($this->indexByName[$name])) $this->open ($name); if (isset ($this->indexByName[$name])) return $this->indexByName[$name]; else return false; } // function getId public function getName ($id) { // function getName if (!isset ($this->rows[$id])) $this->openById ($id); if (isset ($this->rows[$id]['name'])) return $this->rows[$id]['name']; else return false; } // function getName public function getStatus ($name) { // function getStatus if (!isset ($this->indexByName[$name])) $this->open ($name); if (!isset ($this->indexByName[$name])) return 0; $id = $this->indexByName[$name]; $row = &$this->rows[$id]; if (!isset ($row['status'])) return 0; return $row['status']; } // function getStatus public function childrenNames () { // function childrenNames $names = array (); if (!is_dir (FOLDER_PROFILES)) return array (); foreach (scandir (FOLDER_PROFILES) as $folder) { // each folder if ($folder[0] == '.') continue; if (!is_dir (FOLDER_PROFILES . $folder)) continue; if ($this->getStatus ($folder)) $names[] = $folder; } // each folder return $names; } // function childrenNames public function delete ($id) { // function delete if (isset ($this->originalRows[$id])) { // user in database $this->database->delete ($this, array ('id' => $id)); $this->rows[$id] = array (); unset ($this->originalRows[$id]); } // user in database } // function delete public function close () { // function close foreach ($this->originalRows as $id => $originalRow) { // each row if ($this->rows[$id] != $originalRow) $this->database->update ($this, $this->rows[$id], $originalRow); } // each row } // function close } // class eclStore_user //!eof:engine/eclStore/eclStore_user.php; //!file:engine/eclStore/eclStore_userContent.php; class eclStore_userContent { // class eclStore_userContent public $name = 'user_content'; public $fields = array ( // Indexing 'user_id' => 'mediumint', 'mode' => 'tinyint', 'parent_id' => 'mediumint', 'master_id' => 'mediumint', 'id' => 'primary_key', // Class identifiers 'name' => 'name', 'marker' => 'tinyint', 'access' => 'tinyint', // Dates 'created' => 'time', 'updated' => 'time', 'event_start' => 'time', 'event_end' => 'time', 'coments_last_update' => 'time', // More sort options 'index' => 'mediumint', 'hits' => 'int', 'value' => 'mediumint', 'spotlight' => 'tinyint', // Contents 'text' => 'array', 'local' => 'array', 'flags' => 'array', 'extras' => 'array', 'links' => 'array', 'keywords' => 'keywords' ); // Index public $index = array ( 'user_find_children' => array ('user_id', 'mode', 'parent_id'), 'user_find_name' => array ('user_id', 'name') ); private $indexByName = array (); private $indexByParent = array (); private $chargedParents = array (); private $chargedMode = array (); private $rows = array (); private $originalRows = array (); private $deletedRows = array (); private $notFound = array (); private $database = false; private $openedDatabases = array (); public function __construct () { // function __construct global $io; if ($io->database->tableEnabled ($this)) $this->database = $io->database; } // function __construct public function getDatabase ($userName) { // function getDatabase global $io; if (!isset ($this->openedDatabases[$userName])) { // open database $this->openedDatabases[$userName] = $io->sqlite->connect (FOLDER_PROFILES . $userName . '/.user.db'); } // open database if ($this->openedDatabases[$userName]->tableEnabled ($this)) return $this->openedDatabases[$userName]; return false; } // function getDatabase public function indexFoundRows ($rows, $userName=0) { // function indexFoundRows $found = array (); foreach ($rows as $data) { // each row if (!$data['user_id']) $data['user_id'] = $userName; $userId = $data['user_id']; $id = $data['id']; if (!isset ($this->deletedRows[$userId][$id])) { // row not deleted if (!isset ($this->rows[$userId][$id])) { // row not indexed $this->rows[$userId][$id] = $data; $this->originalRows[$userId][$id] = $data; $this->indexByName[$userId][$data['name']] = $id; $this->indexByParent[$userId][$data['mode']][$data['parent_id']][$id] = $id; $found[] = $data; } // row not indexed else $found[] = $this->rows[$userId][$id]; } // row not deleted } // each row return $found; } // function indexFoundRows public function insert ($userId, &$data) { // function insert global $io; $data['user_id'] = $userId; if (!isset ($data['parent_id'])) $data['parent_id'] = 0; $data['index'] = count ($this->children ($userId, $data['mode'], $data['parent_id'])); if (!isset ($data['name']) or !strlen ($data['name'])) $data['name'] = 't' . strval (TIME); $where = array ('user_id' => $userId, 'name' => $data['name']); /* * if ($this->database->select ($this, $where, ' LIMIT 1', array ('id'))) * { // prevent duplicated name * $test = 0; * do * { // loop names * $test ++; * $name = $data['name'] . '-' . str_pad (strval ($test), 3, '0', STR_PAD_LEFT); * $where = array ('user_id' => $userId, 'name' => $name); * } // loop names * while ($this->database->select ($this, $where, ' LIMIT 1', array ('id'))); * $data['name'] = $name; * } // prevent duplicated names */ if (is_int ($userId) and $this->database) { // insert into database $id = $this->database->insert ($this, $data); $data['id'] = $id; $this->rows[$userId][$id] = $data; $this->originalRows[$userId][$id] = $data; $this->indexByName[$userId][$data['name']] = $id; $this->indexByParent[$userId][$data['mode']][$data['parent_id']][$id] = $id; return $id; } // insert into database elseif (is_string ($userId) and $database = $this->getDatabase ($userId)) { // from sqlite $id = $database->insert ($this, $data); $data['user_id'] = $userId; $data['id'] = $id; $this->rows[$userId][$id] = $data; $this->originalRows[$userId][$id] = $data; $this->indexByName[$userId][$data['name']] = $id; $this->indexByParent[$userId][$data['mode']][$data['parent_id']][$id] = $id; return $id; } // from sqlite } // function insert public function &open ($userId, $name, $access=4) { // function & if (!isset ($this->indexByName[$userId][$name])) { // open if (isset ($this->notFound[$userId][$name])) { // registered not found $found = array (); return $found; } // registered not found if (is_int ($userId) and $this->database) $this->indexFoundRows ($this->database->select ($this, array ('user_id' => $userId, 'name' => $name), ' LIMIT 1')); elseif (is_string ($userId) and $database = $this->getDatabase ($userId)) $this->indexFoundRows ($database->select ($this, array ('name' => $name), ' LIMIT 1'), $userId); } // open $found = array (); if (isset ($this->indexByName[$userId][$name])) { // row found $id = $this->indexByName[$userId][$name]; $found = &$this->rows[$userId][$id]; if ($found['access'] <= $access) return $found; } // row found else $this->notFound[$userId][$name] = true; $empty = array (); return $empty; } // function & public function &openById ($userId, $id, $access=4) { // function & if (!isset ($this->rows[$userId][$id])) { // open if (is_int ($userId) and $this->database) $this->indexFoundRows ($this->database->select ($this, array ('id' => $id))); elseif (is_string ($userId) and $database = $this->getDatabase ($userId)) $this->indexFoundRows ($database->select ($this, array ('id' => $id)), $userId); } // open $found = array (); if (isset ($this->rows[$userId][$id])) { // found $found = &$this->rows[$userId][$id]; if ($found['access'] <= $access) return $found; } // found $empty = array (); return $empty; } // function & public function &openChild ($userId, $mode, $parentId, $name, $access=4) { // function & if (!isset ($this->chargedParents[$userId][$mode][$parentId])) { // open if (is_int ($userId) and $this->database) { // parents from database $this->chargedParents[$userId][$mode][$parentId] = true; $this->indexFoundRows ($this->database->select ($this, array ( 'user_id' => $userId, 'mode' => $mode, 'parent_id' => $parentId ))); } // parents from database elseif (is_string ($userId) and $database = $this->getDatabase ($userId)) { // parents from file $this->indexFoundRows ($database->select ($this, array ( 'mode' => $mode, 'parent_id' => $parentId )), $userId); } // parents from file } // open if (isset ($this->indexByParent[$userId][$mode][$parentId])) { // children exists foreach ($this->indexByParent[$userId][$mode][$parentId] as $id) { // each child if ($this->rows[$userId][$id]['name'] == $name) { // found $found = &$this->rows[$userId][$id]; if ($found['access'] <= $access) return $found; $empty = array (); return $empty; } // found } // each child } // children exists $found = array (); return $found; } // function & public function children ($userId, $mode, $parentId, $access=4, $max=0, $offset=0, $sort='index', $direction='asc') { // function children if (!isset ($this->chargedParents[$userId][$mode][$parentId])) { // open if (isset ($this->chargedMode[$userId][$mode])) return array (); if (is_int ($userId) and $this->database) { // parents from database $this->chargedParents[$userId][$mode][$parentId] = true; $this->indexFoundRows ($this->database->select ($this, array ( 'user_id' => $userId, 'mode' => $mode, 'parent_id' => $parentId ))); } // parents from database elseif (is_string ($userId) and $database = $this->getDatabase ($userId)) { // parents from file $this->chargedParents[$userId][$mode][$parentId] = true; $this->indexFoundRows ($database->select ($this, array ( 'mode' => $mode, 'parent_id' => $parentId )), $userId); } // parents from database } // open if (isset ($this->indexByParent[$userId][$mode][$parentId])) { // children exists $sorted = array (); $rows = $this->rows[$userId]; foreach ($this->indexByParent[$userId][$mode][$parentId] as $id) { // each child if ($rows[$id]['access'] <= $access) $sorted[$rows[$id][$sort]][] = $rows[$id]; } // each child if ($direction == 'desc') krsort ($sorted); else ksort ($sorted); if ($max == 0) $max = count ($this->indexByParent[$userId][$mode][$parentId]); else $max += $offset; $list = array (); $i = - 1; foreach ($sorted as $doubled) { // each doubled foreach ($doubled as $item) { // each item $i++; if ($i >= $offset and $i < $max) $list[] = $item; elseif ($i > $max) break 2; } // each item } // each doubled return $list; } // children exists return array (); } // function children public function childrenNames ($userId, $mode, $parentId, $access=4, $max=0, $offset=0, $sort='index', $direction='asc') { // function childrenNames $children = $this->children ($userId, $mode, $parentId, $access, $max, $offset, $sort, $direction); $names = array (); foreach ($children as $child) { // each child $names[] = $child['name']; } // each child return $names; } // function childrenNames public function mode ($userId, $mode) { // function mode if (!isset ($this->chargedMode[$userId][$mode])) { // open if (is_int ($userId) and is_object ($this->database)) { // mode from database $this->chargedMode[$userId][$mode] = $this->indexFoundRows ($this->database->select ($this, array ( 'user_id' => $userId, 'mode' => $mode ))); } // mode from database elseif (is_string ($userId) and $database = $this->getDatabase ($userId)) { // mode from file $this->chargedMode[$userId][$mode] = $this->indexFoundRows ($database->select ($this, array ( 'mode' => $mode )), $userId); } // mode from file else $this->chargedMode[$userId][$mode] = array (); // index chargedParents if (!isset ($this->chargedParents[$userId])) $this->chargedParents[$userId] = array (); if (!isset ($this->chargedParents[$userId][$mode])) $this->chargedParents[$userId][$mode] = array (); foreach ($this->chargedMode[$userId][$mode] as $row) { // each row if (!$row or !isset ($row['id']) or !isset ($row['parent_id'])) continue; if (!isset ($this->chargedParents[$userId][$mode][$row['parent_id']]) or !is_array ($this->chargedParents[$userId][$mode][$row['parent_id']])) $this->chargedParents[$userId][$mode][$row['parent_id']] = array (); $this->chargedParents[$userId][$mode][$row['parent_id']][$row['id']] = true; $this->indexByParent[$userId][$mode][$row['parent_id']][$row['id']] = $row['id']; } // each row } // open return $this->chargedMode[$userId][$mode]; } // function mode public function findMarker ($userId, $marker, $mode=MODE_SECTION) { // function findMarker static $markers = array (); if (!isset ($markers[$userId][$mode])) { // charge mode if (!isset ($markers[$userId])) $markers[$userId] = array (); if (!isset ($markers[$userId][$mode])) $markers[$userId][$mode] = array (); foreach ($this->mode ($userId, $mode) as $data) { // each row if (!isset ($markers[$userId][$mode][$data['marker']])) $markers[$userId][$mode][$data['marker']] = $data['id']; } // each row } // charge mode if (isset ($markers[$userId][$mode][$marker])) return $markers[$userId][$mode][$marker]; return false; } // function findMarker public function search ($where, $access=4, $max=0, $offset=0, $sort='created', $direction='desc') { // function search if ( (!isset ($where['user_id']) or is_int ($where['user_id'])) and is_object ($this->database)) { // search on database $rows = $this->indexFoundRows ($this->database->select ($this, $where)); } // search on database elseif (isset ($where['user_id']) and is_string ($where['user_id']) and $database = $this->getDatabase ($where['user_id'])) { // search on file unset ($where['user_id']); $rows = $this->indexFoundRows ($database->select ($this, $where), $where['user_id']); } // search on file else $rows = array (); if ($rows) { // children exists $sorted = array (); foreach ($rows as $row) { // each child if ($row['access'] <= $access) $sorted[$row[$sort]][] = $row; } // each child if ($direction == 'desc') krsort ($sorted); else ksort ($sorted); if ($max == 0) $max = count ($rows); else $max += $offset; $list = array (); $i = - 1; foreach ($sorted as $doubled) { // each doubled foreach ($doubled as $item) { // each item $i++; if ($i >= $offset and $i < $max) $list[] = $item; elseif ($i > $max) break 2; } // each item } // each doubled return $list; } // children exists return array (); } // function search public function childrenReindex ($userId, $mode, $parentId) { // function childrenReindex foreach ($this->children ($userId, $mode, $parentId) as $index => $child) { // each child $this->rows[$userId][$child['id']]['index'] = $index; } // each child } // function childrenReindex public function pathway ($userId, $name) { // function pathway global $store; $pathway = array (); if (intval ($name)) $data = $this->openById ($userId, $name); else $data = $this->open ($userId, $name); if (!$data) return false; $id = $data['id']; do { // loop levels if (isset ($this->rows[$userId][$id])) $data = $this->rows[$userId][$id]; else $data = $this->openById ($userId, $id); if (!$data) return false; array_unshift ($pathway, $data['name']); $id = $data['parent_id']; if (!$id and $data['mode'] != MODE_SECTION and $data['marker']) { // find special section $id = $this->findMarker ($userId, $data['marker']); if (!$id) return false; } // find special section } // loop levels while ($id); array_unshift ($pathway, SYSTEM_PROFILES_URI, $store->user->getName ($userId)); return $pathway; } // function pathway public function delete ($userId, $id) { // function delete if (isset ($this->rows[$userId][$id])) { // remove from index $data = $this->rows[$userId][$id]; $this->deletedRows[$userId][$id] = $id; $this->rows[$userId][$id] = array (); unset ($this->originalRows[$userId][$id]); unset ($this->indexByParent[$userId][$data['mode']][$data['parent_id']][$id]); unset ($this->indexByName[$userId][$data['name']][$id]); } // remove from index if (is_int ($userId) and $this->database) { // delete from database $this->database->delete ($this, array ('id' => $id)); } // delete from database elseif (is_string ($userId) and $database = $this->getDatabase ($userId)) { // delete from file $database->delete ($this, array ('id' => $id)); } // delete from file } // function delete public function close () { // function close foreach ($this->originalRows as $userId => $userRows) { // each user foreach ($userRows as $id => $originalRow) { // each row if ($this->rows[$userId][$id] != $originalRow) { // data changed if (is_int ($userId)) $this->database->update ($this, $this->rows[$userId][$id], $originalRow); elseif (is_string ($userId) and $database = $this->getDatabase ($userId)) $database->update ($this, $this->rows[$userId][$id], $originalRow); } // data changed } // each row } // each user $this->indexByName = array (); $this->indexByParent = array (); $this->chargedParents = array (); $this->rows = array (); $this->originalRows = array (); $this->deletedRows = array (); $this->notFound = array (); } // function close } // class eclStore_userContent //!eof:engine/eclStore/eclStore_userContent.php; //!file:engine/eclStore/eclStore_userExtras.php; class eclStore_userExtras { // class eclStore_userExtras public $name = 'user_extras'; public $fields = array ( // Indexing 'user_id' => 'mediumint', 'mode' => 'tinyint', 'parent_id' => 'mediumint', 'master_id' => 'mediumint', 'id' => 'primary_key', // Class identifiers 'name' => 'name', 'status' => 'tinyint', 'access' => 'tinyint', 'owner_id' => 'mediumint', // Dates 'created' => 'time', 'updated' => 'time', // Contents 'text' => 'array', 'local' => 'array', 'extras' => 'array', 'html' => 'binary' ); // Index public $index = array ( 'user_find_extras' => array ('user_id', 'mode', 'parent_id'), 'user_find_extras_owner' => array ('owner_id', 'mode') ); public $indexByParent = array (); public $chargedParents = array (); public $chargedMode = array (); private $rows = array (); private $originalRows = array (); private $deletedRows = array (); private $notFound = array (); private $database = false; private $openedDatabases = array (); public $lastInsertedData = array (); public function __construct () { // function __construct global $io; if ($io->database->tableEnabled ($this)) $this->database = $io->database; } // function __construct public function getDatabase ($domainName) { // function getDatabase global $io; if (!isset ($this->openedDatabases[$domainName])) { // open database $this->openedDatabases[$domainName] = $io->sqlite->connect (FOLDER_DOMAINS . $domainName . '/.domain.db'); } // open database if ($this->openedDatabases[$domainName]->tableEnabled ($this)) return $this->openedDatabases[$domainName]; return false; } // function getDatabase public function indexFoundRows ($rows, $domainName=0) { // function indexFoundRows $found = array (); foreach ($rows as $data) { // each row if ($data['access'] == 255) continue; if (!$data['user_id']) $data['user_id'] = $domainName; $userId = $data['user_id']; $id = $data['id']; if (!isset ($this->deletedRows[$userId][$id])) { // row not deleted if (!isset ($this->rows[$userId][$id])) { // row not indexed $this->rows[$userId][$id] = $data; $this->originalRows[$userId][$id] = $data; $this->indexByParent[$userId][$data['mode']][$data['parent_id']][$id] = $id; $found[] = $data; } // row not indexed else $found[] = $this->rows[$userId][$id]; } // row not deleted } // each row return $found; } // function indexFoundRows public function insert ($userId, &$data) { // function insert global $io; if (is_int ($userId) and $this->database) $database = $this->database; elseif (is_string ($userId) and $database = $this->getDatabase ($userId)) null; else return 0; $data['user_id'] = $userId; if (!isset ($data['parent_id'])) $data['parent_id'] = 0; $id = $database->insert ($this, $data); $data['id'] = $id; $this->rows[$userId][$id] = $data; $this->originalRows[$userId][$id] = $data; $this->indexByParent[$userId][$data['mode']][$data['parent_id']][$id] = $id; $this->lastInsertedData = $data; return $id; } // function insert public function &openById ($userId, $id, $access=4) { // function & if (!isset ($this->rows[$userId][$id])) { // open if (is_int ($userId) and $this->database) $this->indexFoundRows ($this->database->select ($this, array ('user_id' => $userId, 'id' => $id))); elseif (is_string ($userId) and $database = $this->getDatabase ($userId)) $this->indexFoundRows ($database->select ($this, array ('id' => $id)), $userId); } // open $found = array (); if (isset ($this->rows[$userId][$id])) { // found $found = &$this->rows[$userId][$id]; if ($found['access'] <= $access) return $found; } // found $empty = array (); return $empty; } // function & public function children ($userId, $mode, $parentId, $access=4) { // function children if (!isset ($this->chargedParents[$userId][$mode][$parentId])) { // open if (isset ($this->chargedMode[$userId][$mode])) return array (); if (is_int ($userId) and $this->database) { // parents from database $this->chargedParents[$userId][$mode][$parentId] = true; $this->indexFoundRows ($this->database->select ($this, array ( 'user_id' => $userId, 'mode' => $mode, 'parent_id' => $parentId ))); } // parents from database elseif (is_string ($userId) and $database = $this->getDatabase ($userId)) { // parents from file $this->chargedParents[$userId][$mode][$parentId] = true; $this->indexFoundRows ($database->select ($this, array ( 'mode' => $mode, 'parent_id' => $parentId )), $userId); } // parents from database } // open if (isset ($this->indexByParent[$userId][$mode][$parentId])) { // return found rows $found = array (); foreach ($this->indexByParent[$userId][$mode][$parentId] as $id) { // each row $found[] = $this->rows[$userId][$id]; } // each row return $found; } // return found rows else return array (); } // function children public function mode ($userId, $mode) { // function mode if (!isset ($this->chargedMode[$userId][$mode])) { // open if (is_int ($userId) and is_object ($this->database)) { // mode from database $this->chargedMode[$userId][$mode] = $this->indexFoundRows ($this->database->select ($this, array ( 'user_id' => $userId, 'mode' => $mode ))); } // mode from database elseif (is_string ($userId) and $database = $this->getDatabase ($userId)) { // mode from file $this->chargedMode[$userId][$mode] = $this->indexFoundRows ($database->select ($this, array ( 'mode' => $mode )), $userId); } // mode from file else $this->chargedMode[$userId][$mode] = array (); // index chargedParents if (!isset ($this->chargedParents[$userId])) $this->chargedParents[$userId] = array (); if (!isset ($this->chargedParents[$userId][$mode])) $this->chargedParents[$userId][$mode] = array (); foreach ($this->chargedMode[$userId][$mode] as $row) { // each row if (!$row or !isset ($row['id']) or !isset ($row['parent_id'])) continue; if (!isset ($this->chargedParents[$userId][$mode][$row['parent_id']]) or !is_array ($this->chargedParents[$userId][$mode][$row['parent_id']])) $this->chargedParents[$userId][$mode][$row['parent_id']] = array (); $this->chargedParents[$userId][$mode][$row['parent_id']][$row['id']] = true; $this->indexByParent[$userId][$mode][$row['parent_id']][$row['id']] = $row['id']; } // each row } // open return $this->chargedMode[$userId][$mode]; } // function mode public function search ($where, $access=4) { // function search if ( (!isset ($where['user_id']) or is_int ($where['user_id'])) and is_object ($this->database)) { // search on database return $this->indexFoundRows ($this->database->select ($this, $where)); } // search on database elseif (isset ($where['user_id']) and is_string ($where['user_id']) and $database = $this->getDatabase ($where['user_id'])) { // search on file unset ($where['user_id']); return $this->indexFoundRows ($database->select ($this, $where), $where['user_id']); } // search on file else return array (); } // function search public function createVersion ($userId, &$from, $document) { // function createVersion $lang = $document->lang; $from['flags']['updated_' . $lang] = TIME; $data = array ( 'user_id' => $userId, 'mode' => MODE_VERSION, 'parent_id' => $from['id'], 'name' => $document->lang, 'owner_id' => $document->user->userId, 'created' => TIME, 'updated' => TIME, 'text' => array () ); foreach (array_keys ($from['text']) as $field) { // each field if (isset ($from['text'][$field][$lang])) $data['text'][$field] = array ($lang => $from['text'][$field][$lang]); } // each field if (isset ($from['extras'])) { // extras exists $data['extras'] = array (); foreach ($from['extras'] as $target => $extras) { // each extra list ($prefix) = explode ('_', $target); switch ($prefix) { // switch prefix case 'box': if (isset ($from['extras'][$target]['text'])) { // text exists foreach ($from['extras'][$target]['text'] as $field => $value) { // each field if (isset ($value[$lang])) $data['extras'][$target]['text'][$field][$lang] = $value[$lang]; } // each field } // text exists if (isset ($from['extras'][$target]['local'])) $data['extras'][$target]['local'] = $from['extras'][$target]['local']; } // switch prefix } // each extra } // extras exists $this->insert ($userId, $data); } // function createVersion public function clearLanguage ($document) { // function clearLanguage global $store; $me = $document->application; if (!isset ($me->data['text']['caption']) or count ($me->data['text']['caption']) < 2) return; if ($document->actions ('version', 'clear') and isset ($document->actions['version'][2]) and strlen ($document->actions['version'][2]) == 2) { // language clear $lang = $document->actions['version'][2]; foreach (array_keys ($me->data['text']) as $field) { // each field unset ($me->data['text'][$field][$lang]); if (!$me->data['text'][$field]) unset ($me->data['text'][$field]); } // each field foreach (array_keys ($me->data['extras']) as $target) { // each target list ($prefix) = explode ('_', $target, 2); switch ($prefix) { // switch prefix case 'box': if (isset ($me->data['extras'][$field]['text'])) { // text exists foreach (array_keys ($me->data['extras'][$target]['text']) as $field) { // each field unset ($me->data['extras'][$target]['text'][$field][$lang]); if (!$me->data['extras'][$target]['text'][$field]) unset ($me->data['extras'][$target]['text'][$field]); } // each field if (!$me->data['extras'][$target]['text']) unset ($me->data['extras'][$target]); } // text exists } // switch prefix } // each target } // language clear if (count ($me->data['text']['caption']) > 1 and isset ($me->data['text']['caption'][$document->lang])) { // context clear language $langCaption = $store->control->read ('labels/lang/' . $document->lang); $document->mod->context->appendChild ('labels/action/remove_language') ->set ('lang_caption', $langCaption['text']['caption']) ->url (true, true, '_version-remove-' . $document->lang); } // context clear language } // function clearLanguage public function versioning ($document) { // function versioning $this->clearLanguage ($document); $me = $document->application; if (isset ($me->data['flags']['updated_' . $document->lang])) $updated = $me->data['flags']['updated_' . $document->lang]; else $updated = $me->data['updated']; $versions = $this->children ($me->userId, MODE_VERSION, $me->id); if (!$versions) return; $undo = array (); $redo = array (); $current = false; foreach ($versions as $version) { // each version if ($version['name'] != $document->lang) continue; if ($version['created'] < $updated) $undo[] = $version; elseif ($version['created'] == $updated) $current = true; elseif ($version['created'] > $updated) $redo[] = $version; } // each version if ($document->actions ('version', 'undo') and $undo) { // undo $update = array_pop ($undo); if ($current) $redo = true; } // undo elseif ($document->actions ('version', 'redo') and $redo) { // redo $update = array_shift ($redo); if ($current) $undo = true; } // redo if (isset ($update)) { // update $lang = $document->lang; $data = &$me->data; $data['updated'] = $update['created']; $data['flags']['updated_' . $lang] = $update['created']; $fields = array_keys (array_replace ($data['text'], $update['text'])); foreach ($fields as $field) { // update each field if (!isset ($data['text'][$field])) $data['text'][$field] = $update['text'][$field]; elseif (isset ($update['text'][$field][$lang])) $data['text'][$field][$lang] = $update['text'][$field][$lang]; else { // clear unset ($data['text'][$field][$lang]); if (!$data['text'][$field]) unset ($data['text'][$field]); } // clear } // update each field if (isset ($data['extras']) and $data['extras']) { // filter extras $modules = array_keys (array_replace ($data['extras'], $update['extras'])); foreach ($modules as $target) { // each target list ($prefix) = explode ('_', $target); switch ($prefix) { // switch prefix case 'box': if (!isset ($data['extras'][$target])) { // recreate $data['extras'][$target] = $update['extras'][$target]; break; } // recreate $fields = array_keys (array_replace ($data['extras'][$target]['text'], $update['extras'][$field]['text'])); foreach ($fields as $field) { // each field if (isset ($update['extras'][$target]['text'][$field][$lang])) $data['extras'][$target]['text'][$field][$lang] = $update['extras'][$target]['text'][$field][$lang]; else { // clear language unset ($update['extras'][$target]['text'][$field][$lang]); if (!$data['extras'][$target]['text'][$field]) unset ($data['extras'][$target]['text'][$field]); } // clear language } // each field if (!$data['extras'][$target]['text']) unset ($data['extras'][$target]); } // switch prefix } // each target } // filter extras $document->dataReplace ($me->data); } // update if ($undo) $document->mod->context->appendChild ('labels/action/undo') ->url (true, true, '_version-undo'); if ($redo) $document->mod->context->appendChild ('labels/action/redo') ->url (true, true, '_version-redo'); } // function versioning public function delete ($userId, $id) { // function delete if (defined ('TRACKING_REMOVED_PAGES') and TRACKING_REMOVED_PAGES) { // do not remove page $data = &$this->openById ($userId, $id); $data['access'] = 255; return; } // do not remove page if (isset ($this->rows[$userId][$id])) { // remove from index $data = $this->rows[$userId][$id]; $this->deletedRows[$userId][$id] = $id; $this->rows[$userId][$id] = array (); unset ($this->originalRows[$userId][$id]); unset ($this->indexByParent[$userId][$data['mode']][$data['parent_id']][$id]); } // remove from index if (is_int ($userId) and $this->database) { // delete from database $this->database->delete ($this, array ('id' => $id)); } // delete from database elseif (is_string ($userId) and $database = $this->getDatabase ($userId)) { // delete from file $database->delete ($this, array ('id' => $id)); } // delete from file } // function delete public function deleteAllChildren ($userId, $parentId) { // function deleteAllChildren $where = array ( 'user_id' => $userId, 'parent_id' => $parentId ); foreach ($this->search ($where) as $data) { // each row $this->delete ($userId, $data['id']); } // each row } // function deleteAllChildren public function close () { // function close foreach ($this->originalRows as $userId => $domainRows) { // each domain foreach ($domainRows as $id => $originalRow) { // each row if ($this->rows[$userId][$id] != $originalRow) { // data changed if (is_int ($userId)) $this->database->update ($this, $this->rows[$userId][$id], $originalRow); elseif (is_string ($userId) and $database = $this->getDatabase ($userId)) $database->update ($this, $this->rows[$userId][$id], $originalRow); } // data changed } // each row } // each domain $this->indexByParent = array (); $this->chargedParents = array (); $this->rows = array (); $this->originalRows = array (); $this->deletedRows = array (); $this->notFound = array (); } // function close } // class eclStore_userExtras //!eof:engine/eclStore/eclStore_userExtras.php; //!file:engine/eclStore/eclStore_userFile.php; class eclStore_userFile { // class eclStore_userFile public function unlink ($userId, $name) { // function unlink global $store; $userName = $store->user->getName ($userId); if (!is_string ($name) or !strlen ($name)) return; if (is_file (FOLDER_PROFILES . $userName . '/' . $name)) unlink (FOLDER_PROFILES . $userName . '/' . $name); } // function unlink public function deletePrefixedFiles ($userId, $prefix, $mode=false) { // function deletePrefixedFiles global $store; $userName = $store->user->getName ($userId); $prefix .= CHR_FNS; $prefixLength = strlen ($prefix); $dir = scandir (FOLDER_PROFILES . $userName); foreach ($dir as $fileName) { // each file if (substr ($fileName, 0, $prefixLength) == $prefix) { // valid file if ($mode === false) unlink (FOLDER_PROFILES . $userName . '/' . $fileName); else { // select file type $type = substr ($fileName, - 4); switch ($type) { // switch file type case '.jpg': case '.gif': case '.png': if ($mode == MODE_IMG) unlink (FOLDER_PROFILES . $userName . '/' . $fileName); break; default: if ($mode == MODE_FILE) unlink (FOLDER_PROFILES . $userName . '/' . $fileName); } // switch file type } // select file type } // valid file } // each file } // function deletePrefixedFiles public function clonePrefixedFiles ($userId, $prefix, $newPrefix) { // function clonePrefixedFiles global $store; $userName = $store->user->getName ($userId); $prefix .= CHR_FNS; $newPrefix .= CHR_FNS; $prefixLength = strlen ($prefix); $dir = scandir (FOLDER_PROFILES . $userName); foreach ($dir as $fileName) { // each file if (substr ($fileName, 0, $prefixLength) == $prefix) { // valid file $newFileName = $newPrefix . substr ($fileName, $prefixLength); copy (FOLDER_PROFILES . $userName . '/' . $fileName, FOLDER_PROFILES . $userName . '/' . $newFileName); } // valid file } // each file } // function clonePrefixedFiles public function renamePrefixedFiles ($userId, $prefix, $newPrefix) { // function renamePrefixedFiles global $store; $userName = $store->user->getName ($userId); $newPrefix .= CHR_FNS; $prefix .= CHR_FNS; $prefixLength = strlen ($prefix); $dir = scandir (FOLDER_PROFILES . $userName); foreach ($dir as $fileName) { // each file if (substr ($fileName, 0, $prefixLength) == $prefix) { // valid file $oldFileName = FOLDER_PROFILES . $userName . '/' . $fileName; $newFileName = FOLDER_PROFILES . $userName . '/' . $newPrefix . substr ($fileName, $prefixLength); rename ($oldFileName, $newFileName); } // valid file } // each file } // function renamePrefixedFiles public function close () { // function close } // function close } // class eclStore_userFile //!eof:engine/eclStore/eclStore_userFile.php; //!file:engine/eclStore/eclStore_userFriend.php; class eclStore_userFriend { // class eclStore_userFriend public $name = 'user_friend'; public $fields = array ( 'user_id' => 'mediumint', 'friend_id' => 'mediumint', 'created' => 'time', 'updated' => 'time', 'status' => 'tinyint' ); public $insertedData = array (); private $database = false; private $groups = array (); public function __construct () { // function __construct global $io; if ($io->database->tableEnabled ($this)) $this->database = $io->database; } // function __construct public function close () { // function close } // function close } // class eclStore_userFriend //!eof:engine/eclStore/eclStore_userFriend.php; //!file:engine/eclTag/eclTag_audio.php; class eclTag_audio { // class eclTag_audio static $type = 'module'; static function render ($render, $arguments) { // function render global $store; $document = $render->document; $tagArguments = implode (' ', $arguments); $arguments = explode (' ', $tagArguments); switch (count ($arguments)) { // switch number of arguments case 0: if (!isset ($document->application->data['name'])) return false; $arguments[0] = $document->application->data['name']; $arguments[1] = '0'; break; case 1: if (is_numeric ($arguments[0])) { // number if (!isset ($document->application->data['name'])) return false; $arguments[1] = $arguments[0]; $arguments[0] = $document->application->data['name']; break; } // number $arguments[1] = '0'; } // switch number of arguments // Vamos abrir o mdulo $mod = $document->createModule ('audio', $arguments); // Se o mdulo estiver marcado como vazio if (!$mod->enabled) return; $data = $mod->data; $data['local']['tag'] = 'audio:' . $tagArguments; $data['mod'] = $data['local']; $data['children'] = $mod->children; return $data; } // function render } // class eclTag_audio //!eof:engine/eclTag/eclTag_audio.php; //!file:engine/eclTag/eclTag_box.php; class eclTag_box { // class eclTag_box static $type = 'module'; static function render ($render, $arguments) { // function render global $store; $document = $render->document; $tagArguments = implode (' ', $arguments); $arguments = explode (' ', $tagArguments); // Vamos abrir o mdulo $mod = $document->createModule ('box', $arguments); // Se o mdulo estiver marcado como vazio if (!$mod->enabled) return; $data = $mod->data; $data['local']['tag'] = 'box:' . $tagArguments; $data['mod'] = $data['local']; $data['children'] = $mod->children; return $data; } // function render } // class eclTag_box //!eof:engine/eclTag/eclTag_box.php; //!file:engine/eclTag/eclTag_card.php; class eclTag_card { // class eclTag_card static function render ($render, $arguments) { // function render global $store; if (isset ($arguments[0])) $name = 'card_' . $arguments[0]; else $name = 'card'; $render->tagsStack[] = array ('card', $name); $render->scissorsIndex++; $render->scissors[$render->scissorsIndex] = array ( 'position' => strlen ($render->buffer), 'name' => $name, ); } // function render } // class eclTag_card //!eof:engine/eclTag/eclTag_card.php; //!file:engine/eclTag/eclTag_columns.php; class eclTag_columns { // class eclTag_columns static function render ($render, $arguments) { // function render if (isset ($arguments[0])) $name = 'columns_' . $arguments[0]; else $name = 'columns'; $render->tagsStack[] = array ('columns', $name); $render->scissorsIndex++; $render->scissors[$render->scissorsIndex] = array ( 'position' => strlen ($render->buffer), 'name' => $name, ); } // function render } // class eclTag_columns //!eof:engine/eclTag/eclTag_columns.php; //!file:engine/eclTag/eclTag_cut.php; class eclTag_cut { // class eclTag_cut static function render ($render, $arguments) { // function render @list ($name, $once) = explode (' ', $arguments[0]); $render->tagsStack[] = array ('cut', $name); $render->scissorsIndex++; $render->scissors[$render->scissorsIndex] = array ( 'position' => strlen ($render->buffer), 'label' => $name, 'once' => $once ); } // function render } // class eclTag_cut //!eof:engine/eclTag/eclTag_cut.php; //!file:engine/eclTag/eclTag_details.php; class eclTag_details { // class eclTag_details static $type = 'scope'; static function render ($render, $arguments) { // function render global $store; $details = $render->getVar ('mod.details'); if (!strlen ($details)) return; if (is_string ($details)) $details = explode (CRLF, $details); $buffer['parsed'] = array (); foreach ($details as $name) { // each detail if (!strlen ($name = trim ($name))) continue; $data = $render->block ('details/' . $name); if (isset ($data['parsed'])) { // ready $buffer['parsed'] = array_merge ($buffer['parsed'], $data['parsed']); continue; } // ready if (!isset ($data['html'])) continue; $buffer['parsed'] = array_merge ($buffer['parsed'], $render->render_tags ($data['html'], true)); } // each detail return $buffer; } // function render } // class eclTag_details //!eof:engine/eclTag/eclTag_details.php; //!file:engine/eclTag/eclTag_dinamic.php; class eclTag_dinamic { // class eclTag_dinamic static $type = 'module'; static function render ($render, $arguments) { // function render global $store; $document = $render->document; $tagArguments = implode (' ', $arguments); $arguments = explode (' ', $tagArguments); switch (count ($arguments)) { // switch number of arguments case 0: if (!isset ($document->application->data['name'])) return false; $arguments[0] = $document->application->data['name']; $arguments[1] = '0'; break; case 1: if (is_numeric ($arguments[0])) { // number if (!isset ($document->application->data['name'])) return false; $arguments[1] = $arguments[0]; $arguments[0] = $document->application->data['name']; break; } // number $arguments[1] = '0'; } // switch number of arguments // Vamos abrir o mdulo $mod = $document->createModule ('dinamic', $arguments); // Se o mdulo estiver marcado como vazio if (!$mod->enabled) return; $data = $mod->data; $data['local']['tag'] = 'dinamic:' . $tagArguments; $data['mod'] = $data['local']; $data['children'] = $mod->children; return $data; } // function render } // class eclTag_dinamic //!eof:engine/eclTag/eclTag_dinamic.php; //!file:engine/eclTag/eclTag_endcard.php; class eclTag_endcard { // class eclTag_endcard static function render ($render, $arguments) { // function render $name = $render->stackPop ('card'); if ($name === false) return; if (!$render->scissorsIndex) return; $position = $render->scissors[$render->scissorsIndex]['position']; $render->scissorsIndex--; $border = $render->block ('borders/card'); if (!isset ($border['html'])) return; $cut = substr ($render->buffer, $position); $render->buffer = substr ($render->buffer, 0, $position); $data = $render->block ('modules/' . $name); if (!$data) $data = $render->block ('modules/card'); $data['html'] = $border['html']; $data['local']['value'] = $cut; return $data; } // function render } // class eclTag_endcard //!eof:engine/eclTag/eclTag_endcard.php; //!file:engine/eclTag/eclTag_endcolumns.php; class eclTag_endcolumns { // class eclTag_endcolumns static function render ($render, $arguments) { // function render $name = $render->stackPop ('columns'); if ($name === false) return; if (!$render->scissorsIndex) return; $position = $render->scissors[$render->scissorsIndex]['position']; $render->scissorsIndex--; $border = $render->block ('borders/columns'); if (!isset ($border['html'])) return; $cut = substr ($render->buffer, $position); $render->buffer = substr ($render->buffer, 0, $position); $data = $render->block ('modules/' . $name); if (!$data) $data = $render->block ('modules/columns'); $data['html'] = $border['html']; $data['local']['value'] = $cut; return $data; } // function render } // class eclTag_endcolumns //!eof:engine/eclTag/eclTag_endcolumns.php; //!file:engine/eclTag/eclTag_endcut.php; class eclTag_endcut { // class eclTag_endcut static function render ($render, $arguments) { // function render $name = $render->stackPop ('cut'); if ($name === false) return; if (!$render->scissorsIndex) return; $position = $render->scissors[$render->scissorsIndex]['position']; $label = $render->scissors[$render->scissorsIndex]['label']; $once = $render->scissors[$render->scissorsIndex]['once']; $render->scissorsIndex--; $cut = substr ($render->buffer, $position); $render->buffer = substr ($render->buffer, 0, $position); if (is_bool ($label) or $label == '') return; while ($render->pasteIndex and $render->pastePointer[$render->pasteIndex] > $position) { // clear paste points $render->pasteIndex--; } // clear paste points if ($once) { // cut once // Se j houvermos recortado este trecho if (isset ($render->cutOnce[$once])) return; $render->cutOnce[$once] = true; } // cut once if (isset ($render->cuts[$label])) $render->cuts[$label] .= $cut; else $render->cuts[$label] = $cut; } // function render } // class eclTag_endcut //!eof:engine/eclTag/eclTag_endcut.php; //!file:engine/eclTag/eclTag_endgrid.php; class eclTag_endgrid { // class eclTag_endgrid static function render ($render, $arguments) { // function render $name = $render->stackPop ('grid'); if ($name === false) return; if (!$render->scissorsIndex) return; $position = $render->scissors[$render->scissorsIndex]['position']; $render->scissorsIndex--; $border = $render->block ('borders/grid'); if (!isset ($border['html'])) return; $cut = substr ($render->buffer, $position); $render->buffer = substr ($render->buffer, 0, $position); $data = $render->block ('modules/' . $name); if (!$data) $data = $render->block ('modules/grid'); $data['html'] = $border['html']; $data['local']['value'] = $cut; return $data; } // function render } // class eclTag_endgrid //!eof:engine/eclTag/eclTag_endgrid.php; //!file:engine/eclTag/eclTag_endscript.php; class eclTag_endscript { // class eclTag_endscript static function render ($render) { // function render $name = $render->stackPop ('script'); if ($name === false) return; if (!$render->scissorsIndex) return; $position = $render->scissors[$render->scissorsIndex]['position']; $label = $render->scissors[$render->scissorsIndex]['label']; $once = $render->scissors[$render->scissorsIndex]['once']; $render->scissorsIndex--; $cut = substr ($render->buffer, $position); $render->buffer = substr ($render->buffer, 0, $position); if (is_bool ($label) or $label == '') return; if ($once) { // cut once // Se j houvermos recortado este trecho if (isset ($render->cutOnce[$once])) return; $render->cutOnce[$once] = true; } // cut once if (isset ($render->cuts[$label])) $render->cuts[$label] .= $cut; else $render->cuts[$label] = $cut; } // function render } // class eclTag_endscript //!eof:engine/eclTag/eclTag_endscript.php; //!file:engine/eclTag/eclTag_endstyle.php; class eclTag_endstyle { // class eclTag_endstyle static function render ($render) { // function render $name = $render->stackPop ('style'); if ($name === false) return; if (!$render->scissorsIndex) return; $position = $render->scissors[$render->scissorsIndex]['position']; $label = $render->scissors[$render->scissorsIndex]['label']; $once = $render->scissors[$render->scissorsIndex]['once']; $render->scissorsIndex--; $cut = substr ($render->buffer, $position); $render->buffer = substr ($render->buffer, 0, $position); if (is_bool ($label) or $label == '') return; if ($once) { // cut once // Se j houvermos recortado este trecho if (isset ($render->cutOnce[$once])) return; $render->cutOnce[$once] = true; } // cut once if (isset ($render->cuts[$label])) $render->cuts[$label] .= $cut; else $render->cuts[$label] = $cut; } // function render } // class eclTag_endstyle //!eof:engine/eclTag/eclTag_endstyle.php; //!file:engine/eclTag/eclTag_endtable.php; class eclTag_endtable { // class eclTag_endtable static function render ($render, $arguments) { // function render $name = $render->stackPop ('table'); if ($name === false) return; if (!$render->scissorsIndex) return; $position = $render->scissors[$render->scissorsIndex]['position']; $render->scissorsIndex--; $border = $render->block ('borders/table'); if (!isset ($border['html'])) return; $cut = substr ($render->buffer, $position); $render->buffer = substr ($render->buffer, 0, $position); $data = $render->block ('modules/' . $name); if (!$data) $data = $render->block ('modules/table'); $data['html'] = $border['html']; $data['local']['value'] = $cut; return $data; } // function render } // class eclTag_endtable //!eof:engine/eclTag/eclTag_endtable.php; //!file:engine/eclTag/eclTag_field.php; class eclTag_field { // class eclTag_field static $type = 'scope'; static function render ($render, $arguments) { // function render global $store; $name = 'fields/' . $render->getVar ('type'); $data = $render->block ($name); if (!isset ($data['html'])) return; unset ($data['text']); if (isset ($data['local'])) $data['local'] = array_replace ($render->data, $data['local']); else $data['local'] = $render->data; if ($render->data) $data['data'] = $render->data; return $data; } // function render } // class eclTag_field //!eof:engine/eclTag/eclTag_field.php; //!file:engine/eclTag/eclTag_file.php; class eclTag_file { // class eclTag_file static $type = 'module'; static function render ($render, $arguments) { // function render global $store; $document = $render->document; $tagArguments = implode (' ', $arguments); $arguments = explode (' ', $tagArguments); switch (count ($arguments)) { // switch number of arguments case 0: if (!isset ($document->application->data['name'])) return false; $arguments[0] = $document->application->data['name']; $arguments[1] = '0'; break; case 1: if (is_numeric ($arguments[0])) { // number if (!isset ($document->application->data['name'])) return false; $arguments[1] = $arguments[0]; $arguments[0] = $document->application->data['name']; break; } // number $arguments[1] = '0'; } // switch number of arguments // Vamos abrir o mdulo $mod = $document->createModule ('file', $arguments); // Se o mdulo estiver marcado como vazio if (!$mod->enabled) return; $data = $mod->data; $data['local']['tag'] = 'file:' . $tagArguments; $data['mod'] = $data['local']; $data['children'] = $mod->children; return $data; } // function render } // class eclTag_file //!eof:engine/eclTag/eclTag_file.php; //!file:engine/eclTag/eclTag_font_stack.php; class eclTag_font_stack { // class eclTag_font_stack static function render ($render, $arguments) { // function render if (!$arguments) return; $font = $render->block ('fonts/' . $arguments[0]); if (isset ($font['local']['font-stack'])) $render->buffer .= $font['local']['font-stack']; if (isset ($font['local']['font-face'])) { // append font-face $fontFace = $font['local']['font-face']; if (!isset ($render->cuts['font-face'])) { // first cut $render->cuts['font-face'] = $fontFace . CRLF; return; } // first cut if (strpos ($render->cuts['font-face'], $fontFace) === false) $render->cuts['font-face'] .= $fontFace . CRLF; } // append font-face } // function render } // class eclTag_font_stack //!eof:engine/eclTag/eclTag_font_stack.php; //!file:engine/eclTag/eclTag_gender.php; class eclTag_gender { // class eclTag_gender static function render ($render, $arguments) { // function render if (!isset ($arguments[0]) or !is_string ($arguments[0]) or !strlen ($arguments[0])) return; @list ($male, $female) = explode ('|', $arguments[0], 2); if (!isset ($render->document->user->data['local']['gender'])) $render->buffer .= $male; elseif ($render->document->user->data['local']['gender'] == 'female') $render->buffer .= $female; else $render->buffer .= $male; } // function render } // class eclTag_gender //!eof:engine/eclTag/eclTag_gender.php; //!file:engine/eclTag/eclTag_grid.php; class eclTag_grid { // class eclTag_grid static function render ($render, $arguments) { // function render if (isset ($arguments[0])) $name = 'grid_' . $arguments[0]; else $name = 'grid'; $render->tagsStack[] = array ('grid', $name); $render->scissorsIndex++; $render->scissors[$render->scissorsIndex] = array ( 'position' => strlen ($render->buffer), 'name' => $name, ); } // function render } // class eclTag_grid //!eof:engine/eclTag/eclTag_grid.php; //!file:engine/eclTag/eclTag_help.php; class eclTag_help { // class eclTag_help static $type = 'scope'; static function render ($render) { // function render global $store; if (!$render->getVar ('name') or !$render->getVar ('help') or !$render->getVar ('caption')) return; $control = array (); $local = array (); $data = array (); if ($render->getVar ('content')) { // from current control if ($render->getVar ('title')) $local['caption'] = $render->getVar ('title'); elseif ($render->getVar ('caption')) $local['caption'] = $render->getVar ('caption'); else return; $local['content'] = $render->getVar ('content'); $render->local['help_caption'] = $local['caption']; $control = array (); if ($render->getVar ('icon')) $local['icon'] = $render->getVar ('icon'); } // from current control elseif ($render->getVar ('help_msg')) { // from previous defined message $control = $store->control->read ($render->getVar ('help_msg')); if (!isset ($control['text']['caption'])) return; $data['caption'] = $control['text']['caption']; } // from previous message $local['name'] = $render->getVar ('name'); $local['return_id'] = $local['name']; $data['caption'] = $render->getVar ('caption'); $local['field_caption'] = $render->getVar ('caption'); $data['url'] = $render->document->mod->humperstilshen->dialog ($control, $local); $block = $store->control->read ('blocks/help'); $block['local'] = $data; return $block; } // function render } // class eclTag_help //!eof:engine/eclTag/eclTag_help.php; //!file:engine/eclTag/eclTag_html.php; class eclTag_html { // class eclTag_html static $type = 'module'; static function render ($render, $arguments) { // function render global $store; $document = $render->document; $tagArguments = implode (' ', $arguments); $arguments = explode (' ', $tagArguments); // Vamos abrir o mdulo $mod = $document->createModule ('html', $arguments); // Se o mdulo estiver marcado como vazio if (!$mod->enabled) return; $data = $mod->data; $data['local']['tag'] = 'html:' . $tagArguments; $data['mod'] = $data['local']; $data['children'] = $mod->children; return $data; } // function render } // class eclTag_html //!eof:engine/eclTag/eclTag_html.php; //!file:engine/eclTag/eclTag_http.php; class eclTag_http { // class eclTag_http static function render ($render, $arguments) { // function render if (!isset ($arguments[0]) or !is_string ($arguments[0]) or !strlen ($arguments[0])) return; $args = explode (' ', $arguments[0], 2); if (substr ($args[0], 0, 2) != '//') $args[0] = '//' . $args[0]; $buffer = ''; if (isset ($args[1]) and strlen ($args[1])) $buffer .= $args[1]; else $buffer .= substr ($args[0], 2); $buffer .= "" . CRLF; $render->buffer .= $buffer; } // function render } // class eclTag_http //!eof:engine/eclTag/eclTag_http.php; //!file:engine/eclTag/eclTag_https.php; class eclTag_https { // class eclTag_https static function render ($render, $arguments) { // function render if (!isset ($arguments[0]) or !is_string ($arguments[0]) or !strlen ($arguments[0])) return; $args = explode (' ', $arguments[0], 2); if (substr ($args[0], 0, 2) != '//') $args[0] = '//' . $args[0]; $buffer = ''; if (isset ($args[1]) and strlen ($args[1])) $buffer .= $args[1]; else $buffer .= substr ($args[0], 2); $buffer .= "" . CRLF; $render->buffer .= $buffer; } // function render } // class eclTag_https //!eof:engine/eclTag/eclTag_https.php; //!file:engine/eclTag/eclTag_img.php; class eclTag_img { // class eclTag_img static $type = 'module'; static function render ($render, $arguments) { // function render global $store; $document = $render->document; $tagArguments = implode (' ', $arguments); $arguments = explode (' ', $tagArguments); switch (count ($arguments)) { // switch number of arguments case 0: if (!isset ($document->application->data['name'])) return false; $arguments[0] = $document->application->data['name']; $arguments[1] = '0'; break; case 1: if (is_numeric ($arguments[0])) { // number if (!isset ($document->application->data['name'])) return false; $arguments[1] = $arguments[0]; $arguments[0] = $document->application->data['name']; break; } // number $arguments[1] = '0'; } // switch number of arguments // Vamos abrir o mdulo $mod = $document->createModule ('img', $arguments); // Se o mdulo estiver marcado como vazio if (!$mod->enabled) return; $data = $mod->data; $data['local']['tag'] = 'img:' . $tagArguments; $data['mod'] = $data['local']; $data['children'] = $mod->children; return $data; } // function render } // class eclTag_img //!eof:engine/eclTag/eclTag_img.php; //!file:engine/eclTag/eclTag_inline_class.php; class eclTag_inline_class { // class eclTag_inline_class static function render ($render, $arguments) { // function render if (!isset ($arguments[0][0])) return false; $result = array(); foreach (explode (' ', $arguments[0]) as $field) { // each field $parts = explode ('$', $field); if (!isset ($parts[1])) { // discrete class $result[] = $parts[0]; continue; } // discrete class $options = explode ('??', $parts[1]); $value = $render->getVar ($options[0]); if ($value !== '') { // exists $result[] = $parts[0] . $value; continue; } // exists if (!isset ($options[1])) continue; $result[] = $parts[0] . $options[1]; } // each field if (!$result) return false; $render->buffer .= ' class="' . implode (' ', $result) . '"'; return false; } // function render } // class eclTag_inline_class //!eof:engine/eclTag/eclTag_inline_class.php; //!file:engine/eclTag/eclTag_inline_lang.php; class eclTag_inline_lang { // class eclTag_inline_lang static $type = 'scope'; static function render ($render, $arguments) { // function render global $store; // Vamos encontrar o nome do campo selecionado if (!isset ($arguments[0])) $field = $render->getVar ('caption'); elseif (is_string ($arguments[0])) { // from constant @list ($prefix, $sufix) = explode ('_', $arguments[0], 2); $name = 'labels/' . $prefix . '/' . $sufix; $data = array (); if (isset ($render->blocks[$name])) $data = $render->blocks[$name]; if (!isset ($data['text']['caption'])) $data = $store->control->read ($name); if (!isset ($data['text']['caption'])) return; $field = $data['text']['caption']; } // from constant elseif (is_array ($arguments[0])) $field = $arguments[0]; else return; if (!is_array ($field)) return; $text = $render->document->selectLanguage ($field); if ($text[3] == $render->document->lang) return; $data['lang'] = $text[3]; $data['html'] = ' lang="' . $text[3] . '"'; return $data; } // function render } // class eclTag_inline_lang //!eof:engine/eclTag/eclTag_inline_lang.php; //!file:engine/eclTag/eclTag_inline_style.php; class eclTag_inline_style { // class eclTag_inline_style static function render ($render, $arguments) { // function render if (!isset ($arguments[0][0])) return false; $result = array(); foreach (explode (';', $arguments[0]) as $field) { // each field if (!isset ($field[0])) continue; if (!strpos ($field, ':')) continue; list ($property, $value) = explode (':', $field); $property = trim ($property); $value = trim ($value); if ($value[0] != '$') { // static value $result[] = $property . ':' . $value; continue; } // static value $value = $render->getVar (substr ($value, 1)); if ($value === '') continue; $result[] = $property . ':' . strval ($value); } // each field if (!$result) return false; $render->buffer .= ' style="' . implode ('; ', $result) . '"'; return false; } // function render } // class eclTag_inline_style //!eof:engine/eclTag/eclTag_inline_style.php; //!file:engine/eclTag/eclTag_key.php; class eclTag_key { // class eclTag_key static function render ($render, $arguments) { // function render global $store; if (!isset ($arguments[0]) or !is_string ($arguments[0]) or !strlen ($arguments[0])) return; $document = $render->document; $domain = $document->domain; $label = $key = $arguments[0]; if ($document->charset != 'ISO-8859-1') $key = mb_convert_encoding ($key, 'ISO-8859-1', $document->charset); $key = $render->toKeyword ($key); if (!strlen ($key)) return; if ($id = $store->domainContent->findMarker ($document->domain->domainId, 1)) $pathway = $store->domainContent->pathway ($document->domain->domainId, $id); else $pathway = array ($domain->name, '-glossary'); $pathway[] = $key; $url = $document->url ($pathway); $buffer = '' . $label . "" . CRLF; $render->buffer .= $buffer; } // function render } // class eclTag_key //!eof:engine/eclTag/eclTag_key.php; //!file:engine/eclTag/eclTag_list.php; class eclTag_list { // class eclTag_list static $type = 'scope'; static function render ($render, $arguments) { // function render global $store; $document = $render->document; // Se no existir uma lista if (!count ($render->children)) return; if (isset ($arguments[0]) and is_string ($arguments[0]) and isset ($arguments[0][0])) $name = 'lists/' . $arguments[0]; else $name = 'lists/default'; // Procuramos o bloco $data = $render->block ($name); unset ($data['text'], $data['local']); // Vamos procurar a lista if ($render->index) { // subitem if (!isset ($render->children[$render->index - 1]->children)) return; if (!count ($render->children[$render->index - 1]->children)) return; $data['children'] = $render->children[$render->index - 1]->children; $data['index'] = 1; $data['local'] = $render->children[$render->index - 1]->children[0]->data; $data['me'] = $render->children[$render->index - 1]->children[0]->me; if (count ($data['children']) == 1) $data['local']['last'] = 1; $data['local']['index'] = 1; } // subitem else { // list from module level 0 $data['data'] = $render->children[0]->data; $data['me'] = $render->children[0]->me; $render->index = 1; if (count ($render->children) == 1) $data['local']['last'] = 1; $data['local']['index'] = 1; } // list from module level 0 $data['local']['first'] = 1; return $data; } // function render } // class eclTag_list //!eof:engine/eclTag/eclTag_list.php; //!file:engine/eclTag/eclTag_loop.php; class eclTag_loop { // class eclTag_loop static function render ($render) { // function render $render->index++; // Se no houver um prximo item, prosseguiremos if ($render->index > count ($render->children)) return false; $render->data = $render->children[$render->index - 1]->data; $render->me = $render->children[$render->index - 1]->me; $render->data['index'] = $render->index; if ($render->index == count ($render->children)) $render->data['last'] = 1; return true; } // function render } // class eclTag_loop //!eof:engine/eclTag/eclTag_loop.php; //!file:engine/eclTag/eclTag_mailto.php; class eclTag_mailto { // class eclTag_mailto static function render ($render, $arguments) { // function render if (!isset ($arguments[0]) or !is_string ($arguments[0]) or !strlen ($arguments[0])) return; $args = explode (' ', $arguments[0], 2); $buffer = ''; if (isset ($args[1]) and strlen ($args[1])) $buffer .= $args[1]; else $buffer .= $args[0]; $buffer .= '' . CRLF; // hide $buffer = ''; $render->buffer .= $buffer; } // function render } // class eclTag_mailto //!eof:engine/eclTag/eclTag_mailto.php; //!file:engine/eclTag/eclTag_mod.php; class eclTag_mod { // class eclTag_mod static $type = 'module'; static function render ($render, $arguments) { // function render global $store; if (!isset ($arguments[0]) or !is_string ($arguments[0]) or !strlen ($arguments[0])) return; $tagArguments = implode (' ', $arguments); $arguments = explode (' ', $tagArguments); $name = array_shift ($arguments); // Vamos abrir o mdulo $mod = $render->document->createModule ($name, $arguments); // Se o mdulo estiver marcado como vazio if (!$mod->enabled) return; // Vamos criar o escopo para o mdulo $data = $mod->data; if (isset ($data['text'])) $data['local']['text'] = $data['text']; $data['local']['tag'] = 'mod:' . $tagArguments; $data['mod'] = $data['local']; $data['children'] = $mod->children; return $data; } // function render } // class eclTag_mod //!eof:engine/eclTag/eclTag_mod.php; //!file:engine/eclTag/eclTag_modlist.php; class eclTag_modlist { // class eclTag_modlist static $type = 'scope'; static function render ($render, $arguments) { // function render if (!isset ($arguments[0]) or !is_string ($arguments[0]) or !strlen ($arguments[0])) return; // Que bloco deve ser inserido? $buffer = '['; foreach (explode (CRLF, $arguments[0]) as $name) { // each name $buffer .= 'mod`' . $name . '`;'; } // each name $data['html'] = $buffer; return $data; } // function render } // class eclTag_modlist //!eof:engine/eclTag/eclTag_modlist.php; //!file:engine/eclTag/eclTag_next.php; class eclTag_next { // class eclTag_next static function render ($render) { // function render if (!$render->index) return; if ($render->index < count ($render->children)) { // next item $render->index++; $render->data = $render->children[$render->index - 1]->data; $render->me = $render->children[$render->index - 1]->me; $render->data['index'] = $render->index; if ($render->index == count ($render->children)) $render->data['last'] = 1; return; } // next item $render->data = array (); $render->data = array (); return; } // function render } // class eclTag_next //!eof:engine/eclTag/eclTag_next.php; //!file:engine/eclTag/eclTag_nl.php; class eclTag_nl { // class eclTag_nl static function render ($render, $arguments) { // function render $render->buffer .= CRLF; } // function render } // class eclTag_nl //!eof:engine/eclTag/eclTag_nl.php; //!file:engine/eclTag/eclTag_or.php; class eclTag_or { // class eclTag_or static function render ($render, $arguments) { // function render if (!isset ($arguments[0])) return ''; if ($arguments[0]) return $arguments[0]; if (isset ($arguments[1])) return $arguments[1]; return ''; } // function render } // class eclTag_or //!eof:engine/eclTag/eclTag_or.php; //!file:engine/eclTag/eclTag_paste.php; class eclTag_paste { // class eclTag_paste static function render ($render, $arguments) { // function render if (!isset ($arguments[0]) or !is_string ($arguments[0]) or !strlen ($arguments[0])) return; // Vamos anotar a posio e o nome desta colagem $render->pasteIndex++; $render->pastePointer[$render->pasteIndex] = strlen ($render->buffer); $render->pasteNames[$render->pasteIndex] = $arguments[0]; } // function render } // class eclTag_paste //!eof:engine/eclTag/eclTag_paste.php; //!file:engine/eclTag/eclTag_personalite.php; class eclTag_personalite { // class eclTag_personalite static $type = 'scope'; static function render ($render, $arguments) { // function render global $store; if (!$arguments) $arguments[0] = 'module'; switch ($arguments[0]) { // switch argument case 'post': if (!$render->document->templateEditable) return; if ($render->me === false) return; $document = $render->document; $me = $render->me; if (!$me->domainId or !$me->id) return; if (!$document->access (4, $me->groups)) return; $data = $store->control->read ('blocks/personalite'); $pathway = array_slice ($me->pathway, 1); array_unshift ($pathway, $document->domain->name, '-personalite', 'extras', 'card'); $data['local']['personalite_url'] = $document->url ($pathway); $caption = $store->control->read ('modCard_edit'); $data['local']['personalite_caption'] = $caption['text']['caption']; return $data; break; default: if (!isset ($render->data['personalite_url'])) return; $block = $store->control->read ('blocks/personalite'); $block['local']['personalite_url'] = $render->data['personalite_url']; $block['local']['personalite_caption'] = $render->data['personalite_caption']; return $block; } // switch argument } // function render } // class eclTag_personalite //!eof:engine/eclTag/eclTag_personalite.php; //!file:engine/eclTag/eclTag_rendertable.php; class eclTag_rendertable { // class eclTag_rendertable static function render ($render, $arguments) { // function render $buffer = &$render->buffer; $heading = $render->getVar ('table_heading'); $editable = $render->getVar ('mod.editable'); $id = $render->getVar ('mod.id'); $number = $render->getVar ('mod.number'); $buffer .= 'children as $row) { // each row // Row class $buffer .= ''; $cellIndex = 0; foreach ($row->children as $cell) { // each cell if ($rowIndex < $heading) $buffer .= 'data['rowspan'])) $buffer .= ' rowspan="' . $cell->data['rowspan'] . '"'; // Colspan if (isset ($cell->data['colspan'])) $buffer .= ' colspan="' . $cell->data['colspan'] . '"'; // editable if ($editable) $buffer .= ' data-name="' . $id . '_table_' . $number . '_' . $rowIndex . '_' . $cellIndex . '" data-mode="stack"'; // Cell class $class = 'col-' . $cellIndex . ' cell-' . $rowIndex . '-' . $cellIndex; if (!isset ($cell->data['text']['caption']) and !isset ($cell->data['caption'])) $class .= ' empty'; if (isset ($cell->data['class'])) $class .= ' ' . $cell->data['class']; // Cell style if (isset ($cell->data['style'])) { // style $buffer .= ' style="'; foreach ($cell->data['style'] as $selector => $value) { // each selector if (strpos ($value, ':')) $buffer .= $value; else $buffer .= $selector . ':' . $value . '; '; } // each selector $buffer .= '"'; } // style $buffer .= '>'; // Cell link if (isset ($cell->data['url'])) $buffer .= ''; // Cell content if (isset ($cell->data['caption'])) eclTag_text::render ($render, array ($cell->data['caption'], $editable)); elseif (isset ($cell->data['text']['caption'])) eclTag_text::render ($render, array ($cell->data['text']['caption'], $editable)); elseif ($editable) eclTag_text::render ($render, array ('', $editable)); // End Cell link if (isset ($cell->data['url'])) $buffer .= ''; if ($rowIndex < $heading) $buffer .= '' . CRLF; else $buffer .= '' . CRLF; $cellIndex++; } // each cell $buffer .= '' . CRLF; $rowIndex++; } // each row $buffer .= '' . CRLF; } // function render } // class eclTag_rendertable //!eof:engine/eclTag/eclTag_rendertable.php; //!file:engine/eclTag/eclTag_scope.php; class eclTag_scope { // class eclTag_scope static $type = 'scope'; static function render ($render, $arguments) { // function render global $store, $system; if (!isset ($arguments[0]) or !is_string ($arguments[0]) or !strlen ($arguments[0])) return; $class = array_shift ($arguments); if (!preg_match ('/^[a-z][a-z0-9_]*$/', $class)) return false; $class = 'eclScope_' . $class; return $class::get ($render, $arguments); } // function render } // class eclTag_scope //!eof:engine/eclTag/eclTag_scope.php; //!file:engine/eclTag/eclTag_script.php; class eclTag_script { // class eclTag_script static function render ($render) { // function render $render->tagsStack[] = array ('script', true); $render->scissorsIndex++; $render->scissors[$render->scissorsIndex] = array ( 'position' => strlen ($render->buffer), 'label' => 'script', 'once' => false ); } // function render } // class eclTag_script //!eof:engine/eclTag/eclTag_script.php; //!file:engine/eclTag/eclTag_shared.php; class eclTag_shared { // class eclTag_shared static function render ($render, $arguments) { // function render if (!isset ($arguments[0]) or !is_string ($arguments[0]) or !strlen ($arguments[0])) return; $render->buffer .= $render->document->urlFiles ($arguments[0], true, '-shared'); } // function render } // class eclTag_shared //!eof:engine/eclTag/eclTag_shared.php; //!file:engine/eclTag/eclTag_style.php; class eclTag_style { // class eclTag_style static function render ($render) { // function render $render->tagsStack[] = array ('style', true); $render->scissorsIndex++; $render->scissors[$render->scissorsIndex] = array ( 'position' => strlen ($render->buffer), 'label' => 'style', 'once' => false ); } // function render } // class eclTag_style //!eof:engine/eclTag/eclTag_style.php; //!file:engine/eclTag/eclTag_table.php; class eclTag_table { // class eclTag_table static function render ($render, $arguments) { // function render if (isset ($arguments[0])) $name = 'table_' . $arguments[0]; else $name = 'table'; $render->tagsStack[] = array ('table', $name); $render->scissorsIndex++; $render->scissors[$render->scissorsIndex] = array ( 'position' => strlen ($render->buffer), 'name' => $name, ); } // function render } // class eclTag_table //!eof:engine/eclTag/eclTag_table.php; //!file:engine/eclTag/eclTag_tel.php; class eclTag_tel { // class eclTag_tel static function render ($render, $arguments) { // function render if (!isset ($arguments[0]) or !is_string ($arguments[0]) or !strlen ($arguments[0])) return; $args = explode (' ', $arguments[0], 2); if (substr ($args[0], 0, 2) != '//') $args[0] = '//' . $args[0]; $buffer = ''; if (isset ($args[1]) and strlen ($args[1])) $buffer .= $args[1]; else $buffer .= substr ($args[0], 2); $buffer .= "" . CRLF; $render->buffer .= $buffer; } // function render } // class eclTag_tel //!eof:engine/eclTag/eclTag_tel.php; //!file:engine/eclTag/eclTag_text.php; class eclTag_text { // class eclTag_text static function render ($render, $arguments) { // function render global $store; // Vamos encontrar o nome do campo selecionado if (!isset ($arguments[0])) $field = $render->getVar ('caption'); elseif (is_array ($arguments[0])) $field = $arguments[0]; elseif (is_string ($arguments[0]) and !strlen ($arguments[0])) return; elseif (is_string ($arguments[0])) { // from constant @list ($prefix, $sufix) = explode ('_', $arguments[0], 2); $name = 'labels/' . $prefix . '/' . $sufix; $data = array (); if (isset ($render->blocks[$name])) $data = $render->blocks[$name]; if (!isset ($data['text']['caption'])) $data = $store->control->read ($name); if (!isset ($data['text']['caption'])) return; $field = $data['text']['caption']; } // from constant else return; if (is_array ($field)) $text = $render->document->selectLanguage ($field); else $text = array (); if (isset ($arguments[1]) and $arguments[1]) { // editable if (!isset ($text[TEXT_CONTENT])) $text[TEXT_CONTENT] = CRLF; if (!isset ($text[TEXT_FORMAT])) $text[TEXT_FORMAT] = 1; if (!isset ($text[TEXT_ECOLABORE])) $text[TEXT_ECOLABORE] = 1; $text[TEXT_EDITABLE] = 1; } // editable if (!$text) return; $render->render ($text); } // function render } // class eclTag_text //!eof:engine/eclTag/eclTag_text.php; //!file:engine/eclTag/eclTag_text_language_caption.php; class eclTag_text_language_caption { // class eclTag_text_language_caption static function render ($render, $arguments) { // function render global $store; $data = $store->control->read ('labels/lang/' . $render->document->lang); if (!isset ($data['text']['caption'])) return; $field = $data['text']['caption']; $render->render ($render->document->selectLanguage ($field)); } // function render } // class eclTag_text_language_caption //!eof:engine/eclTag/eclTag_text_language_caption.php; //!file:engine/eclTag/eclTag_up.php; class eclTag_up { // class eclTag_up static function render ($render, $arguments) { // function render if (!$arguments) return false; $value = implode (' ', $arguments); $buffer = '' . $value . ''; $render->buffer .= $buffer; } // function render } // class eclTag_up //!eof:engine/eclTag/eclTag_up.php; //!file:engine/eclTag/eclTag_video.php; class eclTag_video { // class eclTag_video static $type = 'module'; static function render ($render, $arguments) { // function render global $store; $document = $render->document; $tagArguments = implode (' ', $arguments); $arguments = explode (' ', $tagArguments); switch (count ($arguments)) { // switch number of arguments case 0: if (!isset ($document->application->data['name'])) return false; $arguments[0] = $document->application->data['name']; $arguments[1] = '0'; break; case 1: if (is_numeric ($arguments[0])) { // number if (!isset ($document->application->data['name'])) return false; $arguments[1] = $arguments[0]; $arguments[0] = $document->application->data['name']; break; } // number $arguments[1] = '0'; } // switch number of arguments // Vamos abrir o mdulo $mod = $document->createModule ('video', $arguments); // Se o mdulo estiver marcado como vazio if (!$mod->enabled) return; $data = $mod->data; $data['local']['tag'] = 'video:' . $tagArguments; $data['mod'] = $data['local']; $data['children'] = $mod->children; return $data; } // function render } // class eclTag_video //!eof:engine/eclTag/eclTag_video.php; //!file:library/admin/constants/eclFilter_admin_constants_flag.php; /* * control_type * control_filter * control_target * control_field_name * control_value_cast int | string | bool */ class eclFilter_admin_constants_flag { // class eclFilter_admin_constants_flag static function create ($fieldName, $control, $formulary) { // function create global $io, $store; // target if (!isset ($control['flags']['target'])) return; $target = $control['flags']['target']; // name $local['name'] = $fieldName; // type if (isset ($control['flags']['type'])) $local['type'] = $control['flags']['type']; else $local['type'] = 'text_small'; // target $value = ''; if (defined ('SYSTEM_INSTALLATION_PROGRESS') and isset ($formulary->data[$target])) $value = $formulary->data[$target]; else { // from constant if ($io->systemConstants->check ($target)) $value = $io->systemConstants->constants[$target]; elseif (defined ($target)) $value = constant ($target); } // from constant if ($formulary->document->charset != 'UTF-8' and is_string ($value)) $value = mb_convert_encoding ($value, $formulary->document->charset, 'UTF-8'); if (is_string ($value)) $value = $formulary->htmlSpecialChars ($value); if (!isset ($control['children'])) { // no children $local['value'] = $value; $formulary->appendChild ($control, $local); return; } // no children $item = $formulary->appendChild ($control, $local); foreach ($control['children'] as $child) { // each child $data = $store->control->read ($child); if (!isset ($data['flags']['value']) or !isset ($data['text']['caption'])) continue; $local = array ( 'value' => $data['flags']['value'], 'caption' => $data['text']['caption'] ); $item->appendChild (false, $local) ->active ($data['flags']['value'] == $value); } // each child } // function create static function save ($fieldName, $control, $formulary) { // function save global $io; // target if (!isset ($control['flags']['target'])) return; $target = $control['flags']['target']; if (isset ($formulary->received[$fieldName])) $value = $formulary->received[$fieldName]; else $value = false; if ($value === false and isset ($control['flags']['required'])) $formulary->setRequiredMsg ($control, $fieldName); if (isset ($control['flags']['value_cast'])) { // cast value switch ($control['flags']['value_cast']) { // switch type case 'int': $value = intval ($value); break; case 'string': $value = strval ($value); if (!preg_match ('/^[\ -~]*$/', $value)) return $formulary->setErrorMsg ($control, $fieldName, 'system_msg_filterFlagError', $value); break; case 'bool': if ($value === 'false' or !$value) $value = false; else $value = true; break; case 'free': $value = $formulary->received[$fieldName]; if ($formulary->document->charset != 'UTF-8') $value = mb_convert_encoding ($value, 'UTF-8', $formulary->document->charset); } // switch type } // cast value // target if (defined ('SYSTEM_INSTALLATION_PROGRESS')) $formulary->data[$target] = $value; else $io->systemConstants->set ($target, $value); } // function save } // class eclFilter_admin_constants_flag //!eof:library/admin/constants/eclFilter_admin_constants_flag.php; //!file:library/admin/constants/eclFilter_admin_constants_folder.php; /* * control_type * control_filter * control_target * control_field_name */ class eclFilter_admin_constants_folder { // class eclFilter_admin_constants_folder static function create ($fieldName, $control, $formulary) { // function create global $io; // target if (!isset ($control['flags']['target'])) return; $target = $control['flags']['target']; // name $local['name'] = $fieldName; // type if (isset ($control['flags']['type'])) $local['type'] = $control['flags']['type']; else $local['type'] = 'text_small'; // get value $value = ''; if (defined ('SYSTEM_INSTALLATION_PROGRESS')) $value = $formulary->getField ($target); if ($value === false) $value = ''; if ($value == '') { // get value from constant if ($io->systemConstants->check ($target)) $value = $io->systemConstants->constants[$target]; elseif (defined ($target)) $value = constant ($target); } // from constant $local['value'] = $value; $formulary->appendChild ($control, $local); } // function create static function save ($fieldName, $control, $formulary) { // function save global $io; // target if (!isset ($control['flags']['target'])) return; $target = $control['flags']['target']; if (defined ('SYSTEM_INSTALLATION_PROGRESS')) $old = $formulary->getField ($target); else { // from constant // Old value if ($io->systemConstants->check ($target)) $old = $io->systemConstants->constants[$target]; elseif (defined ($target)) $old = constant ($target); } // from constant if (!isset ($formulary->received[$fieldName])) return $formulary->setErrorMsg ($control, $fieldName, 'admin_constants_filterFolderError'); $value = $formulary->received[$fieldName]; if (substr ($value, - 1) != '/') $value .= '/'; if (defined ('SYSTEM_INSTALLATION_PROGRESS')) { // installation in progress if ($value === $old) return; } // installation in progress else { // normal if ($value == $old and is_dir (PATH_ROOT . $old)) return; } // normal if (!preg_match ('%^[.]?[a-zA-Z0-9_-]+\/?$%', $value)) return $formulary->setErrorMsg ($control, $fieldName, 'admin_constants_filterFolderError', $value); // check for name conflict $folders = array ('FOLDER_DATABASE', 'FOLDER_DOMAINS', 'FOLDER_ENGINE', 'FOLDER_LIBRARY', 'FOLDER_PROFILES', 'FOLDER_SHARED'); foreach ($folders as $folder) { // check folder if ($folder == $target) continue; if (defined ('SYSTEM_INSTALLATION_PROGRESS')) { // installation in progress if (!isset ($formulary->data[$folder])) continue; if ($formulary->data[$folder] != $value) continue; return $formulary->setErrorMsg ($control, $fieldName, 'admin_constants_filterFolderExists', $value); } // installation in progress if (!$io->systemConstants->check ($folder) and constant ($folder) != $value) continue; if ($io->systemConstants->check ($folder) and $io->systemConstants->constants[$folder] != $value) continue; return $formulary->setErrorMsg ($control, $fieldName, 'admin_constants_filterFolderExists', $value); } // check folder if (defined ('SYSTEM_INSTALLATION_PROGRESS')) return $formulary->setField ($target, $value); if (is_dir (PATH_ROOT . $value)) return $formulary->setErrorMsg ($control, $fieldName, 'admin_constants_filterFolderExists', $value); if (is_dir (PATH_ROOT . $old)) rename (PATH_ROOT . $old, PATH_ROOT . $value); elseif (!is_dir (PATH_ROOT . $value)) mkdir (PATH_ROOT . $value); $io->systemConstants->set ($target, $value); } // function save } // class eclFilter_admin_constants_folder //!eof:library/admin/constants/eclFilter_admin_constants_folder.php; //!file:library/admin/constants/eclFilter_admin_constants_password.php; /* * control_type * control_filter * control_target * control_field_name */ class eclFilter_admin_constants_password { // class eclFilter_admin_constants_password static function create ($fieldName, $control, $formulary) { // function create global $io, $store; // target if (!isset ($control['flags']['target'])) return; // name $local['name'] = $fieldName; // type if (isset ($control['flags']['type'])) $local['type'] = $control['flags']['type']; else $local['type'] = 'text_small'; $formulary->appendChild ($control, $local); $control = $store->control->read ('labels/field/password2'); $local['name'] = $fieldName . '_2'; $formulary->appendChild ($control, $local); } // function create static function save ($fieldName, $control, $formulary) { // function save global $io; // target if (!isset ($control['flags']['target'])) return; $target = $control['flags']['target']; if (isset ($formulary->received[$fieldName])) $value = $formulary->received[$fieldName]; else $value = false; if ($value == '') $value = false; if (defined ('SYSTEM_INSTALLATION_PROGRESS') and $value === false and isset ($formulary->data[$target])) return; if ($value === false and isset ($control['flags']['required'])) return $formulary->setRequiredMsg ($control, $fieldName, 'system_msg_filterPasswordRequired'); if (!preg_match ('/^[\ -~]+$/', $value)) return $formulary->setErrorMsg ($control, $fieldName, 'system_msg_filterPasswordInvalidCharacter'); if (!isset ($formulary->received[$fieldName . '_2'])) return $formulary->setErrorMsg ($control, $fieldName, 'system_msg_filterPasswordRepeatError'); if ($formulary->received[$fieldName . '_2'] != $value) return $formulary->setErrorMsg ($control, $fieldName, 'system_msg_filterPasswordRepeatError'); // target if (defined ('SYSTEM_INSTALLATION_PROGRESS')) $formulary->data[$target] = md5 ($value); else $io->systemConstants->set ($target, md5 ($value)); } // function save } // class eclFilter_admin_constants_password //!eof:library/admin/constants/eclFilter_admin_constants_password.php; //!file:library/admin/constants/eclFilter_admin_constants_select.php; class eclFilter_admin_constants_select { // class eclFilter_admin_constants_select static function create ($fieldName, $control, $formulary) { // function create global $io, $store; if (!isset ($control['flags']['target'])) return; $target = $control['flags']['target']; $item = $formulary->appendChild ($control); // name $item->data['name'] = $fieldName; // type if (isset ($control['flags']['type'])) $item->data['type'] = $control['flags']['type']; else $item->data['type'] = 'select'; // target if ($io->systemConstants->check ($target)) $value = $io->systemConstants->constants[$target]; elseif (defined ($target)) $value = constant ($target); else $value = false; if (isset ($control['children'])) { // children exists foreach ($control['children'] as $child_name) { // each child $data = $store->control->read ($child_name); $child = $item->appendChild ($data); if (isset ($data['flags']['value'])) { // value exists $child->data['value'] = $data['flags']['value']; $child->active ($data['flags']['value'] == $value); } // value exists } // each child } // children exists } // function create static function save ($fieldName, $control, $formulary) { // function save global $io, $store; if (isset ($formulary->received[$fieldName])) $value = $formulary->received[$fieldName]; else $value = false; $found = false; if (isset ($control['children'])) { // children exists foreach ($control['children'] as $child_name) { // each child $child = $store->control->read ($child_name); if (isset ($child['flags']['value']) and $child['flags']['value'] == $value) { // value found $found = $value; break; } // value found } // each child } // children exists $value = $found; // required if ($value === false and isset ($control['flags']['required'])) return $formulary->setRequiredMsg ($control, $fieldName); // control_default_value elseif ($value === false and isset ($control['flags']['default_value'])) $value = $control['flags']['default_value']; // value cast if (isset ($control['flags']['value_cast'])) { // cast value switch ($control['flags']['value_cast']) { // switch type case 'int': $value = intval ($value); break; case 'string': $value = strval ($value); break; case 'bool': if ($value === 'false' or !$value) $value = false; else $value = true; } // switch type } // cast value // target if (isset ($control['flags']['target'])) $io->systemConstants->set ($control['flags']['target'], $value); } // function save } // class eclFilter_admin_constants_select //!eof:library/admin/constants/eclFilter_admin_constants_select.php; //!file:library/admin/constants/eclFilter_admin_constants_selectCurrency.php; class eclFilter_admin_constants_selectCurrency { // class eclFilter_admin_constants_selectCurrency static function create ($fieldName, $control, $formulary) { // function create global $dataMap, $io, $store; $document = $formulary->document; if (!isset ($control['flags']['target'])) return; $item = $formulary->appendChild ($control); // name $item->data['name'] = $fieldName; // type if (isset ($control['flags']['type'])) $item->data['type'] = $control['flags']['type']; else $item->data['type'] = 'select'; if ($io->systemConstants->check ($control['flags']['target'])) $value = $io->systemConstants->constants[$control['flags']['target']]; elseif (defined ($control['flags']['target'])) $value = constant ($control['flags']['target']); else $value = false; $names = array (); if (isset ($dataMap['t']['labels/currency'])) { // from embeded $names = array_keys ($dataMap['t']['labels/currency']); } // from embeded elseif (is_dir (PATH_TEMPLATES . 'labels/currency')) { // from folder foreach (scandir (PATH_TEMPLATES . 'labels/currency') as $filename) { // each file if ($filename[0] == '.') continue; $names[] = substr ($filename, 0, 3); } // each file } // from folder foreach ($names as $currency) { // each currency $data = $store->control->read ('labels/currency/' . $currency); $symbol = $currency . ' '; if (isset ($data['local']['symbol'])) $symbol .= '(' . $data['local']['symbol'] . ') '; $local = array ('value' => $currency); if (isset ($data['text'])) $local['caption'] = $document->textMerge ($symbol, $data['text']['caption']); else $local['caption'] = $document->textMerge ($symbol, $data['text']['caption']); if ($value == $currency) $local['active'] = 1; $item->appendChild ($local); } // each lang } // function create static function save ($fieldName, $control, $formulary) { // function save global $io, $store; if (!isset ($formulary->received[$fieldName])) return; $value = $formulary->received[$fieldName]; // target if (isset ($control['flags']['target'])) $io->systemConstants->set ($control['flags']['target'], $value); } // function save } // class eclFilter_admin_constants_selectCurrency //!eof:library/admin/constants/eclFilter_admin_constants_selectCurrency.php; //!file:library/admin/constants/eclFilter_admin_constants_selectLang.php; class eclFilter_admin_constants_selectLang { // class eclFilter_admin_constants_selectLang static function create ($fieldName, $control, $formulary) { // function create global $dataMap, $io, $store; $document = $formulary->document; if (!isset ($control['flags']['target'])) return; $item = $formulary->appendChild ($control); // name $item->data['name'] = $fieldName; // type if (isset ($control['flags']['type'])) $item->data['type'] = $control['flags']['type']; else $item->data['type'] = 'select'; if ($io->systemConstants->check ($control['flags']['target'])) $value = $io->systemConstants->constants[$control['flags']['target']]; elseif (defined ($control['flags']['target'])) $value = constant ($control['flags']['target']); else $value = false; $names = array (); if (isset ($dataMap['t']['labels/lang'])) { // from embeded $names = array_keys ($dataMap['t']['labels/lang']); } // from embeded elseif (is_dir (PATH_TEMPLATES . 'labels/lang')) { // from folder foreach (scandir (PATH_TEMPLATES . 'labels/lang') as $filename) { // each file if ($filename[0] == '.') continue; $names[] = substr ($filename, 0, 2); } // each file } // from folder foreach ($names as $lang) { // each lang $data = $store->control->read ('labels/lang/' . $lang); $item->appendChild ($data, array ('value' => $lang)) ->active ($lang == $value); } // each lang } // function create static function save ($fieldName, $control, $formulary) { // function save global $io, $store; if (!isset ($formulary->received[$fieldName])) return; $value = $formulary->received[$fieldName]; // target if (isset ($control['flags']['target'])) $io->systemConstants->set ($control['flags']['target'], $value); } // function save } // class eclFilter_admin_constants_selectLang //!eof:library/admin/constants/eclFilter_admin_constants_selectLang.php; //!file:library/admin/constants/eclFilter_admin_constants_selectOptions.php; class eclFilter_admin_constants_selectOptions { // class eclFilter_admin_constants_selectOptions static function create ($fieldName, $control, $formulary) { // function create global $dataMap, $io, $store; $document = $formulary->document; if (!isset ($control['flags']['target'])) return; $target = $control['flags']['target']; $item = $formulary->appendChild ($control); // name $item->data['name'] = $fieldName; // type if (isset ($control['flags']['type'])) $item->data['type'] = $control['flags']['type']; else $item->data['type'] = 'select'; if ($io->systemConstants->check ($target)) $value = $io->systemConstants->constants[$target]; elseif (defined ($target)) $value = constant ($target); else $value = false; if (!isset ($control['options'])) return; foreach ($control['options'] as $option) { // each option $item->appendChild (false, array ('value' => $option, 'caption' => $document->textMerge ($option))) ->active ($option == $value); } // each option } // function create static function save ($fieldName, $control, $formulary) { // function save global $io, $store; if (!isset ($control['flags']['target'])) return; $target = $control['flags']['target']; if (!isset ($formulary->received[$fieldName])) return; $value = $formulary->received[$fieldName]; $io->systemConstants->set ($target, $value); } // function save } // class eclFilter_admin_constants_selectOptions //!eof:library/admin/constants/eclFilter_admin_constants_selectOptions.php; //!file:library/admin/eclApp_admin.php; class eclApp_admin { // class eclApp_admin const menuType = 'domain'; static function is_child ($parent, $name) { // function is_child if ($name == SYSTEM_ADMIN_URI or $name == '-' . SYSTEM_ADMIN_URI) return true; return false; } // function is_child static function get_children_names () { // function get_children_names return array (SYSTEM_ADMIN_URI); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('admin_content'); $me->getMap (); $me->isDomain = true; } // function constructor_helper } // class eclApp_admin //!eof:library/admin/eclApp_admin.php; //!file:library/admin/eclFilter_admin_ok.php; class eclFilter_admin_ok { // class eclFilter_admin_ok static function create ($fieldName, $control, $formulary) { // function create $local['name'] = $fieldName; // type if (isset ($control['flags']['type'])) $local['type'] = $control['flags']['type']; else $local['type'] = 'text_tiny'; $formulary->appendChild ($control, $local); } // function create static function save ($fieldName, $control, $formulary) { // function save if (!isset ($formulary->received[$fieldName]) or !preg_match ('/^["]?[oO][kK]["]?$/', $formulary->received[$fieldName])) $formulary->setErrorMsg ($control, $fieldName, 'system_msg_filterConfirmWithOkError'); } // function save } // class eclFilter_admin_ok //!eof:library/admin/eclFilter_admin_ok.php; //!file:library/admin/eclMod_admin_list.php; class eclMod_admin_list { // class eclMod_admin_list public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $me = $document->application; $mod->data = $store->control->read ('modules/list'); $row = $mod->appendChild (); foreach ($me->menuChildren ($document) as $child) { // each child $row->appendChild ($child) ->swapTitle () ->url ($child->pathway) ->virtual ($child->access); } // each child if ($row->children) $mod->enabled = true; } // function setModule } // class eclMod_admin_list //!eof:library/admin/eclMod_admin_list.php; //!file:library/adminAlerts/eclApp_adminAlerts.php; class eclApp_adminAlerts { // class eclApp_adminAlerts const name = 'alerts'; const menuType = 'section'; const dataFrom = 'adminAlerts_main'; const access = 4; static function constructor_helper ($me) { // function constructor_helper $me->getMap (); } // function constructor_helper static function dispatch ($document) { // function dispatch global $store; $me = $document->application; if (!count ($me->children ())) $document->dataMerge ('adminAlerts_mainEmpty'); else $document->mod->list = new eclMod_admin_list ($document); } // function dispatch } // class eclApp_adminAlerts //!eof:library/adminAlerts/eclApp_adminAlerts.php; //!file:library/adminAlerts/log/eclApp_adminAlerts_log.php; class eclApp_adminAlerts_log { // class eclApp_adminAlerts_log static function is_child ($me, $name) { // function is_child if (substr ($name, 0, 4) == 'log_') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'section'; } // function get_menu_type static function get_children_names () { // function get_children_names $names = array (); if (is_file (PATH_DATABASE . 'log/.ht_error')) $names[] = 'log_error'; if (is_file (PATH_DATABASE . '.database.log')) $names[] = 'log_database'; if (is_file (PATH_ROOT . '.error_log')) $names[] = 'log_php'; if (!defined ('DATABASE_ENABLED') or !DATABASE_ENABLED) $names[] = 'log_databasedisabled'; return $names; } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('adminAlerts_' . $me->name); switch ($me->name) { // switch name case 'log_php': $me->pathway = array (SYSTEM_ADMIN_URI, 'system', 'log'); break; case 'log_database': $me->pathway = array (SYSTEM_ADMIN_URI, 'database', 'log'); break; case 'log_databasedisabled': $me->pathway = array (SYSTEM_ADMIN_URI, 'database', 'config'); break; } // switch name } // function constructor_helper static function dispatch ($document) { // function dispatch global $system; $me = $document->application; switch ($me->name) { // switch name case 'log_php': $document->application = $system->child (SYSTEM_ADMIN_URI)->child ('system')->child ('log'); $document->application->dispatch ($document); break; case 'log_database': $document->application = $system->child (SYSTEM_ADMIN_URI)->child ('database')->child ('log'); $document->application->dispatch ($document); break; case 'log_databasedisabled': $document->application = $system->child (SYSTEM_ADMIN_URI)->child ('database')->child ('config'); $document->application->dispatch ($document); break; case 'log_error': default: } // switch name } // function dispatch } // class eclApp_adminAlerts_log //!eof:library/adminAlerts/log/eclApp_adminAlerts_log.php; //!file:library/adminAlerts/update/eclApp_adminAlerts_update.php; class eclApp_adminAlerts_update { // class eclApp_adminAlerts_update static function is_child ($me, $name) { // function is_child if ($name == 'update') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'section'; } // function get_menu_type static function get_children_names () { // function get_children_names global $io; if (defined ('SYSTEM_ENGINE_UPDATE_CHECK')) { // last check defined $value = $io->webservice->json2array (SYSTEM_ENGINE_UPDATE_CHECK); if (isset ($value['request_date'])) { // request exists list ($y, $m, $d) = explode ('-', $value['request_date']); $requestDate = mktime (0, 0, 30, $m, $d, $y); if ($requestDate + 1296000 > TIME) { // do not check again if (isset ($value['release']) and $value['release'] == SYSTEM_RELEASE) return array (); // compare dates list ($y, $m, $d) = explode ('-', SYSTEM_RELEASE); $currentRelease = mktime (0, 0, 30, $m, $d, $y); list ($y, $m, $d) = explode ('-', $value['release']); $nextRelease = mktime (0, 0, 30, $m, $d, $y); if ($currentRelease > $nextRelease) return array (); return array ('update'); } // do not check again } // request exists } // last check defined $data = $io->webservice->request (SYSTEM_ENGINE_UPDATE_URL); if (isset ($data['EcolaboreEngine'])) { // update found $data = $data['EcolaboreEngine']; $data['request_date'] = date ('Y-m-d', TIME); $io->systemConstants->set ('SYSTEM_ENGINE_UPDATE_CHECK', $io->webservice->array2json ($data)); if (isset ($data['release']) and $data['release'] == SYSTEM_RELEASE) return array (); // compare dates list ($y, $m, $d) = explode ('-', SYSTEM_RELEASE); $currentRelease = mktime (0, 0, 30, $m, $d, $y); list ($y, $m, $d) = explode ('-', $data['release']); $nextRelease = mktime (0, 0, 30, $m, $d, $y); if ($currentRelease > $nextRelease) return array (); return array ('update'); } // update found // A problem occurred return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('adminAlerts_update_newReleaseAvailable'); $me->pathway = array (SYSTEM_ADMIN_URI, 'system', 'update'); } // function constructor_helper static function dispatch ($document) { // function dispatch global $system; $me = $document->application; $document->application = $system->child (SYSTEM_ADMIN_URI)->child ('system')->child ('update'); $document->application->dispatch ($document); } // function dispatch } // class eclApp_adminAlerts_update //!eof:library/adminAlerts/update/eclApp_adminAlerts_update.php; //!file:library/adminComponents/config/eclApp_adminComponents_config.php; class eclApp_adminComponents_config { // class eclApp_adminComponents_config const name = 'config'; const menuType = 'section'; const dataFrom = 'adminComponents_config_content'; static function dispatch ($document) { // function dispatch } // function dispatch } // class eclApp_adminComponents_config //!eof:library/adminComponents/config/eclApp_adminComponents_config.php; //!file:library/adminComponents/eclApp_adminComponents.php; class eclApp_adminComponents { // class eclApp_adminComponents const name = 'components'; const menuType = 'section'; const dataFrom = 'adminComponents_content'; const access = 4; static function constructor_helper ($me) { // function constructor_helper $me->map = array ('adminComponents_config'); } // function constructor_helper static function dispatch ($document) { // function dispatch if (!is_dir (PATH_COMPONENTS)) { // create folder $formulary = $document->createFormulary ('adminComponents_folder', array (), 'createFolder'); if (!$formulary->command ('create') or !$formulary->save ()) { // view form $document->mod->formulary = $formulary; return; } // view form } // create folder $formulary = $document->createFormulary ('adminComponents_edit'); $formulary->command ('save') and $formulary->save (); $document->mod->formulary = $formulary; } // function dispatch } // class eclApp_adminComponents //!eof:library/adminComponents/eclApp_adminComponents.php; //!file:library/adminComponents/eclFilter_adminComponents_selectVersion.php; class eclFilter_adminComponents_selectVersion { // class eclFilter_adminComponents_selectVersion static function create ($fieldName, $control, $formulary) { // function create global $io; $components = $io->systemConstants->components; $document = $formulary->document; foreach (scandir (PATH_COMPONENTS) as $component) { // each folder if ($component[0] == '.') continue; if (!is_dir (PATH_COMPONENTS . $component)) continue; $local = array (); $local['text']['caption'] = $document->textMerge ($component); $local['name'] = $fieldName . '_' . $component; $local['type'] = 'select'; $select = $formulary->appendChild ($local); $select->appendChild ('adminComponents_editComponentDisabled') ->active (!isset ($components[$component]) or !is_dir (PATH_COMPONENTS . $component . '/' . $components[$component])); foreach (scandir (PATH_COMPONENTS . $component) as $version) { // each version if ($version[0] == '.') continue; if (!is_dir (PATH_COMPONENTS . $component . '/' . $version)) continue; $data['value'] = $version; $data['caption'] = $document->textMerge ($version); $select->appendChild ($data) ->active (isset ($components[$component]) and $version == $components[$component]); } // each version } // each folder } // function create static function save ($fieldName, $control, $formulary) { // function save global $io; $received = $formulary->received; $components = array (); $aliases = array (); $map = array (); foreach (scandir (PATH_COMPONENTS) as $component) { // each component if ($component[0] == '.') continue; if (!is_dir (PATH_COMPONENTS . $component)) continue; if (!isset ($received[$fieldName . '_' . $component][0])) continue; if (!is_dir (PATH_COMPONENTS . $component . '/' . $received[$fieldName . '_' . $component])) continue; $components[$component] = $received[$fieldName . '_' . $component]; foreach (scandir (PATH_COMPONENTS . $component . '/' . $components[$component]) as $folder) { // aliase each folder if ($folder[0] == '.') continue; if ($folder == 'shared' or $folder == 'templates') continue; if (!is_dir (PATH_COMPONENTS . $component . '/' . $components[$component] . '/' . $folder)) continue; $aliases[$folder] = $component; } // aliase each folder if (!is_file (PATH_COMPONENTS . $component . '/' . $components[$component] . '/about.ecl.php')) continue; $data = $io->file->open (PATH_COMPONENTS . $component . '/' . $components[$component] . '/about.ecl.php'); if (!isset ($data['map'])) continue; foreach ($data['map'] as $module => $list) { // map each module foreach ($list as $item) { // map each item if (!isset ($map[$module])) $map[$module] = array (); $map[$module][] = $item; } // map each item } // map each module } // each component ksort ($components); ksort ($map); ksort ($aliases); $io->systemConstants->components = $components; $io->systemConstants->aliases = $aliases; $io->systemConstants->map = $map; } // function save } // class eclFilter_adminComponents_selectVersion //!eof:library/adminComponents/eclFilter_adminComponents_selectVersion.php; //!file:library/adminDatabase/config/eclApp_adminDatabase_config.php; class eclApp_adminDatabase_config { // class eclApp_adminDatabase_config const name = 'config'; const menuType = 'section'; const dataFrom = 'adminDatabase_config_content'; static function dispatch ($document) { // function dispatch global $io, $store; $formulary = $document->createFormulary ('adminDatabase_config_edit'); if ($formulary->save ()) { // save if ($io->systemConstants->check ('DATABASE_ENABLED') and $io->systemConstants->constants['DATABASE_ENABLED']) { // check database connection $store->close (); $io->close (); $io->database->reconnect (); if ($io->database->status) $document->mod->humperstilshen->alert ('admin_constants_databaseEnabledSuccess'); else $document->mod->humperstilshen->alert ('admin_constants_databaseEnabledFailed'); } // check database connection else $document->mod->humperstilshen->alert ('admin_constants_databaseEnabledDisabled'); } // save $document->mod->formulary = $formulary; } // function dispatch } // class eclApp_adminDatabase_config //!eof:library/adminDatabase/config/eclApp_adminDatabase_config.php; //!file:library/adminDatabase/eclApp_adminDatabase.php; class eclApp_adminDatabase { // class eclApp_adminDatabase const name = 'database'; const menuType = 'section'; const dataFrom = 'adminDatabase_content'; const access = 4; const map = 'adminDatabase_config adminDatabase_encrypt adminDatabase_query adminDatabase_log'; static function dispatch ($document) { // function dispatch if (!is_dir (PATH_DATABASE)) { // create folder $formulary = $document->createFormulary ('adminDatabase_edit', array (), 'createFolder'); if (!$formulary->command ('create') or !$formulary->save ()) { // view form $document->mod->formulary = $formulary; return; } // view form } // create folder $document->mod->list = 'admin_list'; } // function dispatch } // class eclApp_adminDatabase //!eof:library/adminDatabase/eclApp_adminDatabase.php; //!file:library/adminDatabase/encrypt/eclApp_adminDatabase_encrypt.php; class eclApp_adminDatabase_encrypt { // class eclApp_adminDatabase_encrypt const name = 'encrypt'; const menuType = 'section'; const dataFrom = 'adminDatabase_encrypt_content'; static function dispatch ($document) { // function dispatch if ($document->actions ('key', 'generate')) return self::action_key_generate ($document); if ($document->actions ('key', 'import')) return self::action_key_import ($document); if (!defined ('SYSTEM_ENCRYPT_TYPE')) return self::action_create_key ($document); } // function dispatch static function action_create_key ($document) { // function action_create_key $formulary = $document->createFormulary ('adminDatabase_encrypt_key', array (), 'step1'); if ($formulary->command ('next') and $formulary->save ()) { // go next if ($formulary->data['mode'] == 'generate') return self::action_key_generate ($document); return self::action_key_import ($document); } // go next $document->mod->formulary = $formulary; $document->dataMerge ('adminDatabase_encrypt_contentKey'); } // function action_create_key static function action_key_generate ($document) { // function action_key_generate $formulary = $document->createFormulary ('adminDatabase_encrypt_generate', array (), 'generate'); if ($formulary->command ('previous')) return self::action_create_key ($document); if ($formulary->command ('next') and $formulary->save ()) { // generate key } // generate key $formulary->action = '_key-generate'; $document->mod->formulary = $formulary; $document->dataMerge ('adminDatabase_encrypt_contentGenerate'); } // function action_key_generate static function action_key_import ($document) { // function action_key_import $formulary = $document->createFormulary ('adminDatabase_encrypt_import', array (), 'import'); if ($formulary->command ('previous')) return self::action_create_key ($document); if ($formulary->command ('next') and $formulary->save ()) { // import key } // import key $formulary->action = '_key-import'; $document->mod->formulary = $formulary; $document->dataMerge ('adminDatabase_encrypt_contentImport'); } // function action_key_import } // class eclApp_adminDatabase_encrypt //!eof:library/adminDatabase/encrypt/eclApp_adminDatabase_encrypt.php; //!file:library/adminDatabase/encrypt/eclFilter_adminDatabase_encrypt_algorithms.php; class eclFilter_adminDatabase_encrypt_algorithms { // class eclFilter_adminDatabase_encrypt_algorithms static function create ($fieldName, $control, $formulary) { // function create $document = $formulary->document; $item = $formulary->appendChild ($control); // name $item->data['name'] = $fieldName; // type if (isset ($control['flags']['type'])) $item->data['type'] = $control['flags']['type']; else $item->data['type'] = 'select'; if (defined ('SYSTEM_ENCRYPT_ALGORITHM')) $value = SYSTEM_ENCRYPT_ALGORITHM; else $value = 'blowfish'; foreach (mcrypt_list_algorithms () as $algorithm) { // each algorithm $item->appendChild (array ( 'value' => $algorithm, 'caption' => $document->textMerge ($algorithm), 'active' => $algorithm == $value, )); } // each algorithm } // function create static function save ($fieldName, $control, $formulary) { // function save } // function save } // class eclFilter_adminDatabase_encrypt_algorithms //!eof:library/adminDatabase/encrypt/eclFilter_adminDatabase_encrypt_algorithms.php; //!file:library/adminDatabase/log/eclApp_adminDatabase_log.php; class eclApp_adminDatabase_log { // class eclApp_adminDatabase_log const name = 'log'; const menuType = 'section'; const dataFrom = 'adminDatabase_log_content'; static function dispatch ($document) { // function dispatch $formulary = $document->createFormulary ('adminDatabase_log_edit'); if ($formulary->command ('save') and $formulary->save ()) $document->mod->humperstilshen->alert ('system_msg_alertDataUpdated'); $document->mod->formulary = $formulary; } // function dispatch } // class eclApp_adminDatabase_log //!eof:library/adminDatabase/log/eclApp_adminDatabase_log.php; //!file:library/adminDatabase/log/eclFilter_adminDatabase_log.php; class eclFilter_adminDatabase_log { // class eclFilter_adminDatabase_log static function create ($fieldName, $control, $formulary) { // function create global $io; $item = $formulary->appendChild ($control); // name $item->data['name'] = $fieldName; // type if (isset ($control['flags']['type'])) $item->data['type'] = $control['flags']['type']; else $item->data['type'] = 'textarea'; $string = &$io->fileBinary->open (PATH_DATABASE . '.database.log'); if ($formulary->command ('clear_log')) $string = ''; $log = $io->fileBinary->open (PATH_DATABASE . '.database.log'); $item->data['value'] = $formulary->htmlSpecialChars ($log); } // function create static function save ($fieldName, $control, $formulary) { // function save } // function save } // class eclFilter_adminDatabase_log //!eof:library/adminDatabase/log/eclFilter_adminDatabase_log.php; //!file:library/adminDatabase/query/eclApp_adminDatabase_query.php; class eclApp_adminDatabase_query { // class eclApp_adminDatabase_query const name = 'query'; const menuType = 'section'; const dataFrom = 'adminDatabase_query_content'; static function dispatch ($document) { // function dispatch $document->mod->formulary = $document->createFormulary ('adminDatabase_query_edit'); } // function dispatch } // class eclApp_adminDatabase_query //!eof:library/adminDatabase/query/eclApp_adminDatabase_query.php; //!file:library/adminDatabase/query/eclFilter_adminDatabase_query_command.php; class eclFilter_adminDatabase_query_command { // class eclFilter_adminDatabase_query_command static function create ($fieldName, $control, $formulary) { // function create global $io; $item = $formulary->document->createListItem ($control); // name $item->data['name'] = $fieldName; // type if (!isset ($item->data['type'])) $item->data['type'] = 'textarea'; if (isset ($formulary->received[$fieldName . '_input']) and $io->database->status) { // perform a query $buffer = ''; $io->database->verbose = false; $result = $io->database->query ($formulary->received[$fieldName . '_input']); $header = true; $headers = array (); foreach ($result as $line) { // each line $values = array (); if ($header) { // creates a header $header = false; foreach ($line as $fieldName => $value) { // each field if (is_int ($fieldName)) continue; $headers[] = $fieldName; $values[] = $value; } // each field $buffer = implode ("\t", $headers) . CRLF; $buffer .= implode ("\t", $values) . CRLF; } // creates a header else { // header ready foreach ($line as $fieldName => $value) { // each field if (is_int ($fieldName)) continue; $values[] = $value; } // each field $buffer .= implode ("\t", $values) . CRLF; } // header ready } // each line if ($io->database->error ()) $buffer .= $formulary->received[$fieldName . '_input'] . CRLF . $io->database->error () . CRLF; if ($io->database->insertId ()) $buffer .= 'Insert id = ' . $io->database->insertId () . CRLF; if ($io->database->affectedRows ()) $buffer .= 'Rows = ' . $io->database->affectedRows () . CRLF; if (count ($result)) $buffer .= count ($result) . " rows in set" . CRLF; $item->data['value'] = $formulary->htmlSpecialChars ($buffer); $io->database->verbose = true; } // perform a query return $item; } // function create static function save ($fieldName, $control, $formulary) { // function save } // function save } // class eclFilter_adminDatabase_query_command //!eof:library/adminDatabase/query/eclFilter_adminDatabase_query_command.php; //!file:library/adminDefault/eclApp_adminDefault.php; class eclApp_adminDefault { // class eclApp_adminDefault const name = '-default'; const dataFrom = 'adminDefault_content'; const ignoreSubfolders = true; } // class eclApp_adminDefault //!eof:library/adminDefault/eclApp_adminDefault.php; //!file:library/adminDomains/add/eclApp_adminDomains_add.php; class eclApp_adminDomains_add { // class eclApp_adminDomains_add const name = '-new-domain'; const menuType = 'section'; const dataFrom = 'adminDomains_add_content'; const access = 4; static function dispatch ($document) { // function dispatch global $io, $store; $formulary = $document->createFormulary ('adminDomains_add_edit', array (), 'domainAdd'); if ($formulary->command ('save') and $formulary->save ()) { // formulary saved $domain['name'] = $formulary->data['name']; $domain['status'] = 1; mkdir (PATH_DOMAINS . $domain['name']); $domainId = $store->domain->insert ($domain); $data = $formulary->data; $data['mode'] = MODE_DOMAIN; $data['parent_id'] = 0; $data['name'] = '-register'; $data['text']['caption'] = $data['text']['title']; $store->domainContent->insert ($domainId, $data); $group = &$store->domainGroup->open ($domainId, 1); $group[$data['admin_id']] = 4; $document->received = array (); unset ($document->actions['domain']); $parent = $document->application->parent; $parent->reset (); $document->application = $parent->child ($formulary->data['name']); $document->application->dispatch ($document); $document->reload = $document->url (); return; } // formulary saved $document->mod->formulary = $formulary; if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); } // function dispatch } // class eclApp_adminDomains_add //!eof:library/adminDomains/add/eclApp_adminDomains_add.php; //!file:library/adminDomains/add/eclFilter_adminDomains_add_admin.php; class eclFilter_adminDomains_add_admin { // class eclFilter_adminDomains_add_admin static function create ($fieldName, $control, $formulary) { // function create $item = $formulary->document->createListItem ($control); // name $item->data['name'] = $fieldName; // type if (isset ($control['flags']['type'])) $item->data['type'] = $control['flags']['type']; else $item->data['type'] = 'text'; return $item; } // function create static function save ($fieldName, $control, $formulary) { // function save global $store; if (!isset ($formulary->received[$fieldName]) or !preg_match ('/^[a-z0-9_-]+$/', $formulary->received[$fieldName])) return $formulary->setRequiredMsg ($control, $fieldName, 'adminDomains_add_editAdminRequired'); $userId = $store->user->getId ($formulary->received[$fieldName]); // required if (!$userId) return $formulary->setRequiredMsg ($control, $fieldName, 'adminDomains_add_editAdminRequired'); $formulary->data['admin_id'] = $userId; } // function save } // class eclFilter_adminDomains_add_admin //!eof:library/adminDomains/add/eclFilter_adminDomains_add_admin.php; //!file:library/adminDomains/add/eclFilter_adminDomains_add_name.php; /* * Control flags * control_type * control_target * control_field_name * control_required */ class eclFilter_adminDomains_add_name { // class eclFilter_adminDomains_add_name static function create ($fieldName, $control, $formulary) { // function create $item = $formulary->document->createListItem ($control); // name $item->data['name'] = $fieldName; // type if (isset ($control['flags']['type'])) $item->data['type'] = $control['flags']['type']; else $item->data['type'] = 'text'; // target if (isset ($control['flags']['target'])) $item->data['value'] = $formulary->getField ($control['flags']['target']); return $item; } // function create static function save ($fieldName, $control, $formulary) { // function save if (!isset ($formulary->received[$fieldName])) return $formulary->setErrorMsg ($control, $fieldName, 'adminDomains_add_editNameInvalidChars'); $value = trim ($formulary->received[$fieldName], ' -_'); if (!strlen ($value)) return $formulary->setErrorMsg ($control, $fieldName, 'adminDomains_add_editNameInvalidChars'); if (strlen ($value) > 18) $formulary->setErrorMsg ($control, $fieldName, 'adminDomains_add_editNameSoLong'); elseif (!preg_match ('/^[a-z0-9][a-z0-9_-]+$/', $value)) $formulary->setErrorMsg ($control, $fieldName, 'adminDomains_add_editNameInvalidChars'); elseif (is_dir (PATH_DOMAINS . $value)) $formulary->setErrorMsg ($control, $fieldName, 'adminDomains_add_editNameAlreadyExists'); if (isset ($control['flags']['target'])) $formulary->setField ($control['flags']['target'], $value); } // function save } // class eclFilter_adminDomains_add_name //!eof:library/adminDomains/add/eclFilter_adminDomains_add_name.php; //!file:library/adminDomains/details/eclApp_adminDomains_details.php; class eclApp_adminDomains_details { // class eclApp_adminDomains_details static function is_child ($me, $name) { // function is_child global $store; if (!strlen ($name)) return false; if ($store->domain->getId ($name)) return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'post'; } // function get_menu_type static function get_children_names () { // function get_children_names return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store, $system; $me->domainId = $store->domain->getId ($me->name); $me->data = $store->control->read ('adminDomains_details_content'); $me->access = 4; } // function constructor_helper static function dispatch ($document) { // function dispatch global $io, $store, $system; $me = $document->application; $data = &$store->domainContent->open ($me->domainId, '-register'); if (!$data) { // creates a register $data = array ('domain_id' => $me->domainId, 'mode' => MODE_DOMAIN, 'parent_id' => 0, 'name' => '-register'); $store->domainContent->insert ($me->domainId, $data); $document->reload = $document->url (); $document->application = $me->parent; $document->application->dispatch ($document); return; } // creates a register $remove = $document->createFormulary ('adminDomains_details_contextRemoveConfirm', array (), 'domainRemove'); if ($remove->save ()) return self::action_remove ($document); elseif ($remove->errorMsg) $document->mod->humperstilshen->alert ($remove->errorMsg); $formulary = $document->createFormulary ('adminDomains_details_edit', $data, 'domainEdit'); $formulary->data['name'] = $me->name; $status = $store->domain->getStatus ($me->name); $formulary->data['status'] = $status; if ($formulary->save ()) { // formulary submited if ($formulary->command ('admin_add') and $formulary->data['admin_id']) { // add a new administrator $group = &$store->domainGroup->open ($me->domainId, 1); $group[$formulary->data['admin_id']] = 4; } // add a new administrator elseif ($formulary->command ('admin_remove') and $formulary->data['admin_select']) { // remove an administrator $group = &$store->domainGroup->open ($me->domainId, 1); unset ($group[$formulary->data['admin_select']]); } // remove an administrator elseif ($formulary->command ('save') and !$formulary->errorMsg) { // save $formulary->data['name'] = '-register'; if (!isset ($formulary->data['text']['caption'])) $formulary->data['text']['caption'] = $formulary->data['text']['title']; $data = $formulary->data; if ($formulary->data['status'] != $status) { // update status $domain = &$store->domain->open ($me->name); $domain['status'] = $formulary->data['status']; } // update status $formulary->errorMsg = 'system_msg_alertDataUpdated'; } // save } // returned formulary $formulary->data['name'] = $me->name; $document->mod->formulary = $formulary; if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); // Context Remove $document->mod->context->appendChild ('adminDomains_details_contextRemove') ->confirm ('adminDomains_details_contextRemoveConfirm', $remove); } // function dispatch static function action_remove ($document) { // function action_remove global $io, $store; $me = $document->application; $id = $me->domainId; $store->domain->delete ($id); $io->database->delete ($store->domainContent, array ('domain_id' => $id)); $io->database->delete ($store->domainGroup, array ('domain_id' => $id)); $io->database->delete ($store->domainExtras, array ('domain_id' => $id)); $io->database->delete ($store->domainGroups, array ('domain_id' => $id)); foreach (scandir (PATH_DOMAINS . $me->name) as $filename) { // each domain file if (is_file (PATH_DOMAINS . $me->name . '/' . $filename)) unlink (PATH_DOMAINS . $me->name . '/' . $filename); } // each domain file rmdir (PATH_DOMAINS . $me->name); // returns to parent page $parent = $me->parent; $parent->reset (); $document->application = $parent; $document->application->dispatch ($document); $document->reload = $document->url (); } // function action_remove } // class eclApp_adminDomains_details //!eof:library/adminDomains/details/eclApp_adminDomains_details.php; //!file:library/adminDomains/details/eclFilter_adminDomains_details_adminAdd.php; class eclFilter_adminDomains_details_adminAdd { // class eclFilter_adminDomains_details_adminAdd static function create ($fieldName, $control, $formulary) { // function create $local['name'] = $fieldName; // type if (isset ($control['flags']['type'])) $local['type'] = $control['flags']['type']; else $local['type'] = 'text'; $formulary->appendChild ($control, $local); } // function create static function save ($fieldName, $control, $formulary) { // function save global $store; if (!$formulary->command ('admin_add')) return; if (isset ($formulary->received[$fieldName][0])) { // received value $value = trim ($formulary->received[$fieldName], ' -_'); if (!preg_match ('/^[a-z0-9_-]+$/', $value)) $value = false; } // received value else $value = false; if ($value === false) return $formulary->setRequiredMsg ($control, $fieldName); $userId = $store->user->getId ($value); if (!$userId) $formulary->setErrorMsg ($control, $fieldName, 'adminDomains_details_alertAdminRequired'); $domainId = $formulary->document->application->domainId; $group = $store->domainGroup->open ($domainId, 1); if (isset ($group[$userId]) and $group[$userId] == 4) $formulary->setErrorMsg ($control, $fieldName, 'adminDomains_details_alertAdminAlreadyExists', $value); $formulary->setField ('admin_id', $userId); $formulary->setField ('admin_name', $value); } // function save } // class eclFilter_adminDomains_details_adminAdd //!eof:library/adminDomains/details/eclFilter_adminDomains_details_adminAdd.php; //!file:library/adminDomains/details/eclFilter_adminDomains_details_adminSelect.php; class eclFilter_adminDomains_details_adminSelect { // class eclFilter_adminDomains_details_adminSelect static function create ($fieldName, $control, $formulary) { // function create global $store; $document = $formulary->document; $me = $document->application; $item = $formulary->appendChild ($control); // name $item->data['name'] = $fieldName; // type if (isset ($control['flags']['type'])) $item->data['type'] = $control['flags']['type']; else $item->data['type'] = 'select'; $domainId = $me->domainId; $group = $store->domainGroup->open ($domainId, 1); foreach ($group as $userId => $status) { // each user if (!$userId or $status != 4) continue; $data = $store->userContent->open ($userId, '-register'); if (isset ($data['text']['title'])) $caption = $data['text']['title']; elseif (isset ($data['text']['caption'])) $caption = $data['text']['caption']; else $caption = $document->textMerge ('unknown'); $item->appendChild (false, array ( 'value' => $userId, 'caption' => $caption )); } // each user } // function create static function save ($fieldName, $control, $formulary) { // function save global $store; if (!$formulary->command ('admin_remove')) return false; $userId = 0; if (isset ($formulary->received[$fieldName][0])) $userId = intval ($formulary->received[$fieldName]); if (!$userId) return $formulary->setErrorMsg ($control, $fieldName, 'adminDomains_details_alertAdminPleaseSelect'); $domainId = $formulary->document->application->domainId; $group = $store->domainGroup->open ($domainId, 1); if (!isset ($group[$userId])) return $formulary->setErrorMsg ($control, $fieldName, 'adminDomains_details_alertAdminRemoveError'); $i = 0; foreach ($group as $status) { // each status if ($status == 4) $i++; } // each status if ($i <= 1) return $formulary->setErrorMsg ($control, $fieldName, 'adminDomains_details_alertAdminRemoveLast'); $formulary->data['admin_select'] = $userId; } // function save } // class eclFilter_adminDomains_details_adminSelect //!eof:library/adminDomains/details/eclFilter_adminDomains_details_adminSelect.php; //!file:library/adminDomains/eclApp_adminDomains.php; class eclApp_adminDomains { // class eclApp_adminDomains const name = 'domains'; const menuType = 'section'; const dataFrom = 'adminDomains_content'; static function constructor_helper ($me) { // function constructor_helper global $io, $store; if ($io->database->tableEnabled ($store->domain) and is_dir (PATH_DOMAINS)) $me->map = array ('adminDomains_add', 'adminDomains_details'); } // function constructor_helper static function dispatch ($document) { // function dispatch global $io, $store; $me = $document->application; if (!$io->database->tableEnabled ($store->domain)) { // disabled $document->dataMerge ('adminDomains_contentDisabled'); return; } // disabled if (!is_dir (PATH_DOMAINS) and !$document->access (4)) { // no folder for visitors $document->dataMerge ('adminDomains_contentEmpty'); return; } // no folder for visitors if (!is_dir (PATH_DOMAINS)) { // create folder $formulary = $document->createFormulary ('adminDomains_edit', array (), 'createFolder'); if ($formulary->command ('create') and $formulary->save ()) { // create $folder_domains = PATH_ROOT . $io->systemConstants->get ('FOLDER_DOMAIN'); } // create else { // view form $document->mod->formulary = $formulary; return; } // view form } // create folder $document->mod->list = new eclMod_adminDomains_list ($document); if (!isset ($folder_domains)) $folder_domains = PATH_DOMAINS; if (count (scandir ($folder_domains)) == 2) { // empty $document->dataMerge ('adminDomains_contentEmpty'); return; } // empty } // function dispatch } // class eclApp_adminDomains //!eof:library/adminDomains/eclApp_adminDomains.php; //!file:library/adminDomains/eclFilter_adminDomains_selectCurrency.php; class eclFilter_adminDomains_selectCurrency { // class eclFilter_adminDomains_selectCurrency static function create ($fieldName, $control, $formulary) { // function create global $store; $document = $formulary->document; if (!isset ($control['flags']['target'])) return; $item = $formulary->appendChild ($control); // name $item->data['name'] = $fieldName; // type if (isset ($control['flags']['type'])) $item->data['type'] = $control['flags']['type']; else $item->data['type'] = 'select'; if (isset ($formulary->data['flags']['currency'])) $value = $formulary->data['flags']['currency']; else $value = SYSTEM_DEFAULT_CURRENCY; $names = array (); if (isset ($dataMap['t']['labels/currency'])) { // from embeded $names = array_keys ($dataMap['t']['labels/currency']); } // from embeded elseif (is_dir (PATH_TEMPLATES . 'labels/currency')) { // from folder foreach (scandir (PATH_TEMPLATES . 'labels/currency') as $filename) { // each file if ($filename[0] == '.') continue; $names[] = substr ($filename, 0, 3); } // each file } // from folder foreach ($names as $currency) { // each currency $data = $store->control->read ('labels/currency/' . $currency); $symbol = $currency . ' '; if (isset ($data['local']['symbol'])) $symbol .= '(' . $data['local']['symbol'] . ') '; $local = array ('value' => $currency); if (isset ($data['text'])) $local['caption'] = $document->textMerge ($symbol, $data['text']['caption']); else $local['caption'] = $document->textMerge ($symbol, $data['text']['caption']); if ($value == $currency) $local['active'] = 1; $item->appendChild ($local); } // each lang } // function create static function save ($fieldName, $control, $formulary) { // function save global $store; if (!isset ($formulary->received[$fieldName][0])) return; $formulary->data['flags']['currency'] = $formulary->received[$fieldName]; } // function save } // class eclFilter_adminDomains_selectCurrency //!eof:library/adminDomains/eclFilter_adminDomains_selectCurrency.php; //!file:library/adminDomains/eclFilter_adminDomains_selectLang.php; class eclFilter_adminDomains_selectLang { // class eclFilter_adminDomains_selectLang static function create ($fieldName, $control, $formulary) { // function create global $store; $document = $formulary->document; if (!isset ($control['flags']['target'])) return; $item = $formulary->appendChild ($control); // name $item->data['name'] = $fieldName; // type if (isset ($control['flags']['type'])) $item->data['type'] = $control['flags']['type']; else $item->data['type'] = 'select'; if (isset ($formulary->data['flags']['default_lang'])) $value = $formulary->data['flags']['default_lang']; elseif (defined ('SYSTEM_DEFAULT_LANGUAGE')) $value = SYSTEM_DEFAULT_LANGUAGE; else $value = 'en'; $names = $store->control->scandir ('t', 'labels/lang'); foreach ($names as $lang) { // each lang $data = $store->control->read ('labels/lang/' . $lang); $item->appendChild ($data, array ('value' => $lang)) ->active ($lang == $value); } // each lang } // function create static function save ($fieldName, $control, $formulary) { // function save global $store; if (!isset ($formulary->received[$fieldName][0])) return; $formulary->data['flags']['default_lang'] = $formulary->received[$fieldName]; } // function save } // class eclFilter_adminDomains_selectLang //!eof:library/adminDomains/eclFilter_adminDomains_selectLang.php; //!file:library/adminDomains/eclMod_adminDomains_list.php; class eclMod_adminDomains_list { // class eclMod_adminDomains_list public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $row = $mod->appendChild (); if ($document->access (4)) { // access $pathway = $document->application->pathway; // Domain add $domain_pathway = $pathway; $domain_pathway[] = '-new-domain'; $row->appendChild ('adminDomains_add_content') ->virtual () ->url ($domain_pathway); } // access else $pathway = array (); if (is_dir (PATH_DOMAINS)) $names = $store->domain->childrenNames (); else $names = array (); foreach ($names as $name) { // each name $domainId = $store->domain->getId ($name); $data = $store->domainContent->open ($domainId, '-register'); if (!isset ($data['text']['title'])) $data = $store->domainContent->open ($domainId, '-index'); if (isset ($data['text']['title'])) $caption = $data['text']['title']; else $caption = $document->textMerge ('! ' . $name); $domain_pathway = $pathway; $domain_pathway[] = $name; $row->appendChild (false, array ('title' => $caption)) ->url ($domain_pathway) ->swapTitle (); } // each name $mod->data = $store->control->read ('modules/list'); $mod->enabled = true; } // function setModule } // class eclMod_adminDomains_list //!eof:library/adminDomains/eclMod_adminDomains_list.php; //!file:library/adminIndex/eclApp_adminIndex.php; class eclApp_adminIndex { // class eclApp_adminIndex const name = ''; const menuType = 'section'; const dataFrom = 'adminIndex_content'; static function constructor_helper ($me) { // function constructor_helper array_pop ($me->pathway); } // function constructor_helper } // class eclApp_adminIndex //!eof:library/adminIndex/eclApp_adminIndex.php; //!file:library/adminIntegrations/eclApp_adminIntegrations.php; class eclApp_adminIntegrations { // class eclApp_adminIntegrations const name = 'integrations'; const menuType = 'section'; const dataFrom = 'adminIntegrations_content'; const access = 4; static function constructor_helper ($me) { // function constructor_helper $me->getMap (); } // function constructor_helper static function dispatch ($document) { // function dispatch global $store; $me = $document->application; if (!count ($me->children ())) $document->dataMerge ('adminIntegrations_contentEmpty'); else $document->mod->list = new eclMod_admin_list ($document); } // function dispatch } // class eclApp_adminIntegrations //!eof:library/adminIntegrations/eclApp_adminIntegrations.php; //!file:library/adminSystem/admin/eclApp_adminSystem_admin.php; class eclApp_adminSystem_admin { // class eclApp_adminSystem_admin const name = 'admin'; const menuType = 'section'; const dataFrom = 'adminSystem_admin_content'; static function constructor_helper ($me) { // function constructor_helper $me->groups = array ( new eclGroup_adminSystem_admin ()); } // function constructor_helper static function dispatch ($document) { // function dispatch global $io; if ($document->actions ('admin', 'changed')) $document->mod->humperstilshen->alert ('system_msg_alertDataUpdated'); $formulary = $document->createFormulary ('adminSystem_admin_edit'); if ($formulary->save ()) { // change login $document->session['user_id'] = true; $document->session['user_name'] = $io->systemConstants->constants['ADMIN_IDENTIFIER']; $document->reload = $document->url (true, true, '_admin-changed'); } // change login else { // restore login $io->systemConstants->set ('ADMIN_IDENTIFIER', ADMIN_IDENTIFIER); } // restore login $document->mod->formulary = $formulary; if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); } // function dispatch } // class eclApp_adminSystem_admin //!eof:library/adminSystem/admin/eclApp_adminSystem_admin.php; //!file:library/adminSystem/eclApp_adminSystem.php; class eclApp_adminSystem { // class eclApp_adminSystem const name = 'system'; const menuType = 'section'; const dataFrom = 'adminSystem_content'; const map = 'adminSystem_setup adminSystem_admin adminSystem_hosting adminSystem_server adminSystem_update adminSystem_eval adminSystem_log adminSystem_extract adminSystem_pack'; const access = 4; static function dispatch ($document) { // function dispatch $document->mod->list = new eclMod_admin_list ($document); } // function dispatch } // class eclApp_adminSystem //!eof:library/adminSystem/eclApp_adminSystem.php; //!file:library/adminSystem/eclGroup_adminSystem_admin.php; class eclGroup_adminSystem_admin { // class eclGroup_adminSystem_admin public function check ($document) { // function check if (!defined ('ADMIN_IDENTIFIER')) return 0; if ($document->user->name == ADMIN_IDENTIFIER) return 4; if ($document->user->userId) return 1; return 0; } // function check } // class eclGroup_adminSystem_admin //!eof:library/adminSystem/eclGroup_adminSystem_admin.php; //!file:library/adminSystem/eval/eclApp_adminSystem_eval.php; class eclApp_adminSystem_eval { // class eclApp_adminSystem_eval const name = 'eval'; const menuType = 'section'; const dataFrom = 'adminSystem_eval_content'; static function dispatch ($document) { // function dispatch $document->mod->formulary = $document->createFormulary ('adminSystem_eval_edit'); } // function dispatch } // class eclApp_adminSystem_eval //!eof:library/adminSystem/eval/eclApp_adminSystem_eval.php; //!file:library/adminSystem/eval/eclFilter_adminSystem_eval_evalInput.php; class eclFilter_adminSystem_eval_evalInput { // class eclFilter_adminSystem_eval_evalInput static function create ($fieldName, $control, $formulary) { // function create global $io, $store, $system, $groups, $document; $item = $formulary->document->createListItem ($control); // name $item->data['name'] = $fieldName; // type if (isset ($control['flags']['type'])) $item->data['type'] = $control['flags']['type']; else $item->data['type'] = 'textarea'; // eval if (isset ($formulary->received[$fieldName]) and $formulary->command ('save')) eval ($formulary->received[$fieldName]); return $item; } // function create static function save ($fieldName, $control, $formulary) { // function save } // function save } // class eclFilter_adminSystem_eval_evalInput //!eof:library/adminSystem/eval/eclFilter_adminSystem_eval_evalInput.php; //!file:library/adminSystem/extract/eclApp_adminSystem_extract.php; class eclApp_adminSystem_extract { // class eclApp_adminSystem_extract static function is_child ($me, $name) { // function is_child if (defined ('SYSTEM_IS_PACKED') and SYSTEM_IS_PACKED and $name == 'pack') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'section'; } // function get_menu_type static function get_children_names () { // function get_children_names if (defined ('SYSTEM_IS_PACKED') and SYSTEM_IS_PACKED) return array ('pack'); return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('adminSystem_extract_content'); } // function constructor_helper static function dispatch ($document) { // function dispatch global $io; $formulary = $document->createFormulary ('adminSystem_extract_edit'); if ($formulary->command ('save') and $formulary->save ()) { // options saved $document->mod->humperstilshen->alert ('system_msg_alertDataUpdated'); } // options saved elseif ($formulary->command ('extract') and $formulary->save ()) { // extract files $io->packager->extract ($formulary->data); $document->reload = $document->url (); return; } // extract files $document->mod->formulary = $formulary; if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); } // function dispatch } // class eclApp_adminSystem_extract //!eof:library/adminSystem/extract/eclApp_adminSystem_extract.php; //!file:library/adminSystem/hosting/eclApp_adminSystem_hosting.php; class eclApp_adminSystem_hosting { // class eclApp_adminSystem_hosting const name = 'hosting'; const menuType = 'section'; const dataFrom = 'adminSystem_hosting_content'; static function dispatch ($document) { // function dispatch global $io; $formulary = $document->createFormulary ('adminSystem_hosting_edit'); if ($formulary->save ()) { // formulary saved $document->mode = $io->systemConstants->get ('SYSTEM_HOSTING_MODE'); $document->mod->humperstilshen->alert ('system_msg_alertDataUpdated'); } // formulary saved $document->mod->formulary = $formulary; } // function dispatch } // class eclApp_adminSystem_hosting //!eof:library/adminSystem/hosting/eclApp_adminSystem_hosting.php; //!file:library/adminSystem/log/eclApp_adminSystem_log.php; class eclApp_adminSystem_log { // class eclApp_adminSystem_log const name = 'log'; const menuType = 'section'; const dataFrom = 'adminSystem_log_content'; static function dispatch ($document) { // function dispatch $formulary = $document->createFormulary ('adminSystem_log_edit'); if ($formulary->command ('save') and $formulary->save ()) $document->mod->humperstilshen->alert ('system_msg_alertDataUpdated'); $document->mod->formulary = $formulary; } // function dispatch } // class eclApp_adminSystem_log //!eof:library/adminSystem/log/eclApp_adminSystem_log.php; //!file:library/adminSystem/log/eclFilter_adminSystem_log_logView.php; class eclFilter_adminSystem_log_logView { // class eclFilter_adminSystem_log_logView static function create ($fieldName, $control, $formulary) { // function create global $io; $item = $formulary->document->createListItem ($control); // name $item->data['name'] = $fieldName; // type if (isset ($control['flags']['type'])) $item->data['type'] = $control['flags']['type']; else $item->data['type'] = 'textarea'; $string = &$io->fileBinary->open ('.error_log'); if ($formulary->command ('clear_log')) $string = ''; $log = $io->fileBinary->open ('.error_log'); $lines = array (); foreach (explode (LF, $log) as $line) { // each log line if (!trim ($line)) continue; list ($date, $info) = explode ("]", trim ($line)); if (isset ($lines[$info])) $lines[$info]++; else $lines[$info] = 1; } // each log line $buffer = ''; foreach ($lines as $info => $times) { // each line $buffer .= $info . ' (' . $times . ")" . CRLF; } // each line $item->data['value'] = $buffer; return $item; } // function create static function save ($fieldName, $control, $formulary) { // function save } // function save } // class eclFilter_adminSystem_log_logView //!eof:library/adminSystem/log/eclFilter_adminSystem_log_logView.php; //!file:library/adminSystem/pack/eclApp_adminSystem_pack.php; class eclApp_adminSystem_pack { // class eclApp_adminSystem_pack static function is_child ($me, $name) { // function is_child if (defined ('SYSTEM_IS_PACKED') and SYSTEM_IS_PACKED) return false; if ($name == 'pack') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'section'; } // function get_menu_type static function get_children_names () { // function get_children_names if (!defined ('SYSTEM_IS_PACKED') or !SYSTEM_IS_PACKED) return array ('pack'); return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('adminSystem_pack_content'); } // function constructor_helper static function dispatch ($document) { // function dispatch global $io; $formulary = $document->createFormulary ('adminSystem_pack_edit'); if ($formulary->command ('pack') and $formulary->save ()) { // pack file $io->packager->pack ($formulary->data); if (isset ($formulary->data['pack_mode']) and $formulary->data['pack_mode'] == 'replace') { // replace $document->reload = $document->url (); return; } // replace $document->mod->humperstilshen->alert ('adminSystem_pack_alertFinished'); } // pack file $document->mod->formulary = $formulary; if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); } // function dispatch } // class eclApp_adminSystem_pack //!eof:library/adminSystem/pack/eclApp_adminSystem_pack.php; //!file:library/adminSystem/server/eclApp_adminSystem_server.php; class eclApp_adminSystem_server { // class eclApp_adminSystem_server const name = 'server'; const menuType = 'section'; const dataFrom = 'adminSystem_server_content'; static function dispatch ($document) { // function dispatch $formulary = $document->createFormulary ('adminSystem_server_edit'); if ($document->rewriteEngine or strpos (' ' . strtolower ($_SERVER['SERVER_SOFTWARE']), 'apache')) $formulary->flags['server_is_apache'] = true; if ($formulary->save ()) $document->mod->humperstilshen->alert ('system_msg_alertDataUpdated'); $document->mod->formulary = $formulary; } // function dispatch } // class eclApp_adminSystem_server //!eof:library/adminSystem/server/eclApp_adminSystem_server.php; //!file:library/adminSystem/setup/eclApp_adminSystem_setup.php; class eclApp_adminSystem_setup { // class eclApp_adminSystem_setup const name = 'setup'; const menuType = 'section'; const dataFrom = 'adminSystem_setup_content'; static function dispatch ($document) { // function dispatch $formulary = $document->createFormulary ('adminSystem_setup_edit'); if ($formulary->save ()) $document->mod->humperstilshen->alert ('system_msg_alertDataUpdated'); $document->mod->formulary = $formulary; } // function dispatch } // class eclApp_adminSystem_setup //!eof:library/adminSystem/setup/eclApp_adminSystem_setup.php; //!file:library/adminSystem/update/eclApp_adminSystem_update.php; class eclApp_adminSystem_update { // class eclApp_adminSystem_update const name = 'update'; const menuType = 'section'; const dataFrom = 'adminSystem_update_content'; static function dispatch ($document) { // function dispatch global $io; $formulary = $document->createFormulary ('adminSystem_update_edit'); if ($formulary->command ('check')) { // check $data = $io->webservice->request (SYSTEM_ENGINE_UPDATE_URL); if (isset ($data['EcolaboreEngine'])) { // update found $data = $data['EcolaboreEngine']; $data['request_date'] = date ('Y-m-d', TIME); $io->systemConstants->set ('SYSTEM_ENGINE_UPDATE_CHECK', $io->webservice->array2json ($data)); } // update found } // check if ($formulary->command ('update') and defined ('SYSTEM_ENGINE_UPDATE_CHECK')) { // formulary update if (SYSTEM_TIME_LIMIT) set_time_limit (0); $data = $io->webservice->json2array (SYSTEM_ENGINE_UPDATE_CHECK); if (isset ($data['url'])) { // update $io->systemConstants->drop ('SYSTEM_ENGINE_UPDATE_CHECK'); $io->close (); $document->reload = $document->url (); $document->render (); $string = file_get_contents ($data['url']); $fileName = PATH_ROOT . SYSTEM_SCRIPT_NAME; @unlink ($fileName); file_put_contents ($fileName, $string); print $document->buffer; exit; } // update } // formulary saved $document->mod->formulary = $formulary; } // function dispatch } // class eclApp_adminSystem_update //!eof:library/adminSystem/update/eclApp_adminSystem_update.php; //!file:library/adminSystem/update/eclFilter_adminSystem_update_upload.php; class eclFilter_adminSystem_update_upload { // class eclFilter_adminSystem_update_upload static function create ($fieldName, $control, $formulary) { // function create $control['type'] = 'file'; $control['name'] = $fieldName; $formulary->appendChild ($control); } // function create static function save ($fieldName, $control, $formulary) { // function save if (!isset ($_FILES[$fieldName]['size']) or !$_FILES[$fieldName]['size']) return $formulary->setRequiredMsg ($control, $fieldName); $formulary->data['file_field'] = $fieldName; } // function save } // class eclFilter_adminSystem_update_upload //!eof:library/adminSystem/update/eclFilter_adminSystem_update_upload.php; //!file:library/adminSystem/update/eclFilter_adminSystem_update_viewCurrentRelease.php; class eclFilter_adminSystem_update_viewCurrentRelease { // class eclFilter_adminSystem_update_viewCurrentRelease static function create ($fieldName, $control, $formulary) { // function create $control['type'] = 'view'; $control['content'] = $formulary->document->textMerge (SYSTEM_RELEASE); $formulary->appendChild ($control); } // function create static function save ($fieldName, $control, $formulary) { // function save } // function save } // class eclFilter_adminSystem_update_viewCurrentRelease //!eof:library/adminSystem/update/eclFilter_adminSystem_update_viewCurrentRelease.php; //!file:library/adminSystem/update/eclFilter_adminSystem_update_viewCurrentVersion.php; class eclFilter_adminSystem_update_viewCurrentVersion { // class eclFilter_adminSystem_update_viewCurrentVersion static function create ($fieldName, $control, $formulary) { // function create $control['type'] = 'view'; $control['content'] = $formulary->document->textMerge (SYSTEM_VERSION); $formulary->appendChild ($control); } // function create static function save ($fieldName, $control, $formulary) { // function save } // function save } // class eclFilter_adminSystem_update_viewCurrentVersion //!eof:library/adminSystem/update/eclFilter_adminSystem_update_viewCurrentVersion.php; //!file:library/adminSystem/update/eclFilter_adminSystem_update_viewLastVerification.php; class eclFilter_adminSystem_update_viewLastVerification { // class eclFilter_adminSystem_update_viewLastVerification static function create ($fieldName, $control, $formulary) { // function create global $io; $control['type'] = 'view'; $value = $io->systemConstants->get ('SYSTEM_ENGINE_UPDATE_CHECK'); if ($value === false) return; $value = $io->webservice->json2array ($value); if (!isset ($value['request_date'])) return; $control['content'] = $formulary->document->textMerge ($value['request_date']); $formulary->appendChild ($control); } // function create static function save ($fieldName, $control, $formulary) { // function save } // function save } // class eclFilter_adminSystem_update_viewLastVerification //!eof:library/adminSystem/update/eclFilter_adminSystem_update_viewLastVerification.php; //!file:library/adminSystem/update/eclFilter_adminSystem_update_viewNewVersionAvailable.php; class eclFilter_adminSystem_update_viewNewVersionAvailable { // class eclFilter_adminSystem_update_viewNewVersionAvailable static function create ($fieldName, $control, $formulary) { // function create global $io, $store; $control['type'] = 'view'; $value = $io->systemConstants->get ('SYSTEM_ENGINE_UPDATE_CHECK'); if ($value === false) return; $value = $io->webservice->json2array ($value); if (!isset ($value['release'])) return; list ($y, $m, $d) = explode ('-', $value['release']); $lastRelease = mktime (0, 0, 0, $m, $d, $y); list ($y, $m, $d) = explode ('-', SYSTEM_RELEASE); $systemRelease = mktime (0, 0, 0, $m, $d, $y); if ($systemRelease >= $lastRelease) { // system updated $formulary->appendChild ('adminSystem_update_viewSystemUpdated'); return; } // system updated $control['content'] = $formulary->document->textMerge ($value['release']); $formulary->appendChild ($control); if (!isset ($value['info'])) return; $control = array ('type' => 'view'); $label = $store->control->read ('adminSystem_update_viewReleaseNotes'); $control['content'] = $label['text']['caption']; $control['url'] = $value['info']; $formulary->appendChild ($control); $submit = $formulary->appendChild (array ('type' => 'submit')); $control = array ('name' => $formulary->prefix . 'command_update'); $submit->appendChild ('adminSystem_update_editUpdateNow', $control); } // function create static function save ($fieldName, $control, $formulary) { // function save } // function save } // class eclFilter_adminSystem_update_viewNewVersionAvailable //!eof:library/adminSystem/update/eclFilter_adminSystem_update_viewNewVersionAvailable.php; //!file:library/adminUsers/add/eclApp_adminUsers_add.php; class eclApp_adminUsers_add { // class eclApp_adminUsers_add static function is_child ($me, $name) { // function is_child global $store; if ($name == '-new-user') return true; if (!$store->user->getId ($name) and is_dir (PATH_PROFILES . $name)) return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'section'; } // function get_menu_type static function get_children_names () { // function get_children_names return array ('-new-user'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('adminUsers_add_content'); $me->access = 4; } // function constructor_helper static function dispatch ($document) { // function dispatch global $store; $data = array (); if ($document->application->name != '-new-user' and $document->application->name != '-default') $data['name'] = $document->application->name; $formulary = $document->createFormulary ('adminUsers_add_edit', $data, 'useradd'); if ($formulary->command ('save') and $formulary->save ()) { // formulary saved $user['name'] = $formulary->data['name']; $user['password'] = $formulary->data['password']; $user['status'] = 1; $userId = $store->user->insert ($user); $data = $formulary->data; $data['mode'] = MODE_DOMAIN; $data['parent_id'] = 0; $data['name'] = '-register'; $store->userContent->insert ($userId, $data); $document->received = array (); unset ($document->actions['user']); $parent = $document->application->parent; unset ($document->application); $parent->reset (); $document->application = $parent->child ($formulary->data['name']); $document->application->dispatch ($document); $document->reload = $document->url (); return; } // formulary saved $document->mod->formulary = $formulary; if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); } // function dispatch } // class eclApp_adminUsers_add //!eof:library/adminUsers/add/eclApp_adminUsers_add.php; //!file:library/adminUsers/details/eclApp_adminUsers_details.php; class eclApp_adminUsers_details { // class eclApp_adminUsers_details static function is_child ($me, $name) { // function is_child global $store; if (!strlen ($name)) return false; if ($store->user->getId ($name)) return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'post'; } // function get_menu_type static function get_children_names () { // function get_children_names return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->userId = $store->user->getId ($me->name); $me->data = $store->control->read ('adminUsers_details_content'); $data = $store->userContent->open ($me->userId, '-register'); if (isset ($data['text']['caption'])) $me->data['text']['caption'] = $data['text']['caption']; $me->access = 4; } // function constructor_helper static function dispatch ($document) { // function dispatch global $io, $store; $me = $document->application; $data = &$store->userContent->open ($me->userId, '-register'); if (isset ($data['local']['gender']) and $data['local']['gender'] == 'female') $gender = 'F'; else $gender = 'M'; $remove = $document->createFormulary ('adminUsers_details_removeConfirm' . $gender, array (), 'userRemove'); if ($remove->save ()) return self::action_remove ($document); elseif ($remove->errorMsg) $document->mod->humperstilshen->alert ($remove->errorMsg); $formulary = $document->createFormulary ('adminUsers_details_edit', $data, 'userEdit'); $formulary->data['name'] = $me->name; $status = $store->user->getStatus ($me->name); $formulary->data['status'] = $status; if ($formulary->save ()) { // save $formulary->data['name'] = '-register'; $data = $formulary->data; if ($formulary->data['status'] != $status or isset ($formulary->data['password'])) { // update status $user = &$store->user->open ($me->name); $user['status'] = $formulary->data['status']; if (isset ($formulary->data['password'])) { // update password $user['password'] = $formulary->data['password']; unset ($data['password']); } // update password } // update status $formulary->errorMsg = 'system_msg_alertDataUpdated'; } // save $formulary->data['name'] = $me->name; $document->mod->formulary = $formulary; if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); $document->dataMerge ('adminUsers_details_content'); // Context Remove $document->mod->context->appendChild ('adminUsers_details_remove' . $gender) ->confirm ('adminUsers_details_removeConfirm' . $gender, $remove); } // function dispatch static function action_remove ($document) { // function action_remove global $io, $store; $me = $document->application; $id = $me->userId; $io->database->delete ($store->userContent, array ('user_id' => $id)); $io->database->delete ($store->domainGroup, array ('user_id' => $id)); $io->database->delete ($store->userFriend, array ('user_id' => $id)); $io->database->delete ($store->userFriend, array ('friend_id' => $id)); $io->database->delete ($store->userSubscription, array ('user_id' => $id)); $store->user->delete ($id); foreach (scandir (PATH_PROFILES . $me->name) as $filename) { // each user file if (is_file (PATH_PROFILES . $me->name . '/' . $filename)) unlink (PATH_PROFILES . $me->name . '/' . $filename); } // each user file rmdir (PATH_PROFILES . $me->name); // returns to parent page $parent = $me->parent; $parent->reset (); $document->application = $parent; $document->application->dispatch ($document); $document->reload = $document->url (); } // function action_remove } // class eclApp_adminUsers_details //!eof:library/adminUsers/details/eclApp_adminUsers_details.php; //!file:library/adminUsers/eclApp_adminUsers.php; class eclApp_adminUsers { // class eclApp_adminUsers const name = 'users'; const menuType = 'section'; const dataFrom = 'adminUsers_content'; static function constructor_helper ($me) { // function constructor_helper global $io, $store; if ($io->database->tableEnabled ($store->user) and is_dir (PATH_PROFILES)) $me->map = array ('adminUsers_add', 'adminUsers_details'); } // function constructor_helper static function dispatch ($document) { // function dispatch global $io, $store; $me = $document->application; if (!$io->database->tableEnabled ($store->user)) { // disabled $document->dataMerge ('adminUsers_contentDisabled'); return; } // disabled if (!is_dir (PATH_PROFILES) and !$document->access (4)) { // no folder for visitors $document->dataMerge ('adminUsers_contentEmpty'); return; } // no folder for visitors if (!is_dir (PATH_PROFILES)) { // create folder $formulary = $document->createFormulary ('adminUsers_createFolder', array (), 'createFolder'); if ($formulary->command ('create') and $formulary->save ()) { // create $folder_profiles = PATH_ROOT . $io->systemConstants->get ('FOLDER_PROFILES'); } // create else { // view form $document->mod->formulary = $formulary; return; } // view form } // create folder $document->mod->list = new eclMod_adminUsers_list ($document); if (!isset ($folder_profiles)) $folder_profiles = PATH_PROFILES; if ($document->access (4) and !$store->User->getStatus (ADMIN_IDENTIFIER)) { // create the admin profile $formulary = $document->createFormulary ('adminUsers_adminProfile', array (), 'admin_profile'); if ($formulary->command ('create')) { // create $user = array ( 'name' => ADMIN_IDENTIFIER, 'password' => ADMIN_PASSWORD, 'status' => 1 ); $userId = $store->user->insert ($user); $data['mode'] = MODE_DOMAIN; $data['name'] = '-register'; $data['text'] = array ( 'caption' => array ($document->lang => array (TEXT_CONTENT => ADMIN_CAPTION)), 'title' => array ($document->lang => array (TEXT_CONTENT => ADMIN_CAPTION)) ); $data['local']['mail'] = ADMIN_MAIL; $data['local']['gender'] = ADMIN_GENDER; $store->userContent->insert ($userId, $data); } // create else $document->mod->formulary = $formulary; $document->mod->panel->main = array ('content', 'formulary', 'list'); } // create the admin profile if (count (scandir ($folder_profiles)) == 2) $document->dataMerge ('adminUsers_contentEmpty'); } // function dispatch } // class eclApp_adminUsers //!eof:library/adminUsers/eclApp_adminUsers.php; //!file:library/adminUsers/eclFilter_adminUsers_name.php; class eclFilter_adminUsers_name { // class eclFilter_adminUsers_name static function create ($fieldName, $control, $formulary) { // function create $local['name'] = $fieldName; // type if (isset ($control['flags']['type'])) $local['type'] = $control['flags']['type']; else $local['type'] = 'text'; // target if (isset ($control['flags']['target'])) $local['value'] = $formulary->getField ($control['flags']['target']); $formulary->appendChild ($control, $local); } // function create static function save ($fieldName, $control, $formulary) { // function save global $store; // filter if (isset ($formulary->received[$fieldName])) { // received value $value = trim ($formulary->received[$fieldName], ' -_'); if (!preg_match ('/^[a-z0-9_-]+$/', $value)) $formulary->setErrorMsg ($control, $fieldName, 'adminUsers_alertUserInvalidName', $value); elseif ($store->user->getId ($value)) $formulary->setErrorMsg ($control, $fieldName, 'adminUsers_alertUserAlreadyExists', $value); } // received value else $value = false; // required if ($value === false and isset ($control['flags']['required'])) return $formulary->setRequiredMsg ($control, $fieldName, 'adminUsers_alertUserNameRequired'); // target if (isset ($control['flags']['target'])) $formulary->setField ($control['flags']['target'], $value); } // function save } // class eclFilter_adminUsers_name //!eof:library/adminUsers/eclFilter_adminUsers_name.php; //!file:library/adminUsers/eclFilter_adminUsers_password.php; class eclFilter_adminUsers_password { // class eclFilter_adminUsers_password static function create ($fieldName, $control, $formulary) { // function create $local['name'] = $fieldName; // type if (isset ($control['flags']['type'])) $local['type'] = $control['flags']['type']; else $local['type'] = 'text_password'; $formulary->appendChild ($control, $local); } // function create static function save ($fieldName, $control, $formulary) { // function save isset ($formulary->received[$fieldName]) ? $password = strtolower ($formulary->received[$fieldName]) : $password = false; isset ($formulary->received[$fieldName . '_repeat']) ? $password2 = strtolower ($formulary->received[$fieldName . '_repeat']) : $password2 = false; if (!$password and $password !== '0') $password = false; // required if ($password === false and isset ($control['flags']['required'])) return $formulary->setRequiredMsg ($control, $fieldName, 'adminUsers_alertPasswordRequired'); // no password, no required if (!$password) return; if ($password != $password2) return $formulary->setErrorMsg ($control, $fieldName, 'adminUsers_alertPasswordRepeatError'); foreach (str_split ($password) as $char) { // each char if (ord ($char) < 32 or ord ($char) > 127) return $formulary->setErrorMsg ($control, $fieldName, 'adminUsers_alertPasswordInvalidCharacter'); } // each char // target if (isset ($control['flags']['target'])) $formulary->setField ($control['flags']['target'], $password); } // function save } // class eclFilter_adminUsers_password //!eof:library/adminUsers/eclFilter_adminUsers_password.php; //!file:library/adminUsers/eclMod_adminUsers_list.php; class eclMod_adminUsers_list { // class eclMod_adminUsers_list public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $row = $mod->appendChild (); if ($document->access (4)) { // access $pathway = $document->application->pathway; // User add $user_pathway = $pathway; $user_pathway[] = '-new-user'; $row->appendChild ('adminUsers_add_content') ->virtual () ->url ($user_pathway); } // access else $pathway = array (SYSTEM_PROFILES_URI); if (is_dir (FOLDER_PROFILES)) $names = $store->user->childrenNames (); else $names = array (); foreach ($names as $name) { // each name $userId = $store->user->getId ($name); $data = $store->userContent->open ($userId, '-register'); $user_pathway = $pathway; $user_pathway[] = $name; $row->appendChild ($data) ->swapTitle () ->url ($user_pathway); } // each name $mod->data = $store->control->read ('modules/list'); $mod->enabled = true; } // function setModule } // class eclMod_adminUsers_list //!eof:library/adminUsers/eclMod_adminUsers_list.php; //!file:library/domain/disabled/eclApp_domain_disabled.php; class eclApp_domain_disabled { // class eclApp_domain_disabled static function is_child ($me, $name) { // function is_child return true; } // function is_child static function get_menu_type () { // function get_menu_type return 'section'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array (''); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->name = ''; $me->data = $store->control->read ('domain_disabled_content'); $me->ignoreSubfolders = true; array_pop ($me->pathway); } // function constructor_helper } // class eclApp_domain_disabled //!eof:library/domain/disabled/eclApp_domain_disabled.php; //!file:library/domain/eclApp_domain.php; class eclApp_domain { // class eclApp_domain static function is_child ($me, $name) { // function is_child global $store; if ($store->domain->getStatus ($name)) return true; if (SYSTEM_HOSTING_MODE == 0 and $name == SYSTEM_DEFAULT_DOMAIN_NAME and $name != SYSTEM_ADMIN_URI and $name != SYSTEM_PROFILES_URI) { // creates the default domain $adminId = $store->user->getId (ADMIN_IDENTIFIER); if (!$adminId) { // creates profile // New profile for administrator $admin['name'] = ADMIN_IDENTIFIER; $admin['status'] = 1; $adminId = $store->user->insert ($admin); if (!is_dir (PATH_PROFILES)) mkdir (PATH_PROFILES); if (!is_dir (PATH_PROFILES . ADMIN_IDENTIFIER)) mkdir (PATH_PROFILES . ADMIN_IDENTIFIER); // register the administrator profile $caption[TEXT_CONTENT] = ADMIN_CAPTION; if (SYSTEM_DEFAULT_CHARSET == 'ISO-8859-1') $caption[TEXT_CHARSET] = 1; $admin_data['text'] = array ( 'caption' => array (SYSTEM_DEFAULT_LANGUAGE => $caption), 'title' => array (SYSTEM_DEFAULT_LANGUAGE => $caption), ); $admin_data['local']['mail'] = ADMIN_MAIL; $admin_data['local']['gender'] = ADMIN_GENDER; $admin_data['mode'] = MODE_DOMAIN; $admin_data['name'] = '-register'; $store->userContent->insert ($adminId, $admin_data); } // creates profile // Creates domain $domain['name'] = SYSTEM_DEFAULT_DOMAIN_NAME; $domain['status'] = 1; $domainId = $store->domain->insert ($domain); if (!is_dir (PATH_DOMAINS)) mkdir (PATH_DOMAINS); if (!is_dir (PATH_DOMAINS . SYSTEM_DEFAULT_DOMAIN_NAME)) mkdir (PATH_DOMAINS . SYSTEM_DEFAULT_DOMAIN_NAME); // Register domain $domain_data = $store->control->read ('domain_empty_templateForNewDomain'); $domain_data['mode'] = MODE_DOMAIN; $domain_data['name'] = '-register'; $store->domainContent->insert ($domainId, $domain_data); // Register administrator $group = &$store->domainGroup->open ($domainId, 1); $group[$adminId] = 4; return true; } // creates the default domain return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'domain'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->domainId = $store->domain->getId ($me->name); $me->groups[] = new eclGroup_domain ($me->domainId); $status = $store->domain->getStatus ($me->name); if ($status == 1) { // empty $me->data = &$store->domainContent->openChild ($me->domainId, MODE_DOMAIN, 0, '-register'); $me->map = array ('userJoin', 'domainStyles', 'domain_empty'); } // empty elseif ($status == 5) { // disabled $me->map = array ('domainStyles', 'domain_disabled'); } // disabled elseif ($status == 2 or $status == 4) { // active $me->data = &$store->domainContent->openChild ($me->domainId, MODE_DOMAIN, 0, '-register'); $me->getMap (); if ($status == 4) $me->access = 4; } // active $me->isDomain = true; } // function constructor_helper } // class eclApp_domain //!eof:library/domain/eclApp_domain.php; //!file:library/domain/eclFilter_domain_name.php; class eclFilter_domain_name { // class eclFilter_domain_name static function create ($fieldName, $control, $formulary) { // function create $local['name'] = $fieldName; // type if (isset ($control['flags']['type'])) $local['type'] = $control['flags']['type']; else $local['type'] = 'text_small'; // target if (isset ($formulary->data['name'])) $local['value'] = $formulary->data['name']; $formulary->appendChild ($control, $local); } // function create static function save ($fieldName, $control, $formulary) { // function save global $store; $document = $formulary->document; $name = ''; // If a previous problem was ocurred saving the formulary, we need to abort if ($formulary->errorMsg !== false) return; $received = $formulary->received; // Get name from formulary if (isset ($received[$fieldName]) and strlen ($received[$fieldName])) $name = $received[$fieldName]; // If has no name to receive, but the $data['name'] is set, silently abort elseif (isset ($formulary->data['name']) and strlen ($formulary->data['name'])) return; // But if $data['name'] is not set, we will try to create one based on // caption or title from formulary, because a new section or post needs a name else { // look for alternative name if (isset ($formulary->data['text']['caption'][$document->lang][TEXT_CONTENT])) $name = $formulary->data['text']['caption'][$document->lang][TEXT_CONTENT]; elseif (isset ($formulary->data['text']['title'][$document->lang][TEXT_CONTENT])) $name = $formulary->data['text']['title'][$document->lang][TEXT_CONTENT]; } // look for alternative name // We need to convert special characters. But the convertion only will works // currectly if the encoding are ASCII or ISO-8859-1 $charset = $formulary->document->charset; if ($charset != 'ISO-8859-1') $name = mb_convert_encoding ($name, 'ISO-8859-1', $charset); // Here is a table for character convertion: // the key represents the input character, // and the value is the valid character to use instead // Other characters will be ignored static $convert = array ('a' => 'a', 'b' => 'b', 'c' => 'c', 'd' => 'd', 'e' => 'e', 'f' => 'f', 'g' => 'g', 'h' => 'h', 'i' => 'i', 'j' => 'j', 'k' => 'k', 'l' => 'l', 'm' => 'm', 'n' => 'n', 'o' => 'o', 'p' => 'p', 'q' => 'q', 'r' => 'r', 's' => 's', 't' => 't', 'u' => 'u', 'v' => 'v', 'w' => 'w', 'x' => 'x', 'y' => 'y', 'z' => 'z', 'A' => 'a', 'B' => 'b', 'C' => 'c', 'D' => 'd', 'E' => 'e', 'F' => 'f', 'G' => 'g', 'H' => 'h', 'I' => 'i', 'J' => 'j', 'K' => 'k', 'L' => 'l', 'M' => 'm', 'N' => 'n', 'O' => 'o', 'P' => 'p', 'Q' => 'q', 'R' => 'r', 'S' => 's', 'T' => 't', 'U' => 'u', 'V' => 'v', 'W' => 'w', 'X' => 'x', 'Y' => 'y', 'Z' => 'z', '' => 'a', '' => 'a', '' => 'a', '' => 'a', '' => 'a', '' => 'a', '' => 'a', '' => 'a', '' => 'a', '' => 'a', '' => 'c', '' => 'c', '' => 'e', '' => 'e', '' => 'e', '' => 'e', '' => 'e', '' => 'e', '' => 'i', '' => 'i', '' => 'i', '' => 'i', '' => 'i', '' => 'i', '' => 'o', '' => 'o', '' => 'o', '' => 'o', '' => 'o', '' => 'o', '' => 'o', '' => 'o', '' => 'u', '' => 'u', '' => 'u', '' => 'u', '' => 'u', '' => 'u', '' => 'y', '' => 'y', '' => 'y', '' => 'y', ' ' => '-', '_' => '-', '-' => '-', '/' => '-', '1' => '1', '2' => '2', '3' => '3', '4' => '4', '5' => '5', '6' => '6', '7' => '7', '8' => '8', '9' => '9', '0' => '0'); // The $last will remember the last character of the convertion // to prevent duplicated spacing "__" or "--" in the name $result = ''; $last = '-'; foreach (str_split ($name) as $char) { // each char if (!isset ($convert[$char])) continue; $valid = $convert[$char]; if ($valid != $last) { // not repeated separator if ($valid == '-' or $valid == '_') $last = $valid; else $last = ''; $result .= $valid; } // not repeated separator } // each char if (strlen ($result) > 34) $result = substr ($result, 0, 34); $name = trim ($result, '_-'); // Can happens that the convertion eats all characters! // But if $data['name'] is set, we can silently abort. if (!strlen ($name) and isset ($formulary->data['name'])) return false; // If the received name is equal the $data['name'], nothing has to be done if (isset ($formulary->data['name']) and $name == $formulary->data['name']) return false; // In cases that the name was not set, and we not found a valid one, // we will provide a default one if (!strlen ($name) or preg_match ('/^[0-9]+$/', $name)) { // provides a default value if (isset ($control['flags']['default_value'])) $name = $control['flags']['default_value']; else $name = 'page'; } // provides a default value // Name changed // Prevent duplicated names $domainId = $formulary->document->application->domainId; $testing = $name; while ($store->domainContent->open ($domainId, $testing)) { // unduplicate name isset ($index) ? $index++ : $index = 1; $testing = $name . str_pad (strval ($index), 3, '0', STR_PAD_LEFT); } // unduplicate name $name = $testing; // If the name was changed, we need to rename all files of this section or post if (isset ($formulary->data['name'])) { // rename files $store->domainFile->renamePrefixedFiles ($formulary->document->application->domainId, $formulary->data['name'], $name); $prefix = $formulary->data['name'] . CHR_FNS; $prefixLength = strlen ($prefix); $newPrefix = $name . CHR_FNS; foreach ($formulary->data['extras'] as &$module) { // each module foreach ($module as &$property) { // each property if (!is_string ($property) or strlen ($property) < $prefixLength) continue; if (substr ($property, 0, $prefixLength) == $prefix) $property = $newPrefix . substr ($property, $prefixLength); } // each property } // each module } // rename files // If you are not so tired, please set $data['name']! $formulary->data['name'] = $name; return false; } // function save } // class eclFilter_domain_name //!eof:library/domain/eclFilter_domain_name.php; //!file:library/domain/eclGroup_domain.php; class eclGroup_domain { // class eclGroup_domain private $domainId; public function __construct ($domainId) { // function __construct $this->domainId = $domainId; } // function __construct public function check ($document) { // function check global $store; $user = $document->user; static $opened; if (!$user->userId) return 0; if (!isset ($opened)) $opened = $store->domainGroup->open ($this->domainId, 1); if (isset ($opened[$user->userId])) return $opened[$user->userId]; return 1; } // function check } // class eclGroup_domain //!eof:library/domain/eclGroup_domain.php; //!file:library/domain/eclGroup_domain_group.php; class eclGroup_domain_group { // class eclGroup_domain_group private $domainId; private $groupId; public function __construct ($domainId, $groupId) { // function __construct $this->domainId = $domainId; $this->groupId = $groupId; } // function __construct public function check ($document) { // function check global $store; $user = $document->user; static $opened = array (); if (!isset ($opened[$user->name])) $opened[$user->name] = $store->domainContent->open ($this->domainId, '-user-' . $user->name); if (isset ($opened[$user->name]['parent_id']) and $opened[$user->name]['parent_id'] == $this->groupId) return 3; return 0; } // function check } // class eclGroup_domain_group //!eof:library/domain/eclGroup_domain_group.php; //!file:library/domain/eclGroup_domain_owner.php; class eclGroup_domain_owner { // class eclGroup_domain_owner private $me; public function __construct ($me) { // function __construct $this->me = $me; } // function __construct public function check ($document) { // function check if (isset ($me->data['owner_id']) and $me->data['owner_id'] == $document->subscription->id) return 4; return 0; } // function check } // class eclGroup_domain_owner //!eof:library/domain/eclGroup_domain_owner.php; //!file:library/domain/empty/eclApp_domain_empty.php; class eclApp_domain_empty { // class eclApp_domain_empty static function is_child ($me, $name) { // function is_child if ($name == '' or $name == '-default') return true; } // function is_child static function get_menu_type () { // function get_menu_type return 'section'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array (''); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->name = ''; $me->data = $store->control->read ('domain_empty_content'); $me->ignoreSubfolders = true; unset ($me->pathway[1]); } // function constructor_helper static function dispatch ($document) { // function dispatch global $store; $me = $document->application; if (!$document->access (4)) return; $register_data = $store->domainContent->open ($me->domainId, '-register'); $formulary = $document->createFormulary ('domain_empty_edit', array (), 'domainEmpty'); $formulary->action = '_first-edit-save'; if ($formulary->command ('save') and $formulary->save ()) { // creates the index page $data = $formulary->data; $data['name'] = '-index'; $data['mode'] = MODE_DOMAIN; $data['parent_id'] = 0; $store->domainContent->insert ($me->domainId, $data); $store->domainExtras->createVersion ($me->domainId, $data, $document); if (!$register_data) { // creates register $register_data = $data; $register_data['name'] = '-register'; $store->domainContent->insert ($me->domainId, $register_data); } // creates register $domain_data = &$store->domain->openById ($me->domainId); $domain_data['status'] = 2; unset ($domain_data); $domain = $me->parent; $domain->getMap (); $domain->reset (); $document->application = $domain->child (''); $document->application->dispatch ($document); return; } // creates the index page $register_data['text']['caption'] = $me->data['text']['caption']; if (!$formulary->data) $formulary->data = $register_data; $document->dataReplace ('domainIndex_edit'); $document->mod->formulary = $formulary; if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); $document->mod->context->enabled = false; $document->mod->toolbox->enabled = false; return; } // function dispatch } // class eclApp_domain_empty //!eof:library/domain/empty/eclApp_domain_empty.php; //!file:library/domainCreate/eclApp_domainCreate.php; class eclApp_domainCreate { // class eclApp_domainCreate static function is_child ($me, $name) { // function is_child global $io, $store; if (!$name or $name[0] == '-') return false; if (!$io->database->tableEnabled ($store->domain)) return false; if ($store->domain->getStatus ($name) == 0) return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'domain'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('domainCreate_content'); $me->map = array ('userJoin', 'domainCreate_index'); $me->isDomain = true; } // function constructor_helper static function dispatch ($document) { // function dispatch } // function dispatch } // class eclApp_domainCreate //!eof:library/domainCreate/eclApp_domainCreate.php; //!file:library/domainCreate/eclApp_domainCreate_index.php; class eclApp_domainCreate_index { // class eclApp_domainCreate_index static function is_child ($me, $name) { // function is_child global $io, $store; if ($name == '' or $name == '-default') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'section'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array (''); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('domainCreate_content'); array_pop ($me->pathway); $me->ignoreSubfolders = true; } // function constructor_helper static function dispatch ($document) { // function dispatch global $store, $system; $me = $document->application; $document->data['url'] = $document->url (true, false, false); $document->data['enable_user_domains'] = SYSTEM_ENABLE_USER_DOMAINS; $document->data['enable_user_subscriptions'] = SYSTEM_ENABLE_USER_SUBSCRIPTIONS; if (!SYSTEM_ENABLE_USER_DOMAINS) return; if (!$document->access (1)) return; $data['local'] = $document->user->data['local']; $formulary = $document->createFormulary ('domainCreate_edit', $data, 'domaincreate'); if ($formulary->command ('save') and $formulary->save ()) { // save $domain['name'] = $document->domain->name; $domain['status'] = 1; mkdir (PATH_DOMAINS . $domain['name']); $domainId = $store->domain->insert ($domain); $data = $formulary->data; $data['mode'] = MODE_DOMAIN; $data['name'] = '-register'; $store->domainContent->insert ($domainId, $data); $group = &$store->domainGroup->open ($domainId, 1); $group[$document->user->userId] = 4; $document->dataReplace (array ()); $system->reset (); $document->domain = $system->child ($domain['name']); $document->application = $document->domain->child (''); $document->application->dispatch ($document); return; } // save $document->dataReplace ('domainCreate_contentCreate'); $document->mod->formulary = $formulary; if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); } // function dispatch } // class eclApp_domainCreate_index //!eof:library/domainCreate/eclApp_domainCreate_index.php; //!file:library/domainDefault/eclApp_domainDefault.php; class eclApp_domainDefault { // class eclApp_domainDefault const name = '-default'; const menuType = 'hidden'; static function constructor_helper ($me) { // function constructor_helper global $store; if ($store->domainContent->openChild ($me->domainId, MODE_DOMAIN, 0, '-default')) { // custom content $me->data = &$store->domainContent->open ($me->domainId, '-default'); $me->id = $me->data['id']; } // custom content else $me->data = $store->control->read ('domainDefault_content'); $me->ignoreSubfolders = true; } // function constructor_helper static function dispatch ($document) { // function dispatch global $store; if ($document->access (4)) { // user is admin if ($document->application->id) $view = 'custom'; else $view = 'default'; // action restore if ($document->actions ('default', 'restore') and $view == 'custom') $view = self::action_restore ($document); // action edit elseif ($document->actions ('default', 'edit') and $view == 'custom') $view = self::action_edit ($document); // action custom if ($document->actions ('default', 'edit') and $view == 'default') $document->actions['default'] = array ('default', 'custom'); if ( ($document->actions ('default', 'custom')) and $view == 'default') $view = self::action_custom ($document); // context custom if ($view == 'default' or $document->actions ('default', 'custom')) $document->mod->context->appendChild ('domainDefault_custom') ->active ($document->actions ('default', 'custom')) ->url (true, true, '_default-custom'); else { // custom tools // context edit $document->mod->context->appendChild ('domainDefault_edit') ->active ($document->actions ('default', 'edit')) ->url (true, true, '_default-edit'); // Versioning $store->domainExtras->versioning ($document); // context restore $document->mod->context->appendChild ('domainDefault_restore') ->url (true, true, '_default-restore'); $document->mod->editor->enable (); } // custom tools } // user is admin } // function dispatch static function action_custom ($document) { // function action_custom global $store; $me = $document->application; $formulary = $document->createFormulary ('domainDefault_edit', $store->control->read ('domainDefault_content')); if ($formulary->command ('cancel')) { // cancel unset ($document->actions['default']); return 'default'; } // cancel if ($formulary->command ('save') and $formulary->save ()) { // save $data = $formulary->data; $data['name'] = '-default'; $data['mode'] = MODE_DOMAIN; $data['parent_id'] = 0; $me->id = $store->domainContent->insert ($document->application->domainId, $data); $me->data = $data; $store->domainExtras->createVersion ($me->domainId, $data, $document); $document->dataReplace ($me->data); unset ($document->actions['default']); return 'custom'; } // save $formulary->action = '_default-custom'; $document->dataReplace ('domainDefault_custom'); $document->mod->formulary = $formulary; if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); $document->mod->languages->action = '_default-custom'; return 'form'; } // function action_custom static function action_edit ($document) { // function action_edit global $store; $me = $document->application; $formulary = $document->createFormulary ('domainDefault_edit', $me->data); if ($formulary->command ('cancel')) { // cancel unset ($document->actions['default']); return 'custom'; } // cancel if ($formulary->command ('save') and $formulary->save ()) { // save $data = $formulary->data; $me->data = $data; $store->domainExtras->createVersion ($me->domainId, $data, $document); $document->dataReplace ($data); unset ($document->actions['default']); return 'custom'; } // save $formulary->action = '_default-edit'; $document->dataReplace ('domainDefault_edit'); $document->mod->formulary = $formulary; if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); $document->mod->languages->action = '_default-edit'; return 'form'; } // function action_edit static function action_restore ($document) { // function action_restore global $store; $me = $document->application; unset ($me->data); $store->domainContent->delete ($me->domainId, $me->id); $store->domainExtras->deleteAllChildren ($me->domainId, $me->id); $store->domainFile->deletePrefixedFiles ($me->domainId, '-default'); $me->data = $store->control->read ('domainDefault_content'); $document->dataReplace ($me->data); $me->id = 0; return 'default'; } // function action_restore static function remove ($me) { // function remove global $store; if ($me->id) $store->domainContent->delete ($me->domainId, $me->id); $store->domainFile->deletePrefixedFiles ($me->domainId, '-default'); } // function remove } // class eclApp_domainDefault //!eof:library/domainDefault/eclApp_domainDefault.php; //!file:library/domainFiles/eclApp_domainFiles.php; class eclApp_domainFiles { // class eclApp_domainFiles static function is_child ($me, $name) { // function is_child switch ($name) { // switch name case '-files': case '-downloads': case '-play': return true; } // switch name return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names () { // function get_children_names return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper $me->ignoreSubfolders = true; $me->ignoreSession (true); } // function constructor_helper static function dispatch ($document) { // function dispatch global $io, $store; $pathway = $document->pathway; $mode = substr ($document->application->name, 1); $fileName = array_pop ($pathway); if ($mode == 'downloads') $disposition = 'attachment'; else $disposition = 'inline'; $path = FOLDER_DOMAINS . $document->domain->name . '/' . $fileName; $headers = array ( 'Content-Disposition' => $disposition, 'Cache-Control' => 'public, only-if-cached, max-age=172800' ); if ($mode == 'downloads' or $mode == 'play') { // download @list ($filePrefix, $extension) = explode ('.', $fileName); @list ($name, $target) = explode (CHR_FNS, $filePrefix); $data = &$store->domainContent->open ($document->domain->domainId, $name); if (!$data) exit; if ($mode == 'downloads' and isset ($data['extras'][$target]['filename'])) $headers['Filename'] = $data['extras'][$target]['filename']; if (!isset ($data['extras'][$target][$mode])) $data['extras'][$target][$mode] = 1; else $data['extras'][$target][$mode]++; //!start version 3 compatibility if ($mode == 'play' and isset ($data['extras'][$target]['plays']) and $data['extras'][$target]['plays'] >= $data['extras'][$target]['play']) $data['extras'][$target]['play'] = $data['extras'][$target]['plays'] + 1; $data['extras'][$target]['plays'] = $data['extras'][$target]['play']; //!end version 3 compatibility } // download $io->sendFile->send ($path, $headers); } // function dispatch } // class eclApp_domainFiles //!eof:library/domainFiles/eclApp_domainFiles.php; //!file:library/domainGlossary/eclApp_domainGlossary.php; class eclApp_domainGlossary { // class eclApp_domainGlossary static function is_child ($me, $name) { // function is_child if ($name == '-glossary') return true; return false; } // function is_child static function get_menu_type ($me) { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array ('-default'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('domainGlossary_content'); $me->map = array ('domainGlossary_keyword'); } // function constructor_helper static function dispatch ($document) { // function dispatch $document->mod->list = new eclMod_domainGlossary_list ($document); } // function dispatch } // class eclApp_domainGlossary //!eof:library/domainGlossary/eclApp_domainGlossary.php; //!file:library/domainGlossary/eclMod_domainGlossary_list.php; class eclMod_domainGlossary_list { // class eclMod_domainGlossary_list public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $me = $document->application; $row = $mod->appendChild (); $children = $store->domainContent->children ($me->domainId, MODE_KEYWORD, 0, 4, 0, 0, 'name', 'asc'); if (!$children) return; foreach ($children as $data) { // each child $pathway = $me->pathway; $pathway[] = substr ($data['name'], 5); $row->appendChild ($data) ->url ($pathway); } // each child $mod->data = $document->render->block ('modules/list_glossary'); // Se o mdulo pode ser editado if ($document->templateEditable and $document->access (4, $document->domain->groups)) { // reference $pathway = array ($document->domain->name, '-personalite', 'modules', 'list_glossary'); $mod->data['local']['personalite_url'] = $document->url ($pathway); $caption = $store->control->read ('modList_edit'); $mod->data['local']['personalite_caption'] = $caption['text']['caption']; } // reference $mod->enabled = true; } // function setModule } // class eclMod_domainGlossary_list //!eof:library/domainGlossary/eclMod_domainGlossary_list.php; //!file:library/domainGlossary/keyword/eclApp_domainGlossary_keyword.php; class eclApp_domainGlossary_keyword { // class eclApp_domainGlossary_keyword static function is_child ($me, $name) { // function is_child return true; } // function is_child static function get_menu_type ($me) { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; if (substr ($me->name, 0, 5) == '-key-') $me->name = substr ($me->name, 5); $data = &$store->domainContent->open ($me->domainId, '-key-' . strtolower ($me->name)); if ($data) { // existing content $me->data = &$data; $me->id = $data['id']; } // existing content else $me->data = $store->control->read ('domainGlossary_keyword_content'); } // function constructor_helper static function dispatch ($document) { // function dispatch global $store; $me = $document->application; if (!$me->id and $document->access (4)) self::action_create ($document); if (!$me->id) return; $view = true; if ($document->access (4)) { // admin access if ($document->actions ('entry', 'remove')) return self::action_remove ($document); if ($document->actions ('entry', 'edit')) $view = self::action_edit ($document); // Context edit $document->mod->context->appendChild ('domainGlossary_keyword_edit') ->active ($document->actions ('entry', 'edit')) ->url (true, true, '_entry-edit'); // Versioning $store->domainExtras->versioning ($document); // context remove $document->mod->context->appendChild ('domainGlossary_keyword_remove') ->url (true, true, '_entry-remove') ->confirm ('domainGlossary_keyword_removeConfirm'); if ($view) $document->mod->editor->enable (); } // admin access else $me->data['hits']++; if ($view) $document->mod->list = new eclMod_domainGlossary_keyword_list ($document); } // function dispatch static function action_create ($document) { // function action_create global $store; $me = $document->application; $formulary = $document->createFormulary ('domainGlossary_keyword_edit'); $formulary->action = '_entry-create'; if ($formulary->command ('save') and $formulary->save ()) { // save $data = $formulary->data; $data['mode'] = MODE_KEYWORD; $data['parent_id'] = 0; $data['marker'] = 1; $data['name'] = '-key-' . $me->name; $me->id = $store->domainContent->insert ($me->domainId, $data); $me->data = $data; $store->domainExtras->createVersion ($me->domainId, $me->data, $document); $document->dataReplace ($data); return true; } // save $document->mod->formulary = $formulary; if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); return false; } // function action_create static function action_edit ($document) { // function action_edit global $store; $me = $document->application; $formulary = $document->createFormulary ('domainGlossary_keyword_edit', $me->data, 'entry'); $formulary->action = '_entry-edit'; if ($formulary->command ('cancel')) { // cancel unset ($document->actions['entry']); return true; } // cancel if ($formulary->command ('save') and $formulary->save ()) { // save unset ($document->actions['entry']); $me->data = $formulary->data; $store->domainExtras->createVersion ($me->domainId, $me->data, $document); $document->dataReplace ($me->data); return true; } // save $document->mod->formulary = $formulary; $document->dataReplace ('domainGlossary_keyword_edit'); if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); return false; } // function action_edit static function action_remove ($document) { // function action_remove global $store; $me = $document->application; $store->domainFile->deletePrefixedFiles ($me->domainId, $me->data['name']); $store->domainExtras->deleteAllChildren ($me->domainId, $me->id); $store->domainContent->delete ($me->domainId, $me->id); $me->data = $store->control->read ('domainGlossary_keyword_content'); $document->dataReplace ($me->data); self::action_create ($document); } // function action_remove } // class eclApp_domainGlossary_keyword //!eof:library/domainGlossary/keyword/eclApp_domainGlossary_keyword.php; //!file:library/domainGlossary/keyword/eclMod_domainGlossary_keyword_list.php; class eclMod_domainGlossary_keyword_list { // class eclMod_domainGlossary_keyword_list public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $io, $store; $document = $this->document; $me = $document->application; $row = $mod->appendChild (); $where['domain_id'] = $me->domainId; $where['keywords'] = ':' . $me->name . ':'; $results = $store->domainContent->search ($where); foreach ($results as $data) { // each result $post = $me->findChild ($data['name']); if (!$post) continue; if (!$document->access ($post->access, $post->groups)) continue; $row->appendChild ($post->data) ->url ($post->pathway); } // each result if (!$row->children) return; $mod->data = $document->render->block ('modules/list_related'); // Se o mdulo pode ser editado if ($document->templateEditable and $document->access (4, $document->domain->groups)) { // reference $pathway = array ($document->domain->name, '-personalite', 'modules', 'list_related'); $mod->data['local']['personalite_url'] = $document->url ($pathway); $caption = $store->control->read ('modList_edit'); $mod->data['local']['personalite_caption'] = $caption['text']['caption']; } // reference $mod->enabled = true; } // function setModule } // class eclMod_domainGlossary_keyword_list //!eof:library/domainGlossary/keyword/eclMod_domainGlossary_keyword_list.php; //!file:library/domainIcons/eclApp_domainIcons.php; class eclApp_domainIcons { // class eclApp_domainIcons static function is_child ($me, $name) { // function is_child if ($name == '-icons') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names () { // function get_children_names return array ('-icons'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper $me->ignoreSubfolders = true; $me->ignoreSession (true); } // function constructor_helper static function dispatch ($document) { // function dispatch global $io, $store; $me = $document->application; $name = array_pop ($document->pathway); $data = $store->domainContent->open ($document->domain->domainId, '-styles-vars'); if (isset ($data['updated'])) $updated = date ('r', $data['updated']); elseif (defined ('SYSTEM_PACKED_DATE')) $updated = SYSTEM_PACKED_DATE; else $updated = date ('r', TIME); $document->data['flags']['modLayout_base'] = 'empty'; $document->mod->layout = new eclMod_domainIcons_layout ($document); $document->render (); $size = strval (strlen ($document->buffer)); // error_reporting (0); while (@ob_end_clean ()); $headers = is_callable ('apache_request_headers') ? apache_request_headers () : array (); header_remove ('Pragma'); header_remove ('Expires'); header_remove ('X-Powered-By'); $eTag = ($name . $updated); if (isset ($headers['ETag']) and $headers['ETag'] == $eTag) { // not modified header ('HTTP/1.1 304 Not Modified'); exit; } // not modified if (isset ($headers['If-Modified-Since']) and $headers['If-Modified-Since'] == $updated) { // not modified header ('HTTP/1.1 304 Not Modified'); exit; } // not modified header ('HTTP/1.1 200 OK'); header ('Cache-Control: public, only-if-cached, max-age=172800'); header ('Last-Modified: ' . $updated); header ('ETag: "' . $eTag . '"'); header ('Content-type: image/svg+xml'); header ('Content-Length: ' . $size); header ('Connection: close'); print $document->buffer; exit; } // function dispatch } // class eclApp_domainIcons //!eof:library/domainIcons/eclApp_domainIcons.php; //!file:library/domainIcons/eclMod_domainIcons_layout.php; class eclMod_domainIcons_layout { // class eclMod_domainIcons_layout public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $me = $document->application; $mod->enabled = true; $svg = $store->control->read ('domainIcons_layout'); $mod->data['html'] = $svg['html']; $children = $store->domainExtras->children ($me->domainId, MODE_TEMPLATE, 0); $blocks = array (); foreach ($children as $data) { // each custom block if (substr ($data['name'], 0, 6) == 'icons/') $blocks[substr ($data['name'], 6)] = $data; } // each custom block $icons = $store->control->scandir ('t', 'icons'); foreach ($icons as $name) { // each icon if (!isset ($blocks[$name])) $blocks[$name] = $store->control->read ('icons/' . $name); } // each icon foreach ($blocks as $name => $data) { // each icon $data['id'] = $name; if (isset ($data['local']['width'])) $data['scale'] = 32 / $data['local']['width']; else $data['scale'] = 1; if (isset ($data['html'])) $mod->appendChild ($data); } // each icon } // function setModule } // class eclMod_domainIcons_layout //!eof:library/domainIcons/eclMod_domainIcons_layout.php; //!file:library/domainIndex/eclApp_domainIndex.php; class eclApp_domainIndex { // class eclApp_domainIndex static function is_child ($me, $name) { // function is_child global $store; if ( ($name == '' or $name == '-index') and $store->domainContent->openChild ($me->domainId, MODE_DOMAIN, 0, '-index')) return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'section'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array (''); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = &$store->domainContent->openChild ($me->domainId, MODE_DOMAIN, 0, '-index'); $me->id = $me->data['id']; unset ($me->pathway[1]); } // function constructor_helper static function dispatch ($document) { // function dispatch global $store; $me = $document->application; $view = 'page'; if ($document->access (4)) { // user is admin // action edit if ($document->actions ('index', 'edit')) $view = self::action_edit ($document); // context edit $document->mod->context->appendChild ('domainIndex_edit') ->active ($document->actions ('index')) ->url (true, true, '_index-edit'); // Versioning $store->domainExtras->versioning ($document); // Context new section $pathway = $me->pathway; $pathway[] = '-new-section'; $document->mod->context->appendChild ('section_create_contextNewMain') ->url ($pathway); if ($view == 'page') $document->mod->editor->enable (); } // user is admin else $me->data['hits']++; if ($view == 'page') { // view $document->mod->panel->main = array ('content'); if (isset ($me->data['local']['listSections'])) { // list sections $document->mod->panel->main[] = 'listsections'; $document->mod->listsections = new eclMod_modDinamic ($document, '-index'); } // list sections if (isset ($me->data['local']['listRecents'])) { // list recents $document->mod->panel->main[] = 'listrecents'; $document->mod->listrecents = new eclMod_modDinamic ($document, '-recents'); } // list recents } // view } // function dispatch static function action_edit ($document) { // function action_edit global $store; $me = $document->application; $formulary = $document->createFormulary ('domainIndex_edit', $me->data); if ($formulary->command ('cancel')) { // cancel unset ($document->actions['index']); return 'page'; } // cancel if ($formulary->command ('save') and $formulary->save ()) { // save the index page $me->data = $formulary->data; $store->domainExtras->createVersion ($me->domainId, $me->data, $document); $document->dataReplace ($me->data); unset ($document->actions['index']); return 'page'; } // save the index page $formulary->action = '_index-edit'; $document->dataReplace ('domainIndex_edit'); $document->mod->context->help ('domainIndex_edit'); $document->mod->formulary = $formulary; if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); $document->mod->languages->action = '_index-edit'; $document->dataMerge ('domainIndex_contentEdit'); return 'form'; } // function action_edit static function remove ($me) { // function remove global $store; $store->domainContent->delete ($me->domainId, $me->id); } // function remove } // class eclApp_domainIndex //!eof:library/domainIndex/eclApp_domainIndex.php; //!file:library/domainInfo/eclApp_domainInfo.php; class eclApp_domainInfo { // class eclApp_domainInfo const name = '-info'; const menuType = 'hidden'; const dataFrom = 'domainInfo_content'; static function dispatch ($document) { // function dispatch $document->mod->formulary = $document->createFormulary ('domainInfo_view', $document->domain->data); $document->mod->list = new eclMod_domainInfo_listAdministrators ($document); $document->mod->panel->main = array ('formulary', 'list', 'content'); } // function dispatch } // class eclApp_domainInfo //!eof:library/domainInfo/eclApp_domainInfo.php; //!file:library/domainInfo/eclMod_domainInfo_listAdministrators.php; class eclMod_domainInfo_listAdministrators { // class eclMod_domainInfo_listAdministrators public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $me = $document->application; $row = $mod->appendChild (); $domainId = $me->domainId; $group = $store->domainGroup->open ($domainId, 1); foreach ($group as $userId => $status) { // each user if (!$userId or $status != 4) continue; $data = $store->userContent->open ($userId, '-register'); if (!$data) continue; $row->appendChild ($data) ->url (array (SYSTEM_PROFILES_URI, $store->user->getName ($userId))); } // each user $mod->data = $document->render->block ('modules/list_info_administrators'); // Se o mdulo pode ser editado if ($document->templateEditable and $document->access (4, $document->domain->groups)) { // reference $pathway = array ($document->domain->name, '-personalite', 'modules', 'list_glossary'); $mod->data['local']['personalite_url'] = $document->url ($pathway); $caption = $store->control->read ('modList_edit'); $mod->data['local']['personalite_caption'] = $caption['text']['caption']; } // reference $mod->enabled = true; } // function setModule } // class eclMod_domainInfo_listAdministrators //!eof:library/domainInfo/eclMod_domainInfo_listAdministrators.php; //!file:library/domainRecents/eclApp_domainRecents.php; class eclApp_domainRecents { // class eclApp_domainRecents static function is_child ($me, $name) { // function is_child if ($name == '-recents') return true; if (isset ($me->data['flags']['modRss_disable'])) return false; if ($name == 'rss.xml') return true; if (substr ($name, 0, 4) == 'rss-' and substr ($name, - 4) == '.xml') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array ('-recents'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = &$store->domainContent->openChild ($me->domainId, MODE_DOMAIN, 0, '-recents'); if (!$me->data) { // create content $data['mode'] = MODE_DOMAIN; $data['name'] = '-recents'; $data['flags']['modList_preset'] = 'recents'; $store->domainContent->insert ($me->domainId, $data); } // create content $me->data = &$store->domainContent->openChild ($me->domainId, MODE_DOMAIN, 0, '-recents'); $me->id = $me->data['id']; } // function constructor_helper static function dispatch ($document) { // function dispatch $me = $document->application; if (substr ($me->name, 0, 3) == 'rss') return self::rss ($document); } // function dispatch static function rss ($document) { // function rss global $io; $me = $document->application; $io->log->silent = true; if (preg_match ('/^rss-([a-z]+)\.xml$/', $me->name, $match)) $document->lang = $match[1]; $document->data['flags']['modLayout_base'] = 'empty'; $document->mod->layout = new eclMod_domainRecents_rss_layout ($document); } // function rss } // class eclApp_domainRecents //!eof:library/domainRecents/eclApp_domainRecents.php; //!file:library/domainRecents/eclFilter_domainRecents_link.php; class eclFilter_domainRecents_link { // class eclFilter_domainRecents_link static function create ($fieldName, $control, $formulary) { // function create $document = $formulary->document; $me = $document->application; // name $control['name'] = $fieldName; // type if (isset ($control['flags']['type'])) $control['type'] = $control['flags']['type']; else $control['type'] = 'checkbox'; if (!$me->id) { // creating post $control['value'] = 1; $formulary->appendChild ($control); return; } // creating post $recents = $document->domain->child ('-recents'); if (isset ($recents->data['links']['pages']) and in_array ($me->name, $recents->data['links']['pages'])) $control['value'] = 1; $formulary->appendChild ($control); } // function create static function save ($fieldName, $control, $formulary) { // function save global $store; if ($formulary->errorMsg) return; if (!isset ($formulary->data['domain_id'])) return; if (!isset ($formulary->data['name'])) return; $received = $formulary->received; $recents = $formulary->document->domain->child ('-recents'); if (!isset ($recents->data['links']['pages'])) $recents->data['links']['pages'] = array (); $pages = &$recents->data['links']['pages']; $name = $formulary->data['name']; if (isset ($received[$fieldName])) { // register if (!in_array ($name, $pages)) array_unshift ($pages, $name); } // register elseif (in_array ($name, $pages)) { // unregister $key = array_search ($name, $pages); unset ($pages[$key]); } // unregister if (count ($pages) > 20) array_pop ($pages); } // function save } // class eclFilter_domainRecents_link //!eof:library/domainRecents/eclFilter_domainRecents_link.php; //!file:library/domainRecents/rss/eclMod_domainRecents_rss_layout.php; class eclMod_domainRecents_rss_layout { // class eclMod_domainRecents_rss_layout public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $me = $document->domain; $mod->enabled = true; $mod->data = $store->control->read ('domainRecents_rss_layout'); $mod->data['local']['url_self'] = $document->url (true, false, false); $mod->data['local']['pubDate'] = date ('r'); $me = $document->domain->child ('-recents'); if (!isset ($me->data['links']['pages'])) exit (''); $data = array (); $sorted = array (); foreach ($me->data['links']['pages'] as $name) { // each page $data = $store->domainContent->open ($me->domainId, $name); if (!$data) continue; $sorted[$data['event_start']][] = $data; } // each page krsort ($sorted); $max = 20; if (isset ($document->domain->data['flags']['modRss_max'])) $max = $document->domain->data['flags']['modRss_max']; $index = 0; foreach ($sorted as $group) { // each group foreach ($group as $data) { // each data $post = $me->findChild ($data['name']); if (!$post or !$document->access ($post->access, $post->groups)) continue; $index++; if ($index >= $max) break 2; $mod->appendChild ($data) ->set ('pubDate', date ('r', $data['created'])) ->url ($post->pathway); } // each data } // each group } // function setModule } // class eclMod_domainRecents_rss_layout //!eof:library/domainRecents/rss/eclMod_domainRecents_rss_layout.php; //!file:library/domainScripts/eclApp_domainScripts.php; class eclApp_domainScripts { // class eclApp_domainScripts const name = '-scripts'; const ignoreSubfolders = true; static function dispatch ($document) { // function dispatch global $store; exit; } // function dispatch } // class eclApp_domainScripts //!eof:library/domainScripts/eclApp_domainScripts.php; //!file:library/domainSearch/eclApp_domainSearch.php; class eclApp_domainSearch { // class eclApp_domainSearch static function is_child ($me, $name) { // function is_child if ($name == '-search') return true; return false; } // function is_child static function get_menu_type ($me) { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array ('-search'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('domainSearch_content'); } // function constructor_helper static function dispatch ($document) { // function dispatch $document->mod->panel->main = array ('content', 'formulary', 'list'); $document->mod->formulary = new eclMod_domainSearch_formulary ($document); $document->mod->list = new eclMod_domainSearch_list ($document); } // function dispatch } // class eclApp_domainSearch //!eof:library/domainSearch/eclApp_domainSearch.php; //!file:library/domainSearch/eclMod_domainSearch_formulary.php; class eclMod_domainSearch_formulary { // class eclMod_domainSearch_formulary public $document; public function __construct ($document) { // function __construct $this->document = $document; $document->mod->search->enabled = false; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $me = $document->application; $formulary = $document->createFormulary ('domainSearch_search', array (), 'search'); $data = array (); if (isset ($document->actions['tag'][1])) { // tag $search = $document->actions['tag']; array_shift ($search); $formulary->data['key'] = implode (' ', $search); $formulary->data['tags_only'] = 1; } // tag if (isset ($document->actions['search'][1])) { // tag $search = $document->actions['search']; array_shift ($search); $formulary->data['key'] = implode (' ', $search); } // tag else { // from formulary $formulary->save (); if (isset ($formulary->data['tags_only']) and $formulary->data['tags_only']) { // tags if (isset ($formulary->data['key'])) { // key exists $action = explode (' ', $formulary->data['key']); array_unshift ($action, 'tag'); $document->actions['tag'] = $action; } // key exists } // tags else { // key if (isset ($formulary->data['key'])) { // key exists $action = explode (' ', $formulary->data['key']); array_unshift ($action, 'search'); $document->actions['search'] = $action; } // key exists } // key } // from formulary $mod->childrenMerge ($formulary->create ()); $mod->data = $document->render->block ('modules/search_options'); $mod->enabled = true; } // function setModule } // class eclMod_domainSearch_formulary //!eof:library/domainSearch/eclMod_domainSearch_formulary.php; //!file:library/domainSearch/eclMod_domainSearch_list.php; class eclMod_domainSearch_list { // class eclMod_domainSearch_list public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $io, $store; $document = $this->document; $me = $document->application; $row = $mod->appendChild (); $where['domain_id'] = $me->domainId; $keywords = ''; if (isset ($document->actions['tag'][1])) { // search tag $search = $document->actions['tag']; array_shift ($search); $keywords = implode (' ', $search); $where['keywords'] = ':' . implode (': :', $search) . ':'; } // search tag elseif (isset ($document->actions['search'][1])) { // search keywords $search = $document->actions['search']; array_shift ($search); $keywords = implode (' ', $search); $where['keywords'] = implode (' ', $search); } // search keywords else return; if (!isset ($where['keywords'][0])) return; $results = $store->domainContent->search ($where); foreach ($results as $data) { // each result $post = $me->findChild ($data['name']); if (!$post) continue; if (!$document->access ($post->access, $post->groups)) continue; $row->appendChild ($post->data) ->url ($post->pathway); } // each result $mod->data = $document->render->block ('modules/list'); if (!$row->children) { // no results $local['keywords'] = $keywords; $row->appendChild ('domainSearch_msgNoResults', $local); } // no results $mod->data = $document->render->block ('modules/list_search_results'); // Se o mdulo pode ser editado if ($document->templateEditable and $document->access (4, $document->domain->groups)) { // reference $pathway = array ($document->domain->name, '-personalite', 'modules', 'list_search_results'); $mod->data['local']['personalite_url'] = $document->url ($pathway); $caption = $store->control->read ('modList_edit'); $mod->data['local']['personalite_caption'] = $caption['text']['caption']; } // reference $mod->enabled = true; } // function setModule } // class eclMod_domainSearch_list //!eof:library/domainSearch/eclMod_domainSearch_list.php; //!file:library/domainSitemap/eclApp_domainSitemap.php; class eclApp_domainSitemap { // class eclApp_domainSitemap static function is_child ($me, $name) { // function is_child global $store; if ($name == 'robots.txt') return true; if ($name == 'sitemap.xml') return true; if (!strpos ($name, '.')) return false; $data = $store->domainContent->open ($me->domainId, '-google-webmasters'); if ($data and $data['local']['file_name'] == $name) return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names () { // function get_children_names return array ('robots.txt', 'sitemap.xml'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper if ($me->name == '-google-verify') $me->access = 4; $me->ignoreSubfolders = true; $me->ignoreSession (true); } // function constructor_helper static function dispatch ($document) { // function dispatch global $io, $store; $me = $document->application; $data = $store->domainContent->open ($me->domainId, '-google-webmasters'); if ($data and $data['local']['file_name'] == $me->name) return self::action_verify_page ($document); if ($me->name == 'robots.txt') { // robots.txt if (defined ('SYSTEM_PACKED_DATE')) $updated = SYSTEM_PACKED_DATE; else $updated = date ('r', TIME); $eTag = ('robots.txt' . $updated); $buffer = 'sitemap: ' . $document->url (array ($document->domain->name, 'sitemap.xml'), false, false) . CRLF; $size = strval (strlen ($buffer)); error_reporting (0); while (@ob_end_clean ()); header_remove ('Pragma'); header_remove ('Expires'); header_remove ('X-Powered-By'); if (isset ($headers['ETag']) and $headers['ETag'] == $eTag) { // not modified header ('HTTP/1.1 304 Not Modified'); exit; } // not modified if (isset ($headers['If-Modified-Since']) and $headers['If-Modified-Since'] == $updated) { // not modified header ('HTTP/1.1 304 Not Modified'); exit; } // not modified header ('HTTP/1.1 200 OK'); header ('Cache-Control: public, only-if-cached, max-age=172800'); header ('Last-Modified: ' . $updated); header ('ETag: "' . $eTag . '"'); header ('Content-type:text/plain'); header ('Content-Length: ' . $size); header ('Connection: close'); print $buffer; exit; } // robots.txt $document->data['flags']['modLayout_base'] = 'empty'; $document->mod->layout = new eclMod_domainSitemap_layout ($document); $document->render (); $updated = date ('r', TIME); $size = strval (strlen ($document->buffer)); // error_reporting (0); while (@ob_end_clean ()); header_remove ('Pragma'); header_remove ('Expires'); header_remove ('X-Powered-By'); header ('HTTP/1.1 200 OK'); header ('Cache-Control: public, only-if-cached, max-age=172800'); header ('Last-Modified: ' . $updated); header ('Content-type:text/xml'); header ('Content-Length: ' . $size); header ('Connection: close'); print $document->buffer; exit; } // function dispatch static function action_verify_page ($document) { // function action_verify_page global $store; $me = $document->application; $data = $store->domainContent->open ($me->domainId, '-google-webmasters'); header_remove ('Pragma'); header_remove ('Expires'); header_remove ('X-Powered-By'); header ('HTTP/1.1 200 OK'); header ('Last-Modified: ' . date ('r', $data['updated'])); header ('Content-type:text/html'); header ('Content-Length: ' . strlen ($data['local']['file_content'])); header ('Connection: close'); print $data['local']['file_content']; exit; } // function action_verify_page } // class eclApp_domainSitemap //!eof:library/domainSitemap/eclApp_domainSitemap.php; //!file:library/domainSitemap/eclMod_domainSitemap_layout.php; class eclMod_domainSitemap_layout { // class eclMod_domainSitemap_layout public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $domain = $document->domain; $mod->enabled = true; $mod->data = $store->control->read ('domainSitemap_layout'); foreach ($domain->children () as $child) { // each child $this->indexPath ($child, $mod); } // each child $domain->reset (); $names = $store->domainContent->childrenNames ($domain->domainId, MODE_SECTION, 1); foreach ($names as $name) { // each child $child = $domain->child ($name); if ($child) $this->indexPath ($child, $mod); } // each child } // function setModule private function indexPath ($me, $mod) { // function indexPath if ($me->access) return; if ($me->menuType != 'section' and $me->menuType != 'post') return; $mode = isset ($me->data['mode']) ? $me->data['mode'] : 0; switch ($mode) { // switch mode case MODE_SECTION: $priority = '0.4'; break; case MODE_POST: $priority = '0.9'; break; case MODE_DOMAIN: if ($me->data['name'] == '-index') $priority = '1'; else $priority = '0'; break; default: $priority = '0.6'; } // switch mode if (isset ($me->data['updated']) and intval ($me->data['updated'])) $updated = date ('c', intval ($me->data['updated'])); elseif (defined ('SYSTEM_PACKED_DATE')) $updated = date ('c', intval (SYSTEM_PACKED_DATE)); else $updated = date ('c', TIME); $mod->appendChild (array ( 'url' => $this->document->url ($me->pathway), 'date' => $updated, 'priority' => $priority )); foreach ($me->children () as $child) { // each child $this->indexPath ($child, $mod); } // each child } // function indexPath } // class eclMod_domainSitemap_layout //!eof:library/domainSitemap/eclMod_domainSitemap_layout.php; //!file:library/domainStyles/eclApp_domainStyles.php; class eclApp_domainStyles { // class eclApp_domainStyles static function is_child ($me, $name) { // function is_child if ($name == '-styles') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names () { // function get_children_names return array ('-styles'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper $me->ignoreSubfolders = true; $me->ignoreSession (true); } // function constructor_helper static function dispatch ($document) { // function dispatch global $io, $store; $me = $document->application; $name = array_pop ($document->pathway); $data = $store->domainContent->open ($document->domain->domainId, '-styles-vars'); if (isset ($data['updated'])) $updated = date ('r', $data['updated']); elseif (defined ('SYSTEM_PACKED_DATE')) $updated = SYSTEM_PACKED_DATE; else $updated = date ('r', TIME); $document->data['flags']['modLayout_base'] = 'empty'; $document->mod->layout = new eclMod_domainStyles_layout ($document); $document->render (); $size = strval (strlen ($document->buffer)); // error_reporting (0); while (@ob_end_clean ()); $headers = is_callable ('apache_request_headers') ? apache_request_headers () : array (); header_remove ('Pragma'); header_remove ('Expires'); header_remove ('X-Powered-By'); $eTag = ($name . $updated); if (isset ($headers['ETag']) and $headers['ETag'] == $eTag) { // not modified header ('HTTP/1.1 304 Not Modified'); exit; } // not modified if (isset ($headers['If-Modified-Since']) and $headers['If-Modified-Since'] == $updated) { // not modified header ('HTTP/1.1 304 Not Modified'); exit; } // not modified header ('HTTP/1.1 200 OK'); header ('Cache-Control: public, only-if-cached, max-age=172800'); header ('Last-Modified: ' . $updated); header ('ETag: "' . $eTag . '"'); header ('Content-type:text/css'); header ('Content-Length: ' . $size); header ('Connection: close'); print $document->buffer; exit; } // function dispatch } // class eclApp_domainStyles //!eof:library/domainStyles/eclApp_domainStyles.php; //!file:library/domainStyles/eclMod_domainStyles_layout.php; class eclMod_domainStyles_layout { // class eclMod_domainStyles_layout public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $render = $document->render; $me = $document->application; $mod->enabled = true; $template = $render->block ('templates/default'); $preset = $store->control->read ('domainStyles_preset'); $local = $preset['local']; foreach (array ('palettes', 'themes') as $folder) { // each folder if (isset ($template['local'][$folder])) $block = $render->block ($folder . '/' . $template['local'][$folder]); if (!isset ($block['local']) or !$block['local']) $block = $render->block ($folder . '/default'); $local = array_replace ($local, $block['local']); } // each folder $block = $render->block ('themes/user'); if (isset ($block['local']) and $block['local']) $local = array_replace ($local, $block['local']); $buffer = ''; if (isset ($template['local']['styles'])) $all['styles'] = explode (CRLF, $template['local']['styles']); else $all['styles'][] = 'default'; foreach ($all['styles'] as $name) { // each stylesheet $block = $render->block ('styles/' . $name); if (isset ($block['html'])) $buffer .= $block['html']; } // each stylesheet $mod->data['local'] = $local; $mod->data['html'] = $buffer; } // function setModule } // class eclMod_domainStyles_layout //!eof:library/domainStyles/eclMod_domainStyles_layout.php; //!file:library/domainSubscription/eclApp_domainSubscription.php; class eclApp_domainSubscription { // class eclApp_domainSubscription static function is_child ($me, $name) { // function is_child if ($name == '-subscriptions') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array ('-subscriptions'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper $me->map = array ('domainSubscription_view'); $me->access = 4; } // function constructor_helper static function dispatch ($document) { // function dispatch } // function dispatch } // class eclApp_domainSubscription //!eof:library/domainSubscription/eclApp_domainSubscription.php; //!file:library/domainSubscription/view/eclApp_domainSubscription_view.php; class eclApp_domainSubscription_view { // class eclApp_domainSubscription_view static function is_child ($me, $name) { // function is_child return true; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; if (substr ($me->name, 0, 6) == '-user-') $me->name = substr ($me->name, 6); $me->data = &$store->domainContent->open ($me->domainId, '-user-' . $me->name); if (isset ($me->data['id'])) $me->id = $me->data['id']; $me->access = 4; $me->map = array ('domainSubscription_task'); } // function constructor_helper static function dispatch ($document) { // function dispatch } // function dispatch } // class eclApp_domainSubscription_view //!eof:library/domainSubscription/view/eclApp_domainSubscription_view.php; //!file:library/endpoints/eclApp_endpoints.php; class eclApp_endpoints { // class eclApp_endpoints static function is_child ($me, $name) { // function is_child if ($name == '-services' or $name == '-endpoints') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array ('-services'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper $me->getMap (); } // function constructor_helper static function dispatch ($document) { // function dispatch } // function dispatch } // class eclApp_endpoints //!eof:library/endpoints/eclApp_endpoints.php; //!file:library/financial/eclApp_financial.php; class eclApp_financial { // class eclApp_financial const name = 'financial'; const menuType = 'section'; const dataFrom = 'financial_content'; const map = 'financialProjects financialIncoming financialOutgoing financialResources financialCharges'; const access = 4; const isDomain = true; static function dispatch ($document) { // function dispatch $document->mod->list = new eclMod_admin_list ($document); } // function dispatch } // class eclApp_financial //!eof:library/financial/eclApp_financial.php; //!file:library/financialAccount/create/eclApp_financialAccount_create.php; class eclApp_financialAccount_create { // class eclApp_financialAccount_create static function is_child ($me, $name) { // function is_child if ($name == '-new-account') return true; return false; } // function is_child static function get_menu_type ($me) { // function get_menu_type global $store; return 'post'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array ('-new-account'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('financialAccount_create_content'); $me->ignoreSubfolders = true; $me->access = 4; $me->getMap (); } // function constructor_helper static function dispatch ($document) { // function dispatch global $io, $store; $me = $document->application; if (!isset ($document->actions['create'][1])) goto show_list; $type = $document->actions['create'][1]; if (!is_object ($document->application->child ($type))) goto show_list; $preset = $document->application->child ($type)->child ('-preset'); if (!is_object ($preset)) goto show_list; $data = $preset->data; unset ($data['text']); $formulary = $document->createFormulary ('financialAccount_create_edit', $data, 'accountEdit'); if ($formulary->command ('cancel')) { // return to parent page $parent = $document->application->parent; if ($parent->isDomain) $parent = $parent->child (''); $document->application = $parent; $document->application->dispatch ($document); $document->reload = $document->url (); return; } // return to parent page // Salvar formulrio e redespachar if ($formulary->command ('save') and $formulary->save (1)) { // save account $parent = $document->application->parent; $data = &$formulary->data; $data['mode'] = MODE_ACCOUNT; $data['parent_id'] = 0; $data['id'] = $store->domainContent->insert ($parent->domainId, $data); $me->id = $data['id']; $formulary->save (2); $io->database->commit (); $me->data = &$store->domainContent->openById ($me->domainId, $me->id); $me->data = $formulary->data; $parent->reset (); $document->application = $parent->child ($data['name']); $document->reload = $document->url (); $document->application->dispatch ($document); return; } // save account // Sugesto de texto if (!isset ($formulary->data['text']) and isset ($preset->data['text'])) $formulary->data['text'] = $preset->data['text']; // Exibir formulrio $formulary->action = '_create-' . $type; $document->mod->formulary = $formulary; if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); $document->mod->languages->action = '_create-' . $type; $document->mod->instructor->addMessage ('financialAccount' . ucfirst ($type) . '_helpCreate'); return; // Exibir lista de opes show_list: unset ($document->actions['create']); $document->mod->list = new eclMod_financialAccount_create_list ($document); } // function dispatch } // class eclApp_financialAccount_create //!eof:library/financialAccount/create/eclApp_financialAccount_create.php; //!file:library/financialAccount/create/eclMod_financialAccount_create_list.php; class eclMod_financialAccount_create_list { // class eclMod_financialAccount_create_list public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $row = $mod->appendChild (); $pathway = $this->document->application->pathway; foreach ($this->document->application->children () as $child) { // each child $row->appendChild ($child) ->virtual (1) ->url ($pathway, true, '_create-' . $child->name); } // each child $mod->data = $store->control->read ('modules/list_folder'); $mod->enabled = true; } // function setModule } // class eclMod_financialAccount_create_list //!eof:library/financialAccount/create/eclMod_financialAccount_create_list.php; //!file:library/financialAccount/eclApp_financialAccount.php; class eclApp_financialAccount { // class eclApp_financialAccount static function is_child ($me, $name) { // function is_child global $store; $data = $store->domainContent->openChild ($me->domainId, MODE_ACCOUNT, 0, $name); if ($data) return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'account'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names global $store; return $store->domainContent->childrenNames ($me->domainId, MODE_ACCOUNT, 0); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = &$store->domainContent->open ($me->domainId, $me->name); $me->id = $me->data['id']; if ($me->data['access'] > $me->access) $me->access = $me->data['access']; if (isset ($me->data['flags']['financialAccount_type'])) $class = 'eclApp_financialAccount' . ucfirst ($me->data['flags']['financialAccount_type']); else $class = 'eclApp_financialAccountBank'; $class::constructor_helper ($me); } // function constructor_helper static function dispatch ($document) { // function dispatch global $store; $me = $document->application; $view = true; if ($document->access (4)) { // user is admin if ($document->actions ('account', 'edit')) $view = self::action_edit ($document); elseif ($document->actions ('account', 'remove')) return self::action_remove ($document); elseif ($document->actions ('account', 'move')) self::action_move ($document); // Context Edit $document->mod->context->appendChild ('financialAccount_edit') ->active ($document->actions ('account', 'edit')) ->url (true, true, '_account-edit'); // Context Remove $document->mod->context->appendChild ('financialAccount_remove') ->url (true, true, '_account-remove') ->confirm ('financialAccount_removeConfirm'); // Context Move up if ($me->data['index']) $document->mod->context->appendChild ('financialAccount_moveUp') ->url (true, true, '_account-move-up'); // Context Move down if ($me->data['index'] < count ($store->domainContent->children ($me->domainId, MODE_ACCOUNT, $me->data['parent_id'])) - 1) $document->mod->context->appendChild ('financialAccount_moveDown') ->url (true, true, '_account-move-down'); } // user is admin if ($view) { // view account if (!$document->access (3) and !isset ($me->data['flags']['modHits_disable'])) $me->data['hits']++; if (isset ($me->data['flags']['financialAccount_type'])) $class = 'eclApp_financialAccount' . ucfirst ($me->data['flags']['financialAccount_type']); else $class = 'eclApp_financialAccountBank'; $class::dispatch ($document); } // view account } // function dispatch static function action_edit ($document) { // function action_edit $formulary = $document->createFormulary ('financialAccount_edit', $document->application->data, 'accountEdit'); if ($formulary->command ('cancel')) { // cancel unset ($document->actions['account']); return true; } // cancel if ($formulary->command ('save') and $formulary->save ()) { // save formulary unset ($document->actions['account']); $document->application->data = $formulary->data; $document->application->reset (); if ($document->application->name != $formulary->data['name']) { // update name $document->application->name = $formulary->data['name']; array_pop ($document->application->pathway); $document->application->pathway[] = $formulary->data['name']; $document->reload = $document->url (); } // update name else $document->dataReplace ($document->application->data); return true; } // save formulary $formulary->action = '_account-edit-save'; $document->mod->formulary = $formulary; if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); $document->mod->languages->action = '_account-edit'; $document->dataMerge ('financialAccount_contentEdit'); return false; } // function action_edit static function action_remove ($document) { // function action_remove global $store, $io; $me = $document->application; unset ($document->actions['account']); $parent = $me->parent; $me->remove (); $parent->reset (); // reindex brothers $store->domainContent->childrenReindex ($parent->domainId, MODE_ACCOUNT, $parent->id); if ($parent->isDomain) $document->application = $parent->child (''); else $document->application = $parent; $document->reload = $document->url (); $document->application->dispatch ($document); } // function action_remove static function action_move ($document) { // function action_move global $store; $parentId = $document->application->data['parent_id']; $name = $document->application->name; $parent = $document->application->parent; unset ($document->application); $parent->reset (); $store->domainContent->childrenReindex ($parent->domainId, MODE_ACCOUNT, $parentId); $names = $store->domainContent->childrenNames ($parent->domainId, MODE_ACCOUNT, $parentId); $index = array_search ($name, $names); $length = count ($names) - 1; if ($document->actions ('account', 'move', 'up') and $index) { // move up $move_up = &$store->domainContent->open ($parent->domainId, $names[$index]); $move_down = &$store->domainContent->open ($parent->domainId, $names[$index - 1]); $move_up['index']--; $move_down['index']++; } // move up elseif ($document->actions ('account', 'move', 'down') and $index < $length) { // move down $move_up = &$store->domainContent->open ($parent->domainId, $names[$index + 1]); $move_down = &$store->domainContent->open ($parent->domainId, $names[$index]); $move_up['index']--; $move_down['index']++; } // move down unset ($document->actions['account']); $document->application = $parent->child ($name); } // function action_move static function remove ($me) { // function remove if (isset ($me->data['flags']['financialAccount_type'])) $class = 'eclApp_financialAccount' . ucfirst ($me->data['flags']['financialAccount_type']); else $class = 'eclApp_financialAccountBank'; if (is_callable ($class . '::remove')) $class::remove ($me); global $store; $store->domainContent->delete ($me->domainId, $me->id); $store->domainFile->deletePrefixedFiles ($me->domainId, $me->name); } // function remove } // class eclApp_financialAccount //!eof:library/financialAccount/eclApp_financialAccount.php; //!file:library/financialAccount/eclFilter_financialAccount_choosePaymentMethod.php; class eclFilter_financialAccount_choosePaymentMethod { // class eclFilter_financialAccount_choosePaymentMethod static function create ($fieldName, $control, $formulary) { // function create global $store; $document = $formulary->document; $me = $document->domain->child ('-tools')->child ('financial')->child ('resources'); $control['local']['type'] = 'radio'; $control['local']['name'] = $fieldName; $item = $formulary->appendChild ($control); foreach ($me->children () as $account) { // each account foreach ($account->children () as $method) { // each method if ($method->menuType != 'method') continue; $item->appendChild ($method->data, array ( 'value' => $account->name . '/' . $method->name, 'name' => $fieldName )); } // each method } // each account } // function create static function save ($fieldName, $control, $formulary) { // function save if (!isset ($formulary->received[$fieldName][0])) return $formulary->setErrorMsg ($control, $fieldName); $parts = explode ('/', $formulary->received[$fieldName]); if (count ($parts) < 2) return $formulary->setErrorMsg ($control, $fieldName); $formulary->data['account'] = $parts[0]; $formulary->data['method'] = $parts[1]; } // function save } // class eclFilter_financialAccount_choosePaymentMethod //!eof:library/financialAccount/eclFilter_financialAccount_choosePaymentMethod.php; //!file:library/financialAccount/eclFilter_financialAccount_specialFields.php; class eclFilter_financialAccount_specialFields { // class eclFilter_financialAccount_specialFields static function create ($fieldName, $control, $formulary) { // function create global $store; if (!isset ($formulary->data['flags']['financialAccount_type'])) return; if (!isset ($control['flags']['sufix'])) return; $special = $store->control->read ('financialAccount' . ucfirst ($formulary->data['flags']['financialAccount_type']) . $control['flags']['sufix']); if (isset ($special['children'])) $formulary->insertControlChildren ($special); } // function create static function save ($fieldName, $control, $formulary) { // function save global $store; if (!isset ($formulary->data['flags']['financialAccount_type'])) return; if (!isset ($control['flags']['sufix'])) return; $special = $store->control->read ('financialAccount' . ucfirst ($formulary->data['flags']['financialAccount_type']) . $control['flags']['sufix']); if (isset ($special['children'])) $formulary->insertControlChildren ($special); } // function save } // class eclFilter_financialAccount_specialFields //!eof:library/financialAccount/eclFilter_financialAccount_specialFields.php; //!file:library/financialAccountBank/create/eclApp_financialAccountBank_create.php; class eclApp_financialAccountBank_create { // class eclApp_financialAccountBank_create static function is_child ($me, $name) { // function is_child if ($name == 'bank') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array ('bank'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('financialAccountBank_create_content'); $me->map = array ('section_preset'); } // function constructor_helper static function dispatch ($document) { // function dispatch } // function dispatch } // class eclApp_financialAccountBank_create //!eof:library/financialAccountBank/create/eclApp_financialAccountBank_create.php; //!file:library/financialAccountBank/deposit/eclApp_financialAccountBank_deposit.php; class eclApp_financialAccountBank_deposit { // class eclApp_financialAccountBank_deposit static function is_child ($me, $name) { // function is_child if ($name != 'deposit') return false; if (isset ($me->data['flags']['pay']['deposit'])) return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'method'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names if (isset ($me->data['flags']['pay']['deposit'])) return array ('deposit'); return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('financialAccountBank_deposit_content'); $me->data['text']['account'] = $me->parent->data['text']['title']; } // function constructor_helper static function dispatch ($document) { // function dispatch } // function dispatch } // class eclApp_financialAccountBank_deposit //!eof:library/financialAccountBank/deposit/eclApp_financialAccountBank_deposit.php; //!file:library/financialAccountBank/eclApp_financialAccountBank.php; class eclApp_financialAccountBank { // class eclApp_financialAccountBank static function constructor_helper ($me) { // function constructor_helper $me->map = array ('financialAccountBank_deposit'); } // function constructor_helper static function dispatch ($document) { // function dispatch } // function dispatch static function remove ($me) { // function remove } // function remove } // class eclApp_financialAccountBank //!eof:library/financialAccountBank/eclApp_financialAccountBank.php; //!file:library/financialAccountCash/cash/eclApp_financialAccountCash_cash.php; class eclApp_financialAccountCash_cash { // class eclApp_financialAccountCash_cash static function is_child ($me, $name) { // function is_child if ($name != 'cash') return false; if (isset ($me->data['flags']['pay']['cash'])) return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'method'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names if (isset ($me->data['flags']['pay']['cash'])) return array ('cash'); return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('financialAccountCash_cash_content'); } // function constructor_helper static function dispatch ($document) { // function dispatch $document->mod->list = new eclMod_admin_list ($document); } // function dispatch } // class eclApp_financialAccountCash_cash //!eof:library/financialAccountCash/cash/eclApp_financialAccountCash_cash.php; //!file:library/financialAccountCash/create/eclApp_financialAccountCash_create.php; class eclApp_financialAccountCash_create { // class eclApp_financialAccountCash_create static function is_child ($me, $name) { // function is_child if ($name == 'cash') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array ('cash'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('financialAccountCash_create_content'); $me->map = array ('section_preset'); } // function constructor_helper static function dispatch ($document) { // function dispatch } // function dispatch } // class eclApp_financialAccountCash_create //!eof:library/financialAccountCash/create/eclApp_financialAccountCash_create.php; //!file:library/financialAccountCash/eclApp_financialAccountCash.php; class eclApp_financialAccountCash { // class eclApp_financialAccountCash static function constructor_helper ($me) { // function constructor_helper $me->map = array ('financialAccountCash_cash'); } // function constructor_helper static function dispatch ($document) { // function dispatch } // function dispatch static function remove ($me) { // function remove } // function remove } // class eclApp_financialAccountCash //!eof:library/financialAccountCash/eclApp_financialAccountCash.php; //!file:library/financialCharges/eclApp_financialCharges.php; class eclApp_financialCharges { // class eclApp_financialCharges static function is_child ($parent, $name) { // function is_child if ($name == 'charges') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'section'; } // function get_menu_type static function get_children_names () { // function get_children_names return array ('charges'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('financialCharges_content'); } // function constructor_helper static function dispatch ($document) { // function dispatch global $store; $me = $document->application; $document->mod->list = new eclMod_financialCharges_list ($document); } // function dispatch } // class eclApp_financialCharges //!eof:library/financialCharges/eclApp_financialCharges.php; //!file:library/financialCharges/eclMod_financialCharges_list.php; class eclMod_financialCharges_list { // class eclMod_financialCharges_list public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $me = $document->application; $mod->data = $store->control->read ('financialCharges_list'); $mod->data = array_replace_recursive ($store->control->read ('modules/list_card'), $mod->data); $mod->data['local']['list'] = 'table'; // Headers $row = $mod->appendChild (); $row->appendChild ('financialCharges_listOwner'); $row->appendChild ('financialCharges_listDescription'); $row->appendChild ('financialCharges_listDue'); $where = array ( 'domain_id' => $me->domainId, 'mode' => MODE_CONTRACT, 'spotlight' => 101 ); $contracts = $store->domainContent->search ($where, 4, 0, 0, 'event_start'); foreach ($contracts as $contract) { // each contract $row = $mod->appendChild (); // Owner $owner = $store->domainContent->openById ($me->domainId, $contract['subscription_id']); $row->appendChild ($owner); // Contract subject $subject = $store->domainContent->openById ($me->domainId, $contract['parent_id']); $row->appendChild ($subject) ->url ($store->domainContent->pathway ($me->domainId, $contract['id'])) ->popUpOpen (); // date $local['text']['caption'] = $document->textMerge (date ('Y-m-d', $contract['event_start'])); $row->appendChild ($local); } // each contract $mod->enabled = true; } // function setModule } // class eclMod_financialCharges_list //!eof:library/financialCharges/eclMod_financialCharges_list.php; //!file:library/financialIncoming/eclApp_financialIncoming.php; class eclApp_financialIncoming { // class eclApp_financialIncoming static function is_child ($me, $name) { // function is_child if ($name == 'incoming') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'section'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array ('incoming'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = &$store->domainContent->openChild ($me->domainId, MODE_FOLDER, 0, '-incoming'); if ($me->data) { // data exists $me->id = $me->data['id']; return; } // data exists $data = $store->control->read ('financialIncoming_preset'); $data['mode'] = MODE_FOLDER; $data['marker'] = 52; $data['name'] = '-incoming'; $me->id = $store->domainContent->insert ($me->domainId, $data); $me->data = $data; } // function constructor_helper static function dispatch ($document) { // function dispatch $me = $document->application; $view = true; // action edit if ($document->actions ('incoming', 'edit')) $view = self::action_edit ($document); // context edit $document->mod->context->appendChild ('financialIncoming_edit') ->active ($document->actions ('incoming', 'edit')) ->url (true, true, '_incoming-edit'); if (!$view) return; $document->mod->list = new eclMod_financialIncoming_list ($document); } // function dispatch static function action_edit ($document) { // function action_edit $me = $document->application; $formulary = $document->createFormulary ('financialIncoming_edit', $me->data, 'incoming'); $formulary->action = '_incoming-edit'; if ($formulary->command ('cancel')) { // cancel unset ($document->actions['incoming']); return true; } // cancel if ($formulary->command ('save') and $formulary->save ()) { // save unset ($document->actions['incoming']); $me->data = $formulary->data; $document->dataReplace ($me->data); return true; } // save $document->mod->formulary = $formulary; if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); $document->dataReplace ('financialIncoming_edit'); return false; } // function action_edit } // class eclApp_financialIncoming //!eof:library/financialIncoming/eclApp_financialIncoming.php; //!file:library/financialOutgoing/eclApp_financialOutgoing.php; class eclApp_financialOutgoing { // class eclApp_financialOutgoing static function is_child ($me, $name) { // function is_child if ($name == 'outgoing') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'section'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array ('outgoing'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = &$store->domainContent->openChild ($me->domainId, MODE_FOLDER, 0, '-outgoing'); if ($me->data) { // data exists $me->id = $me->data['id']; return; } // data exists $data = $store->control->read ('financialOutgoing_preset'); $data['mode'] = MODE_FOLDER; $data['marker'] = 52; $data['name'] = '-outgoing'; $me->id = $store->domainContent->insert ($me->domainId, $data); $me->data = $data; } // function constructor_helper static function dispatch ($document) { // function dispatch $me = $document->application; $view = true; // action edit if ($document->actions ('outgoing', 'edit')) $view = self::action_edit ($document); // context edit $document->mod->context->appendChild ('financialOutgoing_edit') ->active ($document->actions ('outgoing', 'edit')) ->url (true, true, '_outgoing-edit'); if (!$view) return; $document->mod->list = new eclMod_financialOutgoing_list ($document); } // function dispatch static function action_edit ($document) { // function action_edit $me = $document->application; $formulary = $document->createFormulary ('financialOutgoing_edit', $me->data, 'outgoing'); $formulary->action = '_outgoing-edit'; if ($formulary->command ('cancel')) { // cancel unset ($document->actions['outgoing']); return true; } // cancel if ($formulary->command ('save') and $formulary->save ()) { // save unset ($document->actions['outgoing']); $me->data = $formulary->data; $document->dataReplace ($me->data); return true; } // save $document->mod->formulary = $formulary; if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); $document->dataReplace ('financialOutgoing_edit'); return false; } // function action_edit } // class eclApp_financialOutgoing //!eof:library/financialOutgoing/eclApp_financialOutgoing.php; //!file:library/financialProjects/course/eclApp_financialProjects_course.php; class eclApp_financialProjects_course { // class eclApp_financialProjects_course static function is_child ($me, $name) { // function is_child global $store; if ($store->domainContent->open ($me->domainId, $name)) return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names () { // function get_children_names return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->domainContent->open ($me->domainId, $me->name); $me->map = array (); } // function constructor_helper static function dispatch ($document) { // function dispatch $document->mod->list = new eclMod_admin_list ($document); } // function dispatch } // class eclApp_financialProjects_course //!eof:library/financialProjects/course/eclApp_financialProjects_course.php; //!file:library/financialProjects/course/eclApp_financialProjects_course_class.php; class eclApp_financialProjects_course_class { // class eclApp_financialProjects_course_class static function is_child ($me, $name) { // function is_child global $store; if ($store->domainContent->open ($me->domainId, $name)) return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names () { // function get_children_names return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->domainContent->open ($me->domainId, $me->name); $me->map = array (); } // function constructor_helper static function dispatch ($document) { // function dispatch $document->mod->list = new eclMod_admin_list ($document); } // function dispatch } // class eclApp_financialProjects_course_class //!eof:library/financialProjects/course/eclApp_financialProjects_course_class.php; //!file:library/financialProjects/course/eclMod_financialProjects_course_list.php; class eclMod_financialProjects_course_list { // class eclMod_financialProjects_course_list public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $me = $document->application; $mod->data = $store->control->read ('financialProjects_list'); $mod->data = array_replace_recursive ($store->control->read ('modules/list_card'), $mod->data); $row = $mod->appendChild (); $where = array ( 'domain_id' => $me->domainId, 'mode' => MODE_SECTION, 'marker' => 60 ); $projects = $store->domainContent->search ($where); foreach ($projects as $data) { // each data $row->appendChild ($data) ->appendFolder ($data['name']); } // each data $mod->enabled = true; } // function setModule } // class eclMod_financialProjects_course_list //!eof:library/financialProjects/course/eclMod_financialProjects_course_list.php; //!file:library/financialProjects/eclApp_financialProjects.php; class eclApp_financialProjects { // class eclApp_financialProjects static function is_child ($me, $name) { // function is_child if ($name == 'projects') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'section'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array ('projects'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->map = array ('financialProjects_course'); $me->data = &$store->domainContent->openChild ($me->domainId, MODE_FOLDER, 0, '-projects'); if ($me->data) { // data exists $me->id = $me->data['id']; return; } // data exists $data = $store->control->read ('financialProjects_preset'); $data['mode'] = MODE_FOLDER; $data['marker'] = 52; $data['name'] = '-projects'; $me->id = $store->domainContent->insert ($me->domainId, $data); $me->data = $data; } // function constructor_helper static function dispatch ($document) { // function dispatch $me = $document->application; $view = true; // action edit if ($document->actions ('projects', 'edit')) $view = self::action_edit ($document); // context edit $document->mod->context->appendChild ('financialProjects_edit') ->active ($document->actions ('projects', 'edit')) ->url (true, true, '_projects-edit'); if (!$view) return; $document->mod->list = new eclMod_financialProjects_list ($document); } // function dispatch static function action_edit ($document) { // function action_edit $me = $document->application; $formulary = $document->createFormulary ('financialProjects_edit', $me->data, 'projects'); $formulary->action = '_projects-edit'; if ($formulary->command ('cancel')) { // cancel unset ($document->actions['projects']); return true; } // cancel if ($formulary->command ('save') and $formulary->save ()) { // save unset ($document->actions['projects']); $me->data = $formulary->data; $document->dataReplace ($me->data); return true; } // save $document->mod->formulary = $formulary; if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); $document->dataReplace ('financialProjects_edit'); return false; } // function action_edit } // class eclApp_financialProjects //!eof:library/financialProjects/eclApp_financialProjects.php; //!file:library/financialProjects/eclMod_financialProjects_list.php; class eclMod_financialProjects_list { // class eclMod_financialProjects_list public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $me = $document->application; $mod->data = $store->control->read ('financialProjects_list'); $mod->data = array_replace_recursive ($store->control->read ('modules/list_card'), $mod->data); $row = $mod->appendChild (); $where = array ( 'domain_id' => $me->domainId, 'mode' => MODE_SECTION, 'marker' => 60 ); $projects = $store->domainContent->search ($where); foreach ($projects as $data) { // each data $row->appendChild ($data) ->appendFolder ($data['name']); } // each data $mod->enabled = true; } // function setModule } // class eclMod_financialProjects_list //!eof:library/financialProjects/eclMod_financialProjects_list.php; //!file:library/financialResources/eclApp_financialResources.php; class eclApp_financialResources { // class eclApp_financialResources static function is_child ($me, $name) { // function is_child if ($name == 'resources') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'section'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array ('resources'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->map = array ('financialAccount', 'financialAccount_create'); $me->data = &$store->domainContent->openChild ($me->domainId, MODE_FOLDER, 0, '-resources'); if ($me->data) { // data exists $me->id = $me->data['id']; return; } // data exists $data = $store->control->read ('financialResources_preset'); $data['mode'] = MODE_FOLDER; $data['marker'] = 52; $data['name'] = '-resources'; $me->id = $store->domainContent->insert ($me->domainId, $data); $me->data = $data; } // function constructor_helper static function dispatch ($document) { // function dispatch $me = $document->application; $view = true; // action edit if ($document->actions ('resources', 'edit')) $view = self::action_edit ($document); // context edit $document->mod->context->appendChild ('financialResources_edit') ->active ($document->actions ('resources', 'edit')) ->url (true, true, '_resources-edit'); // context new account $document->mod->context->appendChild ('financialAccount_create_contextNew') ->appendFolder ('-new-account'); if (!$view) return; $document->mod->list = new eclMod_financialResources_list ($document); } // function dispatch static function action_edit ($document) { // function action_edit $me = $document->application; $formulary = $document->createFormulary ('financialResources_edit', $me->data, 'resources'); $formulary->action = '_resources-edit'; if ($formulary->command ('cancel')) { // cancel unset ($document->actions['resources']); return true; } // cancel if ($formulary->command ('save') and $formulary->save ()) { // save unset ($document->actions['resources']); $me->data = $formulary->data; $document->dataReplace ($me->data); return true; } // save $document->mod->formulary = $formulary; if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); $document->dataReplace ('financialResources_edit'); return false; } // function action_edit } // class eclApp_financialResources //!eof:library/financialResources/eclApp_financialResources.php; //!file:library/financialResources/eclMod_financialResources_list.php; class eclMod_financialResources_list { // class eclMod_financialResources_list public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $me = $document->application; $mod->data = $store->control->read ('financialResources_list'); $mod->data = array_replace_recursive ($store->control->read ('modules/list_card'), $mod->data); $row = $mod->appendChild (); $children = $store->domainContent->children ($me->domainId, MODE_ACCOUNT, 0); foreach ($children as $data) { // each data $row->appendChild ($data) ->appendFolder ($data['name']); } // each data $mod->enabled = true; } // function setModule } // class eclMod_financialResources_list //!eof:library/financialResources/eclMod_financialResources_list.php; //!file:library/home/create/eclApp_home_create.php; class eclApp_home_create { // class eclApp_home_create static function is_child ($me, $name) { // function is_child if ($name == '-new-section') return true; return false; } // function is_child static function get_menu_type ($me) { // function get_menu_type return 'section'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array ('-new-section'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('home_create_content'); $me->ignoreSubfolders = true; $me->access = 4; $me->getMap (); } // function constructor_helper static function dispatch ($document) { // function dispatch global $io, $store; $me = $document->application; if (!isset ($document->actions['create'][1])) goto show_list; $type = $document->actions['create'][1]; if (!is_object ($document->application->child ($type))) goto show_list; $preset = $document->application->child ($type)->child ('-preset'); if (!is_object ($preset)) goto show_list; $data = $preset->data; unset ($data['text']); $formulary = $document->createFormulary ('home_create_edit', $data, 'sectionEdit'); if ($formulary->command ('cancel')) { // return to parent page $parent = $document->application->parent; if ($parent->isDomain) $parent = $parent->child (''); $document->application = $parent; $document->application->dispatch ($document); $document->reload = $document->url (); return; } // return to parent page // Salvar formulrio e redespachar if ($formulary->command ('save') and $formulary->save (1)) { // save section $parent = $document->application->parent; $data = &$formulary->data; $data['mode'] = MODE_SECTION; $data['parent_id'] = $parent->id; $data['id'] = $store->userContent->insert ($parent->userId, $data); $me->id = $data['id']; $formulary->save (2); $io->database->commit (); $me->data = &$store->userContent->openById ($me->userId, $me->id); $me->data = $formulary->data; $store->userExtras->createVersion ($me->userId, $data, $document); $parent->reset (); $document->application = $parent->child ($data['name']); $document->reload = $document->url (); $document->application->dispatch ($document); return; } // save section // Sugesto de texto if (!isset ($formulary->data['text']) and isset ($preset->data['text'])) $formulary->data['text'] = $preset->data['text']; // Exibir formulrio $formulary->action = '_create-' . $type; $document->mod->formulary = $formulary; if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); $document->mod->languages->action = '_create-' . $type; $document->mod->instructor->addMessage ('home' . ucfirst ($type) . '_helpCreate'); return; // Exibir lista de opes show_list: unset ($document->actions['create']); $document->mod->list = new eclMod_home_create_list ($document); } // function dispatch } // class eclApp_home_create //!eof:library/home/create/eclApp_home_create.php; //!file:library/home/create/eclMod_home_create_list.php; class eclMod_home_create_list { // class eclMod_home_create_list public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $row = $mod->appendChild (); $pathway = $this->document->application->pathway; foreach ($this->document->application->children () as $child) { // each child $row->appendChild ($child) ->virtual (1) ->url ($pathway, true, '_create-' . $child->name); } // each child $mod->data = $store->control->read ('modules/list'); $mod->enabled = true; } // function setModule } // class eclMod_home_create_list //!eof:library/home/create/eclMod_home_create_list.php; //!file:library/home/eclApp_home.php; class eclApp_home { // class eclApp_home static function is_child ($me, $name) { // function is_child global $store; $data = $store->userContent->openChild ($me->userId, MODE_SECTION, $me->id, $name); if ($data) return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'section'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names global $store; return $store->userContent->childrenNames ($me->userId, MODE_SECTION, $me->id); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = &$store->userContent->open ($me->userId, $me->name); $me->id = $me->data['id']; if ($me->data['access'] > $me->access) $me->access = $me->data['access']; if (isset ($me->data['flags']['home_type'])) $class = 'eclApp_home' . ucfirst ($me->data['flags']['home_type']); else $class = 'eclApp_homeFolder'; $class::constructor_helper ($me); } // function constructor_helper static function dispatch ($document) { // function dispatch global $store; $me = $document->application; $view = true; if ($document->access (4)) { // user is admin if ($document->actions ('home', 'edit')) $view = self::action_edit ($document); elseif ($document->actions ('home', 'moveto')) $view = self::action_moveto ($document); elseif ($document->actions ('home', 'remove')) return self::action_remove ($document); elseif ($document->actions ('home', 'move')) self::action_move ($document); // Context Edit $document->mod->context->appendChild ('home_edit') ->active ($document->actions ('home', 'edit')) ->url (true, true, '_home-edit'); // Versioning $store->userExtras->versioning ($document); // Context Remove $document->mod->context->appendChild ('home_remove') ->url (true, true, '_home-remove') ->confirm ('home_removeConfirm'); // Context Move up if ($me->data['index'] and ($me->data['parent_id'] == 1 or $me->data['parent_id'] == $me->parent->id)) $document->mod->context->appendChild ('home_moveUp') ->url (true, true, '_home-move-up'); // Context Move down if ($me->data['index'] < count ($store->userContent->children ($me->userId, MODE_SECTION, $me->data['parent_id'])) - 1 and ($me->data['parent_id'] == 1 or $me->data['parent_id'] == $me->parent->id)) $document->mod->context->appendChild ('home_moveDown') ->url (true, true, '_home-move-down'); // Context Move to... $document->mod->context->appendChild ('home_moveTo') ->url (true, true, '_home-moveto'); } // user is admin if ($view) { // view home if (!$document->access (3) and !isset ($me->data['flags']['modHits_disable'])) $me->data['hits']++; if (isset ($me->data['flags']['home_type'])) $class = 'eclApp_home' . ucfirst ($me->data['flags']['home_type']); else $class = 'eclApp_homeFolder'; $class::dispatch ($document); } // view home } // function dispatch static function action_edit ($document) { // function action_edit global $store; $me = $document->application; $formulary = $document->createFormulary ('home_edit', $me->data, 'homeEdit'); if ($formulary->command ('cancel')) { // cancel unset ($document->actions['home']); return true; } // cancel if ($formulary->command ('save') and $formulary->save ()) { // save formulary unset ($document->actions['home']); $me->data = $formulary->data; $me->data['updated'] = TIME; $store->userExtras->createVersion ($me->userId, $me->data, $document); $document->application->reset (); if ($document->application->name != $formulary->data['name']) { // update name $document->application->name = $formulary->data['name']; array_pop ($document->application->pathway); $document->application->pathway[] = $formulary->data['name']; $document->reload = $document->url (); } // update name else $document->dataReplace ($document->application->data); return true; } // save formulary $formulary->action = '_home-edit-save'; $document->mod->formulary = $formulary; if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); $document->mod->languages->action = '_home-edit'; $document->dataMerge ('home_contentEdit'); return false; } // function action_edit static function action_remove ($document) { // function action_remove global $store, $io; $me = $document->application; unset ($document->actions['home']); $parent = $me->parent; $me->remove (); $parent->reset (); // reindex brothers $store->userContent->childrenReindex ($parent->userId, MODE_SECTION, $parent->id); if ($parent->isDomain) $document->application = $parent->child (''); else $document->application = $parent; $document->reload = $document->url (); $document->application->dispatch ($document); } // function action_remove static function action_move ($document) { // function action_move global $store; $parentId = $document->application->data['parent_id']; $name = $document->application->name; $parent = $document->application->parent; unset ($document->application); $parent->reset (); $store->userContent->childrenReindex ($parent->userId, MODE_SECTION, $parentId); $names = $store->userContent->childrenNames ($parent->userId, MODE_SECTION, $parentId); $index = array_search ($name, $names); $length = count ($names) - 1; if ($document->actions ('home', 'move', 'up') and $index) { // move up $move_up = &$store->userContent->open ($parent->userId, $names[$index]); $move_down = &$store->userContent->open ($parent->userId, $names[$index - 1]); $move_up['index']--; $move_down['index']++; } // move up elseif ($document->actions ('home', 'move', 'down') and $index < $length) { // move down $move_up = &$store->userContent->open ($parent->userId, $names[$index + 1]); $move_down = &$store->userContent->open ($parent->userId, $names[$index]); $move_up['index']--; $move_down['index']++; } // move down unset ($document->actions['home']); $document->application = $parent->child ($name); } // function action_move static function action_moveto ($document) { // function action_moveto global $store; unset ($document->actions['home']); $me = $document->application; $oldParentId = $me->data['parent_id']; $formulary = $document->createFormulary ('home_moveTo', $me->data, 'moveto'); $formulary->action = '_home-moveto'; if ($formulary->command ('cancel')) return true; if ($formulary->command ('save') and $formulary->save ()) { // save $newParentId = $formulary->data['parent_id']; if ($newParentId == $oldParentId) return true; $me->data['parent_id'] = $newParentId; unset ($store->userContent->chargedMode[$me->userId][MODE_SECTION]); $store->userContent->childrenReindex ($me->userId, MODE_SECTION, $newParentId); $me->data['index'] = count ($store->userContent->children ($me->userId, MODE_SECTION, $newParentId)); unset ($store->userContent->indexByParent[$me->userId][MODE_SECTION][$oldParentId][$me->id]); $store->userContent->childrenReindex ($me->userId, MODE_SECTION, $oldParentId); $store->userContent->indexByParent[$me->userId][MODE_SECTION][$newParentId][$me->id] = $me->id; unset ($store->userContent->chargedParents[$me->userId][MODE_SECTION][$oldParentId]); unset ($store->userContent->chargedParents[$me->userId][MODE_SECTION][$newParentId]); $document->reload = $document->url ($store->userContent->pathway ($me->userId, $me->id)); return false; } // save $document->mod->formulary = $formulary; $document->dataReplace ('home_moveTo'); return false; } // function action_moveto static function remove ($me) { // function remove if (isset ($me->data['flags']['home_type'])) $class = 'eclApp_home' . ucfirst ($me->data['flags']['home_type']); else $class = 'eclApp_homeFolder'; if (is_callable ($class . '::remove')) $class::remove ($me); global $store; $store->userContent->delete ($me->userId, $me->id); $store->userFile->deletePrefixedFiles ($me->userId, $me->name); $store->userExtras->deleteAllChildren ($me->userId, $me->id); } // function remove } // class eclApp_home //!eof:library/home/eclApp_home.php; //!file:library/home/eclFilter_home_specialFields.php; class eclFilter_home_specialFields { // class eclFilter_home_specialFields static function create ($fieldName, $control, $formulary) { // function create global $store; if (!isset ($formulary->data['flags']['home_type'])) return; if (!isset ($control['flags']['sufix'])) return; $special = $store->control->read ('home' . ucfirst ($formulary->data['flags']['home_type']) . $control['flags']['sufix']); if (isset ($special['children'])) $formulary->insertControlChildren ($special); } // function create static function save ($fieldName, $control, $formulary) { // function save global $store; if (!isset ($formulary->data['flags']['home_type'])) return; if (!isset ($control['flags']['sufix'])) return; $special = $store->control->read ('home' . ucfirst ($formulary->data['flags']['home_type']) . $control['flags']['sufix']); if (isset ($special['children'])) $formulary->insertControlChildren ($special); } // function save } // class eclFilter_home_specialFields //!eof:library/home/eclFilter_home_specialFields.php; //!file:library/home/preset/eclApp_home_preset.php; class eclApp_home_preset { // class eclApp_home_preset static function is_child ($me, $name) { // function is_child if (!isset ($me->data['flags']['preset'])) return false; if ($name == '-preset') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array ('-preset'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ($me->parent->data['flags']['preset']); } // function constructor_helper static function dispatch ($document) { // function dispatch } // function dispatch } // class eclApp_home_preset //!eof:library/home/preset/eclApp_home_preset.php; //!file:library/homeChat/create/eclApp_homeChat_create.php; class eclApp_homeChat_create { // class eclApp_homeChat_create static function is_child ($me, $name) { // function is_child global $store; if (!$store->userContent->findMarker ($me->userId, 3) and $name == 'chat') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names global $store; if (!$store->userContent->findMarker ($me->userId, 3)) return array ('chat'); return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('homeChat_create_content'); $me->map = array ('home_preset'); } // function constructor_helper static function dispatch ($document) { // function dispatch } // function dispatch } // class eclApp_homeChat_create //!eof:library/homeChat/create/eclApp_homeChat_create.php; //!file:library/homeChat/eclApp_homeChat.php; class eclApp_homeChat { // class eclApp_homeChat static function constructor_helper ($me) { // function constructor_helper $me->map = array ('homeChat_group', 'homeChat_user'); } // function constructor_helper static function dispatch ($document) { // function dispatch if ($document->access (4)) $document->mod->editor->enable (); $document->mod->list = new eclMod_homeChat_list ($document); } // function dispatch static function remove ($me) { // function remove } // function remove } // class eclApp_homeChat //!eof:library/homeChat/eclApp_homeChat.php; //!file:library/homeChat/eclMod_homeChat_list.php; class eclMod_homeChat_list { // class eclMod_homeChat_list public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $me = $document->application; $mod->data = $store->control->read ('userHome_index_recents'); $row = $mod->appendChild (); $where = array ( 'owner_id' => $me->userId, 'mode' => MODE_GROUP, ); $groups = $store->domainExtras->search ($where); foreach ($groups as $group) { // each recent chat $data = $store->domainContent->openById ($group['domain_id'], $group['parent_id']); $row->appendChild ($data) ->set ('updated', $data['coments_last_update']) ->appendFolder ('group-' . $group['domain_id'] . '-' . $group['id']); } // each recent chat $chats = $store->userExtras->children ($me->userId, MODE_GROUP, 0); foreach ($chats as $chat) { // each recent chat $data = $store->userContent->open ($chat['owner_id'], '-register'); $row->appendChild ($data) ->set ('updated', $chat['updated']) ->appendFolder ($store->user->getName ($chat['owner_id'])); } // each recent chat if (!$row->children) return; $row->sort ('updated', 'desc'); $mod->enabled = true; $mod->data = $store->control->read ('modules/list'); } // function setModule } // class eclMod_homeChat_list //!eof:library/homeChat/eclMod_homeChat_list.php; //!file:library/homeChat/group/eclApp_homeChat_group.php; class eclApp_homeChat_group { // class eclApp_homeChat_group static function is_child ($me, $name) { // function is_child global $store; $parts = explode ('-', $name); if (count ($parts) < 3) return false; if ($parts[0] != 'group') return false; $domainId = intval ($parts[1]); $id = intval ($parts[2]); if (!$domainId or !$id) return false; $data = $store->domainExtras->openById ($domainId, $id); if (!$data) return false; if ($data['mode'] != MODE_GROUP or $data['owner_id'] != $me->userId) return false; return true; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names global $store; return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; list ($prefix, $domainId, $id) = explode ('-', $me->name); $group = $store->domainExtras->openById (intval ($domainId), intval ($id)); $data = $store->domainContent->openById ($group['domain_id'], $group['parent_id']); if (isset ($data['text']['title'])) $me->data['text']['title'] = $data['text']['title']; else $me->data['text']['title'] = $data['text']['caption']; $me->data['text']['caption'] = $data['text']['caption']; $me->domainId = $data['domain_id']; $me->id = $data['id']; } // function constructor_helper static function dispatch ($document) { // function dispatch if ($document->actions ('group', 'remove')) return self::action_remove ($document); // Context remove $document->mod->context->appendChild ('homeChat_group_contextRemove') ->url (true, true, '_group-remove'); $document->mod->comments->enable (); } // function dispatch static function action_remove ($document) { // function action_remove global $store; $me = $document->application; $where = array ( 'domain_id' => $me->domainId, 'mode' => MODE_GROUP, 'parent_id' => $me->id, 'owner_id' => $document->user->userId, ); $groups = $store->domainExtras->search ($where); if (!isset ($groups[0]['id'])) return; $store->domainExtras->delete ($me->domainId, $groups[0]['id']); $document->application = $me->parent; $document->application->dispatch ($document); $document->reload = $document->url (); } // function action_remove } // class eclApp_homeChat_group //!eof:library/homeChat/group/eclApp_homeChat_group.php; //!file:library/homeChat/user/eclApp_homeChat_user.php; class eclApp_homeChat_user { // class eclApp_homeChat_user static function is_child ($me, $name) { // function is_child global $store; if ($store->user->getStatus ($name)) return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names global $store; return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $id = $store->user->getId ($me->name); $data = $store->userContent->open ($id, '-register'); if (isset ($data['text']['title'])) $me->data['text']['title'] = $data['text']['title']; else $me->data['text']['title'] = $data['text']['caption']; $me->data['text']['caption'] = $data['text']['caption']; $me->data['owner_id'] = $id; } // function constructor_helper static function dispatch ($document) { // function dispatch if ($document->actions ('chat', 'clear')) self::action_clear ($document); if ($document->actions ('chat', 'remove') and self::action_remove ($document)) return; // Context clear $document->mod->context->appendChild ('homeChat_user_contextClear') ->url (true, true, '_chat-clear-' . TIME); // Context remove $document->mod->context->appendChild ('homeChat_user_contextRemove') ->url (true, true, '_chat-remove-' . TIME); $document->mod->comments = new eclMod_homeChat_user_comments ($document); $document->mod->comments_add = new eclMod_homeChat_user_commentsAdd ($document); } // function dispatch static function action_clear ($document) { // function action_clear global $store; $me = $document->application; if (!isset ($document->actions['chat'][2]) or intval ($document->actions['chat'][2]) < TIME - 1800) return; $time = intval ($document->actions['chat'][2]); $where = array ( 'user_id' => $me->userId, 'mode' => MODE_GROUP, 'owner_id' => $me->data['owner_id'], ); $groups = $store->userExtras->search ($where); if (!isset ($groups[0]['id'])) return; $comments = $store->userExtras->children ($me->userId, MODE_COMMENT, $groups[0]['id']); foreach ($comments as $data) { // clear each comment if ($data['created'] < $time) $store->userExtras->delete ($me->userId, $data['id']); } // clear each comment } // function action_clear static function action_remove ($document) { // function action_remove global $store; $me = $document->application; if (!isset ($document->actions['chat'][2]) or intval ($document->actions['chat'][2]) < TIME - 1800) return false; $time = intval ($document->actions['chat'][2]); $where = array ( 'user_id' => $me->userId, 'mode' => MODE_GROUP, 'owner_id' => $me->data['owner_id'], ); $groups = $store->userExtras->search ($where); if (!isset ($groups[0]['id'])) return false; $newComments = 0; $comments = $store->userExtras->children ($me->userId, MODE_COMMENT, $groups[0]['id']); foreach ($comments as $data) { // clear each comment if ($data['created'] < $time) $store->userExtras->delete ($me->userId, $data['id']); else $newComments++; } // clear each comment if ($newComments) return false; $store->userExtras->delete ($me->userId, $groups[0]['id']); $document->application = $me->parent; $document->application->dispatch ($document); $document->reload = $document->url (); return true; } // function action_remove } // class eclApp_homeChat_user //!eof:library/homeChat/user/eclApp_homeChat_user.php; //!file:library/homeChat/user/eclMod_homeChat_user_comments.php; class eclMod_homeChat_user_comments { // class eclMod_homeChat_user_comments public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store, $system; $document = $this->document; $user = $document->user; $render = $document->render; $friend = $system->child (SYSTEM_PROFILES_URI)->child ($document->application->name); $userChats = $store->userExtras->search (array ( 'user_id' => $user->userId, 'mode' => MODE_GROUP, 'owner_id' => $friend->userId )); if (!isset ($userChats[0]['id'])) return; $userChatId = $userChats[0]['id']; $posts = $store->userExtras->children ($user->userId, MODE_COMMENT, $userChatId); if (!$posts) return; $row = $mod->appendChild (); foreach ($posts as $data) { // each comment $row->appendChild ($data); } // each comment $row->sort (); $mod->data = $render->block ('modules/comments'); $mod->enabled = true; } // function setModule } // class eclMod_homeChat_user_comments //!eof:library/homeChat/user/eclMod_homeChat_user_comments.php; //!file:library/homeChat/user/eclMod_homeChat_user_commentsAdd.php; class eclMod_homeChat_user_commentsAdd { // class eclMod_homeChat_user_commentsAdd public $document; private $children; public function __construct ($document) { // function __construct global $store, $system; $this->document = $document; $formulary = $document->createFormulary ('homeChat_user_form', array (), 'chat'); if ($formulary->command ('save') and $formulary->save ()) { // save $friend = $system->child (SYSTEM_PROFILES_URI)->child ($document->application->name); $user = $document->user; $friendChats = $store->userExtras->search (array ( 'user_id' => $friend->userId, 'mode' => MODE_GROUP, 'owner_id' => $user->userId )); if (isset ($friendChats[0]['id'])) { // existing friend chat $friendChatId = $friendChats[0]['id']; $friendChat = &$store->userExtras->openById ($friend->userId, $friendChatId); $friendChat['updated'] = TIME; } // existing friend chat else { // create friend chat id $data = array ( 'user_id' => $friend->userId, 'mode' => MODE_GROUP, 'owner_id' => $user->userId ); $friendChatId = $store->userExtras->insert ($friend->userId, $data); } // create friend chat id $userChats = $store->userExtras->search (array ( 'user_id' => $user->userId, 'mode' => MODE_GROUP, 'owner_id' => $friend->userId )); if (isset ($userChats[0]['id'])) { // existing user chat $userChatId = $userChats[0]['id']; $userChat = &$store->userExtras->openById ($user->userId, $userChatId); $userChat['updated'] = TIME; } // existing user chat else { // create user chat id $data = array ( 'user_id' => $user->userId, 'mode' => MODE_GROUP, 'owner_id' => $friend->userId ); $userChatId = $store->userExtras->insert ($user->userId, $data); } // create user chat id $toUserData = $formulary->data; $toUserData['mode'] = MODE_COMMENT; $toUserData['parent_id'] = $userChatId; $toUserData['owner_id'] = $user->userId; $masterId = $store->userExtras->insert ($user->userId, $toUserData); $data = $formulary->data; $data['mode'] = MODE_COMMENT; $data['parent_id'] = $friendChatId; $data['master_id'] = $masterId; $data['owner_id'] = $user->userId; $store->userExtras->insert ($friend->userId, $data); } // save $formulary->data = array (); $this->children = $formulary->create ()->children; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $render = $document->render; $mod->children = $this->children; $mod->data = $render->block ('modules/comments_add'); $mod->enabled = true; } // function setModule } // class eclMod_homeChat_user_commentsAdd //!eof:library/homeChat/user/eclMod_homeChat_user_commentsAdd.php; //!file:library/homePublications/create/eclApp_homePublications_create.php; class eclApp_homePublications_create { // class eclApp_homePublications_create static function is_child ($me, $name) { // function is_child global $store; if (!$store->userContent->findMarker ($me->userId, 2) and $name == 'publications') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names global $store; if (!$store->userContent->findMarker ($me->userId, 2)) return array ('publications'); return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('homePublications_create_content'); $me->map = array ('home_preset'); } // function constructor_helper static function dispatch ($document) { // function dispatch } // function dispatch } // class eclApp_homePublications_create //!eof:library/homePublications/create/eclApp_homePublications_create.php; //!file:library/homePublications/eclApp_homePublications.php; class eclApp_homePublications { // class eclApp_homePublications static function constructor_helper ($me) { // function constructor_helper } // function constructor_helper static function dispatch ($document) { // function dispatch if ($document->access (4)) $document->mod->editor->enable (); $document->mod->list = new eclMod_homePublications_list ($document); } // function dispatch static function remove ($me) { // function remove } // function remove } // class eclApp_homePublications //!eof:library/homePublications/eclApp_homePublications.php; //!file:library/homePublications/eclMod_homePublications_list.php; class eclMod_homePublications_list { // class eclMod_homePublications_list public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $me = $document->application; $mod->data = $store->control->read ('userHome_index_recents'); $row = $mod->appendChild (); $where = array ( 'mode' => MODE_POST, 'owner_id' => $me->userId ); $recents = $store->domainContent->search ($where); foreach ($recents as $data) { // each recent post $pathway = $store->domainContent->pathway ($data['domain_id'], $data['name']); $row->appendChild ($data) ->url ($pathway); } // each recent post if ($row->children) $mod->enabled = true; } // function setModule } // class eclMod_homePublications_list //!eof:library/homePublications/eclMod_homePublications_list.php; //!file:library/integration/eclApp_integration.php; class eclApp_integration { // class eclApp_integration static function is_child ($parent, $name) { // function is_child if ($name == 'integration') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'section'; } // function get_menu_type static function get_children_names () { // function get_children_names return array ('integration'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('integration_content'); $me->access = 4; $me->getMap (); } // function constructor_helper static function dispatch ($document) { // function dispatch $document->mod->list = new eclMod_admin_list ($document); } // function dispatch } // class eclApp_integration //!eof:library/integration/eclApp_integration.php; //!file:library/integrationGoogleWebmasters/eclApp_integrationGoogleWebmasters.php; class eclApp_integrationGoogleWebmasters { // class eclApp_integrationGoogleWebmasters static function is_child ($me, $name) { // function is_child if ($name == 'google-webmasters') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'section'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array ('google-webmasters'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('integrationGoogleWebmasters_content'); $me->access = 4; } // function constructor_helper static function dispatch ($document) { // function dispatch global $io, $store; $me = $document->application; $saved = &$store->domainContent->open ($me->domainId, '-google-webmasters'); if ($io->request->uploaded) { // save $fields = reset ($io->request->uploaded); $file = reset ($fields); if (!$file['size'] or $file['size'] > 2048) return; $data['local']['file_name'] = $file['name']; $data['local']['file_content'] = file_get_contents ($file['tmp_name']); if ($saved) { // saved $saved['local'] = $data['local']; } // saved else { // create $data['mode'] = MODE_CONFIG; $data['name'] = '-google-webmasters'; $store->domainContent->insert ($me->domainId, $data); $saved = $data; } // create } // save if ($saved) $formulary = $document->createFormulary ('integrationGoogleWebmasters_view', $saved); else $formulary = $document->createFormulary ('integrationGoogleWebmasters_create', array (), 'new'); if ($saved and $formulary->command ('remove')) { // remove $store->domainContent->delete ($me->domainId, $saved['id']); $formulary = $document->createFormulary ('integrationGoogleWebmasters_create', array (), 'new'); } // remove $document->mod->formulary = $formulary; } // function dispatch } // class eclApp_integrationGoogleWebmasters //!eof:library/integrationGoogleWebmasters/eclApp_integrationGoogleWebmasters.php; //!file:library/integrationRSS/eclApp_integrationRSS.php; class eclApp_integrationRSS { // class eclApp_integrationRSS static function is_child ($me, $name) { // function is_child if ($name == 'rss') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'section'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array ('rss'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store, $system; $me->data = $store->control->read ('integrationRSS_content'); $me->access = 4; } // function constructor_helper static function dispatch ($document) { // function dispatch global $store; $me = $document->application; $formulary = $document->createFormulary ('integrationRSS_edit', $document->domain->data, 'rss'); if ($formulary->command ('save') and $formulary->save ()) { // save $document->domain->data = $formulary->data; $document->mod->humperstilshen->alert ('system_msg_alertDataUpdated'); } // save $document->mod->formulary = $formulary; } // function dispatch } // class eclApp_integrationRSS //!eof:library/integrationRSS/eclApp_integrationRSS.php; //!file:library/integrationSMS/config/eclApp_integrationSMS_config.php; class eclApp_integrationSMS_config { // class eclApp_integrationSMS_config static function is_child ($parent, $name) { // function is_child if ($name == 'config') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'section'; } // function get_menu_type static function get_children_names () { // function get_children_names return array ('config'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('integrationSMS_config_content'); $me->access = 4; } // function constructor_helper static function dispatch ($document) { // function dispatch global $store; $me = $document->application; $formulary = $document->createFormulary ('integrationSMS_config_edit'); if ($formulary->command ('save') and $formulary->save ()) { // save $document->mod->humperstilshen->alert ('system_msg_alertDataUpdated'); } // save $document->mod->formulary = $formulary; } // function dispatch } // class eclApp_integrationSMS_config //!eof:library/integrationSMS/config/eclApp_integrationSMS_config.php; //!file:library/integrationSMS/eclApp_integrationSMS.php; class eclApp_integrationSMS { // class eclApp_integrationSMS static function is_child ($parent, $name) { // function is_child if ($name != 'sms') return false; if (SYSTEM_HOSTING_MODE == 0) return true; if ($me->applicationName == 'adminIntegrations') return true; if (defined ('INTEGRATION_SMS_MODE') and INTEGRATION_SMS_MODE > 1) return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'section'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names if (SYSTEM_HOSTING_MODE == 0) return array ('sms'); if ($me->applicationName == 'adminIntegrations') return array ('sms'); if (defined ('INTEGRATION_SMS_MODE') and INTEGRATION_SMS_MODE > 1) return array ('sms'); return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store, $system; $me->data = $store->control->read ('integrationSMS_content'); $me->map = array ('integrationSMS_config', 'integrationSMS_test'); $me->groups = $system->groups; $me->access = 4; } // function constructor_helper static function dispatch ($document) { // function dispatch global $store; $me = $document->application; if (defined ('INTEGRATION_PAPO_SMS_ENABLE') and INTEGRATION_PAPO_SMS_ENABLE) $document->dataMerge ('integrationSMS_contentEnabled'); else $document->dataMerge ('integrationSMS_contentDisabled'); $document->mod->list = new eclMod_admin_list ($document); } // function dispatch } // class eclApp_integrationSMS //!eof:library/integrationSMS/eclApp_integrationSMS.php; //!file:library/integrationSMS/eclIo_integrationSMS_papo.php; class eclIo_integrationSMS { // class eclIo_integrationSMS public function send ($sms) { // function send global $store; if ( !defined ('INTEGRATION_PAPO_SMS_ENABLE') or !INTEGRATION_PAPO_SMS_ENABLE or INTEGRATION_PAPO_SMS_USER == '' or INTEGRATION_PAPO_SMS_PASS == '' or !isset ($sms['number']) or !isset ($sms['message']) ) return false; $url = 'https://www.paposms.com/webservice/1.0/send/'; $fields = array ( 'user' => INTEGRATION_PAPO_SMS_USER, 'pass' => INTEGRATION_PAPO_SMS_PASS, 'numbers' => $sms['number'], 'message' => $sms['message'], 'return_format' => 'json' ); $url .= '?' . http_build_query ($fields, 'a', '&'); $result = eclIo_webservice::json2array (file_get_contents ($url)); return $result; } // function send public function close () { // function close } // function close } // class eclIo_integrationSMS //!eof:library/integrationSMS/eclIo_integrationSMS_papo.php; //!file:library/integrationSMS/test/eclApp_integrationSMS_test.php; class eclApp_integrationSMS_test { // class eclApp_integrationSMS_test static function is_child ($parent, $name) { // function is_child if ($name == 'test') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'section'; } // function get_menu_type static function get_children_names () { // function get_children_names return array ('test'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('integrationSMS_test_content'); $me->access = 4; } // function constructor_helper static function dispatch ($document) { // function dispatch global $store; $me = $document->application; $formulary = $document->createFormulary ('integrationSMS_test_edit'); if ($formulary->command ('save') and $formulary->save ()) { // save $document->mod->humperstilshen->alert ('system_msg_alertDataUpdated'); } // save $document->mod->formulary = $formulary; } // function dispatch } // class eclApp_integrationSMS_test //!eof:library/integrationSMS/test/eclApp_integrationSMS_test.php; //!file:library/integrationSMTP/config/eclApp_integrationSMTP_config.php; class eclApp_integrationSMTP_config { // class eclApp_integrationSMTP_config static function is_child ($me, $name) { // function is_child if ($name == 'config') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'section'; } // function get_menu_type static function get_children_names () { // function get_children_names return array ('config'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('integrationSMTP_config_content'); } // function constructor_helper static function dispatch ($document) { // function dispatch global $io; $formulary = $document->createFormulary ('integrationSMTP_config_edit'); if ($formulary->save ()) { // formulary saved $document->mod->humperstilshen->alert ('system_msg_alertDataUpdated'); } // formulary saved $document->mod->formulary = $formulary; } // function dispatch } // class eclApp_integrationSMTP_config //!eof:library/integrationSMTP/config/eclApp_integrationSMTP_config.php; //!file:library/integrationSMTP/eclApp_integrationSMTP.php; class eclApp_integrationSMTP { // class eclApp_integrationSMTP static function is_child ($me, $name) { // function is_child if ($name != 'smtp') return false; if (SYSTEM_HOSTING_MODE == 0) return true; if ($me->applicationName == 'adminIntegrations') return true; if (defined ('INTEGRATION_SMTP_MODE') and INTEGRATION_SMTP_MODE > 1) return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'section'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names if (SYSTEM_HOSTING_MODE == 0) return array ('smtp'); if ($me->applicationName == 'adminIntegrations') return array ('smtp'); if (defined ('INTEGRATION_SMTP_MODE') and INTEGRATION_SMTP_MODE > 1) return array ('smtp'); return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store, $system; $me->data = $store->control->read ('integrationSMTP_content'); $me->map = array ('integrationSMTP_config', 'integrationSMTP_test'); $me->groups = $system->groups; $me->access = 4; } // function constructor_helper static function dispatch ($document) { // function dispatch global $store; $document->mod->list = new eclMod_admin_list ($document); } // function dispatch } // class eclApp_integrationSMTP //!eof:library/integrationSMTP/eclApp_integrationSMTP.php; //!file:library/integrationSMTP/test/eclApp_integrationSMTP_test.php; class eclApp_integrationSMTP_test { // class eclApp_integrationSMTP_test static function is_child ($me, $name) { // function is_child if ($name == 'test') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'section'; } // function get_menu_type static function get_children_names () { // function get_children_names if (defined ('INTEGRATION_SMTP_ENABLE') and INTEGRATION_SMTP_ENABLE) return array ('test'); return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('integrationSMTP_test_content'); } // function constructor_helper static function dispatch ($document) { // function dispatch global $io; $formulary = $document->createFormulary ('integrationSMTP_test_edit'); if ($formulary->save ()) { // formulary saved $data = $formulary->data; $mail = new eclIo_smtp (); if (isset ($data['to'])) $mail->to ($data['to']); if (isset ($data['cc'])) $mail->cc ($data['cc']); if (isset ($data['bcc'])) $mail->bcc ($data['bcc']); if (isset ($data['subject'])) $mail->subject ($data['subject'], $document->charset); if (isset ($data['text'])) $mail->contentTXT ($data['text'], $document->charset); if (isset ($data['html'])) $mail->contentHTML ($data['html'], $document->charset); $errorMsg = $mail->send (); $buffer['log'] = $mail->log; $log = $document->createFormulary ('integrationSMTP_test_view', $buffer, 'mail'); $document->mod->formulary = $log; if ($errorMsg) $document->mod->humperstilshen->alert ($errorMsg); return; } // formulary saved $document->mod->formulary = $formulary; } // function dispatch } // class eclApp_integrationSMTP_test //!eof:library/integrationSMTP/test/eclApp_integrationSMTP_test.php; //!file:library/modAudio/eclMod_modAudio.php; class eclMod_modAudio { // class eclMod_modAudio public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; // Procure a aplicao $me = $document->application->findModuleTarget ($document, $arguments); if (!$me) return; $number = $arguments[1]; // Procure o mdulo dentro da aplicao if (isset ($me->data['extras']['audio_' . $number])) { // module exists $audio = $me->data['extras']['audio_' . $number]; $mod->data = $audio; $mod->enabled = true; } // module exists if ($document->access (4, $me->groups)) { // personalite $mod->enabled = true; if (isset ($audio)) { // modify $pathway = array_slice ($me->pathway, 1); array_unshift ($pathway, $document->domain->name, '-personalite', 'extras', 'audio_' . $number); $mod->data['local']['personalite_url'] = $document->url ($pathway); $caption = $store->control->read ('modAudio_edit'); $mod->data['local']['personalite_caption'] = $caption['text']['caption']; } // modify } // personalite $mod->data['local']['number'] = $number; $mod->data['local']['list'] = 'details'; $mod->data['local']['details'] = 'media_audio'; $mod->appendChild ($me); } // function setModule } // class eclMod_modAudio //!eof:library/modAudio/eclMod_modAudio.php; //!file:library/modBanner/eclMod_modBanner.php; class eclMod_modBanner { // class eclMod_modBanner public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $me = $document->application; while (!isset ($me->data['extras']['banner']) and $me->parent->parent) { // search parent banner $me = $me->parent; } // search parent banner if ($me->isDomain) $me = $me->child (''); if (isset ($me->data['extras']['banner'])) { // banner found $mod->data = $me->data['extras']['banner']; $local['extras']['img_0'] = $me->data['extras']['banner']; $mod->appendChild ($local); $mod->enabled = true; } // banner found // Se o mdulo pode ser editado if ($document->templateEditable and $document->access (4)) { // reference // Crie um mdulo if (!$mod->children) { // creates an image $mod->data = $store->control->read ('modBanner_create'); $mod->appendChild ($store->control->read ('modBanner_create')); } // creates an image $pathway = array_slice ($me->pathway, 1); array_unshift ($pathway, $document->domain->name, '-personalite', 'extras', 'banner'); $mod->data['local']['personalite_url'] = $document->url ($pathway); $caption = $store->control->read ('modBanner_edit'); $mod->data['local']['personalite_caption'] = $caption['text']['caption']; $mod->enabled = true; } // reference } // function setModule } // class eclMod_modBanner //!eof:library/modBanner/eclMod_modBanner.php; //!file:library/modBox/eclApp_modBox.php; class eclApp_modBox { // class eclApp_modBox static function is_child ($me, $name) { // function is_child if ($name == 'box') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names () { // function get_children_names return array ('box'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('modBox_content'); $me->ignoreSubfolders = true; $me->isDomain = true; } // function constructor_helper static function dispatch ($document) { // function dispatch global $store, $system; $pathway = $document->pathway; array_shift ($pathway); // domain array_shift ($pathway); // -dialog array_shift ($pathway); // box if (!isset ($document->actions['create'])) { // edit $name = array_pop ($pathway); $parts = explode (CHR_FNS, $name); if (count ($parts) == 2) list ($name, $number) = $parts; else $number = '0'; $pathway[] = $name; } // edit $me = $document->domain; foreach ($pathway as $name) { // each name $me = $me->child ($name); if ($me === false) return; } // each name if (!$document->access (4, $me->groups)) return; if (!isset ($number)) { // find last index $newBox = true; for ($number = 0; $number < 100; $number++) { // find number if (!isset ($me->data['extras']['box_' . strval ($number)])) break; } // find number $document->pathway[count ($document->pathway) - 1] .= CHR_FNS . strval ($number); } // find last index if (isset ($me->data['extras']['box_' . strval ($number)])) $data = $me->data['extras']['box_' . strval ($number)]; else { // empty $data = $store->control->read ('modBox_module'); } // empty $formulary = $document->createFormulary ('modBox_edit', $data); $formulary->pathway = $document->pathway; if (isset ($document->actions['create'])) $formulary->action = '_return-tag'; if ($formulary->save ()) { // save box $me->data['extras']['box_' . strval ($number)] = $formulary->data; $document->dataReplace ('layouts/dialog_close'); if ($document->actions ('return', 'tag')) $document->data['module'] = 'box:' . $number; return; } // save box $document->mod->formulary = $formulary; } // function dispatch } // class eclApp_modBox //!eof:library/modBox/eclApp_modBox.php; //!file:library/modBox/eclMod_modBox.php; class eclMod_modBox { // class eclMod_modBox public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $render = $document->render; $me = $document->application->findModuleTarget ($document, $arguments); if (!$me) return; $number = $arguments[1]; // Procure o mdulo dentro da aplicao if (isset ($me->data['extras']['box_' . $number])) { // module exists $box = $me->data['extras']['box_' . $number]; $mod->data = array_replace_recursive ($render->block ('modules/box'), $box); } // module exists if ($document->access (4, $me->groups)) { // personalite $mod->enabled = true; if (!isset ($box)) { // empty if (!$document->contentEditable) $mod->data = $store->control->read ('modBox_create'); else $box = array (); } // empty if ($document->contentEditable) { // editable $mod->data['local']['editable'] = 1; $mod->data['local']['id'] = $me->id; $mod->data['local']['number'] = $number; } // editable $pathway = array_slice ($me->pathway, 1); array_unshift ($pathway, $document->domain->name, '-personalite', 'extras', 'box_' . $number); $mod->data['local']['personalite_url'] = $document->url ($pathway); $caption = $store->control->read ('modBox_edit'); $mod->data['local']['personalite_caption'] = $caption['text']['caption']; } // personalite if (!isset ($box)) return; $mod->data['local']['list'] = 'box'; $mod->appendChild ($box); $mod->enabled = true; } // function setModule } // class eclMod_modBox //!eof:library/modBox/eclMod_modBox.php; //!file:library/modBreadcrumbs/eclMod_modBreadcrumbs.php; class eclMod_modBreadcrumbs { // class eclMod_modBreadcrumbs public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $render = $document->render; $me = $document->application; if ($document->printableLayout) return; if ($document->domain->domainId and !isset ($document->data['id'])) return; if (count ($document->pathway) == 1) return; $list[] = $me; while (!$me->parent->isDomain) { // parent is not a domain $me = $me->parent; $list[] = $me; } // parent is not a domain $length = count ($list); if (!$length) return; $row = $mod->appendChild (); // The index page $row->appendChild ($document->domain->child ('')->data) ->url ($document->domain->pathway); for ($i = $length - 1; $i >= 0; $i--) { // loop each breadcrumb $row->appendChild ($list[$i]->data) ->url ($list[$i]->pathway) ->active ($i == 0); } // loop each breadcrumb // Configuraes $mod->data = $render->block ('modules/breadcrumbs'); // Se o mdulo pode ser editado if ($document->templateEditable and $document->access (4, $document->domain->groups)) { // reference $pathway = array ($document->domain->name, '-personalite', 'modules', 'breadcrumbs'); $mod->data['local']['personalite_url'] = $document->url ($pathway); $caption = $store->control->read ('modBreadcrumbs_edit'); $mod->data['local']['personalite_caption'] = $caption['text']['caption']; } // reference $mod->enabled = true; } // function setModule } // class eclMod_modBreadcrumbs //!eof:library/modBreadcrumbs/eclMod_modBreadcrumbs.php; //!file:library/modCart/eclMod_modCart.php; class eclMod_modCart { // class eclMod_modCart public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $me = $document->application; $render = $document->render; $cart = 'cart_' . $document->domain->name; // Condies if (!isset ($document->session[$cart])) return; if ($me->isDomain) return; if (!$me->id) return; if ($document->printableLayout) return; $me = $document->application; // Configuraes $mod->data = $render->block ('modules/cart'); // Itens da lista $local = array(); $quantity = 0; $value = 0; foreach ($document->session[$cart]['order'] as $product) { // each product $quantity += $product['quantity']; $value += $product['value'] * $product['quantity']; } // each product if ($quantity == 1) $captionItems = $store->control->read ('labels/field/cart_item'); else $captionItems = $store->control->read ('labels/field/cart_items'); $local['caption'] = $document->textMerge ($quantity, ' ', $captionItems['text']['caption'], ' (R$' . $value . ')'); if ($me->name != '-cart' and (!isset ($me->data['mode']) or $me->data['mode'] != MODE_SECTION or !isset ($me->data['marker']) or $me->data['marker'] != 12)) { // go to cart if ($id = $store->domainContent->findMarker ($document->domain->domainId, 12)) $local['url'] = $document->url ($store->domainContent->pathway ($document->domain->domainId, $id)); else $local['url'] = $document->url (array ($document->domain->name, '-cart')); } // go to cart if (isset ($document->session[$cart]['start_time'])) { // set timer $local['timer'] = 600 - (TIME - $document->session[$cart]['start_time']); $local['url_timeout'] = $document->url (true, true, '_preload-cart_cart-timeout'); if ($local['timer'] < 10) $local['timeout'] = 1; } // set timer $mod->appendChild ($local); // Se o mdulo pode ser editado if ($document->templateEditable and $document->access (4, $document->domain->groups)) { // reference $pathway = array ($document->domain->name, '-personalite', 'modules', 'cart'); $mod->data['local']['personalite_url'] = $document->url ($pathway); $caption = $store->control->read ('modCart_edit'); $mod->data['local']['personalite_caption'] = $caption['text']['caption']; } // reference $mod->enabled = true; } // function setModule } // class eclMod_modCart //!eof:library/modCart/eclMod_modCart.php; //!file:library/modCart/scope/eclMod_modCart_scope.php; class eclMod_modCart_scope { // class eclMod_modCart_scope public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $render = $document->render; if (!$render->getVar ('value')) return; if (!$store->domainContent->findMarker ($document->domain->domainId, 12)) return; $mod->data = $store->control->read ('modCart_scope_module'); $row = $mod->appendChild ($render->data); $row->data['url'] = $document->url (true, true, '_preload-cart'); $mod->enabled = true; } // function setModule } // class eclMod_modCart_scope //!eof:library/modCart/scope/eclMod_modCart_scope.php; //!file:library/modComments/add/eclMod_modComments_add.php; class eclMod_modComments_add { // class eclMod_modComments_add public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $render = $document->render; if (!$document->mod->comments->children) return; $mod->children = $document->mod->comments->children; // Se o mdulo pode ser editado if ($document->templateEditable and $document->access (4, $document->domain->groups)) { // reference $pathway = array ($document->domain->name, '-personalite', 'modules', 'comments_add'); $mod->data['local']['personalite_url'] = $document->url ($pathway); $caption = $store->control->read ('modComments_add_edit'); $mod->data['local']['personalite_caption'] = $caption['text']['caption']; } // reference $mod->data = $render->block ('modules/comments_add'); $mod->enabled = true; } // function setModule } // class eclMod_modComments_add //!eof:library/modComments/add/eclMod_modComments_add.php; //!file:library/modComments/eclMod_modComments.php; class eclMod_modComments { // class eclMod_modComments public $document; public $enable = false; public $children = array (); public function __construct ($document) { // function __construct global $store; $this->document = $document; } // function __construct public function enable () { // function enable global $store; $document = $this->document; $me = $document->application; $this->enable = true; // Conditions if (!$document->user->userId) return; if (!$me->userId and !isset ($me->parent->data['flags']['comments_access'])) return; if (!$me->userId and !$document->access ($me->parent->data['flags']['comments_access'])) return; $formulary = $document->createFormulary ('modComments_add_form', array (), 'add_comment'); if ($formulary->command ('save') and $formulary->save ()) { // save comment $section = &$store->domainContent->openById ($me->domainId, $me->id); $section['coments_last_update'] = TIME; $data = $formulary->data; $data['mode'] = MODE_COMMENT; $data['parent_id'] = $me->id; $data['owner_id'] = $document->user->userId; $store->domainExtras->insert ($me->domainId, $data); $where = array ( 'domain_id' => $me->domainId, 'mode' => MODE_GROUP, 'parent_id' => $me->id, 'owner_id' => $document->user->userId, ); $groups = $store->domainExtras->search ($where); if ($groups) { // group found } // group ofound else { // create group $group = array ( 'domain_id' => $me->domainId, 'mode' => MODE_GROUP, 'parent_id' => $me->id, 'owner_id' => $document->user->userId ); $store->domainExtras->insert ($me->domainId, $group); } // create group $formulary->data = array (); } // save comment $this->children = $formulary->create ()->children; } // function enable public function setModule ($mod, $arguments) { // function setModule global $store; if (!$this->enable) return; $document = $this->document; $me = $document->application; $render = $document->render; $comments = $store->domainExtras->children ($me->domainId, MODE_COMMENT, $me->id); if (!$comments) return; $row = $mod->appendChild (); foreach ($comments as $data) { // each comment $row->appendChild ($data); } // each comment $row->sort (); $mod->data = $render->block ('modules/comments'); // Se o mdulo pode ser editado if ($document->templateEditable and $document->access (4, $document->domain->groups)) { // reference $pathway = array ($document->domain->name, '-personalite', 'modules', 'comments'); $mod->data['local']['personalite_url'] = $document->url ($pathway); $caption = $store->control->read ('modComments_edit'); $mod->data['local']['personalite_caption'] = $caption['text']['caption']; } // reference $mod->enabled = true; } // function setModule } // class eclMod_modComments //!eof:library/modComments/eclMod_modComments.php; //!file:library/modContent/eclMod_modContent.php; class eclMod_modContent { // class eclMod_modContent public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $render = $document->render; // Condies if (!isset ($document->data['text']['content']) and !$document->contentEditable) return; // Configuraes $mod->data = $render->block ('modules/content'); // Itens da lista $mod->appendChild ($document->data) ->set ('editable', $document->contentEditable); // Se o mdulo pode ser editado if ($document->templateEditable and $document->access (4, $document->domain->groups)) { // reference $pathway = array ($document->domain->name, '-personalite', 'modules', 'content'); $mod->data['local']['personalite_url'] = $document->url ($pathway); $caption = $store->control->read ('modContent_edit'); $mod->data['local']['personalite_caption'] = $caption['text']['caption']; } // reference $mod->enabled = true; } // function setModule } // class eclMod_modContent //!eof:library/modContent/eclMod_modContent.php; //!file:library/modContext/eclMod_modContext.php; class eclMod_modContext extends eclEngine_listItem { // class eclMod_modContext public $mode = false; public $help = false; public $enabled = true; public $document; public function __construct ($document) { // function __construct global $store; $this->document = $document; } // function __construct public function help ($name) { // function help global $store; $data = $store->control->read ($name); if (!$data) return false; if (!isset ($data['text']['caption'])) { // get title $title = $store->control->read ('modContext_goHelp'); $data['text']['caption'] = $title['text']['caption']; if (!isset ($data['text']['title'])) $data['text']['title'] = $title['text']['caption']; } // get title $this->help = $this->document->createListItem ($data) ->dialog ($data); return true; } // function help public function setModule ($mod, $arguments) { // function setModule global $store; if (!$this->enabled) return; $document = $this->document; $me = $document->application; $render = $document->render; $row = $mod->appendChild (); $row->children = $this->children; if ($document->user->userId and $me->userId and $me->userId != $document->user->userId) $this->socialTools ($row); if ($this->help) $row->children[] = $this->help; foreach ($row->children as &$child) { // each child $child->data['virtual'] = 1; } // each child if (!$document->access (2) and ($document->application->userId or $document->application->id)) { // abuse report $row->appendChild ('modWelcome_goReport') ->url (true, true, '_preload-report') ->active ($document->actions ('alert', 'report')); } // abuse report if (!$row->children) return; $mod->data = array_replace ($render->block ('modules/system_menu'), $store->control->read ('modContext_module')); $mod->enabled = true; } // function setModule private function socialTools ($row) { // function socialTools global $store; $document = $this->document; $me = $document->application; $user = $document->user; $friend = $store->userContent->open ($me->userId, '-register'); if ($chatId = $store->userContent->findMarker ($user->userId, 3)) $pathway = $store->userContent->pathway ($user->userId, $chatId); else $pathway = array (SYSTEM_PROFILES_URI, $user->name, '-chat'); $pathway[] = $store->user->getName ($me->userId); $row->appendChild ('modContext_goChat') ->set ('friend_caption', $friend['text']['caption']) ->url ($pathway); } // function socialTools } // class eclMod_modContext //!eof:library/modContext/eclMod_modContext.php; //!file:library/modDinamic/eclMod_modDinamic.php; class eclMod_modDinamic { // class eclMod_modDinamic public $document, $name; public function __construct ($document, $name=false) { // function __construct $this->document = $document; $this->name = $name; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store, $system; $document = $this->document; $render = $document->render; // Identifique o nome da seo e o nmero do painel if (is_string ($this->name)) $arguments = array ($this->name, '0'); // Procure a aplicao $me = $document->application->findModuleTarget ($document, $arguments); if (!$me) return; $number = $arguments[1]; // Procure o mdulo dentro da aplicao if (isset ($me->data['extras']['dinamic_' . $number])) $mod->data = $me->data['extras']['dinamic_' . $number]; else { // from preset if (isset ($me->data['flags']['modList_preset'])) $preset = $me->data['flags']['modList_preset']; else $preset = 'blog'; $mod->data = $render->block ('modules/dinamic_' . $preset); if (!$mod->data) $mod->data = $render->block ('modules/dinamic_blog'); } // from preset if ($document->access (4)) { // personalite $mod->enabled = true; if (!$mod->data) $mod->data = $store->control->read ('modDinamic_create'); $pathway = array_slice ($me->pathway, 1); array_unshift ($pathway, $document->domain->name, '-personalite', 'extras', 'dinamic_' . $number); $mod->data['local']['personalite_url'] = $document->url ($pathway); $caption = $store->control->read ('modDinamic_edit'); $mod->data['local']['personalite_caption'] = $caption['text']['caption']; } // personalite // configuraes de listagem if (isset ($mod->data['local'])) $local = $mod->data['local']; else $local = array (); isset ($local['list_sort']) or $local['list_sort'] = 'index'; isset ($local['list_direction']) or $local['list_direction'] = 'asc'; isset ($local['list_max']) or $local['list_max'] = 5; isset ($local['list_update']) or $local['list_update'] = 'auto'; isset ($local['list_offset']) or $local['list_offset'] = 0; isset ($local['list_filter']) or $local['list_filter'] = ''; // Extract items switch ($me->data['mode']) { // switch mode case MODE_SECTION: switch ($me->data['flags']['section_type']) { // switch section type case 'folder': $children = $store->domainContent->children ($me->domainId, MODE_SECTION, $me->id); break; case 'blog': $children = $store->domainContent->children ($me->domainId, MODE_POST, $me->id); } // switch section type break; case MODE_DOMAIN: if ($me->data['name'] == '-index') $children = $store->domainContent->children ($me->domainId, MODE_SECTION, 0); elseif ($me->data['name'] == '-recents' and isset ($me->data['links']['pages'])) { // recents foreach ($me->data['links']['pages'] as $name) { // each page $children[] = $store->domainContent->open ($me->domainId, $name); } // each page } // recents break; case MODE_CATEGORY: if (isset ($me->data['links']['pages'])) { // category pages foreach ($me->data['links']['pages'] as $name) { // each page $children[] = $store->domainContent->open ($me->domainId, $name); } // each page } // category pages } // switch mode if (!isset ($children) or !$children) return; $sort = $local['list_sort']; $filter = $local['list_filter']; switch ($sort) { // switch list sort case 'name': case 'index': case 'created': case 'updated': case 'event_start': case 'coments_last_update': case 'hits': case 'value': case 'spotlight': $sorted = array (); foreach ($children as $data) { // each child if (!$data) continue; if ($filter == 'event_start' and $data['event_start'] < TIME) continue; elseif ($filter == 'spotlight' and !$data['spotlight']) continue; if (isset ($data[$sort])) $sorted[$data[$sort]][] = $data; else $sorted['zzzzzzzzz'][] = $data; } // each child if ($local['list_direction'] == 'asc') ksort ($sorted); else krsort ($sorted); $children = array (); foreach ($sorted as $equal) { // each value foreach ($equal as $data) { // each equal $children[] = $data; } // each equal } // each value break; case 'shuffle': shuffle ($children); break; } // switch list sort switch ($local['list_update']) { // switch update mode case 'auto': $offset = 0; break; case 'hits': $offset = mt_rand (0, count ($children)); break; case 'hour': $offset = (24 * intval (date ('z'))) + intval (date ('G')); break; case 'day': $offset = intval (date ('z')); break; case 'week': $offset = intval (date ('W')); break; case 'month': $offset = intval (date ('n')); break; default: $offset = 0; } // switch update mode $total = count ($children); if (!$total) return; if ($local['list_max'] == 0 or $local['list_max'] > $total) $max = $total; else $max = $local['list_max']; $offset += $local['list_offset']; $offset = $offset % $total; // Itens da lista $row = $mod->appendChild (); for ($i = 0; $i < $max; $i++) { // each child $data = $children[$offset]; $post = $me->findChild ($data['name']); if ($post and $document->access ($post->access, $post->groups)) { // access ok $row->appendChild ($post) ->set ('editable', $document->contentEditable and $document->access (4, $post->groups)) ->url ($post->pathway); } // access ok $offset++; if ($offset >= $total) $offset = 0; } // each child if ($row->children) $mod->enabled = true; } // function setModule } // class eclMod_modDinamic //!eof:library/modDinamic/eclMod_modDinamic.php; //!file:library/modEditor/document/eclMod_modEditor_document.php; class eclMod_modEditor_document { // class eclMod_modEditor_document public $mode = false; public $enabled = false; public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $control = $store->control->read ('modEditor_document_module'); $mod->data = $control; $mod->appendChild ('modEditor_document_save') ->set ('url', 'javascript:humperstilshen.refresh()'); $mod->enabled = true; } // function setModule } // class eclMod_modEditor_document //!eof:library/modEditor/document/eclMod_modEditor_document.php; //!file:library/modEditor/eclApp_modEditor.php; class eclApp_modEditor { // class eclApp_modEditor static function is_child ($me, $name) { // function is_child if ($name == 'wysiwyg') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names () { // function get_children_names return array ('wysiwyg'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper } // function constructor_helper static function dispatch ($document) { // function dispatch if (!isset ($document->received['fields'])) return; foreach (explode (' ', $document->received['fields']) as $from) { // each field if (!isset ($from[0])) continue; $parts = explode ('_', $from); $length = count ($parts); if ($length == 1) continue; switch ($parts[1]) { // switch target case 'caption': case 'title': case 'description': case 'content': self::update_text ($document, $from); break; case 'box': if ($length == 3) self::update_box ($document, $from); break; case 'table': if ($length == 5) self::update_table ($document, $from); break; } // switch target } // each field } // function dispatch static function &get_data ($document, $id) { // function & global $store; $empty = array (); $data = &$store->domainContent->openById ($document->domain->domainId, intval ($id)); if (!$data) return $empty; if ($data['mode'] == MODE_DOMAIN and $document->access (4, $document->domain->groups)) return $data; $me = $document->domain->findChild ($data['name']); if ($me == false) return $empty; if ($document->access (4, $me->groups)) return $data; return $empty; } // function & static function update_text ($document, $from) { // function update_text list ($id, $field) = explode ('_', $from); $data = &self::get_data ($document, $id); if (!$data) return; if (!isset ($data['text'][$field])) $data['text'][$field] = array (); if (isset ($document->received[$from][0])) { // received if ($field == 'content') $data['text'][$field][$document->lang] = array (4 => 1, 5 => 2, 6 => 1); else $data['text'][$field][$document->lang] = array (); $data['text'][$field][$document->lang][1] = $document->received[$from]; if ($document->charset == 'ISO-8859-1') $data['text'][$field][$document->lang][2] = 1; } // received else unset ($data['text'][$field][$document->lang]); } // function update_text static function update_box ($document, $from) { // function update_box list ($id, $target, $number) = explode ('_', $from); $data = &self::get_data ($document, $id); if (!$data) return; $target .= '_' . $number; if (!isset ($data['extras'][$target])) $data['extras'][$target] = array (); if (isset ($document->received[$from][0])) { // received $data['extras'][$target]['content'][$document->lang] = array ( 1 => $document->received[$from], 4 => 1, 5 => 2, 6 => 1 ); if ($document->charset == 'ISO-8859-1') $data['extras'][$target]['content'][$document->lang][2] = 1; } // received else unset ($data['extras'][$target]['content'][$document->lang]); } // function update_box static function update_table ($document, $from) { // function update_table static $saved = array (); list ($id, $target, $number) = explode ('_', $from); if (isset ($saved[$id . '_table_' . $number])) return; $saved[$id . '_table_' . $number] = true; $data = &self::get_data ($document, $id); if (!$data) return; if (!isset ($data['extras']['table_' . $number]['table'])) return; $received = $document->received; $table = &$data['extras']['table_' . $number]['table']; $numCols = 0; foreach ($table as $row) { // each row if (count ($row) > $numCols) $numCols = count ($row); } // each row $numRows = count ($table); $newTable = array (); for ($indexRow = 0; $indexRow < $numRows; $indexRow++) { // each row for ($indexCol = 0; $indexCol < $numCols; $indexCol++) { // each column if (isset ($received[$id . '_table_' . $number . '_' . $indexRow . '_' . $indexCol])) $content = $received[$id . '_table_' . $number . '_' . $indexRow . '_' . $indexCol]; elseif (isset ($table[$indexRow][$indexCol])) $content = $table[$indexRow][$indexCol]; else $content = ''; $newTable[$indexRow][$indexCol] = $content; } // each column } // each row $table = $newTable; } // function update_table } // class eclApp_modEditor //!eof:library/modEditor/eclApp_modEditor.php; //!file:library/modEditor/eclMod_modEditor.php; class eclMod_modEditor { // class eclMod_modEditor public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function enable () { // function enable return; $document = $this->document; if ($document->printableLayout) return; if ($document->actions ('wysiwyg', 'enable')) unset ($document->user->data['flags']['modContent_wysiwygDisabled']); elseif ($document->actions ('wysiwyg', 'disable')) $document->user->data['flags']['modContent_wysiwygDisabled'] = 1; if (isset ($document->user->data['flags']['modContent_wysiwygDisabled'])) { // disabled $document->mod->interface->appendChild ('modEditor_contextWisiwygEnable') ->url (true, true, '_wysiwyg-enable'); } // disabled else { // enabled $document->mod->interface->appendChild ('modEditor_contextWisiwygDisable') ->url (true, true, '_wysiwyg-disable'); $document->contentEditable = true; } // enabled } // function enable public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; if (!$document->contentEditable) return; $control = $store->control->read ('modEditor_module'); $mod->data = $control; $mod->data['local']['ref_submit'] = $document->url (true, true, '_preload-wysiwyg'); $mod->enabled = true; } // function setModule } // class eclMod_modEditor //!eof:library/modEditor/eclMod_modEditor.php; //!file:library/modEditor/insert/eclMod_modEditor_insert.php; class eclMod_modEditor_insert { // class eclMod_modEditor_insert public $mode = false; public $enabled = false; public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $me = $document->application; $control = $store->control->read ('modEditor_insert_module'); $mod->data = $control; foreach ($control['children'] as $childName) { // each child $child = $store->control->read ($childName); $item = $mod->appendChild ($child); if (isset ($child['local']['target'])) { // open dialog $pathway = array_slice ($me->pathway, 1); array_unshift ($pathway, $document->domain->name, '-personalite', $child['local']['personalite'], $child['local']['target']); $item->url ($pathway, true, '_return-tag') ->popUpOpen (400, 300); } // open dialog } // each child $mod->enabled = true; } // function setModule } // class eclMod_modEditor_insert //!eof:library/modEditor/insert/eclMod_modEditor_insert.php; //!file:library/modEditor/objects/eclMod_modEditor_objects.php; class eclMod_modEditor_objects { // class eclMod_modEditor_objects public $mode = false; public $enabled = false; public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $render = $document->render; $me = $document->application; $base = array_slice ($me->pathway, 1); if (!$me->domainId or !isset ($me->data['mode']) or !$document->access (4)) return; switch ($me->data['mode']) { // switch mode case MODE_SECTION: $modeCaption = $store->control->read ('modEditor_objects_ofSection'); break; case MODE_POST: $modeCaption = $store->control->read ('modEditor_objects_ofPost'); break; default: $modeCaption = $store->control->read ('modEditor_objects_ofPage'); } // switch mode $documentObjects = array (); $contentObjects = array (); foreach ($me->data['extras'] as $field => $object) { // each object $parts = explode ('_', $field); if (count ($parts) < 2) continue; list ($target, $number) = $parts; switch ($target) { // switch target case 'audio': case 'box': case 'file': case 'html': case 'img': case 'table': case 'video': if ($number == '0') $documentObjects[$field] = $object; else $contentObjects[$field] = $object; } // switch target } // each object ksort ($documentObjects); ksort ($contentObjects); $row = $mod->appendChild (); foreach ($documentObjects as $field => $object) { // each document object $pathway = $base; array_unshift ($pathway, $document->domain->name, '-personalite', 'extras', $field); $caption = $store->control->read ('modEditor_objects_' . $target); $local['caption'] = $document->textMerge ($caption['text']['caption'], ' ', $modeCaption['text']['caption']); $row->appendChild ($local) ->url ($pathway) ->popUpOpen (); } // each document object foreach ($contentObjects as $field => $object) { // each content object list ($target, $number) = explode ('_', $field); $pathway = $base; array_unshift ($pathway, $document->domain->name, '-personalite', 'extras', $field); $caption = $store->control->read ('modEditor_objects_' . $target); $local['caption'] = $document->textMerge ($caption['text']['caption'], ' ' . $number); $row->appendChild ($local) ->url ($pathway) ->popUpOpen (); } // each content object if (!$row->children) return; $mod->data = array_replace ($render->block ('modules/system_menu'), $store->control->read ('modEditor_objects_module')); $mod->enabled = true; } // function setModule } // class eclMod_modEditor_objects //!eof:library/modEditor/objects/eclMod_modEditor_objects.php; //!file:library/modFile/eclMod_modFile.php; class eclMod_modFile { // class eclMod_modFile public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; // Procure a aplicao $me = $document->application->findModuleTarget ($document, $arguments); if (!$me) return; $number = $arguments[1]; // Procure o mdulo dentro da aplicao if (isset ($me->data['extras']['file_' . $number])) { // module exists $file = $me->data['extras']['file_' . $number]; $mod->data = $file; $mod->enabled = true; } // module exists if ($document->access (4, $me->groups)) { // personalite $mod->enabled = true; $pathway = array_slice ($me->pathway, 1); array_unshift ($pathway, $document->domain->name, '-personalite', 'extras', 'file_' . $number); if (!isset ($file)) { // create $mod->data = $store->control->read ('modFile_create'); $mod->appendChild ($mod->data) ->url ($pathway) ->popUpOpen (); return; } // create $pathway = array_slice ($me->pathway, 1); array_unshift ($pathway, $document->domain->name, '-personalite', 'extras', 'file_' . $number); $mod->data['local']['personalite_url'] = $document->url ($pathway); $caption = $store->control->read ('modFile_edit'); $mod->data['local']['personalite_caption'] = $caption['text']['caption']; } // personalite $mod->data['local']['number'] = $number; $mod->data['local']['list'] = 'details'; $mod->data['local']['details'] = 'media_file'; if (!isset ($file)) return; $local['extras'] = array ('file_' . $number => $file); $local['pathway'] = $me->pathway; $mod->appendChild ($local); } // function setModule } // class eclMod_modFile //!eof:library/modFile/eclMod_modFile.php; //!file:library/modFooter/eclMod_modFooter.php; class eclMod_modFooter { // class eclMod_modFooter public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $render = $document->render; if (!$document->domain->domainId) return; // Configuraes $mod->data = $render->block ('modules/footer'); // Se o mdulo pode ser editado if ($document->templateEditable and $document->access (4, $document->domain->groups)) { // reference $mod->enabled = true; $pathway = array ($document->domain->name, '-personalite', 'modules', 'footer'); if (!isset ($mod->data['text']['content'])) { // insert info $mod->data = $store->control->read ('modFooter_create'); $row = $mod->appendChild (); $row->appendChild ('modFooter_create') ->url ($pathway) ->popUpOpen (); return; } // insert info $mod->data['local']['personalite_url'] = $document->url ($pathway); $caption = $store->control->read ('modFooter_edit'); $mod->data['local']['personalite_caption'] = $caption['text']['caption']; } // reference if (!isset ($mod->data['text']['content'])) return; $mod->appendChild ($mod->data); $mod->enabled = true; } // function setModule } // class eclMod_modFooter //!eof:library/modFooter/eclMod_modFooter.php; //!file:library/modFormulary/eclMod_modFormulary.php; class eclMod_modFormulary { // class eclMod_modFormulary public function setModule () { // function setModule } // function setModule } // class eclMod_modFormulary //!eof:library/modFormulary/eclMod_modFormulary.php; //!file:library/modHits/eclMod_modHits.php; class eclMod_modHits { // class eclMod_modHits public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $render = $document->render; // Condies if (!isset ($document->data['hits']) or !$document->data['hits']) return; // Configuraes $mod->data = $render->block ('modules/hits'); // Itens da lista $mod->appendChild ($document->data); // Se o mdulo pode ser editado if ($document->templateEditable and $document->access (4, $document->domain->groups)) { // reference $pathway = array ($document->domain->name, '-personalite', 'modules', 'hits'); $mod->data['local']['personalite_url'] = $document->url ($pathway); $caption = $store->control->read ('modHits_edit'); $mod->data['local']['personalite_caption'] = $caption['text']['caption']; } // reference $mod->enabled = true; } // function setModule } // class eclMod_modHits //!eof:library/modHits/eclMod_modHits.php; //!file:library/modHtml/eclMod_modHtml.php; class eclMod_modHtml { // class eclMod_modHtml public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; // Procure a aplicao $me = $document->application->findModuleTarget ($document, $arguments); if (!$me) return; $number = $arguments[1]; // Procure o mdulo dentro da aplicao if (isset ($me->data['extras']['html_' . $number])) { // module exists $html = $me->data['extras']['html_' . $number]; $mod->data = $html; $mod->enabled = true; } // module exists if ($document->access (4, $me->groups)) { // personalite $mod->enabled = true; $pathway = array_slice ($me->pathway, 1); array_unshift ($pathway, $document->domain->name, '-personalite', 'extras', 'html_' . $number); if (!isset ($html)) { // empty $mod->data = $store->control->read ('modHtml_create'); $mod->appendChild ($mod->data) ->url ($pathway) ->popUpOpen (); return; } // empty $mod->data['local']['personalite_url'] = $document->url ($pathway); $caption = $store->control->read ('modHtml_edit'); $mod->data['local']['personalite_caption'] = $caption['text']['caption']; } // personalite if (!isset ($html)) return; $mod->data['local']['list'] = 'html'; $mod->appendChild ($html); } // function setModule } // class eclMod_modHtml //!eof:library/modHtml/eclMod_modHtml.php; //!file:library/modHumperstilshen/eclMod_modHumperstilshen.php; class eclMod_modHumperstilshen extends eclEngine_listItem { // class eclMod_modHumperstilshen public $children = array (); public $loginError = false; public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $menu = $document->createListItem (array ('name' => 'menu', 'add_close_button' => 1)); if ( ($document->access (1) or $document->application->isDomain) and !$document->mod->context->help) { // application help $help = $document->application->applicationName . '_help'; if ($help == 'section_help' and isset ($document->application->data['flags']['section_type'])) $help = 'section' . ucfirst ($document->application->data['flags']['section_type']) . '_help'; $data = $store->control->read ($help); if ($data) { // context help found $document->mod->context->help ($help); } // context help found } // application help if ($document->application->isDomain) { // is domain $menu->appendChild (array ('name' => 'context')); } // is domain elseif ($document->access (1)) { // connected if ($document->domain->name == SYSTEM_ADMIN_URI) $menu_list = array ('context', 'user'); if ($document->domain->name == SYSTEM_ADMIN_URI) $menu_list = array ('context', 'user'); elseif ($document->application->userId) $menu_list = array ('context', 'user_tools', 'user'); elseif (!$document->contentEditable) $menu_list = array ('context', 'editor_objects', 'interface', 'toolbox', 'user'); else $menu_list = array ('context', 'interface', 'toolbox', 'user'); if (!$menu_list and $this->children) $menu_list = array ('context'); foreach ($menu_list as $menuName) { // each menu $menu->appendChild (false, array ('name' => $menuName)); } // each menu if ($document->contentEditable) { // editor menu $editor = $this->appendChild (array ('name' => 'editor', 'add_close_button' => 1)); $editor->appendChild (array ('name' => 'editor_document')); $editor->appendChild (array ('name' => 'editor_objects')); $editor->appendChild (array ('name' => 'editor_insert')); } // editor menu } // connected else { // login $menu->appendChild (array ('name' => 'login')); $menu->appendChild (array ('name' => 'user_welcome')); if ($this->loginError) $menu->data['alert'] = 1; } // login if (!$menu->children) return; // Refresh window $mod->data['local']['refresh'] = $document->url (); if ($document->access (1)) { // check session expiration $mod->data['local']['session_check_url'] = $document->url ($document->domain->pathway, true, '_session-check'); $mod->data['local']['session_refresh_url'] = $document->url ($document->domain->pathway, true, '_session-refresh'); $mod->data['local']['session_ttl'] = SYSTEM_SESSION_TTL; $formulary = $document->createFormulary ('modHumperstilshen_sessionCheck', array (), 'session_check'); $this->dialog ('modHumperstilshen_sessionCheck', array (), $formulary); $mod->data['local']['session_dialog'] = 'dialog_' . count ($this->children); } // check session expiration $mod->children = $this->children; $mod->appendChild ($menu); $mod->enabled = true; } // function setModule public function alert ($alert, $formulary=false) { // function alert $local = array ('alert' => 1); return $this->dialog ($alert, $local, $formulary); } // function alert public function dialog ($data, $local=array (), $formulary=false) { // function dialog global $store; if (is_string ($data)) $data = $store->control->read ($data); if (isset ($data['msg'])) $data = array_replace ($store->control->read ($data['msg']), $data); if ($local) $data = array_replace ($data, $local); $data['is_formulary'] = 1; $data['name'] = 'dialog_' . (1 + count ($this->children)); if (isset ($data['flags']['icon'])) $icon = $data['flags']['icon']; elseif (isset ($data['default_icon'])) $icon = $data['default_icon']; if (isset ($icon)) { // set icon $data['icon'] = $this->document->urlFiles ('icons/ecolabore-humperstilshen-' . $icon . '.png', true, '-shared'); $iconDescription = $store->control->read ('modHumperstilshen_icon' . ucfirst ($icon)); if (isset ($iconDescription['text']['caption'])) $data['icon_description'] = $iconDescription['text']['caption']; } // set icon $dialog = $this->document->createListItem ($data); if ($formulary) $dialog->childrenMerge ($formulary->create ()); elseif (isset ($data['url'])) $dialog->data['add_confirm_button'] = 1; else $dialog->data['add_close_button'] = 1; $this->children[] = $dialog; return "javascript:humperstilshen.dialogOpen('dialog_" . count ($this->children) . "')"; } // function dialog } // class eclMod_modHumperstilshen //!eof:library/modHumperstilshen/eclMod_modHumperstilshen.php; //!file:library/modImg/eclFilter_modImg.php; class eclFilter_modImg { // class eclFilter_modImg static function create ($fieldName, $control, $formulary) { // function create $local['name'] = $fieldName; $local['type'] = 'file'; // help if (isset ($control['flags']['help']) and !isset ($control['flags']['help_msg'])) $local['help_msg'] = 'system_msg_filterImgHelp'; $formulary->appendChild ($control, $local); } // function create static function save ($fieldName, $control, $formulary) { // function save global $io, $store; $flags = $formulary->flags; $received = $formulary->received; if ($formulary->errorMsg !== false) return; if (!$io->request->uploaded) { // error if (isset ($control['flags']['required'])) return $formulary->setRequiredMsg ($control, $fieldName, 'system_msg_filterImgNotUploaded'); return false; } // error $uploaded = reset ($io->request->uploaded); $uploaded = $uploaded[0]; if (!isset ($uploaded['type'])) { // error if (isset ($control['flags']['required'])) return $formulary->setRequiredMsg ($control, $fieldName, 'system_msg_filterImgNotUploaded'); return false; } // error isset ($flags['img_size']) or $flags['img_size'] = 3840; isset ($flags['img_mini_size']) or $flags['img_mini_size'] = 256; isset ($flags['img_interlace']) ? $flags['img_interlace'] = true : $flags['img_interlace'] = false; $uploaded = $uploaded['tmp_name']; if (@getimagesize ($uploaded) === false) { // error if (isset ($control['flags']['error'])) return $formulary->setErrorMsg ($control, $fieldName, 'system_msg_filterImgNotUploaded'); return false; } // error list ($width_orig, $height_orig, $type) = getimagesize ($uploaded); $ratio_orig = $width_orig / $height_orig; // Calculate big image size if ($width_orig > $flags['img_size'] or $height_orig > $flags['img_size']) { // resize big image $img_width = $flags['img_size']; $img_height = $flags['img_size']; if ($img_width / $img_height > $ratio_orig) $img_width = $img_height * $ratio_orig; else $img_height = $img_width / $ratio_orig; } // resize big image else { // keep image size $img_width = $width_orig; $img_height = $height_orig; } // keep image size settype ($img_width, 'int'); settype ($img_height, 'int'); // Calculate miniature size if ($width_orig > $flags['img_mini_size'] or $height_orig > $flags['img_mini_size']) { // resize miniature $mini_width = $flags['img_mini_size']; $mini_height = $flags['img_mini_size']; if ($mini_width / $mini_height > $ratio_orig) $mini_width = $mini_height * $ratio_orig; else $mini_height = $mini_width / $ratio_orig; } // resize miniature else { // keep image size $mini_width = $width_orig; $mini_height = $height_orig; } // keep image size settype ($mini_width, 'int'); settype ($mini_height, 'int'); // Suported formats are if ($type == 1) $ext = '.gif'; elseif ($type == 2) $ext = '.jpg'; elseif ($type == 3) $ext = '.png'; else return 'system_msg_alertImgWrongFormat'; // Opens received file if ($type == 1) $image_orig = @imagecreatefromgif ($uploaded); elseif ($type == 2) $image_orig = @imagecreatefromjpeg ($uploaded); elseif ($type == 3) $image_orig = @imagecreatefrompng ($uploaded); if (!$image_orig) return 'system_msg_alertImageError'; if (isset ($flags['target'])) $name = $formulary->application->data['name'] . CHR_FNS . $flags['target']; else $name = $formulary->data['name'] . CHR_FNS . 'img_0'; $filename = PATH_DOMAINS . $formulary->document->domain->name . '/' . $name; // Resample big image $image_big = imagecreatetruecolor ($img_width, $img_height); imagecopyresampled ($image_big, $image_orig, 0, 0, 0, 0, $img_width, $img_height, $width_orig, $height_orig); // save big image if ($type == 1) $saved = imagegif ($image_big, $filename . $ext); elseif ($type == 2) $saved = imagejpeg ($image_big, $filename . $ext, 100); elseif ($type == 3) { // png file $saved = move_uploaded_file ($uploaded['tmp_name'], $filename . $ext); $saved = true; // $saved = imagepng ($image_big, $filename . $ext); } // png file if (!$saved) return 'system_msg_alertImgError'; // Resample miniature $image_mini = imagecreatetruecolor ($mini_width, $mini_height); imagecopyresampled ($image_mini, $image_orig, 0, 0, 0, 0, $mini_width, $mini_height, $width_orig, $height_orig); // save miniature if ($type == 1) $saved = imagegif ($image_mini, $filename . CHR_FNS . 'mini.gif'); elseif ($type == 2) $saved = imagejpeg ($image_mini, $filename . CHR_FNS . 'mini.jpg', 100); elseif ($type == 3) { // png $saved = true; } // png if (!$saved) return 'system_msg_alertImgError'; // save image data if (isset ($flags['target'])) { // section image $data = &$formulary->data; } // section image else { // find target if (!isset ($formulary->data['extras'])) $formulary->data['extras'] = array (); if (!isset ($formulary->data['extras']['img_0'])) $formulary->data['extras']['img_0'] = array (); $data = &$formulary->data['extras']['img_0']; } // find target $data['files']['img'] = $name . $ext; $data['img_width'] = $img_width; $data['img_height'] = $img_height; if ($type == 3) { // png hack $data['files']['img_mini'] = $name . $ext; $data['img_mini_width'] = $img_width; $data['img_mini_height'] = $img_height; } // png hack else { // normal $data['files']['img_mini'] = $name . CHR_FNS . 'mini' . $ext; $data['img_mini_width'] = $mini_width; $data['img_mini_height'] = $mini_height; } // normal if ($width_orig < $height_orig) $data['portrait'] = 'portrait'; else $data['landscape'] = 'landscape'; } // function save } // class eclFilter_modImg //!eof:library/modImg/eclFilter_modImg.php; //!file:library/modImg/eclFilter_modImg_view.php; class eclFilter_modImg_view { // class eclFilter_modImg_view static function create ($fieldName, $control, $formulary) { // function create $document = $formulary->document; if (!isset ($formulary->data['extras']['img_0']['files']['img'])) return; // type if (isset ($control['flags']['type'])) $local['type'] = $control['flags']['type']; else $local['type'] = 'descriptive'; $local['text']['content']['pt'] = array ( TEXT_CONTENT => '
      ', TEXT_HTML => 2 ); $formulary->appendChild ($control, $local); } // function create static function save ($fieldName, $control, $formulary) { // function save } // function save } // class eclFilter_modImg_view //!eof:library/modImg/eclFilter_modImg_view.php; //!file:library/modImg/eclMod_modImg.php; class eclMod_modImg { // class eclMod_modImg public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; // Procure a aplicao $me = $document->application->findModuleTarget ($document, $arguments); if (!$me) return; $number = $arguments[1]; // Procure o mdulo dentro da aplicao if (isset ($me->data['extras']['img_' . $number])) { // module exists $img = $me->data['extras']['img_' . $number]; $mod->data = $img; } // module exists if ($document->access (4, $me->groups)) { // personalite $mod->enabled = true; $pathway = array_slice ($me->pathway, 1); array_unshift ($pathway, $document->domain->name, '-personalite', 'extras', 'img_' . $number); if (!isset ($img)) { // creates a new image $mod->data = $store->control->read ('modImg_create'); $mod->appendChild ('modImg_create') ->url ($pathway) ->popUpOpen (); return; } // creates a new image $mod->data['local']['personalite_url'] = $document->url ($pathway); $caption = $store->control->read ('modImg_edit'); $mod->data['local']['personalite_caption'] = $caption['text']['caption']; } // personalite if (!isset ($img)) return; $mod->data['local']['list'] = 'details'; $mod->data['local']['details'] = 'img'; $local = $me->data; $local['extras']['img_0'] = $img; $mod->appendChild ($local); $mod->enabled = true; } // function setModule } // class eclMod_modImg //!eof:library/modImg/eclMod_modImg.php; //!file:library/modInstructor/eclInstructor_modInstructor_ava.php; class eclInstructor_modInstructor_ava { // class eclInstructor_modInstructor_ava static function route ($instructor) { // function route global $store; $document = $instructor->document; $me = $document->application; return false; } // function route } // class eclInstructor_modInstructor_ava //!eof:library/modInstructor/eclInstructor_modInstructor_ava.php; //!file:library/modInstructor/eclInstructor_modInstructor_welcome.php; class eclInstructor_modInstructor_welcome { // class eclInstructor_modInstructor_welcome static function route ($instructor) { // function route global $store; $document = $instructor->document; $me = $document->application; if ($me->applicationName != 'domain_empty') { // index page exists if ($me->applicationName == 'domainIndex' and $document->access (4) and !$store->domainContent->children ($me->domainId, MODE_SECTION, 0)) { // before new sections if (isset ($document->actions['login'])) goto WELCOME_RETURN; if ($document->actions ('first', 'edit', 'save')) goto WELCOME_DONE; if (!isset ($document->actions['instructor'])) goto WELCOME_DONE; } // before new sections return false; } // index page exists if ($document->access (4)) { // admin if (isset ($document->actions['login'])) goto WELCOME_EDIT; if ($document->mod->formulary->errorMsg) goto WELCOME_EDIT_ERROR; goto WELCOME_EDIT; } // admin if ($document->access (1)) goto WELCOME_ACCESS_DENIED; if ($document->mod->humperstilshen->loginError) goto WELCOME_LOGIN_ERROR; goto WELCOME_EMPTY; WELCOME_EMPTY: $instructor->addMessage ('domain_empty_help01empty'); $instructor->addMessage ('domain_empty_help01login'); return true; WELCOME_LOGIN_ERROR: $instructor->addMessage ('domain_empty_help01empty'); $instructor->addMessage ('domain_empty_help02loginError'); return true; WELCOME_ACCESS_DENIED: $instructor->addMessage ('domain_empty_help02accessDenied'); return true; WELCOME_EDIT: if (isset ($document->user->data['local']['gender']) and $document->user->data['local']['gender'] == 'female') $instructor->addMessage ('domain_empty_help02welcomeAdmin_f'); else $instructor->addMessage ('domain_empty_help02welcomeAdmin_m'); $instructor->addMessage ('domain_empty_help04index01edit'); return true; WELCOME_EDIT_ERROR: $instructor->addMessage ('domain_empty_help04index01edit'); $instructor->addMessage ('domain_empty_help04index01editError'); return true; WELCOME_DONE: $instructor->addMessage ('domain_empty_help04index02editDone') ->url (true, true, '_instructor-next'); return true; WELCOME_RETURN: $instructor->addMessage ('domain_empty_help04index02return') ->url (true, true, '_instructor-next'); return true; } // function route } // class eclInstructor_modInstructor_welcome //!eof:library/modInstructor/eclInstructor_modInstructor_welcome.php; //!file:library/modInstructor/eclMod_modInstructor.php; class eclMod_modInstructor { // class eclMod_modInstructor public $document; public $messages = array (); public function __construct ($document) { // function __construct global $store; $this->document = $document; if ($document->access (1)) { // context help $help = $document->application->applicationName . '_helpAbout'; if ($help == 'section_helpAbout' and isset ($document->application->data['flags']['section_type'])) $help = 'section' . ucfirst ($document->application->data['flags']['section_type']) . '_helpAbout'; $data = $store->control->read ($help); if ($data) { // context help found $document->mod->context->appendChild ($help) ->swapTitle () ->virtual () ->dialog ($help); } // context help found } // context help } // function __construct public function addMessage ($name, $formulary=false) { // function addMessage global $store; $document = $this->document; $data = $store->control->read ($name); if (!$data) return $document->createListItem (); // audio // if (isset ($data['local']['audio'])) // $data['audio'] = $document->urlFiles ($data['local']['audio'], true, '-media'); $data['audio'] = ''; // autoplay if (!isset ($document->session['modInstructor'][$name])) $data['instructor_autoplay'] = 1; $document->session['modInstructor'][$name] = true; // onload if (!isset ($data['local']['instructor_onmenuopen'])) $data['instructor_onload'] = 1; // name $data['name'] = 'message' . strval (count ($this->messages)); $message = $this->document->createListItem ($data); $this->messages[] = $message; if ($formulary) $message->childrenMerge ($formulary->create ()); return $message; } // function addMessage public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; if (!$document->domain->domainId) return; // Enable or disable instructor return; eclInstructor_modInstructor_welcome::route ($this) or eclInstructor_modInstructor_quality::route ($this) or eclInstructor_modInstructor_ava::route ($this); if (!$this->messages) return; $mod->data = $store->control->read ('modInstructor_module'); $mod->children = $this->messages; $mod->enabled = true; } // function setModule } // class eclMod_modInstructor //!eof:library/modInstructor/eclMod_modInstructor.php; //!file:library/modInstructor/quality/eclInstructor_modInstructor_quality.php; class eclInstructor_modInstructor_quality { // class eclInstructor_modInstructor_quality static function route ($instructor) { // function route global $store; $document = $instructor->document; $me = $document->application; if (!$document->access (4, $document->domain->groups)) return false; if ($instructor->messages) return true; $tasks = $store->control->read ('modInstructor_quality_index'); $length = count ($tasks); $last = array (); if ($me->name == '-new-section' and isset ($document->actions['create'][1]) and $store->control->read ('section' . ucfirst ($document->actions['create'][1]) . '_helpCreate')) return self::taskExec ($document, 'section' . ucfirst ($document->actions['create'][1]), $instructor, 'Create'); for ($index = 0; $index < $length; $index++) { // each task $task = $tasks[$index]; $next = isset ($tasks[$index + 1]) ? $tasks[$index + 1] : array (); if (self::taskIsDone ($document, $task)) { // task is done $last = $task; continue; } // task is done if (isset ($document->actions['login'])) { // login if (self::isInSection ($document, $last)) return self::taskExec ($document, $last, $instructor, 'Return', $task); return self::taskExec ($document, 'modInstructor_quality', $instructor, 'Redirect', $last); } // login if ($document->actions ('instructor', 'redirect')) return self::taskExec ($document, $last, $instructor, 'Return', $task); if (self::isCreating ($document, $task)) return self::taskExec ($document, $task, $instructor, 'Create'); if (self::isInSection ($document, $last)) return self::taskExec ($document, $last, $instructor, 'Done', $task); if ($document->actions ('instructor', 'message', 'create') and isset ($me->data['flags']['section_type']) and $store->control->read ('section' . ucfirst ($me->data['flags']['section_type']) . '_helpCreate')) return self::taskExec ($document, 'section' . ucfirst ($me->data['flags']['section_type']), $instructor, 'Create'); $name = $document->application->applicationName; if ($name == 'section' and isset ($document->application->data['flags']['section_type'])) $name = 'section' . ucfirst ($document->application->data['flags']['section_type']); if ($store->control->read ($name . '_helpNavigate')) { // navigation context help if ($document->application->isDomain) return self::taskExec ($document, $name, $instructor, 'Navigate'); return self::taskExec ($document, $name, $instructor, 'Navigate', $task); } // navigation context help return self::taskExec ($document, 'modInstructor_quality', $instructor, 'Navigate', $task); } // each task return false; } // function route static function taskIsDone ($document, $task) { // function taskIsDone global $store; $data = $store->control->read ($task . '_helpInstructor'); if (!isset ($data['check']) or !is_array ($data['check']) or !isset ($data['check']['mode'])) return true; switch ($data['check']['mode']) { // switch mode case 'section': return $store->domainContent->findMarker ($document->domain->domainId, $data['check']['marker'], MODE_SECTION); } // switch mode return false; } // function taskIsDone static function isInSection ($document, $task) { // function isInSection global $store; $me = $document->application; $data = $store->control->read ($task . '_helpInstructor'); if (!isset ($data['check']) or !is_array ($data['check']) or !isset ($data['check']['mode'])) return false; switch ($data['check']['mode']) { // switch mode case 'section': if (isset ($me->data['mode']) and $me->data['mode'] == MODE_SECTION and $me->data['marker'] == $data['check']['marker']) return true; return false; } // switch mode return false; } // function isInSection static function isCreating ($document, $task) { // function isCreating global $store; $me = $document->application; $data = $store->control->read ($task . '_helpInstructor'); if (!isset ($data['create']) or !is_array ($data['create']) or !isset ($data['create']['mode'])) return false; switch ($data['create']['mode']) { // switch mode case 'section': if (!isset ($data['create']['type'])) return false; if ($me->name == '-new-section' and $document->actions ('create', $data['create']['type'])) return true; return false; } // switch mode return false; } // function isCreating static function taskExec ($document, $task, $instructor, $type, $next=array ()) { // function taskExec global $store; $name = $task . '_help' . $type; $message = $instructor->addMessage ($name); if (!$next) return true; $data = $store->control->read ($next . '_helpInstructor'); if ($type == 'Redirect') { // redirect if (!isset ($data['check'])) return true; switch ($data['check']['mode']) { // switch mode case 'section': $id = $store->domainContent->findMarker ($document->domain->domainId, $data['check']['marker']); $message->url ($store->domainContent->pathway ($document->domain->domainId, $id), true, '_instructor-redirect'); return true; } // switch mode return true; } // redirect if (isset ($data['parent'])) { // goto parent switch ($data['parent']['mode']) { // switch mode case 'section': $id = $store->domainContent->findMarker ($document->domain->domainId, $data['parent']['marker']); if ($id) { // section found $pathway = $store->domainContent->pathway ($document->domain->domainId, $id); break; } // section found case 'index': $pathway = $document->domain->pathway; break; } // switch mode } // goto parent else $pathway = $document->domain->pathway; switch ($data['create']['mode']) { // switch creating mode case 'section': $pathway[] = '-new-section'; $message->url ($pathway, true, '_create-' . $data['create']['type']); return true; } // switch creating mode return true; } // function taskExec } // class eclInstructor_modInstructor_quality //!eof:library/modInstructor/quality/eclInstructor_modInstructor_quality.php; //!file:library/modInterface/eclMod_modInterface.php; class eclMod_modInterface extends eclEngine_listItem { // class eclMod_modInterface public $mode = false; public $enabled = true; public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; if (!$this->enabled) return; $document = $this->document; $render = $document->render; $row = $mod->appendChild (); $row->children = $this->children; foreach ($row->children as &$child) { // each child $child->data['virtual'] = 1; } // each child if ($document->access (4, $document->domain->groups) and $document->data['flags']['modLayout_from'] == 'domain') { // personalite layout /* * $row->appendChild ('dialogTemplate_edit') * ->virtual () * ->url (array ($document->domain->name, '-dialog', 'layout', 'scheme')) * ->popUpOpen (750, 550); * * $row->appendChild ('modLayout_advanced_content') * ->virtual () * ->url (array ($document->domain->name, '-dialog', 'advanced')) * ->popUpOpen (750, 550); */ $row->appendChild ('personalite_content') ->url (array ($document->domain->name, '-personalite')) ->popUpOpen (750, 550); } // personalite layout // Printable version $row->appendChild ('modLayout_print') ->virtual () ->url (true, true, '_layout-print'); if (!$row->children) return; $mod->data = array_replace ($render->block ('modules/system_menu'), $store->control->read ('modInterface_module')); $mod->enabled = true; } // function setModule } // class eclMod_modInterface //!eof:library/modInterface/eclMod_modInterface.php; //!file:library/modLanguages/eclMod_modLanguages.php; class eclMod_modLanguages { // class eclMod_modLanguages public $action = true; public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $render = $document->render; $me = $document->application; // Condies if (!isset ($me->data['text']['caption'])) return; if ($document->printableLayout) return; if ($document->domain->domainId and !isset ($document->data['id'])) return; // Preparao if ($document->access (4)) $access = 1; else $access = 1; $languages = array (); if (isset ($document->domain->data['flags']['languages'])) { // set domain languages foreach (explode (CRLF, $document->domain->data['flags']['languages']) as $lang) { // each enabled language $languages[$lang] = $access; } // each enabled language } // set domain languages foreach ($me->data['text']['caption'] as $lang => $value) { // each document language $languages[$lang] = 2; } // each document language // Itens da lista $row = $mod->appendChild (); foreach ($languages as $lang => $access) { // each valid languages if ($lang == $document->lang) $active = 1; else $active = 0; if ($active or $access) { // valid language if ($access == 1) $virtual = 1; else $virtual = 0; $label = $store->control->read ('labels/lang/' . $lang); if (!isset ($label['text']['caption'])) continue; $caption = array (); if (isset ($label['text']['caption'][$lang])) $caption[$lang] = $label['text']['caption'][$lang]; else $caption = $label['text']['caption']; $local = array ( 'caption' => $caption, 'virtual' => $virtual, 'icon' => $document->urlFiles ('modLanguages/' . $lang . '.png', true, '-shared'), 'LANG' => strtoupper ($lang), 'lang' => $lang ); $row->appendChild ($local) ->active ($active) ->url (true, $lang, $this->action); } // valid language } // each valid languages if (count ($row->children) == 1 and $active) return; // Configuraes $mod->data = $render->block ('modules/languages'); // Se o mdulo pode ser editado if ($document->templateEditable and $document->access (4, $document->domain->groups)) { // reference $pathway = array ($document->domain->name, '-personalite', 'modules', 'languages'); $mod->data['local']['personalite_url'] = $document->url ($pathway); $caption = $store->control->read ('modLanguages_edit'); $mod->data['local']['personalite_caption'] = $caption['text']['caption']; } // reference $mod->enabled = true; } // function setModule } // class eclMod_modLanguages //!eof:library/modLanguages/eclMod_modLanguages.php; //!file:library/modLanguages/header/eclMod_modLanguages_header.php; class eclMod_modLanguages_header { // class eclMod_modLanguages_header public $action = true; public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $render = $document->render; $me = $document->application; if (!isset ($me->data['text']['caption'])) return; if ($document->printableLayout) return; if (!isset ($me->data['text']['caption'][$document->lang])) { // no index, go canonical if (isset ($me->data['text']['caption'][$document->defaultLang])) $mod->data['local']['url_canonical'] = $document->url (true, $document->defaultLang); else { // first language $lang = key ($me->data['text']['caption']); $mod->data['local']['url_canonical'] = $document->url (true, $lang); } // first language } // no index, go canonical if ($me->name == '' and !isset ($me->parent->data['flags']['modRss_disable'])) { // rss if ($document->lang == $document->defaultLang) $mod->data['local']['url_rss'] = $document->url (array ($document->domain->name, 'rss.xml'), false, false); else $mod->data['local']['url_rss'] = $document->url (array ($document->domain->name, 'rss-' . $document->lang . '.xml'), false, false); $mod->data['local']['rss'] = $me->parent->data['text']['title']; } // rss foreach ($me->data['text']['caption'] as $lang => $text) { // each lang if ($lang == $document->lang) continue; $mod->appendChild (array ( 'lang' => $lang, 'url' => $document->url (true, $lang) )); } // each lang $mod->enabled = true; } // function setModule } // class eclMod_modLanguages_header //!eof:library/modLanguages/header/eclMod_modLanguages_header.php; //!file:library/modLayout/eclMod_modLayout.php; class eclMod_modLayout { // class eclMod_modLayout public $from = false; public $name = false; public $document; public $application; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $io, $store; $document = $this->document; $render = $document->render; $mod->enabled = true; if (!$this->from) $this->from = $document->data['flags']['modLayout_from']; if (!$this->name) $this->name = $document->data['flags']['modLayout_name']; switch ($this->from) { // switch from case 'shared': case 'templates': $data = $store->control->read ('layouts/' . $this->name); break; case 'control': $data = $store->control->read ($this->name); break; case 'application': $data = $this->application->data; break; case 'domain': if ($document->access (4, $document->domain->groups)) { // administrator access // switch personalite buttons on/off if (isset ($document->actions['personalite'][1])) { // switch personalite buttons if ($document->actions['personalite'][1] == 'on') $document->session['personalite'] = 1; else unset ($document->session['personalite']); } // switch personalite buttons // display Personalite buttons and context options if (isset ($document->session['personalite'])) { // personalite buttons on $document->templateEditable = true; $document->mod->interface->appendChild ('modLayout_personaliteOff') ->url (true, true, '_personalite-off'); } // personalite buttons on else { // personalite buttons off $document->mod->interface->appendChild ('modLayout_personaliteOn') ->url (true, true, '_personalite-on'); } // personalite buttons off } // administrator access $templates = $store->domainExtras->children ($document->domain->domainId, MODE_TEMPLATE, 0); $blocks = array (); foreach ($templates as $data) { // each template $blocks[$data['name']] = $data; } // each template if (isset ($blocks['layouts/default'])) $data = $blocks['layouts/default']; else $data = $store->control->read ('layouts/default'); if ($blocks) $data['blocks'] = $blocks; break; } // switch from if (!isset ($data) or !$data) $data = $store->control->read ('layouts/default'); if (isset ($data['flags'])) $document->data['flags'] = array_replace ($document->data['flags'], $data['flags']); if (isset ($data['blocks'])) { // blocks foreach ($data['blocks'] as $name => $block) { // each block if (is_string ($block)) $render->blocks[$name] = $store->control->read ($block); else $render->blocks[$name] = $block; } // each block } // blocks unset ($data['blocks']); $mod->data = $data; } // function setModule } // class eclMod_modLayout //!eof:library/modLayout/eclMod_modLayout.php; //!file:library/modList/eclApp_modList.php; class eclApp_modList { // class eclApp_modList static function is_child ($me, $name) { // function is_child if (substr ($name, 0, 8) == 'section_') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names () { // function get_children_names return array ('section'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('modList_content'); $me->isDomain = true; } // function constructor_helper static function dispatch ($document) { // function dispatch global $store; @list ($section, $module, $preset, $name) = explode ('_', $document->application->name, 4); if (!strlen ($name)) return; $me = $document->application->findChild ($name); if (!$me) return; if (!$document->access (4, $me->groups)) return; // Restore default configurations if (isset ($document->received['save']) and $document->received['save'] == 'restore') { // restore default configurations unset ($me->data['extras'][$module]); return $document->dataReplace ('layouts/dialog_close'); } // restore default configurations if (isset ($me->data['extras'][$module])) $data = $me->data['extras'][$module]; elseif ($module == 'post') $data = $store->control->read ('modList_preset_' . $preset . 'Content'); else $data = $store->control->read ('modList_preset_' . $preset); if ($module == 'post') $formulary = $document->createFormulary ('modList_postEdit', $data); else $formulary = $document->createFormulary ('modList_edit', $data); if ($formulary->save ()) { // save formulary if (!isset ($formulary->data['local']['list'])) $formulary->data['local']['list'] = 'default'; $me->data['extras'][$module] = $formulary->data; $document->dataReplace ('layouts/dialog_close'); return; } // save formulary $document->mod->formulary = $formulary; if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); $document->dataMerge ('dialog_tabs'); } // function dispatch } // class eclApp_modList //!eof:library/modList/eclApp_modList.php; //!file:library/modList/eclMod_modList.php; class eclMod_modList { // class eclMod_modList public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule } // function setModule } // class eclMod_modList //!eof:library/modList/eclMod_modList.php; //!file:library/modLogin/eclMod_modLogin.php; class eclMod_modLogin { // class eclMod_modLogin public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $render = $document->render; if ($document->access (1) or (isset ($document->data['flags']['modLogin_enabled']) and !$document->data['flags']['modLogin_enabled'])) return; $mod->data = $render->block ('modules/login'); static $instances = 0; $instances++; $formulary = $document->createFormulary ('modLogin_login', array (), 'login' . $instances . 'fields'); if ($instances == 1) $formulary->action = '_login'; else $formulary->action = '_login-' . $instances; $mod->childrenMerge ($formulary->create ()); $mod->enabled = true; } // function setModule } // class eclMod_modLogin //!eof:library/modLogin/eclMod_modLogin.php; //!file:library/modNavbar/eclMod_modNavbar.php; class eclMod_modNavbar { // class eclMod_modNavbar public $document; public $showSublevel = false; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $render = $document->render; // Condies if ($document->printableLayout) return; if ($document->pathway[0] == SYSTEM_PROFILES_URI) return $this->profileNavBar ($mod); // Vamos iniciar a partir da aplicao ativa neste documento $level = 1; $app[1] = $document->application; $names[1] = $app[1]->name; // Agora, vamos subir a escada, percorrendo o endereo reversamente while (!$app[$level]->isDomain and !$app[$level]->parent->isDomain) { // loop levels $level++; $app[$level] = $app[$level - 1]->parent; $names[$level] = $app[$level]->name; } // loop levels if ($app[$level]->parent->applicationName == 'domain') $isDomain = true; // Vamos criar as camadas static $menuIndex = 0; for ($i = $level; $i; $i--) { // loop each layer $children = $app[$i]->parent->menuChildren ($document, $names[$i]); if ($i == $level and count ($children) == 1) continue; if ($i == 1 and count ($children) == 1) continue; if (!count ($children)) break; $layer = $mod->appendChild (); foreach ($children as $index => $child) { // each child if (isset ($isDomain) and $i == $level and $index == 0 and !isset ($mod->data['local']['home_display'])) continue; $menu = $layer->appendChild ($child->data) ->url ($child->pathway) ->virtual ($child->access) ->active ($i == 1 and $child->name == $names[$i]) ->set ('editable', $i == 1 and $child->name == $names[$i] and $child->id and $document->contentEditable and $document->access (4, $child->groups)); if (isset ($child->data['flags']['section_type']) and $child->data['flags']['section_type'] == 'menu') { // submenu $menu->data['menu'] = 'menu' . (++$menuIndex); if ($document->access (4, $child->groups)) $menu->data['can_edit'] = 1; $menuItens = $child->menuChildren ($document); foreach ($menuItens as $menuItem) { // each menu item $menu->appendChild ($menuItem->data) ->url (array ($document->domain->name, $menuItem->name)) ->virtual ($child->access); } // each menu item } // submenu } // each child } // loop each layer if ($this->showSublevel) { // last level $lastLayer = $document->application->menuChildren ($document); if ($lastLayer) $layer = $mod->appendChild (); foreach ($lastLayer as $child) { // each child $layer->appendChild ($child) ->url ($child->pathway); } // each child } // last level if (!$mod->children) return; // Configuraes $mod->data = $render->block ('modules/navbar'); // Se o mdulo pode ser editado if ($document->templateEditable and $document->access (4, $document->domain->groups)) { // reference $pathway = array ($document->domain->name, '-personalite', 'modules', 'navbar'); $mod->data['local']['personalite_url'] = $document->url ($pathway); $caption = $store->control->read ('modNavbar_edit'); $mod->data['local']['personalite_caption'] = $caption['text']['caption']; } // reference $mod->enabled = true; } // function setModule private function profileNavBar ($mod) { // function profileNavBar global $store; $document = $this->document; $me = $document->application; while (!$me->parent->isDomain) { // find domain $me = $me->parent; } // find domain $row = $mod->appendChild (); foreach ($me->menuChildren ($document) as $child) { // each child $row->appendChild ($child->data) ->url ($child->pathway) ->active ($child->pathway == $document->pathway); } // each child if (!$row->children) return; $mod->data = $store->control->read ('modules/navbar'); $mod->enabled = true; } // function profileNavBar } // class eclMod_modNavbar //!eof:library/modNavbar/eclMod_modNavbar.php; //!file:library/modNavbottom/eclMod_modNavbottom.php; class eclMod_modNavbottom { // class eclMod_modNavbottom public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $render = $document->render; // Condies if ($document->printableLayout) return; if (!$document->domain->domainId) return; $names = $store->domainContent->childrenNames ($document->domain->domainId, MODE_SECTION, 1); if (!$names) return; $row = $mod->appendChild (); foreach ($names as $name) { // each child $child = $document->domain->child ($name); if (!$child or !$document->access ($child->access, $child->groups)) continue; $row->appendChild ($child) ->url ($child->pathway) ->active ($child->pathway == $document->pathway); } // each child if (!$row->children) return; // Configuraes $mod->data = $render->block ('modules/navbottom'); // Se o mdulo pode ser editado if ($document->templateEditable and $document->access (4, $document->domain->groups)) { // reference $pathway = array ($document->domain->name, '-personalite', 'modules', 'navbottom'); $mod->data['local']['personalite_url'] = $document->url ($pathway); $caption = $store->control->read ('modNavbottom_edit'); $mod->data['local']['personalite_caption'] = $caption['text']['caption']; } // reference $mod->enabled = true; } // function setModule } // class eclMod_modNavbottom //!eof:library/modNavbottom/eclMod_modNavbottom.php; //!file:library/modNavmain/eclMod_modNavmain.php; class eclMod_modNavmain { // class eclMod_modNavmain public $document; public $showSublevel = false; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $render = $document->render; // Condies if ($document->printableLayout) return; if ($document->pathway[0] == SYSTEM_PROFILES_URI) return $this->profileNavBar ($mod); $row = $mod->appendChild(); foreach ($document->domain->menuChildren ($document) as $child) { // each child $row->appendChild ($child) ->swapTitle() ->url ($child->pathway) ->active ($child->pathway == $document->pathway); } // each child if (!$row->children) return; // Configuraes $mod->data = $render->block ('modules/navmain'); // Se o mdulo pode ser editado if ($document->templateEditable and $document->access (4, $document->domain->groups)) { // reference $pathway = array ($document->domain->name, '-personalite', 'modules', 'navmain'); $mod->data['local']['personalite_url'] = $document->url ($pathway); $caption = $store->control->read ('modNavmain_edit'); $mod->data['local']['personalite_caption'] = $caption['text']['caption']; } // reference $mod->enabled = true; } // function setModule private function profileNavBar ($mod) { // function profileNavBar global $store; $document = $this->document; $me = $document->application; while (!$me->parent->isDomain) { // find domain $me = $me->parent; } // find domain $row = $mod->appendChild (); foreach ($me->menuChildren ($document) as $child) { // each child $row->appendChild ($child->data) ->url ($child->pathway) ->active ($child->pathway == $document->pathway); } // each child if (!$row->children) return; $mod->data = $store->control->read ('modules/navbar'); $mod->enabled = true; } // function profileNavBar } // class eclMod_modNavmain //!eof:library/modNavmain/eclMod_modNavmain.php; //!file:library/modPages/eclMod_modPages.php; class eclMod_modPages { // class eclMod_modPages public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule } // function setModule } // class eclMod_modPages //!eof:library/modPages/eclMod_modPages.php; //!file:library/modPanel/eclMod_modPanel.php; class eclMod_modPanel { // class eclMod_modPanel public $main = array ('content', 'list', 'formulary'); public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $buffer = '['; foreach ($this->main as $modName) { // each child $buffer .= 'mod`' . $modName . '`;'; } // each child $mod->data['html'] = $buffer; $mod->enabled = true; } // function setModule } // class eclMod_modPanel //!eof:library/modPanel/eclMod_modPanel.php; //!file:library/modSearch/eclMod_modSearch.php; class eclMod_modSearch { // class eclMod_modSearch public $document; public $enabled = true; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; if (!$this->enabled) return; $document = $this->document; if ($document->application->isDomain) return; if ($document->printableLayout) return; $document = $this->document; $render = $document->render; $me = $document->application; $formulary = $document->createFormulary ('modSearch_search', array (), 'search'); if ($id = $store->domainContent->findMarker ($me->domainId, 3)) $formulary->pathway = $store->domainContent->pathway ($me->domainId, $id); else $formulary->pathway = array ($document->domain->name, '-search'); $data = array (); if (isset ($document->actions['tag'][1])) { // tag $search = $document->actions['tag']; array_shift ($search); $formulary->data['key'] = implode (' ', $search); $formulary->data['tags_only'] = 1; } // tag if (isset ($document->actions['search'][1])) { // tag $search = $document->actions['search']; array_shift ($search); $formulary->data['key'] = implode (' ', $search); } // tag else { // from formulary $formulary->save (); if (isset ($formulary->data['tags_only']) and $formulary->data['tags_only']) { // tags if (isset ($formulary->data['key'])) { // key exists $action = explode (' ', $formulary->data['key']); array_unshift ($action, 'tag'); $document->actions['tag'] = $action; } // key exists } // tags else { // key if (isset ($formulary->data['key'])) { // key exists $action = explode (' ', $formulary->data['key']); array_unshift ($action, 'search'); $document->actions['search'] = $action; } // key exists } // key } // from formulary $mod->childrenMerge ($formulary->create ()); $mod->data = $render->block ('modules/search'); // Se o mdulo pode ser editado if ($document->templateEditable and $document->access (4, $document->domain->groups)) { // reference $pathway = array ($document->domain->name, '-personalite', 'modules', 'search'); $mod->data['local']['personalite_url'] = $document->url ($pathway); $caption = $store->control->read ('modSearch_edit'); $mod->data['local']['personalite_caption'] = $caption['text']['caption']; } // reference $mod->enabled = true; } // function setModule } // class eclMod_modSearch //!eof:library/modSearch/eclMod_modSearch.php; //!file:library/modSort/eclMod_modSort.php; class eclMod_modSort { // class eclMod_modSort public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule } // function setModule } // class eclMod_modSort //!eof:library/modSort/eclMod_modSort.php; //!file:library/modTable/eclApp_modTable.php; class eclApp_modTable { // class eclApp_modTable static function is_child ($me, $name) { // function is_child if ($name == 'table') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names () { // function get_children_names return array ('table'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('modTable_content'); $me->ignoreSubfolders = true; $me->isDomain = true; } // function constructor_helper static function dispatch ($document) { // function dispatch global $store, $system; $pathway = $document->pathway; array_shift ($pathway); // domain array_shift ($pathway); // -dialog array_shift ($pathway); // table $name = array_pop ($pathway); $parts = explode (CHR_FNS, $name); if (count ($parts) == 2) list ($name, $number) = $parts; else $number = '0'; $pathway[] = $name; $me = $document->domain; foreach ($pathway as $name) { // each name $me = $me->child ($name); if ($me === false) return; } // each name if (!$document->access (4, $me->groups)) return; if (isset ($me->data['extras']['table_' . $number])) $data = $me->data['extras']['table_' . $number]; else { // empty $data = $store->control->read ('modTable_module'); $data['table'] = array (array ('', ''), array ('', '')); } // empty $formulary = $document->createFormulary ('modTable_edit', $data); $formulary->pathway = $document->pathway; if ($formulary->save ()) { // save formulary $me->data['extras']['table_' . $number] = $formulary->data; $document->dataReplace ('layouts/dialog_close'); return; } // save formulary $document->mod->formulary = $formulary; } // function dispatch } // class eclApp_modTable //!eof:library/modTable/eclApp_modTable.php; //!file:library/modTable/eclFilter_modTable.php; class eclFilter_modTable { // class eclFilter_modTable static function create ($fieldName, $control, $formulary) { // function create $document = $formulary->document; if (!isset ($control['flags']['target'])) return; $table = $formulary->appendChild ($control); $table->data['name'] = $fieldName; $array = $formulary->getField ($control['flags']['target']); if (!is_array ($array) or !$array) $array = array (array ('', ''), array ('', '')); // Descobre o nmero mximo de clulas por linha $maxCols = 0; $maxRows = 0; foreach ($array as $row) { // each row if (!is_array ($row)) continue; $maxRows++; if (count ($row) > $maxCols) $maxCols = count ($row); } // each row $formulary->hidden[$fieldName . '_maxRows'] = $maxRows; $formulary->hidden[$fieldName . '_maxCols'] = $maxCols; $numRow = - 1; foreach ($array as $line) { // each line if (!is_array ($line)) continue; $numRow++; $row = $table->appendChild (false, array ('row' => $numRow)); for ($i = 0; $i < $maxCols; $i++) { // each cell if (isset ($line[$i])) { // value exists $local['value'] = $formulary->htmlSpecialChars ($line[$i]); if ($document->charset != 'UTF-8') $local['value'] = mb_convert_encoding ($local['value'], $document->charset, 'UTF-8'); } // value exists else $local['value'] = ''; $local['name'] = $fieldName . '_' . $numRow . '_' . $i; $row->appendChild (false, $local); } // each cell } // each line } // function create static function save ($fieldName, $control, $formulary) { // function save $received = $formulary->received; $document = $formulary->document; if (!isset ($control['flags']['target'])) return; if (!isset ($received[$fieldName . '_maxRows'])) return; if (!isset ($received[$fieldName . '_maxCols'])) return; $numCols = $received[$fieldName . '_maxCols']; $numRows = $received[$fieldName . '_maxRows']; $table = array (); for ($r = 0; $r < $numRows; $r++) { // each row for ($c = 0; $c < $numCols; $c++) { // each col if (isset ($received[$fieldName . '_' . $r . '_' . $c])) $value = trim ($received[$fieldName . '_' . $r . '_' . $c]); if (!strlen ($value)) continue; if ($document->charset != 'UTF-8') $value = mb_convert_encoding ($value, 'UTF-8', $document->charset); if (!isset ($table[$r])) $table[$r] = array ($c => $value); else $table[$r][$c] = $value; } // each col } // each row $formulary->setField ($control['flags']['target'], $table); } // function save } // class eclFilter_modTable //!eof:library/modTable/eclFilter_modTable.php; //!file:library/modTable/eclMod_modTable.php; class eclMod_modTable { // class eclMod_modTable public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store, $system; $document = $this->document; // Encontre a aplicao $me = $document->application->findModuleTarget ($document, $arguments); if (!$me) return; $number = $arguments[1]; // A tabela no pode ser editada e est vazia if ($document->printableLayout or !$document->access (4, $me->groups)) { // user cant edit if (!isset ($me->data['extras']['table_' . $number]['table'])) return; } // user cant edit else { // user is admin // O documento est em modo de edio if ($document->contentEditable) { // content editable $editable = true; if (!isset ($me->data['extras']['table_' . $number])) $me->data['extras']['table_' . $number] = $store->control->read ('modTable_module'); if (!isset ($me->data['extras']['table_' . $number]['local']['list'])) $me->data['extras']['table_' . $number]['local']['list'] = 'table_simple'; if (!isset ($me->data['extras']['table_' . $number]['table'])) $me->data['extras']['table_' . $number]['table'] = array (array ('', ''), array ('', '')); } // content editable else { // wysiwyg disabled if (!isset ($me->data['extras']['table_' . $number])) $mod->data = $store->control->read ('modTable_moduleCreate'); } // wysiwyg disabled // anchor $pathway = array_slice ($me->pathway, 1); array_unshift ($pathway, $document->domain->name, '-personalite', 'tables', 'table_' . $number); $mod->data['local']['personalite_url'] = $document->url ($pathway); $caption = $store->control->read ('modTable_edit'); $mod->data['local']['personalite_caption'] = $caption['text']['caption']; } // user is admin $mod->enabled = true; if (!isset ($me->data['extras']['table_' . $number]['table'])) return; $mod->data = array_replace_recursive ($mod->data, $me->data['extras']['table_' . $number]); if (isset ($editable) and $editable and isset ($me->data['id'])) { // editable $mod->data['local']['editable'] = 1; $mod->data['local']['id'] = $me->data['id']; $mod->data['local']['number'] = $number; } // editable // count max cols $table = &$me->data['extras']['table_' . $number]['table']; $maxCols = 0; foreach ($table as $row) { // count columns if (count ($row) > $maxCols) $maxCols = count ($row); } // count columns $lang = $document->lang; foreach ($table as $rowData) { // each row $row = $mod->appendChild (); for ($index = 0; $index < $maxCols; $index++) { // each column if (isset ($rowData[$index])) $local['caption'][$lang] = array (1 => $rowData[$index], 4 => 1, 5 => 2, 6 => 1); else $local = array (); $row->appendChild ($local); } // each column } // each row } // function setModule } // class eclMod_modTable //!eof:library/modTable/eclMod_modTable.php; //!file:library/modTable/new/eclApp_modTable_new.php; class eclApp_modTable_new { // class eclApp_modTable_new static function is_child ($me, $name) { // function is_child if ($name == 'table_create') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names () { // function get_children_names return array ('table_create'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('modTable_content'); $me->ignoreSubfolders = true; $me->isDomain = true; } // function constructor_helper static function dispatch ($document) { // function dispatch global $store, $system; $pathway = $document->pathway; array_shift ($pathway); // domain array_shift ($pathway); // -dialog array_shift ($pathway); // table $name = array_pop ($pathway); $parts = explode (CHR_FNS, $name); if (count ($parts) == 2) list ($name, $number) = $parts; else $number = '0'; $pathway[] = $name; $me = $document->domain; foreach ($pathway as $name) { // each name $me = $me->child ($name); if ($me === false) return; } // each name if (!$document->access (4, $me->groups)) return; $formulary = $document->createFormulary ('modTable_new_edit', array (), 'create'); $formulary->pathway = $document->pathway; $formulary->action = '_create'; if ($formulary->command ('cancel')) { // cancel $document->dataReplace ('layouts/dialog_close'); return; } // cancel if ($formulary->command ('save') and $formulary->save ()) { // save $alpha = array ('A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'); $table = array (); for ($rows = 0; $rows < $formulary->data['rows']; $rows++) { // each row $table[$rows] = array (); for ($cols = 0; $cols < $formulary->data['cols']; $cols++) { // each column $table[$rows][$cols] = ''; } // each column } // each row unset ($formulary->data['rows']); unset ($formulary->data['cols']); $formulary->data['table'] = $table; $me->data['extras']['table_' . $number] = $formulary->data; $document->dataReplace ('layouts/dialog_close'); $document->data['module'] = 'table:' . $number; return; } // save $document->dataReplace ('modTable_new_content'); $document->mod->formulary = $formulary; if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); } // function dispatch } // class eclApp_modTable_new //!eof:library/modTable/new/eclApp_modTable_new.php; //!file:library/modTitle/eclMod_modTitle.php; class eclMod_modTitle { // class eclMod_modTitle public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $render = $document->render; // Condies if (!isset ($document->data['text']['title'])) return; // Configuraes $mod->data = $render->block ('modules/title'); // Itens da lista $mod->appendChild ($document->data) ->set ('editable', $document->contentEditable); // Se o mdulo pode ser editado if ($document->templateEditable and $document->access (4, $document->domain->groups)) { // reference $pathway = array ($document->domain->name, '-personalite', 'modules', 'title'); $mod->data['local']['personalite_url'] = $document->url ($pathway); $caption = $store->control->read ('modTitle_edit'); $mod->data['local']['personalite_caption'] = $caption['text']['caption']; } // reference $mod->enabled = true; } // function setModule } // class eclMod_modTitle //!eof:library/modTitle/eclMod_modTitle.php; //!file:library/modToolbox/eclMod_modToolbox.php; class eclMod_modToolbox { // class eclMod_modToolbox public $enabled = true; public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $render = $document->render; if (isset ($document->data['flags']['modToolbox_enabled']) and $document->data['flags']['modToolbox_enabled'] == 0) return; $app = $document->application; while (!$app->isDomain) { // loop back $app = $app->parent; } // loop back $toolbox = $app->child ('-tools'); if ($toolbox === false) return; $row = $mod->appendChild (); foreach ($toolbox->menuChildren ($document) as $child) { // each child if (!isset ($child->data['text']['caption'])) continue; $local = array ( 'virtual' => 1, 'url' => "javaScript:humperstilshen.popUpOpen('" . $document->url ($child->pathway) . "', 400, 600)", 'caption' => $child->data['text']['caption'] ); $row->appendChild (false, $local); } // each child if (!$row->children) return; $mod->data = array_replace ($render->block ('modules/system_menu'), $store->control->read ('modToolbox_module')); $mod->enabled = true; } // function setModule } // class eclMod_modToolbox //!eof:library/modToolbox/eclMod_modToolbox.php; //!file:library/modUser/alerts/eclMod_modUser_alerts.php; class eclMod_modUser_alerts extends eclEngine_listItem { // class eclMod_modUser_alerts public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store, $system; $document = $this->document; $render = $document->render; if (!$document->access (1)) return; $row = $mod->appendChild (); $row->children = $this->children; if ($document->access (4, $system->groups)) { // webmaster if ($system->child (SYSTEM_ADMIN_URI) and $system->child (SYSTEM_ADMIN_URI)->child ('alerts')) { // exists $alerts = $system->child (SYSTEM_ADMIN_URI)->child ('alerts'); foreach ($alerts->children () as $child) { // each child $row->appendChild ($child->data) ->swapTitle () ->url ($child->pathway); } // each child } // alerts exists } // webmaster $alerts = $system->child (SYSTEM_PROFILES_URI)->child ($document->user->name)->child ('-alerts'); if ($alerts) { // user alerts foreach ($alerts->children () as $child) { // each child if (isset ($child->data['flags']['modUser_alerts_popUp'])) $row->appendChild ($child->data) ->url ($child->pathway) ->popUpOpen (); else $row->appendChild ($child->data) ->url ($child->pathway); } // each child } // user alerts foreach ($row->children as &$child) { // each child $child->data['virtual'] = 1; } // each child if (!$row->children) return; $mod->data = array_replace ($render->block ('modules/system_menu'), $store->control->read ('modUser_alerts_module')); $mod->enabled = true; } // function setModule } // class eclMod_modUser_alerts //!eof:library/modUser/alerts/eclMod_modUser_alerts.php; //!file:library/modUser/eclMod_modUser.php; class eclMod_modUser { // class eclMod_modUser public $enabled = false; public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store, $system; $document = $this->document; $render = $document->render; if (!$document->access (1)) return; if ($document->application->isDomain) return; if (isset ($document->data['flags']['modUser_enabled']) and !$document->data['flags']['modUser_enabled']) return; $row = $mod->appendChild (); // go to user profile main page $row->appendChild ('modUser_goMain') ->url (array (SYSTEM_PROFILES_URI, $document->user->name)) ->active (count ($document->application->pathway) > 1 and $document->application->pathway[0] == SYSTEM_PROFILES_URI and $document->application->pathway[1] == $document->user->name); // Go to admin area if ($document->access (4, $system->groups)) $row->appendChild ('modUser_goAdmin') ->url (array (SYSTEM_ADMIN_URI)) ->active ($document->application->pathway[0] == SYSTEM_ADMIN_URI); // Back to home if (SYSTEM_HOSTING_MODE == 0 and $document->application->pathway[0] != SYSTEM_DEFAULT_DOMAIN_NAME) $row->appendChild ('modUser_welcome_goHome') ->url (array (SYSTEM_DEFAULT_DOMAIN_NAME)); // logout $application = $document->application; while ($application->access) { // access denied $application = $application->parent; } // access denied $row->appendChild ('modUser_goLogout') ->virtual () ->url ($application->pathway, true, '_logout'); $mod->data = array_replace ($render->block ('modules/system_menu'), $store->control->read ('modUser_module')); $mod->enabled = true; } // function setModule } // class eclMod_modUser //!eof:library/modUser/eclMod_modUser.php; //!file:library/modUser/quoteoftheday/eclMod_modUser_quoteoftheday.php; class eclMod_modUser_quoteoftheday { // class eclMod_modUser_quoteoftheday public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $mod->data = $store->control->read ('modUser_quoteoftheday_module'); $quotes = $store->control->read ('modUser_quoteoftheday_quotes'); if (!isset ($quotes['quotes'])) return; $max = count ($quotes['quotes']) - 1; $n = mt_rand (0, $max); if (!isset ($quotes['quotes'][$n])) return; $content = '
      ' . $quotes['quotes'][$n][0] . '

      (' . $quotes['quotes'][$n][1] . ')

      '; $data = array ('text' => array ('content' => array ($document->lang => array ( 1 => $content, 2 => 1, 5 => 2, 6 => 1 )))); $mod->appendChild ($data); $mod->enabled = true; } // function setModule } // class eclMod_modUser_quoteoftheday //!eof:library/modUser/quoteoftheday/eclMod_modUser_quoteoftheday.php; //!file:library/modUser/subscribe/eclMod_modUser_subscribe.php; class eclMod_modUser_subscribe { // class eclMod_modUser_subscribe public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store, $system; $document = $this->document; if ($document->access (1)) return; $domain = $document->domain; $main = $system->child (SYSTEM_DEFAULT_DOMAIN_NAME); if (!$main) return; // Recover password only if mails can be sent if (INTEGRATION_SMTP_ENABLE) { // recover password $mod->appendChild ('modUser_welcome_goPassword') ->url (array (SYSTEM_PROFILES_URI, '-recover-password')) ->popUpOpen (); } // recover password // subscribe if ($domain->child ('-join')) $mod->appendChild ('modUser_welcome_goSubscribe') ->url (array ($domain->name, '-join')) ->popUpOpen (); $mod->data = $store->control->read ('modUser_subscribe_module'); $mod->enabled = true; } // function setModule } // class eclMod_modUser_subscribe //!eof:library/modUser/subscribe/eclMod_modUser_subscribe.php; //!file:library/modUser/tools/eclMod_modUser_tools.php; class eclMod_modUser_tools { // class eclMod_modUser_tools public $enabled = false; public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store, $system; $document = $this->document; $render = $document->render; if (!$document->access (4)) return; if ($document->application->isDomain) return; $row = $mod->appendChild (); // personal data $row->appendChild ('modUser_tools_goPersonal') ->url (array (SYSTEM_PROFILES_URI, $document->user->name, '-personal')) ->popUpOpen (); $user = $store->user->open ($document->user->name); // Verify phone if (INTEGRATION_SMS_ENABLE) { // verify by SMS if ($user['phone'] == '') $row->appendChild ('userHome_phone_content') ->url (array (SYSTEM_PROFILES_URI, $document->user->name, '-phone')) ->popUpOpen (); else $row->appendChild ('userHome_phone_contentVerified') ->url (array (SYSTEM_PROFILES_URI, $document->user->name, '-phone')) ->popUpOpen (); } // verify by SMS // Verify mail if (INTEGRATION_SMTP_ENABLE) { // verify by SMTP if ($user['mail'] == '') $row->appendChild ('userHome_mail_content') ->url (array (SYSTEM_PROFILES_URI, $document->user->name, '-mail')) ->popUpOpen (); else $row->appendChild ('userHome_mail_contextVerified') ->url (array (SYSTEM_PROFILES_URI, $document->user->name, '-mail')) ->popUpOpen (); } // verify by SMTP // change password $row->appendChild ('modUser_tools_goPassword') ->url (array (SYSTEM_PROFILES_URI, $document->user->name, '-password')) ->popUpOpen (); $mod->data = array_replace ($render->block ('modules/system_menu'), $store->control->read ('modUser_tools_module')); $mod->enabled = true; } // function setModule } // class eclMod_modUser_tools //!eof:library/modUser/tools/eclMod_modUser_tools.php; //!file:library/modUser/welcome/eclMod_modUser_welcome.php; class eclMod_modUser_welcome { // class eclMod_modUser_welcome public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store, $system; $document = $this->document; if ($document->access (1)) return; if (isset ($document->data['flags']['modUser_enabled']) and !$document->data['flags']['modUser_enabled']) return; $row = $mod->appendChild (); $domain = $document->domain; $main = $system->child (SYSTEM_DEFAULT_DOMAIN_NAME); if ($main === false) $main = $domain; // Recover password only if mails can be sent if (INTEGRATION_SMTP_ENABLE) { // recover password $row->appendChild ('modUser_welcome_goPassword') ->url (array (SYSTEM_PROFILES_URI, '-recover-password')) ->popUpOpen (); } // recover password // subscribe if (SYSTEM_ENABLE_USER_SUBSCRIPTIONS and $domain->child ('-join')) $row->appendChild ('modUser_welcome_goSubscribe') ->url (array ($domain->name, '-join')) ->popUpOpen (); elseif (SYSTEM_ENABLE_USER_SUBSCRIPTIONS) $row->appendChild ('modUser_welcome_goSubscribe') ->url (array (SYSTEM_PROFILES_URI, '-join')) ->popUpOpen (); // info if ($domain->name != SYSTEM_PROFILES_URI and $domain->name != SYSTEM_ADMIN_URI and $store->domain->getStatus ($domain->name) >= 2) { // show info if ($id = $store->domainContent->findMarker ($domain->domainId, 6)) { // info page exists $pathway = $store->domainContent->pathway ($domain->domainId, $id); $row->appendChild ('modUser_welcome_goInfo') ->url ($pathway) ->active ($document->pathway == $pathway); } // info page exists else $row->appendChild ('modUser_welcome_goInfo') ->url (array ($domain->name, '-info')) ->active ($document->pathway == array ($domain->name, '-info')); } // show info // Organization identification if (SYSTEM_HOSTING_MODE and strlen (SYSTEM_PROJECT_URL) and $domain->name != SYSTEM_DEFAULT_DOMAIN_NAME) $row->appendChild ('modUser_welcome_goOrganization') ->set ('url', SYSTEM_PROJECT_URL); // Go to profiles page /* * $row->appendChild ('modUser_welcome_goProfiles') * ->url (array (SYSTEM_PROFILES_URI)) * ->active ($document->application->pathway[0] == SYSTEM_PROFILES_URI); */ // Back to home if (SYSTEM_HOSTING_MODE == 0 and $document->application->pathway[0] != SYSTEM_DEFAULT_DOMAIN_NAME) $row->appendChild ('modUser_welcome_goHome') ->url (array (SYSTEM_DEFAULT_DOMAIN_NAME)); // Abuse report /* * if ($domain->name != SYSTEM_DEFAULT_DOMAIN_NAME and (($document->application->domainId and $document->application->id) or $document->application->userId)) * $row->appendChild ('modUser_welcome_goReport') * ->url (true, true, '_alert-report') * ->active ($document->actions ('alert', 'report')); */ // Service terms if ($id = $store->domainContent->findMarker ($domain->domainId, 5)) { // this service terms $pathway = $store->domainContent->pathway ($domain->domainId, $id); $row->appendChild ('modUser_welcome_goServiceTerms') ->url ($pathway) ->active ($document->pathway == $pathway); } // this service terms elseif ($domain->name != SYSTEM_DEFAULT_DOMAIN_NAME and $id = $store->domainContent->findMarker ($main->domainId, 5)) { // global service terms $row->appendChild ('modUser_welcome_goServiceTerms') ->url ($store->domainContent->pathway ($main->domainId, $id)); } // global service terms // Privacy policy if ($id = $store->domainContent->findMarker ($domain->domainId, 7)) { // this privacy policy $pathway = $store->domainContent->pathway ($domain->domainId, $id); $row->appendChild ('modUser_welcome_goPrivacyPolicy') ->url ($pathway) ->active ($document->pathway == $pathway); } // this privacy policy elseif ($domain->name != SYSTEM_DEFAULT_DOMAIN_NAME and $id = $store->domainContent->findMarker ($main->domainId, 7)) { // global privacy policy $row->appendChild ('modUser_welcome_goPrivacyPolicy') ->url ($store->domainContent->pathway ($main->domainId, $id)); } // global privacy policy // About Ecolabore Engine $row->appendChild ('modUser_welcome_goEcolabore', array ('url' => SYSTEM_GENERATOR_URL)); $mod->data = array_replace ($document->render->block ('modules/system_menu'), $store->control->read ('modUser_welcome_module')); $mod->enabled = true; } // function setModule } // class eclMod_modUser_welcome //!eof:library/modUser/welcome/eclMod_modUser_welcome.php; //!file:library/modVideo/eclMod_modVideo.php; class eclMod_modVideo { // class eclMod_modVideo public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; // Procure a aplicao $me = $document->application->findModuleTarget ($document, $arguments); if (!$me) return; $number = $arguments[1]; // Procure o mdulo dentro da aplicao if (isset ($me->data['extras']['video_' . $number])) { // module exists $video = $me->data['extras']['video_' . $number]; $mod->data = $video; $mod->enabled = true; } // module exists if ($document->access (4, $me->groups)) { // personalite $mod->enabled = true; if (isset ($video)) { // modify $pathway = array_slice ($me->pathway, 1); array_unshift ($pathway, $document->domain->name, '-personalite', 'extras', 'video_' . $number); $mod->data['local']['personalite_url'] = $document->url ($pathway); $caption = $store->control->read ('modVideo_edit'); $mod->data['local']['personalite_caption'] = $caption['text']['caption']; } // modify } // personalite $mod->data['local']['number'] = $number; $mod->data['local']['list'] = 'details'; $mod->data['local']['details'] = 'media_video'; if (isset ($video)) $local['extras'] = array ('video_' . $number => $video); $local['pathway'] = $me->pathway; $mod->appendChild ($local); } // function setModule } // class eclMod_modVideo //!eof:library/modVideo/eclMod_modVideo.php; //!file:library/personalite/eclApp_personalite.php; class eclApp_personalite { // class eclApp_personalite static function is_child ($me, $name) { // function is_child if ($name == '-personalite') return true; return false; } // function is_child static function get_menu_type ($me) { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array ('-personalite'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('personalite_content'); $me->access = 4; $me->getMap (); $me->isDomain = true; } // function constructor_helper static function dispatch ($document) { // function dispatch $document->mod->list = new eclMod_sectionFolder_list ($document); } // function dispatch } // class eclApp_personalite //!eof:library/personalite/eclApp_personalite.php; //!file:library/personalite/eclFilter_personalite_flags.php; class eclFilter_personalite_flags { // class eclFilter_personalite_flags static function create ($fieldName, $control, $formulary) { // function create $local['name'] = $fieldName; // type if (isset ($control['flags']['type'])) $local['type'] = $control['flags']['type']; else $local['type'] = 'textarea'; if (isset ($formulary->data['flags'])) $local['value'] = $formulary->htmlSpecialChars (eclIo_file::array2string ($formulary->data['flags'])); $formulary->appendChild ($control, $local); } // function create static function save ($fieldName, $control, $formulary) { // function save if (isset ($formulary->received[$fieldName][0])) $formulary->data['flags'] = eclIo_file::string2array ($formulary->received[$fieldName]); else $formulary->data['flags'] = array (); } // function save } // class eclFilter_personalite_flags //!eof:library/personalite/eclFilter_personalite_flags.php; //!file:library/personalite/eclFilter_personalite_vars.php; class eclFilter_personalite_vars { // class eclFilter_personalite_vars static function create ($fieldName, $control, $formulary) { // function create $local['name'] = $fieldName; // type if (isset ($control['flags']['type'])) $local['type'] = $control['flags']['type']; else $local['type'] = 'textarea'; $buffer = CRLF; if (isset ($formulary->data['local'])) { // format output foreach ($formulary->data['local'] as $key => $value) { // each variable $buffer .= '$' . $key . ':' . $value . ';' . CRLF; } // each variable } // format output $local['value'] = $formulary->htmlSpecialChars ($buffer); $formulary->appendChild ($control, $local); } // function create static function save ($fieldName, $control, $formulary) { // function save if (isset ($formulary->received[$fieldName][0])) $buffer = $formulary->received[$fieldName]; else return $formulary->data['local'] = array (); $local = array (); foreach (explode (";", $buffer) as $line) { // each line $value = ''; $parts = explode (':', $line, 2); switch (count ($parts)) { // switch parts case 2: $value = trim ($parts[1]); case 1: $key = substr (trim ($parts[0]), 1); if (!is_string ($key) or !strlen ($key)) continue2; $local[$key] = $value; } // switch parts } // each line $formulary->data['local'] = $local; } // function save } // class eclFilter_personalite_vars //!eof:library/personalite/eclFilter_personalite_vars.php; //!file:library/personaliteApearance/color/eclApp_personaliteApearance_color.php; class eclApp_personaliteApearance_color { // class eclApp_personaliteApearance_color static function is_child ($me, $name) { // function is_child if ($name == 'color') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names () { // function get_children_names return array ('color'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('personaliteApearance_color_content'); $me->access = 0; $me->isDomain = true; } // function constructor_helper static function dispatch ($document) { // function dispatch } // function dispatch } // class eclApp_personaliteApearance_color //!eof:library/personaliteApearance/color/eclApp_personaliteApearance_color.php; //!file:library/personaliteApearance/eclApp_personaliteApearance.php; class eclApp_personaliteApearance { // class eclApp_personaliteApearance static function is_child ($me, $name) { // function is_child if ($name == 'apearance') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'section'; } // function get_menu_type static function get_children_names () { // function get_children_names return array ('apearance'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('personaliteApearance_content'); if (!$store->domainExtras->openChild ($me->domainId, MODE_TEMPLATE, 0, 'templates/default')) { // create user template $data = $store->control->read ('templates/default'); $data['mode'] = MODE_TEMPLATE; $data['name'] = 'templates/default'; $store->domainExtras->insert ($me->domainId, $data); } // create user template if (!$store->domainExtras->openChild ($me->domainId, MODE_TEMPLATE, 0, 'themes/user')) { // create user theme $data['mode'] = MODE_TEMPLATE; $data['name'] = 'themes/user'; $store->domainExtras->insert ($me->domainId, $data); } // create user theme $me->map = array ('personaliteApearance_color', 'personaliteApearance_font'); $me->isDomain = true; } // function constructor_helper static function dispatch ($document) { // function dispatch global $store; $me = $document->application; $template = &$store->domainExtras->openChild ($me->domainId, MODE_TEMPLATE, 0, 'templates/user'); $user = &$store->domainExtras->openChild ($me->domainId, MODE_TEMPLATE, 0, 'themes/user'); $preset = $store->control->read ('domainStyles_preset'); $local = $preset['local']; $all = array (); foreach (array ('palettes', 'themes') as $folder) { // each folder if (isset ($template['flags'][$folder])) $all[$folder] = explode (CRLF, $template['flags'][$folder]); else $all[$folder][] = 'default'; foreach ($all[$folder] as $name) { // each block if ($folder == 'themes' and $name == 'user') continue; $block = $store->domainExtras->openChild ($me->domainId, MODE_TEMPLATE, 0, $folder . '/' . $name); if (!$block) $block = $store->control->read ($folder . '/' . $name); if (isset ($block['local']) and $block['local']) $local = array_replace ($local, $block['local']); } // each block } // each folder $data['local'] = $user['local']; $data['defaults'] = $local; // Restore default configurations if (isset ($document->received['save']) and $document->received['save'] == 'restore') { // restore default configurations $user['local'] = array (); $template['updated'] = TIME; return $document->dataReplace ('layouts/dialog_close'); } // restore default configurations $formulary = $document->createFormulary ('personaliteApearance_scheme_edit', $data); if ($formulary->save ()) { // save $user['local'] = $formulary->data['local']; $template['updated'] = TIME; $document->dataReplace ('layouts/dialog_close'); return; } // save $document->mod->formulary = $formulary; $document->mod->fontfaces = new eclMod_personaliteApearance_fontfaces ($document); } // function dispatch } // class eclApp_personaliteApearance //!eof:library/personaliteApearance/eclApp_personaliteApearance.php; //!file:library/personaliteApearance/eclFilter_personaliteApearance_color.php; class eclFilter_personaliteApearance_color { // class eclFilter_personaliteApearance_color static function create ($fieldName, $control, $formulary) { // function create $local['url'] = $formulary->document->url (array ($formulary->document->domain->name, '-personalite', 'apearance', 'color')); // name $local['name'] = $fieldName; // type $local['type'] = 'color_testable'; // help if (isset ($control['flags']['help']) and !isset ($control['flags']['help_msg'])) $local['help_msg'] = 'system_msg_filterColorHelp'; // target if (isset ($control['flags']['target'])) $local['value'] = $formulary->getField ($control['flags']['target']); // default if (isset ($control['flags']['default'])) { // default $default = $formulary->getField ($control['flags']['default']); if ($default[0] == '$') $local['from'] = str_replace ('-', '_', substr ($default, 1)); else $local['default'] = $default; } // default // Current if (isset ($local['value'])) $local['current'] = $local['value']; elseif (isset ($local['default'])) $local['current'] = $local['default']; // property if (isset ($control['flags']['property'])) $local['property'] = $control['flags']['property']; // class if (isset ($control['flags']['field_name'])) { // class $local['class'] = $control['flags']['field_name']; $local['target'] = str_replace ('-', '_', $control['flags']['field_name']); } // class $formulary->appendChild ($control, $local); } // function create static function save ($fieldName, $control, $formulary) { // function save if (isset ($formulary->received[$fieldName]) and strlen ($formulary->received[$fieldName])) { // received value $value = $formulary->received[$fieldName]; if (!preg_match ('/^[a-zA-Z0-9\ #(),.]+$/', $value)) { // error // error if (isset ($control['flags']['error'])) $formulary->setErrorMsg ($control, $fieldName, 'system_msg_filterColorError', $value); else $value = false; } // error } // received value else $value = false; // required if ($value === false and isset ($control['flags']['required'])) return $formulary->setRequiredMsg ($control, $fieldName); // target if (isset ($control['flags']['target'])) $formulary->setField ($control['flags']['target'], $value); } // function save } // class eclFilter_personaliteApearance_color //!eof:library/personaliteApearance/eclFilter_personaliteApearance_color.php; //!file:library/personaliteApearance/eclFilter_personaliteApearance_font.php; /* * control_type = font * control_filter = font * control_field_name * control_target * font-family-enabled = 1 / 0 * font-weight-enabled, font-size-enabled, line-height-enabled * * This filter aways clears empty fields */ class eclFilter_personaliteApearance_font { // class eclFilter_personaliteApearance_font static function create ($fieldName, $control, $formulary) { // function create $local['url'] = $formulary->document->url (array ($formulary->document->domain->name, '-personalite', 'apearance', 'font')); // name $local['name'] = $fieldName; // Type $local['type'] = 'font_testable'; // help if (isset ($control['flags']['help']) and !isset ($control['flags']['help_msg'])) $local['help_msg'] = 'system_msg_filterFontHelp'; // target if (!isset ($control['flags']['target'])) return; $target = $control['flags']['target']; foreach (array ('font-name', 'font-weight', 'font-size', 'line-height') as $property) { // each property if (!isset ($control['flags'][$property . '-enable'])) { // disabled $local[$property . '-value'] = 'disabled'; continue; } // disabled $local[$property . '-enabled'] = 1; $local[$property . '-value'] = str_replace ('"', "'", $formulary->getField ('local/' . $target . '-' . $property)); // default $default = str_replace ('"', "'", $formulary->getField ('defaults/' . $target . '-' . $property)); if (isset ($default[0]) and $default[0] == '$') $local[$property . '-from'] = str_replace ('-', '_', substr ($default, 1)); else $local[$property . '-default'] = $default; // Current if (isset ($local[$property . '-value'])) $local[$property . '-current'] = $local[$property . '-value']; elseif (isset ($local[$property . '-default'])) $local[$property . '-current'] = $local[$property . '-default']; } // each property if (isset ($local['font-name-value'])) { // font family $font = $formulary->document->render->block ('fonts/' . $local['font-name-value']); if (isset ($font['local']['font-stack'])) $local['font-family-value'] = $font['local']['font-stack']; } // font family // class if (isset ($control['flags']['field_name'])) { // class $local['class'] = $control['flags']['field_name']; $local['target'] = str_replace ('-', '_', $control['flags']['field_name']); } // class $formulary->appendChild ($control, $local); } // function create static function save ($fieldName, $control, $formulary) { // function save if (!isset ($control['flags']['target'])) return; $received = $formulary->received; $target = $control['flags']['target']; foreach (array ('font-name', 'font-weight', 'font-size', 'line-height') as $property) { // each property if (!isset ($control['flags'][$property . '-enable'])) continue; $name = $fieldName . '_' . str_replace ('-', '_', $property); if (isset ($received[$name][0])) $formulary->setField ('local/' . $target . '-' . $property, $received[$name]); else $formulary->setField ('local/' . $target . '-' . $property, false); } // each property } // function save } // class eclFilter_personaliteApearance_font //!eof:library/personaliteApearance/eclFilter_personaliteApearance_font.php; //!file:library/personaliteApearance/eclFilter_personaliteApearance_select.php; /* * control_type = select_testable * control_filter = selectTestable * control_field_name * control_target * control_default * control_help_msg * * This filter aways clears empty fields */ class eclFilter_personaliteApearance_select { // class eclFilter_personaliteApearance_select static function create ($fieldName, $control, $formulary) { // function create global $store; $local['url'] = $formulary->document->url (array ($formulary->document->domain->name, '-dialog', 'color')); // name $local['name'] = $fieldName; // type $local['type'] = 'select_testable'; // target if (isset ($control['flags']['target'])) $value = $formulary->getField ($control['flags']['target']); else $value = false; // default if (isset ($control['flags']['default'])) $default = $formulary->getField ($control['flags']['default']); else $default = false; if (is_string ($default)) { // set default if ($default[0] == '$') { // default from target $local['from'] = str_replace ('-', '_', substr ($default, 1)); $default = false; } // default from target else $local['default'] = $default; } // set default if ($value === false or $value === '') $value = $default; if ($value === false) $value = ''; // property if (isset ($control['flags']['property'])) $local['property'] = $control['flags']['property']; // class if (isset ($control['flags']['field_name'])) { // class $local['class'] = $control['flags']['field_name']; $local['target'] = str_replace ('-', '_', $control['flags']['field_name']); } // class $select = $formulary->appendChild ($control, $local); if (!isset ($control['children'])) return; foreach ($control['children'] as $childName) { // each child $child = $store->control->read ($childName); if (!$child) continue; $currentValue = $child['flags']['value']; if ($currentValue === $value) $active = 'true'; else $active = ''; $select->appendChild ($child, array ( 'value' => $currentValue, 'active' => $active )); } // each child } // function create static function save ($fieldName, $control, $formulary) { // function save $default = false; if (isset ($control['flags']['default'])) $default = $formulary->getField ($control['flags']['default']); if (is_string ($default) and $default[0] == '$') $default = false; if (isset ($formulary->received[$fieldName]) and strlen ($formulary->received[$fieldName])) { // received $value = $formulary->received[$fieldName]; if (!preg_match ('/^[a-zA-Z0-9\ #(),.-]+$/', $value)) $value = false; } // received value else $value = false; if ($value === $default) $value = false; // target if (isset ($control['flags']['target'])) $formulary->setField ($control['flags']['target'], $value); } // function save } // class eclFilter_personaliteApearance_select //!eof:library/personaliteApearance/eclFilter_personaliteApearance_select.php; //!file:library/personaliteApearance/eclMod_personaliteApearance_fontfaces.php; class eclMod_personaliteApearance_fontfaces { // class eclMod_personaliteApearance_fontfaces public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $me = $document->application; $folder = 'fonts/'; $length = strlen ($folder); $render = $document->render; $buffer = ''; $userDetails = array (); foreach ($store->domainExtras->children ($me->domainId, MODE_TEMPLATE, 0) as $data) { // each user detail if (substr ($data['name'], 0, $length) != $folder) continue; $userDetails[substr ($data['name'], $length)] = $data['id']; } // each user detail foreach ($store->control->scandir ('t', 'fonts') as $name) { // each detail if (isset ($userDetails[$name])) { // user detail $data = $store->domainExtras->openById ($me->domainId, $userDetails[$name]); unset ($userDetails[$name]); } // user detail else $data = $store->control->read ($folder . $name); if (!$data or !isset ($data['text']['caption'])) continue; if (isset ($data['local']['font-face'])) $buffer .= $data['local']['font-face'] . CRLF; } // each detail foreach ($userDetails as $name => $id) { // each user detail $data = $store->domainExtras->openById ($me->domainId, $id); if (isset ($data['local']['font-face'])) $buffer .= $data['local']['font-face'] . CRLF; } // each user detail if (strlen ($buffer)) $render->cuts['style'] = $buffer; } // function setModule } // class eclMod_personaliteApearance_fontfaces //!eof:library/personaliteApearance/eclMod_personaliteApearance_fontfaces.php; //!file:library/personaliteApearance/font/eclApp_personaliteApearance_font.php; class eclApp_personaliteApearance_font { // class eclApp_personaliteApearance_font static function is_child ($me, $name) { // function is_child if ($name == 'font') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names () { // function get_children_names return array ('font'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('personaliteApearance_font_layout'); $me->access = 0; $me->isDomain = true; } // function constructor_helper static function dispatch ($document) { // function dispatch $document->mod->list = new eclMod_personaliteApearance_font_list ($document); } // function dispatch } // class eclApp_personaliteApearance_font //!eof:library/personaliteApearance/font/eclApp_personaliteApearance_font.php; //!file:library/personaliteApearance/font/eclMod_personaliteApearance_font_list.php; class eclMod_personaliteApearance_font_list { // class eclMod_personaliteApearance_font_list public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $me = $document->application; $folder = 'fonts/'; $length = strlen ($folder); $render = $document->render; $userDetails = array (); foreach ($store->domainExtras->children ($me->domainId, MODE_TEMPLATE, 0) as $data) { // each user detail if (substr ($data['name'], 0, $length) != $folder) continue; $userDetails[substr ($data['name'], $length)] = $data['id']; } // each user detail foreach ($store->control->scandir ('t', 'fonts') as $name) { // each detail if (isset ($userDetails[$name])) { // user detail $data = $store->domainExtras->openById ($me->domainId, $userDetails[$name]); unset ($userDetails[$name]); } // user detail else $data = $store->control->read ($folder . $name); if (!$data or !isset ($data['text']['caption'])) continue; $data['name'] = $name; $mod->appendChild ($data); } // each detail foreach ($userDetails as $name => $id) { // each user detail $data = $store->domainExtras->openById ($me->domainId, $id); $data['name'] = $name; $mod->appendChild ($data); } // each user detail $mod->sort ('name'); $mod->enabled = true; } // function setModule } // class eclMod_personaliteApearance_font_list //!eof:library/personaliteApearance/font/eclMod_personaliteApearance_font_list.php; //!file:library/personaliteDetails/configure/eclApp_personaliteDetails_configure.php; class eclApp_personaliteDetails_configure { // class eclApp_personaliteDetails_configure static function is_child ($me, $name) { // function is_child return true; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names () { // function get_children_names return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('personaliteDetails_configure_edit'); $me->access = 4; $me->isDomain = true; } // function constructor_helper static function dispatch ($document) { // function dispatch global $store; $me = $document->application; $saved = &$store->domainExtras->openChild ($me->domainId, MODE_TEMPLATE, 0, 'details/' . $me->name); if ($saved) $data = $saved; elseif ($store->control->read ('details/' . $me->name)) $data = $store->control->read ('details/' . $me->name); else $data = array (); // Restore default configurations if (isset ($document->received['save']) and $document->received['save'] == 'restore') { // restore default configurations if ($saved) $store->domainExtras->delete ($me->domainId, $saved['id']); $data = $store->control->read ('details/' . $me->name); $document->dataReplace ('layouts/dialog_close'); if ($data) { // update to default $caption = $document->selectLanguage ($data['text']['caption']); $identifier = $me->name; } // update to system default else { // remove $identifier = ''; $caption[1] = ''; } // remove $pathway = $me->parent->pathway; $pathway[] = $me->name; $url = $document->url ($pathway); $document->data['script'] = 'window.opener.listManager.update ("' . $me->name . '", "' . $identifier . '", "' . $caption[1] . '", "' . $url . '");'; return; } // restore default configurations $data['identifier'] = $me->name; $formulary = $document->createFormulary ('personaliteDetails_configure_edit', $data); if ($formulary->save ()) { // save formulary $data = $formulary->data; if (!isset ($data['identifier']) or !preg_match ('/^[a-z][a-z0-9_]*$/', $data['identifier'])) $data['identifier'] = $me->name; if ($data['identifier'] == $me->name and $saved) $saved = $formulary->data; else { // create saved modules if ($data['identifier'] != $me->name and $saved = &$store->domainExtras->openChild ($me->domainId, MODE_TEMPLATE, 0, $data['identifier'])) { // overwrite existing detail $saved['text'] = $data['text']; $saved['local'] = $data['local']; $saved['html'] = $data['html']; } // overwrite existing detail else { // create new detail $data['mode'] = MODE_TEMPLATE; $data['name'] = 'details/' . $data['identifier']; $store->domainExtras->insert ($me->domainId, $data); } // create new detail } // create saved modules $document->dataReplace ('layouts/dialog_close'); $caption = $document->selectLanguage ($data['text']['caption']); $pathway = $me->parent->pathway; $pathway[] = $data['identifier']; $url = $document->url ($pathway); $document->data['script'] = 'window.opener.listManager.update ("' . $me->name . '", "' . $data['identifier'] . '", "' . $caption[1] . '", "' . $url . '");'; return; } // save formulary $document->mod->formulary = $formulary; if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); } // function dispatch } // class eclApp_personaliteDetails_configure //!eof:library/personaliteDetails/configure/eclApp_personaliteDetails_configure.php; //!file:library/personaliteDetails/eclApp_personaliteDetails.php; class eclApp_personaliteDetails { // class eclApp_personaliteDetails static function is_child ($me, $name) { // function is_child if ($name == 'details') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names () { // function get_children_names return array ('details'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('personaliteDetails_main'); $me->map = array ('personaliteDetails_configure'); $me->isDomain = true; } // function constructor_helper static function dispatch ($document) { // function dispatch $document->mod->list = new eclMod_personaliteDetails_list ($document); } // function dispatch } // class eclApp_personaliteDetails //!eof:library/personaliteDetails/eclApp_personaliteDetails.php; //!file:library/personaliteDetails/eclFilter_personaliteDetails.php; /* * Valid control flags * control_type = manager * control_filter = personaliteDetails * control_field_name * control_target = local/details * control_help * control_help_msg */ class eclFilter_personaliteDetails { // class eclFilter_personaliteDetails static function create ($fieldName, $control, $formulary) { // function create global $io, $store; $document = $formulary->document; $me = $document->application; $item = $document->createListItem ($control); // name $item->data['name'] = $fieldName; // type if (isset ($control['flags']['type'])) $item->data['type'] = $control['flags']['type']; else $item->data['type'] = 'manager'; // help if (isset ($control['flags']['help']) and !isset ($control['flags']['help_msg'])) $item->data['help_msg'] = 'system_msg_filterDetailsHelp'; // references $pathway = array ($document->domain->name, '-personalite', 'details'); $item->data['url_add'] = $document->url ($pathway); $item->data['move-enable'] = 1; $item->data['remove-enable'] = 1; $item->data['edit-enable'] = 1; $userDetails = array (); foreach ($store->domainExtras->children ($me->domainId, MODE_TEMPLATE, 0) as $data) { // each user detail if (substr ($data['name'], 0, 8) != 'details/') continue; $userDetails[substr ($data['name'], 8)] = $data; } // each user detail $value = trim (strval ($formulary->getField ('local/details'))); $buffer = ''; foreach (explode (CRLF, $value) as $name) { // each line $name = trim ($name); if (!strlen ($name)) continue; if (isset ($userDetails[$name])) $data = $userDetails[$name]; else $data = $store->control->read ('details/' . $name); if (isset ($data['text']['caption'])) $caption = $data['text']['caption']; else $caption = $document->textMerge ($name); $p = $pathway; $p[] = $name; $buffer .= $name . CRLF; $item->appendChild (false, array ('value' => $name, 'caption' => $caption)) ->url ($p); } // each line $item->data['serialized'] = $buffer; return $item; } // function create static function save ($fieldName, $control, $formulary) { // function save global $store; $buffer = array (); if (isset ($formulary->received[$fieldName . '_serialized'])) { // received foreach (explode (LF, $formulary->received[$fieldName . '_serialized']) as $line) { // each line $line = trim ($line); if (preg_match ('/^[a-z][a-z0-9_]*$/', $line)) $buffer[] = $line; } // each line } // received if ($buffer) $buffer = implode (CRLF, $buffer); else $buffer = false; $formulary->setField ('local/details', $buffer); } // function save } // class eclFilter_personaliteDetails //!eof:library/personaliteDetails/eclFilter_personaliteDetails.php; //!file:library/personaliteDetails/eclMod_personaliteDetails_list.php; class eclMod_personaliteDetails_list { // class eclMod_personaliteDetails_list public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $me = $document->application; $render = $document->render; $userDetails = array (); foreach ($store->domainExtras->children ($me->domainId, MODE_TEMPLATE, 0) as $data) { // each user detail if (substr ($data['name'], 0, 8) != 'details/') continue; $userDetails[substr ($data['name'], 8)] = $data['id']; } // each user detail foreach ($store->control->scandir ('t', 'details') as $name) { // each detail if (isset ($userDetails[$name])) { // user detail $data = $store->domainExtras->openById ($me->domainId, $userDetails[$name]); unset ($userDetails[$name]); } // user detail else $data = $store->control->read ('details/' . $name); if (!$data or !isset ($data['text']['caption'])) continue; $data['name'] = $name; $mod->appendChild ($data) ->appendFolder ($name); } // each detail foreach ($userDetails as $name => $id) { // each user detail $data = $store->domainExtras->openById ($me->domainId, $id); $data['name'] = $name; $mod->appendChild ($data) ->appendFolder ($name); } // each user detail $mod->enabled = true; } // function setModule } // class eclMod_personaliteDetails_list //!eof:library/personaliteDetails/eclMod_personaliteDetails_list.php; //!file:library/personaliteExport/eclApp_personaliteExport.php; class eclApp_personaliteExport { // class eclApp_personaliteExport static function is_child ($me, $name) { // function is_child if ($name == 'export') return true; return false; } // function is_child static function get_menu_type ($me) { // function get_menu_type return 'section'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array ('export'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('personaliteExport_content'); $me->isDomain = true; } // function constructor_helper static function dispatch ($document) { // function dispatch global $io, $store; $data['ecolabore-template'] = '1.0'; $data['created'] = date ('Y-m-d'); $data['name'] = 'ecolabore-template+' . date ('Y-m-d') . '.zip'; $formulary = $document->createFormulary ('personaliteExport_edit', $data, 'export'); if ($formulary->command ('save') and $formulary->save ()) { // save and export return; } // save and export $document->mod->formulary = $formulary; } // function dispatch } // class eclApp_personaliteExport //!eof:library/personaliteExport/eclApp_personaliteExport.php; //!file:library/personaliteExport/eclFilter_personaliteExport_components.php; class eclFilter_personaliteExport_components { // class eclFilter_personaliteExport_components static function create ($fieldName, $control, $formulary) { // function create global $store; $document = $formulary->document; $me = $document->application; $children = $store->domainExtras->children ($me->domainId, MODE_TEMPLATE, 0); foreach ($children as $data) { // each child $local = array ( 'name' => $fieldName . '_' . $data['id'], 'type' => 'checkbox', 'caption' => $document->textMerge ($data['name'] . ' ', $data['text']['caption']) ); $formulary->appendChild ($local); } // each child $formulary->appendChild ('system_form_separator'); $sections = $store->domainContent->mode ($me->domainId, MODE_SECTION); array_unshift ($sections, $store->domainContent->open ($me->domainId, '-index')); foreach ($sections as $data) { // each section $local = array ( 'name' => $fieldName . '_' . $data['id'], 'type' => 'checkbox', 'caption' => $document->textMerge ($data['name'] . ' ', $data['text']['caption']) ); $formulary->appendChild ($local); } // each section } // function create static function save ($fieldName, $control, $formulary) { // function save global $io, $store; $document = $formulary->document; $me = $formulary->document->application; $received = $formulary->received; $zip = new ZipArchive (); $filename = PATH_DOMAINS . $document->domain->name . '/-export.zip'; if ($zip->open ($filename, ZIPARCHIVE::CREATE) !== TRUE) return; $children = $store->domainExtras->children ($me->domainId, MODE_TEMPLATE, 0); foreach ($children as $data) { // each child template if (!isset ($received[$fieldName . '_' . $data['id']])) continue; $component = array (); $component['name'] = $data['name']; if ($data['text']) $component['text'] = $data['text']; if ($data['local']) $component['local'] = $data['local']; if (isset ($data['html'][0])) $component['html'] = $data['html']; if (count ($component) == 1) continue; $name = '-' . str_replace ('/', '+', $data['name']) . '.json'; $content = eclIo_webservice::array2json ($component); $zip->addFromString ($name, $content); } // each child template $sections = $store->domainContent->mode ($me->domainId, MODE_SECTION); array_unshift ($sections, $store->domainContent->open ($me->domainId, '-index')); foreach ($sections as $data) { // each child section if (!isset ($received[$fieldName . '_' . $data['id']])) continue; $component = array (); foreach (array ('name', 'marker', 'access', 'text', 'local', 'flags', 'extras', 'keywords') as $field) { // copy each field if (isset ($data[$field]) and $data[$field]) $component[$field] = $data[$field]; } // copy each field if ($data['parent_id'] == 1) $component['parent_id'] = 1; elseif ($data['parent_id']) { // find parent $parent = $store->domainContent->openById ($me->domainId, $data['parent_id']); if (!$parent) continue; $data['parent_name'] = $parent['name']; } // find parent $name = $data['name'] . '.json'; $content = eclIo_webservice::array2json ($component); $zip->addFromString ($name, $content); foreach ($store->domainFile->scanPrefixedFiles ($me->domainId, $data['name']) as $name) { // each file $zip->addFromString ($name, file_get_contents (PATH_DOMAINS . $document->domain->name . '/' . $name)); } // each file } // each child section $zip->close (); $headers = array ( 'Content-Disposition' => 'attachment', 'Cache-Control' => 'no-cache', 'Filename' => $formulary->data['name'] ); $io->sendFile->send ($filename, $headers); } // function save } // class eclFilter_personaliteExport_components //!eof:library/personaliteExport/eclFilter_personaliteExport_components.php; //!file:library/personaliteExtras/eclApp_personaliteExtras.php; class eclApp_personaliteExtras { // class eclApp_personaliteExtras static function is_child ($me, $name) { // function is_child if ($name == 'extras') return true; if ($name == 'post') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names () { // function get_children_names return array ('extras'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('personaliteExtras_edit'); $me->access = 4; $me->isDomain = true; $me->ignoreSubfolders = true; } // function constructor_helper static function dispatch ($document) { // function dispatch if (!self::find_target ($document, $me, $target, $prefix, $isBigFile)) return self::not_configurable ($document); // Save uploaded big files if ($isBigFile and $document->actions ('upload', 'save')) return self::save_uploaded_big_file ($document, $me, $target, $prefix); // Upload big files formulary if ($isBigFile and !isset ($me->data['extras'][$target]['files'])) return self::upload_big_file ($document, $me, $target, $prefix); // Restore default configurations if (isset ($document->received['save']) and $document->received['save'] == 'restore') return self::restore_default_configurations ($document, $me, $target); // get formulary data $data = self::get_formulary_data ($document, $me, $target, $prefix); // Create formulary $formulary = $document->createFormulary ($document->application->data, $data); $formulary->application = $me; $formulary->flags['target'] = $target; // Save formulary if ($formulary->save ()) { // save formulary $me->data['extras'][$target] = $formulary->data; $document->dataReplace ('layouts/dialog_close'); return; } // save formulary // Show formulary $document->mod->formulary = $formulary; if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); $document->dataReplace ('layouts/dialog_tabs'); switch ($prefix) { // switch prefix case 'audio': case 'banner': case 'box': case 'file': case 'html': case 'img': case 'video': $document->data['local']['remove_object'] = 1; } // switch prefix } // function dispatch static function find_target ($document, &$me, &$target, &$prefix, &$isBigFile) { // function find_target global $store; $document->application->pathway = $document->pathway; $pathway = array_slice ($document->pathway, 3); $target = array_shift ($pathway); $me = $document->domain; if (!$pathway) $me = $me->child (''); else { // find child foreach ($pathway as $folder) { // each folder $me = $me->child ($folder); if ($me === false) return false; } // each folder } // find child if (!$document->access (4, $me->groups)) return false; $parts = explode ('_', $target); $prefix = $parts[0]; if ($document->application->name == 'post') $target = 'post_' . $target; $isBigFile = false; switch ($prefix) { // switch prefix case 'audio': case 'file': case 'video': $isBigFile = true; case 'banner': case 'box': case 'card': case 'dinamic': case 'formulary': case 'html': case 'img': case 'list': case 'pages': case 'sort': $document->application->data = $store->control->read ('mod' . ucfirst ($prefix) . '_edit'); return true; case 'post': $document->application->data = $store->control->read ('modContent_post'); return true; default: return false; } // switch prefix } // function find_target static function not_configurable ($document) { // function not_configurable $formulary = $document->createFormulary ('personaliteModules_contentNotConfigurable', array (), 'not_configurable'); if ($formulary->command ('cancel')) return $document->dataReplace ('layouts/dialog_cancel'); $document->mod->formulary = $formulary; $document->dataReplace ('layouts/dialog'); } // function not_configurable static function upload_big_file ($document, $me, $target, $prefix) { // function upload_big_file global $store; $formulary = $document->createFormulary ('personaliteExtras_upload_' . $prefix, array (), 'upload'); $formulary->action = '_upload-save'; $document->mod->formulary = $formulary; $document->application->data = $store->control->read ('personaliteExtras_upload_' . $prefix); $document->dataReplace ('personaliteExtras_upload_' . $prefix); } // function upload_big_file static function save_uploaded_big_file ($document, $me, $target, $prefix) { // function save_uploaded_big_file global $io; ini_set ('upload_max_filesize', '1024M'); ini_set ('post_max_size', '1024M'); $document->buffer = 'ok'; $uploaded = reset ($io->request->uploaded); if (!$uploaded) return $document->buffer = 'fail'; $uploaded = $uploaded[0]; if ($uploaded['error']) return $document->buffer = 'fail'; $ext = strtolower (end (explode ('.', $uploaded['name']))); $filename = $me->data['name'] . CHR_FNS . $target . '.' . $ext; $path = PATH_DOMAINS . $document->domain->name . '/' . $filename; move_uploaded_file ($uploaded['tmp_name'], $path); $me->data['extras'][$target] = array ( 'files' => array ($prefix => $filename), 'size' => $uploaded['size'], 'play' => 0, 'downloads' => 0, 'type' => $uploaded['type'], 'filename' => $uploaded['name'] ); } // function save_uploaded_big_file static function restore_default_configurations ($document, $me, $target) { // function restore_default_configurations if (isset ($me->data['extras'][$target]['files'])) { // remove files foreach ($me->data['extras'][$target]['files'] as $name) { // each file $file = FOLDER_DOMAINS . $document->domain->name . '/' . $name; if (is_file ($file)) unlink ($file); } // each file } // remove files unset ($me->data['extras'][$target]); $document->dataReplace ('layouts/dialog_close'); } // function restore_default_configurations static function get_formulary_data ($document, $me, $target, $prefix) { // function get_formulary_data if (isset ($me->data['extras'][$target])) return $me->data['extras'][$target]; if ($document->application->name == 'post') { // try post if ($data = $document->render->block ('modules/' . $prefix . '_post')) return $data; return $document->render->block ('modules/' . $prefix); } // try post if (isset ($me->data['flags']['modList_preset'])) $preset = $me->data['flags']['modList_preset']; else $preset = 'blog'; if ($data = $document->render->block ('modules/' . $prefix . '_' . $preset)) return $data; if ($data = $document->render->block ('modules/' . $prefix . '_blog')) return $data; return $document->render->block ('modules/' . $prefix); } // function get_formulary_data } // class eclApp_personaliteExtras //!eof:library/personaliteExtras/eclApp_personaliteExtras.php; //!file:library/personaliteExtras/eclFilter_personaliteExtras_upload.php; class eclFilter_personaliteExtras_upload { // class eclFilter_personaliteExtras_upload static function create ($fieldName, $control, $formulary) { // function create $control['name'] = $fieldName; // type $control['type'] = 'file_big'; $control['url'] = $formulary->document->url ($formulary->document->pathway, true, '_upload-save', $formulary->protocol); $formulary->appendChild ($control); } // function create static function save ($fieldName, $control, $formulary) { // function save } // function save } // class eclFilter_personaliteExtras_upload //!eof:library/personaliteExtras/eclFilter_personaliteExtras_upload.php; //!file:library/personaliteFields/address/eclFilter_personaliteFields_address.php; class eclFilter_personaliteFields_address { // class eclFilter_personaliteFields_address static function create ($fieldName, $control, $formulary) { // function create $document = $formulary->document; $control['name'] = $fieldName; // type if (isset ($control['flags']['type'])) $control['type'] = $control['flags']['type']; else $control['type'] = 'address'; $list = array ('street', 'number', 'complement', 'district', 'city', 'state', 'postal_code', 'country'); if (!isset ($formulary->data['local']['address']) and isset ($control['local']['share_user_data']) and isset ($formulary->data['share_user_data'])) { // use user address foreach ($list as $item) { // each item if (!isset ($document->user->data['local']['address'][$item])) continue; $value = $document->user->data['local']['address'][$item]; if ($document->charset != 'UTF-8') $value = mb_convert_encoding ($value, $formulary->document->charset, 'UTF-8'); $control['address_' . $item] = $formulary->htmlSpecialChars ($value); } // each item } // use user address else { // from formulary foreach ($list as $item) { // each item $value = $formulary->getField ('local/address/' . $item); if ($value === false) continue; if ($document->charset != 'UTF-8') $value = mb_convert_encoding ($value, $formulary->document->charset, 'UTF-8'); $control['address_' . $item] = $formulary->htmlSpecialChars ($value); } // each item } // from formulary $formulary->appendChild ($control); } // function create static function save ($fieldName, $control, $formulary) { // function save unset ($formulary->data['local']['address']); $list = array ('street', 'number', 'complement', 'district', 'city', 'state', 'postal_code', 'country'); foreach ($list as $item) { // each item if (!isset ($formulary->received[$fieldName . '_' . $item])) $formulary->setField ('local/address/' . $item, false); continue; $value = $formulary->received[$fieldName . '_' . $item]; if ($formulary->document->charset != 'UTF-8') $value = mb_convert_encoding ($value, 'UTF-8', $formulary->document->charset); $formulary->setField ('local/address/' . $item, $value); } // each item } // function save static function view ($fieldName, $control, $formulary) { // function view $document = $formulary->document; $enabled = false; $list = array ('street', 'number', 'complement', 'district', 'city', 'state', 'postal_code', 'country'); foreach ($list as $field) { // verify each field if (isset ($formulary->data['local']['address'][$field][0])) { // found $enabled = true; break; } // found } // verify each field if (!$enabled) return; // type if (isset ($control['flags']['view_type'])) $control['type'] = $control['flags']['view_type']; else $control['type'] = 'view'; if (!isset ($formulary->data['local']['address'])) return; $address = $formulary->data['local']['address']; $list = array ('street', 'number', 'complement', 'district', 'city', 'state', 'postal_code', 'country'); $buffer = ''; $lines = array (); $line = array (); if (isset ($address['street'][0])) $line[] = $address['street']; if (isset ($address['number'][0])) $line[] = $address['number']; if (isset ($address['complement'][0])) $line[] = $address['complement']; if ($line) $lines[] = implode (', ', $line); if (isset ($address['district'][0])) $lines[] = $address['district']; $line = array (); if (isset ($address['city'][0])) $line[] = $address['city']; if (isset ($address['state'][0])) $line[] = $address['state']; if ($line) $lines[] = implode (' - ', $line); if (isset ($address['postal_code'][0])) $lines[] = $address['postal_code']; if (isset ($address['country'][0])) $lines[] = $address['country']; $buffer = implode ('
      ', $lines); $control['content'] = $document->textMerge ($buffer); $formulary->appendChild ($control); } // function view static function scope ($render) { // function scope $data['data'] = $render->getVar ('address'); return $data; } // function scope static function target ($document, $value, $arguments) { // function target if (count ($arguments) < 2) return; list ($id, $field) = $arguments; $me = $document->domain->findChild (intval ($id)); if (!$me or !$document->access (4, $me->groups)) return; if ($document->charset != 'UTF-8') $value = mb_convert_encoding ($value, 'UTF-8', $document->charset); $me->data['local']['address'][$field] = $value; } // function target static function column ($document, $control, $data) { // function column if (!isset ($formulary->data['local']['address'])) return array ('caption' => $document->textMerge ('-')); $enabled = false; $list = array ('street', 'number', 'complement', 'district', 'city', 'state', 'postal_code', 'country'); foreach ($list as $field) { // verify each field if (isset ($formulary->data['local']['address'][$field][0])) { // found $enabled = true; break; } // found } // verify each field if (!$enabled) return array ('caption' => $document->textMerge ('-')); $address = $data['local']['address']; $buffer = ''; $lines = array (); $line = array (); if (isset ($address['street'][0])) $line[] = $address['street']; if (isset ($address['number'][0])) $line[] = $address['number']; if (isset ($address['complement'][0])) $line[] = $address['complement']; if ($line) $lines[] = implode (', ', $line); if (isset ($address['district'][0])) $lines[] = $address['district']; $line = array (); if (isset ($address['city'][0])) $line[] = $address['city']; if (isset ($address['state'][0])) $line[] = $address['state']; if ($line) $lines[] = implode (' - ', $line); if (isset ($address['postal_code'][0])) $lines[] = $address['postal_code']; if (isset ($address['country'][0])) $lines[] = $address['country']; $buffer = implode ('
      ', $lines); return array ('caption' => $document->textMerge ($buffer)); } // function column } // class eclFilter_personaliteFields_address //!eof:library/personaliteFields/address/eclFilter_personaliteFields_address.php; //!file:library/personaliteFields/checkbox/eclFilter_personaliteFields_checkbox.php; class eclFilter_personaliteFields_checkbox { // class eclFilter_personaliteFields_checkbox static function create ($fieldName, $control, $formulary) { // function create $name = $control['flags']['field_name']; $local = $control; // type if (isset ($control['flags']['type'])) $control['type'] = $control['flags']['type']; else $control['type'] = 'checkbox'; $local['name'] = $fieldName; if (isset ($formulary->data['local'][$name]['value']) and $formulary->data['local'][$name]['value']) $local['value'] = 1; $formulary->appendChild ($local); } // function create static function save ($fieldName, $control, $formulary) { // function save $name = $control['flags']['field_name']; if (isset ($formulary->received[$fieldName])) $formulary->data['local'][$name]['value'] = 1; else $formulary->data['local'][$name]['value'] = 0; } // function save static function view ($fieldName, $control, $formulary) { // function view global $store; $name = $control['flags']['field_name']; $control['type'] = 'view'; if (isset ($formulary->data['local'][$name]['value']) and $formulary->data['local'][$name]['value']) $caption = $store->control->read ('personaliteFields_checkbox_valueYes'); else $caption = $store->control->read ('personaliteFields_checkbox_valueNo'); $control['content'] = $caption['text']['caption']; $formulary->appendChild ($control); } // function view static function column ($data, $name, $field, $url, $document) { // function column if (isset ($data['local'][$name]['value']) and $data['local'][$name]['value']) $caption = $store->control->read ('personaliteFields_checkbox_valueYes'); else $caption = $store->control->read ('personaliteFields_checkbox_valueNo'); return $caption['text']; } // function column } // class eclFilter_personaliteFields_checkbox //!eof:library/personaliteFields/checkbox/eclFilter_personaliteFields_checkbox.php; //!file:library/personaliteFields/created/eclFilter_personaliteFields_created.php; class eclFilter_personaliteFields_created { // class eclFilter_personaliteFields_created static function create ($fieldName, $control, $formulary) { // function create } // function create static function save ($fieldName, $control, $formulary) { // function save } // function save static function view ($fieldName, $control, $formulary) { // function view global $store; if (!isset ($formulary->data['created'])) return; $control['type'] = 'view'; $caption = $store->control->read ('personaliteFields_created_value'); $control['content'] = $caption['text']['caption']; $control['created'] = $formulary->data['created']; $formulary->appendChild ($control); } // function view static function column ($document, $data, $name, $field, $url) { // function column if ($document->printableLayout) return array ('caption' => $document->textMerge (date ('d-m-Y h:i', $data['created']))); return array ( 'caption' => $document->textMerge (date ('d-m-Y h:i', $data['created'])), 'url' => $url ); } // function column } // class eclFilter_personaliteFields_created //!eof:library/personaliteFields/created/eclFilter_personaliteFields_created.php; //!file:library/personaliteFields/descriptive/eclFilter_personaliteFields_descriptive.php; class eclFilter_personaliteFields_descriptive { // class eclFilter_personaliteFields_descriptive static function create ($fieldName, $control, $formulary) { // function create // type if (isset ($control['flags']['type'])) $control['type'] = $control['flags']['type']; else $control['type'] = 'descriptive'; $formulary->appendChild ($control); } // function create static function save ($fieldName, $control, $formulary) { // function save } // function save static function view ($fieldName, $control, $formulary) { // function view if (!isset ($control['local']['display_when_editing']) or !$control['local']['display_when_editing']) return; $control['type'] = 'descriptive'; $formulary->appendChild ($control); } // function view static function column ($data, $name, $field, $url, $document) { // function column return array (); } // function column } // class eclFilter_personaliteFields_descriptive //!eof:library/personaliteFields/descriptive/eclFilter_personaliteFields_descriptive.php; //!file:library/personaliteFields/eclApp_personaliteFields.php; class eclApp_personaliteFields { // class eclApp_personaliteFields static function is_child ($me, $name) { // function is_child if ($name == '-fields') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names () { // function get_children_names return array ('-fields'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('personaliteFields_content'); $me->map = array ('personaliteFields_config'); $me->isDomain = true; } // function constructor_helper static function dispatch ($document) { // function dispatch $formulary = $document->createFormulary ('personaliteFields_add'); if ($formulary->command ('cancel')) return $document->dataReplace ('layouts/dialog_cancel'); $document->mod->formulary = $formulary; $document->mod->list = new eclMod_personaliteFields_list ($document); } // function dispatch } // class eclApp_personaliteFields //!eof:library/personaliteFields/eclApp_personaliteFields.php; //!file:library/personaliteFields/eclApp_personaliteFields_config.php; class eclApp_personaliteFields_config { // class eclApp_personaliteFields_config static function is_child ($me, $name) { // function is_child return true; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names () { // function get_children_names return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('dialogFields_' . $me->name . '_content'); $me->isDomain = true; } // function constructor_helper static function dispatch ($document) { // function dispatch global $store; $name = $document->application->name; $me = $document->application->parent->parent; list ($filter) = explode ('_', $name, 2); if (isset ($me->data['extras']['formulary'][$name])) $data = &$me->data['extras']['formulary'][$name]; elseif ($filter == $name) $data = $store->control->read ('personaliteFields_' . $filter . '_preset'); else $data = array (); $formulary = $document->createFormulary ('personaliteFields_' . $filter . '_edit', $data, 'field'); if ($formulary->command ('cancel')) { // cancel $document->dataReplace ('layouts/dialog_cancel'); return; } // cancel if ($formulary->command ('save') and $formulary->save () and $formulary->data) { // save switch ($filter) { // switch filter case 'address': case 'created': case 'mail': case 'phone': $document->dataReplace ('layouts/dialog_close'); $url = $document->url ($document->pathway); $caption = $document->selectLanguage ($formulary->data['caption']); if (!isset ($me->data['extras']['formulary'])) $me->data['extras']['formulary'] = array (); $me->data['extras']['formulary'][$filter] = $formulary->data; $document->data['script'] = 'window.opener.listManager.update ("' . $name . '", "' . $name . '", "' . $caption[1] . '", "' . $url . '");'; return; } // switch filter if ($filter != $name) { // update $data = $formulary->data; $document->dataReplace ('layouts/dialog_close'); $url = $document->url ($document->pathway); $caption = $document->selectLanguage ($formulary->data['caption']); $document->data['script'] = 'window.opener.listManager.update ("' . $name . '", "' . $name . '", "' . $caption[1] . '", "' . $url . '");'; return; } // update if (!isset ($me->data['extras']['formulary'])) $me->data['extras']['formulary'] = array (); $index = 1; while (isset ($me->data['extras']['formulary'][$name . '_' . $index])) $index++; $me->data['extras']['formulary'][$name . '_' . $index] = $formulary->data; $document->dataReplace ('layouts/dialog_close'); $pathway = $document->application->parent->pathway; $pathway[] = $name . '_' . $index; $url = $document->url ($pathway); $caption = $document->selectLanguage ($formulary->data['caption']); $document->data['script'] = 'window.opener.listManager.append ("' . $name . '_' . $index . '", "' . $caption[1] . '", "' . $url . '");'; return; } // save $document->mod->formulary = $formulary; if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); $document->dataReplace ('personaliteFields_' . $filter . '_content'); } // function dispatch } // class eclApp_personaliteFields_config //!eof:library/personaliteFields/eclApp_personaliteFields_config.php; //!file:library/personaliteFields/eclFilter_personaliteFields.php; class eclFilter_personaliteFields { // class eclFilter_personaliteFields static function create ($fieldName, $control, $formulary) { // function create global $io, $store; $document = $formulary->document; $me = $document->application; $item = $formulary->appendChild ($control); // name $item->data['name'] = $fieldName; // type if (isset ($control['flags']['type'])) $item->data['type'] = $control['flags']['type']; else $item->data['type'] = 'manager'; // help if (isset ($control['flags']['help']) and !isset ($control['flags']['help_msg'])) $item->data['help_msg'] = 'system_msg_filterDetailsHelp'; // references $pathway = $me->pathway; $pathway[] = '-fields'; $item->data['url_add'] = $document->url ($pathway); $item->data['move-enable'] = 1; $item->data['remove-enable'] = 1; $item->data['edit-enable'] = 1; if (!isset ($formulary->data['extras']['formulary'])) return; $buffer = ''; foreach ($formulary->data['extras']['formulary'] as $name => $field) { // each field $pathway = $me->pathway; $pathway[] = '-fields'; $pathway[] = $name; $local = array ( 'value' => $name, 'caption' => $field['caption'], 'url' => $document->url ($pathway) ); $item->appendChild ($local); } // each field $item->data['serialized'] = $buffer; } // function create static function save ($fieldName, $control, $formulary) { // function save if (!isset ($formulary->data['extras']['formulary'])) $formulary->data['extras']['formulary'] = array (); $original = $formulary->data['extras']['formulary']; unset ($formulary->data['extras']['formulary']); $fields = array (); if (!isset ($formulary->received[$fieldName . '_serialized'])) return $formulary->setRequiredMsg ($fieldName, $control); $index = 0; $serialized = $formulary->received[$fieldName . '_serialized']; foreach (explode (LF, $serialized) as $name) { // each line $name = trim ($name); if (isset ($original[$name])) { // exists $fields[$name] = $original[$name]; $fields[$name]['index'] = $index; $index++; } // exists } // each line $formulary->data['extras']['formulary'] = $fields; } // function save } // class eclFilter_personaliteFields //!eof:library/personaliteFields/eclFilter_personaliteFields.php; //!file:library/personaliteFields/eclFilter_personaliteFields_end.php; class eclFilter_personaliteFields_end { // class eclFilter_personaliteFields_end static function create ($fieldName, $control, $formulary) { // function create $local['name'] = $fieldName; $local['type'] = 'end'; $formulary->appendChild ($local); } // function create static function save ($fieldName, $control, $formulary) { // function save } // function save } // class eclFilter_personaliteFields_end //!eof:library/personaliteFields/eclFilter_personaliteFields_end.php; //!file:library/personaliteFields/eclFilter_personaliteFields_end_view.php; class eclFilter_personaliteFields_end_view { // class eclFilter_personaliteFields_end_view static function create ($fieldName, $control, $formulary) { // function create $local['name'] = $fieldName; $local['type'] = 'view_end'; $formulary->appendChild ($local); } // function create static function save ($fieldName, $control, $formulary) { // function save } // function save } // class eclFilter_personaliteFields_end_view //!eof:library/personaliteFields/eclFilter_personaliteFields_end_view.php; //!file:library/personaliteFields/eclFilter_personaliteFields_selectType.php; class eclFilter_personaliteFields_selectType { // class eclFilter_personaliteFields_selectType static function create ($fieldName, $control, $formulary) { // function create global $store; $document = $formulary->document; $me = $document->application; $control['name'] = $fieldName; $control['type'] = 'select'; $item = $formulary->appendChild ('personaliteFields_editType', $control); if (!isset ($control['flags']['search_filter'])) return; $filter = $control['flags']['search_filter']; $value = $formulary->getField ('type'); $userDetails = array (); foreach ($store->domainExtras->children ($me->domainId, MODE_TEMPLATE, 0) as $data) { // each user detail if (substr ($data['name'], 0, 7) != 'fields/') continue; $userDetails[substr ($data['name'], 7)] = $data['id']; } // each user detail foreach ($store->control->scandir ('t', 'fields') as $name) { // each detail if (isset ($userDetails[$name])) { // user detail $data = $store->domainExtras->openById ($me->domainId, $userDetails[$name]); unset ($userDetails[$name]); } // user detail else $data = $store->control->read ('fields/' . $name); if (!$data or !isset ($data['text']['caption'])) continue; if (!isset ($data['local']['filters'])) continue; foreach (explode (LF, $data['local']['filters']) as $line) { // each line if ($filter != trim ($line)) continue; $data['value'] = $name; if ($name == $value) $data['active'] = 1; $item->appendChild ($data); break; } // each line } // each detail foreach ($userDetails as $name => $id) { // each user detail $data = $store->domainExtras->openById ($me->domainId, $id); $data['value'] = $name; if (!isset ($data['local']['filters'])) continue; foreach (explode (LF, $data['local']['filters']) as $line) { // each line if ($filter != trim ($line)) continue; $data['name'] = $name; if ($name == $value) $data['active'] = 1; $item->appendChild ($data); break; } // each line } // each user detail } // function create static function save ($fieldName, $control, $formulary) { // function save if (isset ($formulary->received[$fieldName])) $formulary->data['type'] = $formulary->received[$fieldName]; } // function save } // class eclFilter_personaliteFields_selectType //!eof:library/personaliteFields/eclFilter_personaliteFields_selectType.php; //!file:library/personaliteFields/eclFilter_personaliteFields_start.php; class eclFilter_personaliteFields_start { // class eclFilter_personaliteFields_start static function create ($fieldName, $control, $formulary) { // function create $local['type'] = 'start'; $local['url'] = $formulary->document->url (true, true, $formulary->action); $local['prefix'] = $formulary->prefix; $local['time'] = TIME; $local['password'] = md5 (TIME . $formulary->prefix . ADMIN_PASSWORD . session_id ()); $formulary->appendChild ($local); } // function create static function save ($fieldName, $control, $formulary) { // function save if ($formulary->document->user->userId) return; // Hanney pot if (isset ($formulary->received[$formulary->prefix . '_command_mail']) and strlen ($formulary->received[$formulary->prefix . '_command_mail'])) return $formulary->setErrorMsg (false, array (), 'systemFormulary_alertRobotsPrevent'); if (!isset ($formulary->received[$formulary->prefix . '_command_time'])) return $formulary->setErrorMsg (false, array (), 'systemFormulary_alertRobotsPrevent'); $time = intval ($formulary->received[$formulary->prefix . '_command_time']); // Time left up to 60 minutes if ($time + SYSTEM_SESSION_TTL + 60 < TIME) return $formulary->setErrorMsg (false, array (), 'systemFormulary_alertRobotsPrevent'); // time left less than 5 seconds if ($time + 5 > TIME) return $formulary->setErrorMsg (false, array (), 'systemFormulary_alertRobotsPrevent'); // Probably javascript disabled if (!isset ($formulary->received[$formulary->prefix . '_command_password'])) return $formulary->setErrorMsg (false, array (), 'systemFormulary_alertRobotsPrevent'); $password = $formulary->received[$formulary->prefix . '_command_password']; if ($password != md5 ($time . $formulary->prefix . ADMIN_PASSWORD . session_id ())) return $formulary->setErrorMsg (false, array (), 'systemFormulary_alertRobotsPrevent'); // check IP tracking } // function save } // class eclFilter_personaliteFields_start //!eof:library/personaliteFields/eclFilter_personaliteFields_start.php; //!file:library/personaliteFields/eclFilter_personaliteFields_start_view.php; class eclFilter_personaliteFields_start_view { // class eclFilter_personaliteFields_start_view static function create ($fieldName, $control, $data, $formulary) { // function create $local['type'] = 'view_start'; $formulary->appendChild ($local); } // function create static function save ($fieldName, $control, $data, $formulary) { // function save } // function save } // class eclFilter_personaliteFields_start_view //!eof:library/personaliteFields/eclFilter_personaliteFields_start_view.php; //!file:library/personaliteFields/eclMod_personaliteFields_list.php; class eclMod_personaliteFields_list { // class eclMod_personaliteFields_list public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $me = $document->application; $mod->data = $store->control->read ('modules/list'); $row = $mod->appendChild (); $list = array ( 'text', 'textarea', 'checkbox', 'select', 'radio', 'separator', 'descriptive', 'mail', 'address', 'created', 'status' ); foreach ($list as $type) { // each type $pathway = $me->pathway; $pathway[] = $type; $row->appendChild ('personaliteFields_' . $type . '_content') ->url ($pathway, true, '_add'); } // each type $mod->enabled = true; } // function setModule } // class eclMod_personaliteFields_list //!eof:library/personaliteFields/eclMod_personaliteFields_list.php; //!file:library/personaliteFields/mail/eclFilter_personaliteFields_mail.php; class eclFilter_personaliteFields_mail { // class eclFilter_personaliteFields_mail static function create ($fieldName, $control, $formulary) { // function create $document = $formulary->document; // type if (isset ($control['flags']['type'])) $control['type'] = $control['flags']['type']; else $control['type'] = 'text'; $control['name'] = $fieldName; if (isset ($formulary->data['local']['mail'])) $control['value'] = $formulary->htmlSpecialChars ($formulary->data['local']['mail']); elseif (isset ($control['local']['share_user_data']) and isset ($formulary->document->user->data['local']['mail']) and isset ($formulary->data['share_user_data'])) $control['value'] = $formulary->document->user->data['local']['mail']; $formulary->appendChild ($control); } // function create static function save ($fieldName, $control, $formulary) { // function save if (!isset ($formulary->received[$fieldName][0])) { // empty if (isset ($control['local']['required']) and $control['local']['required']) return $formulary->setRequiredMsg ($control, $fieldName); unset ($formulary->data['local']['mail']); return; } // empty $formulary->data['local']['mail'] = $formulary->received[$fieldName]; if (preg_match ('/^[a-zA-Z0-9._-]+[@][a-zA-Z0-9_-]+[.][a-zA-Z0-9._-]+[;].+/', $formulary->received[$fieldName])) $formulary->setErrorMsg ($control, $fieldName, 'personaliteFields_mail_alertMultipleNotAllowed'); if (!preg_match ('/^[a-zA-Z0-9._-]+[@][a-zA-Z0-9_-]+[.][a-zA-Z0-9._-]+$/', $formulary->received[$fieldName])) $formulary->setErrorMsg ($control, $fieldName, 'personaliteFields_mail_alertInvalidMail', $formulary->received[$fieldName]); } // function save static function view ($fieldName, $control, $formulary) { // function view $document = $formulary->document; if (!isset ($formulary->data['local']['mail'])) return; $control['type'] = 'view'; $mail = $formulary->data['local']['mail']; $mail = '' . $mail . ''; $content = ''; $control['content'] = $document->textMerge ($content); $formulary->appendChild ($control); } // function view static function column ($document, $data, $name, $field) { // function column if (!isset ($data['local']['mail'])) return array ('caption' => $document->textMerge ('-')); $mail = $data['local']['mail']; $mail = '' . $mail . ''; $content = ''; return array ('caption' => $document->textMerge ($content)); } // function column } // class eclFilter_personaliteFields_mail //!eof:library/personaliteFields/mail/eclFilter_personaliteFields_mail.php; //!file:library/personaliteFields/phone/eclFilter_personaliteFields_phone.php; class eclFilter_personaliteFields_phone { // class eclFilter_personaliteFields_phone static function create ($fieldName, $control, $formulary) { // function create $document = $formulary->document; $control['name'] = $fieldName; // type if (isset ($control['flags']['type'])) $control['type'] = $control['flags']['type']; else $control['type'] = 'phone'; $list = array ('country', 'area', 'number'); if (!isset ($formulary->data['phone']) and isset ($control['local']['share_user_data']) and isset ($formulary->data['share_user_data'])) { // use user phone foreach ($list as $item) { // each item if (!isset ($document->user->data['local']['phone'][$item])) continue; $value = $document->user->data['local']['phone'][$item]; if ($document->charset != 'UTF-8') $value = mb_convert_encoding ($value, $formulary->document->charset, 'UTF-8'); $control['phone_' . $item] = $formulary->htmlSpecialChars ($value); } // each item } // use user phone else { // from formulary foreach ($list as $item) { // each item $value = $formulary->getField ('local/phone/' . $item); if ($value === false) continue; $control['phone_' . $item] = $value; } // each item } // from formulary $formulary->appendChild ($control); } // function create static function save ($fieldName, $control, $formulary) { // function save unset ($formulary->data['local']['phone']); if (isset ($formulary->received[$fieldName . '_country'][0])) { // filter received country $value = $formulary->received[$fieldName . '_country']; if (!preg_match ('/^[+]?[0-9]+$/', $value)) $formulary->setErrorMsg ($control, $fieldName, 'personaliteFields_phone_alertInvalidCountryCode', $value); $formulary->setField ('local/phone/country', $value); } // received country if (isset ($formulary->received[$fieldName . '_area'][0])) { // filter received area $value = $formulary->received[$fieldName . '_area']; if (!preg_match ('/^[0-9]+$/', $value)) $formulary->setErrorMsg ($control, $fieldName, 'personaliteFields_phone_alertInvalidAreaCode', $value); $formulary->setField ('local/phone/area', $value); } // received area if (isset ($formulary->received[$fieldName . '_number'][0])) { // filter received number $value = $formulary->received[$fieldName . '_number']; if (!preg_match ('/^[0-9]+$/', $value)) $formulary->setErrorMsg ($control, $fieldName, 'personaliteFields_phone_alertInvalidNumber', $value); $formulary->setField ('local/phone/number', $value); } // received number } // function save static function view ($fieldName, $control, $formulary) { // function view $document = $formulary->document; // type $control['type'] = 'view'; if (!isset ($formulary->data['local']['phone'])) return; if (isset ($formulary->data['local']['phone']['country'])) $tel[] = $formulary->data['local']['phone']['country']; if (isset ($formulary->data['local']['phone']['area'])) $tel[] = $formulary->data['local']['phone']['area']; if (isset ($formulary->data['local']['phone']['number'])) $tel[] = $formulary->data['local']['phone']['number']; $control['content'] = $document->textMerge (implode (' ', $tel)); $control['url'] = 'tel:' . implode ('-', $tel); $formulary->appendChild ($control); } // function view static function column ($document, $data, $name, $field, $url) { // function column if (!isset ($formulary->data['local']['phone'])) return array ('caption' => $document->textMerge ('-')); if (isset ($formulary->data['local']['phone']['country'])) $tel[] = $formulary->data['local']['phone']['country']; if (isset ($formulary->data['local']['phone']['area'])) $tel[] = $formulary->data['local']['phone']['area']; if (isset ($formulary->data['local']['phone']['number'])) $tel[] = $formulary->data['local']['phone']['number']; return array ( 'caption' => $document->textMerge (implode (' ', $tel)), 'url' => 'tel:' . implode ('-', $tel) ); } // function column } // class eclFilter_personaliteFields_phone //!eof:library/personaliteFields/phone/eclFilter_personaliteFields_phone.php; //!file:library/personaliteFields/phone/eclFilter_personaliteFields_phone_view.php; class eclFilter_personaliteFields_phone_view { // class eclFilter_personaliteFields_phone_view static function create ($fieldName, $control, $formulary) { // function create $document = $formulary->document; $control['name'] = $fieldName; // type $control['type'] = 'view'; if (!isset ($formulary->data['local']['phone'])) return; if (isset ($formulary->data['local']['phone']['country'])) $tel[] = $formulary->data['local']['phone']['country']; if (isset ($formulary->data['local']['phone']['area'])) $tel[] = $formulary->data['local']['phone']['area']; if (isset ($formulary->data['local']['phone']['number'])) $tel[] = $formulary->data['local']['phone']['number']; $control['content'] = $document->textMerge (implode (' ', $tel)); $control['url'] = 'tel:' . implode ('-', $tel); $formulary->appendChild ($control); } // function create static function save ($fieldName, $control, $formulary) { // function save } // function save static function column ($data, $name, $field, $url, $document) { // function column return array (); } // function column } // class eclFilter_personaliteFields_phone_view //!eof:library/personaliteFields/phone/eclFilter_personaliteFields_phone_view.php; //!file:library/personaliteFields/radio/eclFilter_personaliteFields_radio.php; class eclFilter_personaliteFields_radio extends eclFilter_personaliteFields_select { // class eclFilter_personaliteFields_radio } // class eclFilter_personaliteFields_radio //!eof:library/personaliteFields/radio/eclFilter_personaliteFields_radio.php; //!file:library/personaliteFields/select/eclFilter_personaliteFields_select.php; class eclFilter_personaliteFields_select { // class eclFilter_personaliteFields_select static function create ($fieldName, $control, $formulary) { // function create $name = $control['flags']['field_name']; // type if (isset ($control['flags']['type'])) $control['type'] = $control['flags']['type']; else $control['type'] = 'select'; $control['name'] = $fieldName; if (isset ($formulary->data['local'][$name]['value'])) $value = $formulary->data['local'][$name]['value']; else $value = false; $select = $formulary->appendChild ($control); if (isset ($control['local']['options'])) { // options exists foreach ($control['local']['options'] as $index => $caption) { // each option $data = array ( 'name' => $fieldName, 'value' => strval ($index), 'caption' => $caption ); if ($index == $value) $data['active'] = 1; $select->appendChild ($data); } // each option } // options exists } // function create static function save ($fieldName, $control, $formulary) { // function save $name = $control['flags']['field_name']; if (isset ($formulary->received[$fieldName])) $formulary->data['local'][$name]['value'] = $formulary->received[$fieldName]; } // function save static function view ($fieldName, $control, $formulary) { // function view $name = $control['flags']['field_name']; $control['type'] = 'view'; if (isset ($formulary->data['local'][$name]['value'])) $value = $formulary->data['local'][$name]['value']; else $value = false; if (isset ($control['local']['options'])) { // options exists foreach ($control['local']['options'] as $index => $caption) { // each option if ($index != $value) continue; $control['content'] = $caption; $formulary->appendChild ($control); break; } // each option } // values exists } // function view static function column ($document, $data, $name, $field, $url) { // function column if (isset ($data['local'][$name])) $value = $data['local'][$name]['value']; else $value = false; if (isset ($field['options'])) { // options exists foreach ($field['options'] as $index => $caption) { // each option if ($index != $value) continue; return array ('caption' => $caption); } // each option } // values exists return array ('caption' => $document->textMerge ('-')); } // function column } // class eclFilter_personaliteFields_select //!eof:library/personaliteFields/select/eclFilter_personaliteFields_select.php; //!file:library/personaliteFields/select/eclFilter_personaliteFields_select_editFields.php; class eclFilter_personaliteFields_select_editFields { // class eclFilter_personaliteFields_select_editFields static function create ($fieldName, $control, $formulary) { // function create static $s = array ('&', '<', '"'); static $r = array ('&', '<', '"'); static $cs = array ('UTF-8', 'ISO-8859-1'); $document = $formulary->document; $lang = $document->lang; $charset = $document->charset; for ($index = 1; $index <= 30; $index++) { // each field $local = array ( 'caption' => $document->textMerge ('#' . $index), 'name' => $fieldName . $index, 'type' => 'text_small' ); $item = $formulary->appendChild ($local); if (!isset ($formulary->data['options'][$index])) continue; $text = $formulary->data['options'][$index]; if (isset ($text[$lang])) $found = $text[$lang]; else $found = current ($text); if (!isset ($found[TEXT_CONTENT])) continue; if (!isset ($found[TEXT_CHARSET])) $found[TEXT_CHARSET] = 0; if ($charset != $cs[$found[TEXT_CHARSET]]) $value = mb_convert_encoding ($found[TEXT_CONTENT], $charset, $cs[$found[TEXT_CHARSET]]); else $value = $found[TEXT_CONTENT]; $item->data['value'] = str_replace ($s, $r, $value); } // each field } // function create static function save ($fieldName, $control, $formulary) { // function save $document = $formulary->document; $received = $formulary->received; $formulary->data['options'] = array (); for ($index = 0; $index <= 30; $index++) { // each option if (!isset ($received[$fieldName . $index]) or !strlen ($received[$fieldName . $index])) continue; $formulary->data['options'][$index] = array ($document->lang => array (TEXT_CONTENT => $received[$fieldName . $index])); if ($document->charset == 'ISO-8859-1') $formulary->data['options'][$index][$document->lang][TEXT_CHARSET] = 1; } // each option } // function save static function view ($fieldName, $control, $formulary) { // function view $name = $control['flags']['field_name']; $control['type'] = 'view'; if (isset ($formulary->data[$name]['value'])) $value = $formulary->data[$name]['value']; else $value = false; if (isset ($control['local']['options'])) { // options exists foreach ($control['local']['options'] as $name => $caption) { // each option if ($name != $value) continue; $control['content'] = $caption; break; } // each option } // values exists $formulary->appendChild ($control); } // function view static function column ($document, $data, $name, $field, $url) { // function column if (isset ($data['local'][$name]['value'])) $value = $data['local'][$name]['value']; else $value = false; if (isset ($field['options'])) { // options exists foreach ($field['options'] as $name => $caption) { // each option if ($name != $value) continue; return array ('caption' => $caption); } // each option } // values exists return array ('caption' => $document->textMerge ('-')); } // function column } // class eclFilter_personaliteFields_select_editFields //!eof:library/personaliteFields/select/eclFilter_personaliteFields_select_editFields.php; //!file:library/personaliteFields/separator/eclFilter_personaliteFields_separator.php; class eclFilter_personaliteFields_separator { // class eclFilter_personaliteFields_separator static function create ($fieldName, $control, $formulary) { // function create // type if (isset ($control['flags']['type'])) $control['type'] = $control['flags']['type']; else $local['type'] = 'separator'; $formulary->appendChild ($local); } // function create static function save ($fieldName, $control, $formulary) { // function save } // function save static function view ($fieldName, $control, $formulary) { // function view $local['type'] = 'separator'; $formulary->appendChild ($local); } // function view static function column ($document, $data, $name, $field, $url) { // function column return false; } // function column } // class eclFilter_personaliteFields_separator //!eof:library/personaliteFields/separator/eclFilter_personaliteFields_separator.php; //!file:library/personaliteFields/separator/eclFilter_personaliteFields_separator_view.php; class eclFilter_personaliteFields_separator_view { // class eclFilter_personaliteFields_separator_view static function create ($fieldName, $control, $formulary) { // function create $local['type'] = 'separator'; $formulary->appendChild ($local); } // function create static function save ($fieldName, $control, $formulary) { // function save } // function save static function column ($data, $name, $field, $url, $document) { // function column return array (); } // function column } // class eclFilter_personaliteFields_separator_view //!eof:library/personaliteFields/separator/eclFilter_personaliteFields_separator_view.php; //!file:library/personaliteFields/status/eclFilter_personaliteFields_status.php; class eclFilter_personaliteFields_status { // class eclFilter_personaliteFields_status static function create ($fieldName, $control, $formulary) { // function create } // function create static function save ($fieldName, $control, $formulary) { // function save } // function save static function view ($fieldName, $control, $formulary) { // function view global $store; if (!isset ($formulary->data['status']) or !$formulary->data['status']) return; $control['type'] = 'view'; $caption = $store->control->read ('labels/status/' . $formulary->data['status']); if (!$caption) return; $control['content'] = $caption['text']['caption']; $formulary->appendChild ($control); } // function view static function column ($document, $data, $name, $field, $url) { // function column global $store; if (!isset ($data['status']) or !$data['status']) return array ('caption' => $document->textMerge (' ')); $caption = $store->control->read ('labels/status/' . $data['status']); if (!isset ($caption['text']['caption'])) return array ('caption' => $document->textMerge (' ')); return $caption; } // function column } // class eclFilter_personaliteFields_status //!eof:library/personaliteFields/status/eclFilter_personaliteFields_status.php; //!file:library/personaliteFields/text/eclFilter_personaliteFields_text.php; class eclFilter_personaliteFields_text { // class eclFilter_personaliteFields_text static function create ($fieldName, $control, $formulary) { // function create static $s = array ('&', '<', '"'); static $r = array ('&', '<', '"'); static $cs = array ('UTF-8', 'ISO-8859-1'); $document = $formulary->document; $lang = $document->lang; $charset = $document->charset; $name = $control['flags']['field_name']; // type if (isset ($control['flags']['type'])) $control['type'] = $control['flags']['type']; else $control['type'] = 'text'; $control['name'] = $fieldName; $item = $formulary->appendChild ($control); if (!isset ($formulary->data['text'][$name])) return; $text = $formulary->data['text'][$name]; if (isset ($text[$lang])) $found = $text[$lang]; else $found = current ($text); if (!isset ($found[TEXT_CONTENT])) return; if (!isset ($found[TEXT_CHARSET])) $found[TEXT_CHARSET] = 0; if ($charset != $cs[$found[TEXT_CHARSET]]) $value = mb_convert_encoding ($found[TEXT_CONTENT], $charset, $cs[$found[TEXT_CHARSET]]); else $value = $found[TEXT_CONTENT]; $item->data['value'] = str_replace ($s, $r, $value); } // function create static function save ($fieldName, $control, $formulary) { // function save if (!isset ($formulary->received[$fieldName][0])) { // empty if (isset ($control['local']['required']) and $control['local']['required']) $formulary->setRequiredMsg ($control, $fieldName); return; } // empty $name = $control['flags']['field_name']; $formulary->data['text'][$name] = array ($formulary->document->lang => array (TEXT_CONTENT => $formulary->received[$fieldName])); if ($formulary->document->charset == 'ISO-8859-1') $formulary->data['text'][$name][$formulary->document->lang][TEXT_CHARSET] = 1; } // function save static function view ($fieldName, $control, $formulary) { // function view $name = $control['flags']['field_name']; $control['type'] = 'view'; if (isset ($formulary->data['text'][$name])) $control['content'] = $formulary->data['text'][$name]; $formulary->appendChild ($control); } // function view static function column ($document, $data, $name, $field, $url) { // function column if (isset ($data['text'][$name])) return array ('caption' => $data['text'][$name]); return array ('caption' => $document->textMerge ('-')); } // function column } // class eclFilter_personaliteFields_text //!eof:library/personaliteFields/text/eclFilter_personaliteFields_text.php; //!file:library/personaliteFields/textarea/eclFilter_personaliteFields_textarea.php; class eclFilter_personaliteFields_textarea { // class eclFilter_personaliteFields_textarea static function create ($fieldName, $control, $formulary) { // function create static $s = array ('&', '<', '"'); static $r = array ('&', '<', '"'); static $cs = array ('UTF-8', 'ISO-8859-1'); $document = $formulary->document; $lang = $document->lang; $charset = $document->charset; $name = $control['flags']['field_name']; // type if (isset ($control['flags']['type'])) $control['type'] = $control['flags']['type']; else $control['type'] = 'textarea'; $control['name'] = $fieldName; $item = $formulary->appendChild ($control); if (!isset ($formulary->data['text'][$name])) return; $text = $formulary->data['text'][$name]; if (isset ($text[$lang])) $found = $text[$lang]; else $found = current ($text); if (!isset ($found[TEXT_CONTENT])) return; if (!isset ($found[TEXT_CHARSET])) $found[TEXT_CHARSET] = 0; if ($charset != $cs[$found[TEXT_CHARSET]]) $value = mb_convert_encoding ($found[TEXT_CONTENT], $charset, $cs[$found[TEXT_CHARSET]]); else $value = $found[TEXT_CONTENT]; $item->data['value'] = str_replace ($s, $r, $value); } // function create static function save ($fieldName, $control, $formulary) { // function save if (!isset ($formulary->received[$fieldName][0])) { // empty if (isset ($control['local']['required']) and $control['local']['required']) $formulary->setRequiredMsg ($control, $fieldName); return; } // empty $name = $control['flags']['field_name']; $formulary->data['text'][$name] = array ($formulary->document->lang => array ( TEXT_CONTENT => $formulary->received[$fieldName], TEXT_FORMAT => 2 )); if ($formulary->document->charset == 'ISO-8859-1') $formulary->data['text'][$name][$formulary->document->lang][TEXT_CHARSET] = 1; } // function save static function view ($fieldName, $control, $formulary) { // function view $name = $control['flags']['field_name']; $control['type'] = 'view'; if (isset ($formulary->data['text'][$name])) $control['content'] = $formulary->data['text'][$name]; $formulary->appendChild ($control); } // function view static function column () { // function column return false; } // function column } // class eclFilter_personaliteFields_textarea //!eof:library/personaliteFields/textarea/eclFilter_personaliteFields_textarea.php; //!file:library/personaliteInstall/eclApp_personaliteInstall.php; class eclApp_personaliteInstall { // class eclApp_personaliteInstall static function is_child ($me, $name) { // function is_child if ($name == 'install') return true; return false; } // function is_child static function get_menu_type ($me) { // function get_menu_type return 'section'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array ('install'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('personaliteInstall_content'); $me->isDomain = true; } // function constructor_helper static function dispatch ($document) { // function dispatch global $io; if ($io->request->uploaded) self::action_install ($document); if (is_file (PATH_DOMAINS . $document->domain->name . '/-install.zip')) return self::action_select_components ($document); $formulary = $document->createFormulary ('personaliteInstall_edit', array (), 'install'); if ($formulary->command ('cancel')) return $document->dataReplace ('layouts/dialog_cancel'); $document->mod->formulary = $formulary; } // function dispatch static function action_install ($document) { // function action_install global $io, $store; $me = $document->application; foreach ($io->request->uploaded as $name => $files) { // each entry foreach ($files as $file) { // each file if ($file['size'] > 100000000 or $file['size'] < 3) continue; @list ($name, $ext) = explode ('.', $file['name']); if ($ext == 'zip') { // move install file $folder = PATH_DOMAINS . $document->domain->name . '/-install.zip'; move_uploaded_file ($file['tmp_name'], $folder); return; } // move install file } // each file } // each entry $filename = PATH_DOMAINS . $document->domain->name . '/-install.zip'; $zip = new ZipArchive (); if ($zip->open ($filename, ZIPARCHIVE::CREATE) !== TRUE) return; foreach ($io->request->uploaded as $name => $files) { // each entry foreach ($files as $file) { // each file if ($file['size'] > 100000000 or $file['size'] < 3) continue; $zip->addFile ($file['tmp_name'], '/' . $file['name']); } // each file } // each entry $zip->close (); } // function action_install static function action_select_components ($document) { // function action_select_components $formulary = $document->createFormulary ('personaliteInstall_select', array (), 'select'); if ($formulary->command ('cancel')) return $document->dataReplace ('layouts/dialog_cancel'); if ($formulary->command ('save') and $formulary->save ()) { // save if (isset ($formulary->data['saved'])) { // saved $fileName = PATH_DOMAINS . $document->domain->name . '/-install.zip'; if (is_file ($fileName)) unlink ($fileName); $document->dataReplace ('layouts/dialog_close'); return; } // saved } // save $document->mod->formulary = $formulary; } // function action_select_components } // class eclApp_personaliteInstall //!eof:library/personaliteInstall/eclApp_personaliteInstall.php; //!file:library/personaliteInstall/eclFilter_personaliteInstall_selectComponents.php; class eclFilter_personaliteInstall_selectComponents { // class eclFilter_personaliteInstall_selectComponents static function create ($fieldName, $control, $formulary) { // function create global $store; $document = $formulary->document; $me = $document->application; $templates = array (); $sections = array (); $all = array (); $filename = PATH_DOMAINS . $document->domain->name . '/-install.zip'; $zip = zip_open ($filename); if (!$zip) return; while ($zip_entry = zip_read ($zip)) { // each file $name = zip_entry_name ($zip_entry); if (substr ($name, - 5) != '.json') { // cancel zip_entry_close ($zip_entry); continue; } // cancel $buffer = zip_entry_read ($zip_entry, zip_entry_filesize ($zip_entry)); $data = eclIo_webservice::json2array ($buffer); if (!isset ($data['name'])) { // cancel zip_entry_close ($zip_entry); continue; } // cancel $all[$data['name']] = $data; if (strpos ($data['name'], '/') === false) { // section if ($store->domainContent->open ($me->domainId, $data['name'])) $sections[$data['name']] = 0; elseif (isset ($data['marker']) and $store->domainContent->findMarker ($me->domainId, $data['marker'])) $sections[$data['name']] = 0; else $sections[$data['name']] = 1; } // section else $templates[$data['name']] = 1; zip_entry_close ($zip_entry); } // each entry zip_close ($zip); if ($templates) { // create components checkboxes foreach ($templates as $name => $value) { // loop each component $data = $all[$name]; $local = array ( 'type' => 'checkbox', 'name' => $fieldName . '_' . md5 ($data['name']), 'value' => $value, 'caption' => $document->textMerge ($data['name'] . ' ', $data['text']['caption']) ); $formulary->appendChild ($local); } // loop each component } // create components checkboxes $formulary->appendChild (array ('type' => 'separator')); if ($sections) { // create sections checkboxes foreach ($sections as $name => $value) { // loop each section $data = $all[$name]; $local = array ( 'type' => 'checkbox', 'name' => $fieldName . '_' . md5 ($data['name']), 'value' => $value, 'caption' => $data['text']['caption'] ); $formulary->appendChild ($local); } // loop each section } // create section checkboxes } // function create static function save ($fieldName, $control, $formulary) { // function save global $store; $document = $formulary->document; $me = $formulary->document->application; $received = $formulary->received; $names = array (); $saved = array (); $filename = PATH_DOMAINS . $document->domain->name . '/-install.zip'; $zip = zip_open ($filename); if (!$zip) return; while ($zip_entry = zip_read ($zip)) { // each file $name = zip_entry_name ($zip_entry); if (substr ($name, - 5) == '.json') { // read json file $buffer = zip_entry_read ($zip_entry, zip_entry_filesize ($zip_entry)); $data = eclIo_webservice::json2array ($buffer); if (isset ($data['name']) and isset ($received[$fieldName . '_' . md5 ($data['name'])][0])) { // save file $names[$data['name']] = true; $saved[] = $data['name']; if (strpos ($data['name'], '/')) { // save template component $component = &$store->domainExtras->openChild ($me->domainId, MODE_TEMPLATE, 0, $name); if ($component) { // components exists $component = array_replace ($component, $data); unset ($component); } // components exists else { // create component $data['mode'] = MODE_TEMPLATE; $store->domainExtras->insert ($me->domainId, $data); } // create component } // save template component else { // save section if (isset ($data['marker']) and $id = $store->domainContent->findMarker ($me->domainId, $data['marker'])) { // marker found $section = $me->findChild ($id); if ($section) $section->remove (); } // marker found if ($sectionData = $store->domainContent->open ($me->domainId, $data['name'])) { // same name $section = $me->findChild ($sectionData['id']); $section->remove (); } // same name $data['mode'] = MODE_SECTION; $store->domainContent->insert ($me->domainId, $data); } // save section } // save file } // read json file zip_entry_close ($zip_entry); } // each entry zip_close ($zip); // second turn to save extra files $zip = zip_open ($filename); while ($zip_entry = zip_read ($zip)) { // each file $name = zip_entry_name ($zip_entry); list ($prefix) = explode ('.', $name); list ($prefix) = explode (CHR_FNS, $prefix); if (isset ($names[$prefix])) { // save extras file $saved[] = $name; $buffer = zip_entry_read ($zip_entry, zip_entry_filesize ($zip_entry)); file_put_contents (PATH_DOMAINS . $document->domain->name . '/' . $name, $buffer); } // save extras file zip_entry_close ($zip_entry); } // each entry zip_close ($zip); $formulary->data['saved'] = implode (CRLF, $saved); } // function save } // class eclFilter_personaliteInstall_selectComponents //!eof:library/personaliteInstall/eclFilter_personaliteInstall_selectComponents.php; //!file:library/personaliteModules/eclApp_personaliteModules.php; class eclApp_personaliteModules { // class eclApp_personaliteModules static function is_child ($me, $name) { // function is_child if ($name == 'modules') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names () { // function get_children_names return array ('modules'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('personaliteModules_edit'); $me->access = 4; $me->isDomain = true; $me->ignoreSubfolders = true; } // function constructor_helper static function dispatch ($document) { // function dispatch global $store; $me = $document->application; $me->pathway = $document->pathway; $name = end ($document->pathway); list ($prefix) = explode ('_', $name); $controlName = 'mod' . ucfirst ($prefix) . '_edit'; $control = $store->control->read ($controlName); if ($control) { // set modules title if (!isset ($control['text']['title']) and isset ($control['text']['caption'])) $control['text']['title'] = $control['text']['caption']; $me->data['text']['title'] = $control['text']['title']; } // set modules title else { // no configurable $document->dataMerge ('personaliteModules_contentNotConfigurable'); $formulary = $document->createFormulary ('personaliteModules_contentNotConfigurable', array (), 'not_configurable'); if ($formulary->command ('cancel')) return $document->dataReplace ('layouts/dialog_cancel'); $document->mod->formulary = $formulary; return; } // no configurable $saved = &$store->domainExtras->openChild ($me->domainId, MODE_TEMPLATE, 0, 'modules/' . $name); if ($saved) $data = $saved; elseif ($store->control->read ('modules/' . $name)) $data = $store->control->read ('modules/' . $name); else $data = $store->control->read ('modules/' . $prefix); // Restore default configurations if (isset ($document->received['save']) and $document->received['save'] == 'restore') { // restore default configurations if ($saved) $store->domainExtras->delete ($me->domainId, $saved['id']); return $document->dataReplace ('layouts/dialog_close'); } // restore default configurations $formulary = $document->createFormulary ($controlName, $data); if ($formulary->save ()) { // save formulary if ($saved) $saved = $formulary->data; else { // create saved modules $data = $formulary->data; $data['mode'] = MODE_TEMPLATE; $data['name'] = 'modules/' . $name; $store->domainExtras->insert ($me->domainId, $data); } // create saved modules $document->dataReplace ('layouts/dialog_close'); return; } // save formulary $document->mod->formulary = $formulary; if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); } // function dispatch } // class eclApp_personaliteModules //!eof:library/personaliteModules/eclApp_personaliteModules.php; //!file:library/personaliteTemplate/add/eclApp_personaliteTemplate_add.php; class eclApp_personaliteTemplate_add { // class eclApp_personaliteTemplate_add static function is_child ($me, $name) { // function is_child switch ($name) { // switch name case 'details': case 'fields': case 'fonts': case 'layouts': case 'lists': case 'icons': case 'modules': case 'palettes': case 'scripts': case 'styles': case 'themes': return true; default: return false; } // switch name } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names () { // function get_children_names return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('personaliteTemplate_add_content'); $me->map = array ('personaliteTemplate_configure'); $me->isDomain = true; } // function constructor_helper static function dispatch ($document) { // function dispatch $document->mod->list = new eclMod_personaliteTemplate_add_list ($document); } // function dispatch } // class eclApp_personaliteTemplate_add //!eof:library/personaliteTemplate/add/eclApp_personaliteTemplate_add.php; //!file:library/personaliteTemplate/add/eclMod_personaliteTemplate_add_list.php; class eclMod_personaliteTemplate_add_list { // class eclMod_personaliteTemplate_add_list public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $me = $document->application; $render = $document->render; $folder = $me->name; foreach ($store->control->scandir ('t', $folder) as $name) { // each detail $data = $store->control->read ($folder . '/' . $name); if (!$data or !isset ($data['text']['caption'])) continue; $data['name'] = $name; $data['text']['caption'] = $document->textMerge ($data['name'], ' ', $data['text']['caption']); $mod->appendChild ($data) ->appendFolder ($name); } // each detail $mod->enabled = true; } // function setModule } // class eclMod_personaliteTemplate_add_list //!eof:library/personaliteTemplate/add/eclMod_personaliteTemplate_add_list.php; //!file:library/personaliteTemplate/configure/eclApp_personaliteTemplate_configure.php; class eclApp_personaliteTemplate_configure { // class eclApp_personaliteTemplate_configure static function is_child ($me, $name) { // function is_child return true; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names () { // function get_children_names return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('personaliteTemplate_configure_' . $me->parent->name); $me->access = 4; $me->isDomain = true; } // function constructor_helper static function dispatch ($document) { // function dispatch global $store; $me = $document->application; $folder = $me->parent->name; $name = $folder . '/' . $me->name; $saved = &$store->domainExtras->openChild ($me->domainId, MODE_TEMPLATE, 0, $name); if ($saved) $data = $saved; elseif ($store->control->read ($name)) $data = $store->control->read ($name); else $data = array (); // Restore default configurations if (isset ($document->received['save']) and $document->received['save'] == 'restore') { // restore default configurations if ($saved) $store->domainExtras->delete ($me->domainId, $saved['id']); $data = $store->control->read ($name); $document->dataReplace ('layouts/dialog_close'); if ($data) { // update to default $caption = $document->selectLanguage ($data['text']['caption']); $identifier = $me->name; } // update to system default else { // remove $identifier = ''; $caption[1] = ''; } // remove $pathway = $me->parent->pathway; $pathway[] = $me->name; $url = $document->url ($pathway); $document->data['script'] = 'window.opener.listManager.update ("' . $me->name . '", "' . $identifier . '", "' . $caption[1] . '", "' . $url . '");'; return; } // restore default configurations $data['identifier'] = $me->name; $formulary = $document->createFormulary ('personaliteTemplate_configure_' . $me->parent->name, $data); if ($formulary->save ()) { // save formulary $data = $formulary->data; if (!isset ($data['identifier']) or !preg_match ('/^[a-z][a-z0-9_]*$/', $data['identifier'])) $data['identifier'] = $me->name; if ($data['identifier'] == $me->name and $saved) $saved = $formulary->data; else { // create saved modules if ($data['identifier'] != $me->name and $saved = &$store->domainExtras->openChild ($me->domainId, MODE_TEMPLATE, 0, $folder . '/' . $data['identifier'])) { // overwrite existing detail $saved['text'] = $data['text']; $saved['local'] = $data['local']; $saved['html'] = $data['html']; } // overwrite existing detail else { // create new detail $data['mode'] = MODE_TEMPLATE; $data['name'] = $folder . '/' . $data['identifier']; $store->domainExtras->insert ($me->domainId, $data); } // create new detail } // create saved modules $document->dataReplace ('layouts/dialog_close'); $caption = $document->selectLanguage ($data['text']['caption']); $pathway = $me->parent->pathway; $pathway[] = $data['identifier']; $url = $document->url ($pathway); $document->data['script'] = 'window.opener.listManager.update ("' . $me->name . '", "' . $data['identifier'] . '", "' . $caption[1] . '", "' . $url . '");'; return; } // save formulary $document->mod->formulary = $formulary; if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); } // function dispatch } // class eclApp_personaliteTemplate_configure //!eof:library/personaliteTemplate/configure/eclApp_personaliteTemplate_configure.php; //!file:library/personaliteTemplate/configure/eclFilter_personaliteTemplate_configure_filters.php; class eclFilter_personaliteTemplate_configure_filters { // class eclFilter_personaliteTemplate_configure_filters static function create ($fieldName, $control, $formulary) { // function create global $io, $store; $document = $formulary->document; $item = $formulary->appendChild ($control); // name $item->data['name'] = $fieldName; // type if (isset ($control['flags']['type'])) $item->data['type'] = $control['flags']['type']; else $item->data['type'] = 'manager'; // help if (isset ($control['flags']['help']) and !isset ($control['flags']['help_msg'])) $item->data['help_msg'] = 'system_msg_filterDetailsHelp'; // references $pathway = array ($document->domain->name, '-personalite', 'template', '-filters'); $item->data['url_add'] = $document->url ($pathway); $item->data['move-enable'] = 1; $item->data['remove-enable'] = 1; $item->data['edit-enable'] = 0; $filters = $formulary->getField ('local/filters'); if (!isset ($filters[0])) return; $item->data['serialized'] = $filters; foreach (explode (CRLF, $filters) as $name) { // each filter $data = $store->control->read ('sectionBlog_post_edit' . ucfirst ($name)); if (!isset ($data['flags']['filters_manager'])) continue; $item->appendChild (array ( 'value' => $name, 'caption' => $data['text']['caption'], )); } // each line } // function create static function save ($fieldName, $control, $formulary) { // function save if (isset ($formulary->received[$fieldName . '_serialized'])) $formulary->data['local']['filters'] = $formulary->received[$fieldName . '_serialized']; else unset ($formulary->data['local']['filters']); } // function save } // class eclFilter_personaliteTemplate_configure_filters //!eof:library/personaliteTemplate/configure/eclFilter_personaliteTemplate_configure_filters.php; //!file:library/personaliteTemplate/eclApp_personaliteTemplate.php; class eclApp_personaliteTemplate { // class eclApp_personaliteTemplate static function is_child ($me, $name) { // function is_child if ($name == 'template') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'section'; } // function get_menu_type static function get_children_names () { // function get_children_names return array ('template'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('personaliteTemplate_content'); $me->map = array ('personaliteTemplate_add', 'personaliteTemplate_labels', 'personaliteTemplate_filters'); $me->access = 4; $me->isDomain = true; } // function constructor_helper static function dispatch ($document) { // function dispatch global $store; if (isset ($document->actions['remove'][1])) return self::action_remove ($document); // Restore default configurations if (isset ($document->received['save']) and $document->received['save'] == 'restore') { // restore default configurations $domainId = $document->domain->domainId; foreach ($store->domainExtras->children ($domainId, MODE_TEMPLATE, 0) as $data) { // each block $store->domainExtras->delete ($domainId, $data['id']); } // each block return $document->dataReplace ('layouts/dialog_close'); } // restore default configurations $formulary = $document->createFormulary ('personaliteTemplate_edit', array (), 'template'); if ($formulary->save ()) return $document->dataReplace ('layouts/dialog_close'); $document->mod->formulary = $formulary; if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); } // function dispatch static function action_remove ($document) { // function action_remove $id = intval ($document->actions['remove'][1]); if (!$id) return $document->buffer = 'error'; $data = $store->domainExtras->openById ($document->domain->domainId, $id); if (!$data) return $document->buffer = 'ok'; if ($data['mode'] != MODE_TEMPLATE) return $document->buffer = 'error'; $store->domainExtras->delete ($data['domain_id'], $data['id']); $document->buffer = 'ok'; } // function action_remove } // class eclApp_personaliteTemplate //!eof:library/personaliteTemplate/eclApp_personaliteTemplate.php; //!file:library/personaliteTemplate/eclFilter_personaliteTemplate_manager.php; class eclFilter_personaliteTemplate_manager { // class eclFilter_personaliteTemplate_manager static function create ($fieldName, $control, $formulary) { // function create global $io, $store; $document = $formulary->document; $me = $document->application; $folder = $control['flags']['folder']; $length = strlen ($folder); $item = $document->createListItem ($control); // name $item->data['name'] = $fieldName; // type if (isset ($control['flags']['type'])) $item->data['type'] = $control['flags']['type']; else $item->data['type'] = 'manager'; // help if (isset ($control['flags']['help']) and !isset ($control['flags']['help_msg'])) $item->data['help_msg'] = 'system_msg_filterDetailsHelp'; // references $pathway = array ($document->domain->name, '-personalite', 'template', $control['flags']['folder']); $item->data['url_add'] = $document->url ($pathway); $item->data['move-enable'] = 0; $item->data['remove-enable'] = 1; $item->data['edit-enable'] = 1; foreach ($store->domainExtras->children ($me->domainId, MODE_TEMPLATE, 0) as $data) { // each user detail if (substr ($data['name'], 0, $length) != $folder) continue; if (isset ($data['text']['caption'])) $caption = $document->textMerge ($data['name'], ' ', $data['text']['caption']); else $caption = $document->textMerge ($data['name']); $configure = $me->pathway; $configure[] = $data['name']; $item->appendChild (array ( 'value' => $data['name'], 'caption' => $caption, 'url' => $document->url ($configure), 'url_remove' => $document->url (true, true, '_remove-' . $data['id']) )); } // each line return $item; } // function create static function save ($fieldName, $control, $formulary) { // function save } // function save } // class eclFilter_personaliteTemplate_manager //!eof:library/personaliteTemplate/eclFilter_personaliteTemplate_manager.php; //!file:library/personaliteTemplate/filters/eclApp_personaliteTemplate_filters.php; class eclApp_personaliteTemplate_filters { // class eclApp_personaliteTemplate_filters static function is_child ($me, $name) { // function is_child if ($name == '-filters') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names () { // function get_children_names return array ('-filters'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('personaliteTemplate_filters_content'); $me->access = 4; $me->isDomain = true; } // function constructor_helper static function dispatch ($document) { // function dispatch $document->mod->list = new eclMod_personaliteTemplate_filters_list ($document); } // function dispatch } // class eclApp_personaliteTemplate_filters //!eof:library/personaliteTemplate/filters/eclApp_personaliteTemplate_filters.php; //!file:library/personaliteTemplate/filters/eclMod_personaliteTemplate_filters_list.php; class eclMod_personaliteTemplate_filters_list { // class eclMod_personaliteTemplate_filters_list public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $me = $document->application; $render = $document->render; foreach ($store->control->scandir ('c', 'sectionBlog/post') as $name) { // each detail $data = $store->control->read ('sectionBlog_post_' . $name); if (!isset ($data['flags']['filters_manager'])) continue; if (!$data or !isset ($data['text']['caption'])) continue; $data['name'] = $data['flags']['filters_manager']; $mod->appendChild ($data); } // each detail $mod->enabled = true; } // function setModule } // class eclMod_personaliteTemplate_filters_list //!eof:library/personaliteTemplate/filters/eclMod_personaliteTemplate_filters_list.php; //!file:library/personaliteTemplate/labels/eclApp_personaliteTemplate_labels.php; class eclApp_personaliteTemplate_labels { // class eclApp_personaliteTemplate_labels static function is_child ($me, $name) { // function is_child if ($name == 'labels') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names () { // function get_children_names return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('personaliteTemplate_add_content'); $me->map = array ('personaliteTemplate_labels_add'); $me->isDomain = true; } // function constructor_helper static function dispatch ($document) { // function dispatch } // function dispatch } // class eclApp_personaliteTemplate_labels //!eof:library/personaliteTemplate/labels/eclApp_personaliteTemplate_labels.php; //!file:library/personaliteTemplate/labels/eclApp_personaliteTemplate_labels_add.php; class eclApp_personaliteTemplate_labels_add { // class eclApp_personaliteTemplate_labels_add static function is_child ($me, $name) { // function is_child switch ($name) { // switch name case 'action': case 'date': case 'field': case 'lang': case 'navigation': return true; default: return false; } // switch name } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names () { // function get_children_names return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('personaliteTemplate_add_content'); $me->map = array ('personaliteTemplate_labels_configure'); $me->isDomain = true; } // function constructor_helper static function dispatch ($document) { // function dispatch $document->mod->list = new eclMod_personaliteTemplate_labels_add ($document); } // function dispatch } // class eclApp_personaliteTemplate_labels_add //!eof:library/personaliteTemplate/labels/eclApp_personaliteTemplate_labels_add.php; //!file:library/personaliteTemplate/labels/eclApp_personaliteTemplate_labels_configure.php; class eclApp_personaliteTemplate_labels_configure { // class eclApp_personaliteTemplate_labels_configure static function is_child ($me, $name) { // function is_child return true; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names () { // function get_children_names return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('personaliteTemplate_labels_edit'); $me->access = 4; $me->isDomain = true; } // function constructor_helper static function dispatch ($document) { // function dispatch global $store; $me = $document->application; $folder = 'labels/' . $me->parent->name; $name = $folder . '/' . $me->name; $saved = &$store->domainExtras->openChild ($me->domainId, MODE_TEMPLATE, 0, $name); if ($saved) $data = $saved; elseif ($store->control->read ($name)) $data = $store->control->read ($name); else $data = array (); // Restore default configurations if (isset ($document->received['save']) and $document->received['save'] == 'restore') { // restore default configurations if ($saved) $store->domainExtras->delete ($me->domainId, $saved['id']); $data = $store->control->read ($name); $document->dataReplace ('layouts/dialog_close'); if ($data) { // update to default $caption = $document->selectLanguage ($data['text']['caption']); $identifier = $me->name; } // update to system default else { // remove $identifier = ''; $caption[1] = ''; } // remove $pathway = $me->parent->pathway; $pathway[] = $me->name; $url = $document->url ($pathway); $document->data['script'] = 'window.opener.listManager.update ("' . $me->name . '", "' . $identifier . '", "' . $caption[1] . '", "' . $url . '");'; return; } // restore default configurations $data['identifier'] = $me->name; $formulary = $document->createFormulary ('personaliteTemplate_labels_edit', $data); if ($formulary->save ()) { // save formulary $data = $formulary->data; if (!isset ($data['identifier']) or !preg_match ('/^[a-z][a-z0-9_]*$/', $data['identifier'])) $data['identifier'] = $me->name; if ($data['identifier'] == $me->name and $saved) $saved = $formulary->data; else { // create saved modules if ($data['identifier'] != $me->name and $saved = &$store->domainExtras->openChild ($me->domainId, MODE_TEMPLATE, 0, $folder . '/' . $data['identifier'])) { // overwrite existing detail $saved['text'] = $data['text']; } // overwrite existing detail else { // create new detail $data['mode'] = MODE_TEMPLATE; $data['name'] = $folder . '/' . $data['identifier']; $store->domainExtras->insert ($me->domainId, $data); } // create new detail } // create saved modules $document->dataReplace ('layouts/dialog_close'); $caption = $document->selectLanguage ($data['text']['caption']); $pathway = $me->parent->pathway; $pathway[] = $data['identifier']; $url = $document->url ($pathway); $document->data['script'] = 'window.opener.listManager.update ("' . $me->name . '", "' . $data['identifier'] . '", "' . $caption[1] . '", "' . $url . '");'; return; } // save formulary $document->mod->formulary = $formulary; if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); } // function dispatch } // class eclApp_personaliteTemplate_labels_configure //!eof:library/personaliteTemplate/labels/eclApp_personaliteTemplate_labels_configure.php; //!file:library/personaliteTemplate/labels/eclMod_personaliteTemplate_labels_add.php; class eclMod_personaliteTemplate_labels_add { // class eclMod_personaliteTemplate_labels_add public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $me = $document->application; $render = $document->render; $folder = $me->parent->name . '/' . $me->name; foreach ($store->control->scandir ('t', $folder) as $name) { // each detail $data = $store->control->read ($folder . '/' . $name); if (!$data or !isset ($data['text']['caption'])) continue; $data['name'] = $name; $data['text']['caption'] = $document->textMerge ($data['name'], ' ', $data['text']['caption']); $mod->appendChild ($data) ->appendFolder ($name); } // each detail $mod->enabled = true; } // function setModule } // class eclMod_personaliteTemplate_labels_add //!eof:library/personaliteTemplate/labels/eclMod_personaliteTemplate_labels_add.php; //!file:library/section/create/eclApp_section_create.php; class eclApp_section_create { // class eclApp_section_create static function is_child ($me, $name) { // function is_child if ($name == '-new-section') return true; return false; } // function is_child static function get_menu_type ($me) { // function get_menu_type global $store; $data = $store->domainContent->open ($me->domainId, '-register'); if (isset ($data['flags']['section_createOnMenu'])) return 'section'; return 'post'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array ('-new-section'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('section_create_content'); $me->ignoreSubfolders = true; $me->access = 4; $me->getMap (); } // function constructor_helper static function dispatch ($document) { // function dispatch global $io, $store; $me = $document->application; if (!isset ($document->actions['create'][1])) goto show_list; $type = $document->actions['create'][1]; if (!is_object ($document->application->child ($type))) goto show_list; $preset = $document->application->child ($type)->child ('-preset'); if (!is_object ($preset)) goto show_list; $data = $preset->data; unset ($data['text']); $formulary = $document->createFormulary ('section_create_edit', $data, 'sectionEdit'); if ($formulary->command ('cancel')) { // return to parent page $parent = $document->application->parent; if ($parent->isDomain) $parent = $parent->child (''); $document->application = $parent; $document->application->dispatch ($document); $document->reload = $document->url (); return; } // return to parent page // Salvar formulrio e redespachar if ($formulary->command ('save') and $formulary->save (1)) { // save section $parent = $document->application->parent; $data = &$formulary->data; $data['mode'] = MODE_SECTION; $data['parent_id'] = $parent->id; $data['id'] = $store->domainContent->insert ($parent->domainId, $data); $me->id = $data['id']; $formulary->save (2); $io->database->commit (); $me->data = &$store->domainContent->openById ($me->domainId, $me->id); $me->data = $formulary->data; $store->domainExtras->createVersion ($me->domainId, $data, $document); $parent->reset (); $document->application = $parent->child ($data['name']); $document->reload = $document->url (); $document->application->dispatch ($document); return; } // save section // Sugesto de texto if (!isset ($formulary->data['text']) and isset ($preset->data['text'])) $formulary->data['text'] = $preset->data['text']; // Exibir formulrio $formulary->action = '_create-' . $type; $document->mod->formulary = $formulary; if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); $document->mod->languages->action = '_create-' . $type; $document->mod->instructor->addMessage ('section' . ucfirst ($type) . '_helpCreate'); return; // Exibir lista de opes show_list: unset ($document->actions['create']); $document->mod->list = new eclMod_section_create_list ($document); } // function dispatch } // class eclApp_section_create //!eof:library/section/create/eclApp_section_create.php; //!file:library/section/create/eclMod_section_create_list.php; class eclMod_section_create_list { // class eclMod_section_create_list public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $row = $mod->appendChild (); $pathway = $this->document->application->pathway; foreach ($this->document->application->children () as $child) { // each child $row->appendChild ($child) ->virtual (1) ->url ($pathway, true, '_create-' . $child->name); } // each child $mod->data = $store->control->read ('modules/list'); $mod->enabled = true; } // function setModule } // class eclMod_section_create_list //!eof:library/section/create/eclMod_section_create_list.php; //!file:library/section/eclApp_section.php; class eclApp_section { // class eclApp_section static function is_child ($me, $name) { // function is_child global $store; $data = $store->domainContent->openChild ($me->domainId, MODE_SECTION, $me->id, $name); if ($data) return true; if (!$me->isDomain) return false; $data = $store->domainContent->open ($me->domainId, $name); if (!$data or !$data['parent_id']) return false; if ($data['parent_id'] == 1) return true; $parent = $store->domainContent->openById ($me->domainId, $data['parent_id']); if (isset ($parent['flags']['section_type']) and $parent['flags']['section_type'] == 'menu') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'section'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names global $store; return $store->domainContent->childrenNames ($me->domainId, MODE_SECTION, $me->id); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = &$store->domainContent->open ($me->domainId, $me->name); $me->id = $me->data['id']; if ($me->data['access'] > $me->access) $me->access = $me->data['access']; if (isset ($me->data['flags']['section_type'])) $class = 'eclApp_section' . ucfirst ($me->data['flags']['section_type']); else $class = 'eclApp_sectionFolder'; $class::constructor_helper ($me); } // function constructor_helper static function dispatch ($document) { // function dispatch global $store; $me = $document->application; $view = true; if ($document->access (4)) { // user is admin if ($document->actions ('section', 'edit')) $view = self::action_edit ($document); elseif ($document->actions ('section', 'moveto')) $view = self::action_moveto ($document); elseif ($document->actions ('section', 'remove')) return self::action_remove ($document); elseif ($document->actions ('section', 'move')) self::action_move ($document); // Context Edit $document->mod->context->appendChild ('section_edit') ->active ($document->actions ('section', 'edit')) ->url (true, true, '_section-edit'); // Versioning $store->domainExtras->versioning ($document); // Context Remove $document->mod->context->appendChild ('section_remove') ->url (true, true, '_section-remove') ->confirm ('section_removeConfirm'); // Context Move up if ($me->data['index'] and ($me->data['parent_id'] == 1 or $me->data['parent_id'] == $me->parent->id)) $document->mod->context->appendChild ('section_moveUp') ->url (true, true, '_section-move-up'); // Context Move down if ($me->data['index'] < count ($store->domainContent->children ($me->domainId, MODE_SECTION, $me->data['parent_id'])) - 1 and ($me->data['parent_id'] == 1 or $me->data['parent_id'] == $me->parent->id)) $document->mod->context->appendChild ('section_moveDown') ->url (true, true, '_section-move-down'); // Context Move to... $document->mod->context->appendChild ('section_moveTo') ->url (true, true, '_section-moveto'); } // user is admin if ($view) { // view section if (!$document->access (3) and !isset ($me->data['flags']['modHits_disable'])) $me->data['hits']++; if (isset ($me->data['flags']['section_type'])) $class = 'eclApp_section' . ucfirst ($me->data['flags']['section_type']); else $class = 'eclApp_sectionFolder'; $class::dispatch ($document); } // view section } // function dispatch static function action_edit ($document) { // function action_edit global $store; $me = $document->application; $formulary = $document->createFormulary ('section_edit', $me->data, 'sectionEdit'); if ($formulary->command ('cancel')) { // cancel unset ($document->actions['section']); return true; } // cancel if ($formulary->command ('save') and $formulary->save ()) { // save formulary unset ($document->actions['section']); $me->data = $formulary->data; $me->data['updated'] = TIME; $store->domainExtras->createVersion ($me->domainId, $me->data, $document); $document->application->reset (); if ($document->application->name != $formulary->data['name']) { // update name $document->application->name = $formulary->data['name']; array_pop ($document->application->pathway); $document->application->pathway[] = $formulary->data['name']; $document->reload = $document->url (); } // update name else $document->dataReplace ($document->application->data); return true; } // save formulary $formulary->action = '_section-edit-save'; $document->mod->formulary = $formulary; if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); $document->mod->languages->action = '_section-edit'; $document->dataMerge ('section_contentEdit'); return false; } // function action_edit static function action_remove ($document) { // function action_remove global $store, $io; $me = $document->application; unset ($document->actions['section']); $parent = $me->parent; $me->remove (); $parent->reset (); // reindex brothers $store->domainContent->childrenReindex ($parent->domainId, MODE_SECTION, $parent->id); if ($parent->isDomain) $document->application = $parent->child (''); else $document->application = $parent; $document->reload = $document->url (); $document->application->dispatch ($document); } // function action_remove static function action_move ($document) { // function action_move global $store; $parentId = $document->application->data['parent_id']; $name = $document->application->name; $parent = $document->application->parent; unset ($document->application); $parent->reset (); $store->domainContent->childrenReindex ($parent->domainId, MODE_SECTION, $parentId); $names = $store->domainContent->childrenNames ($parent->domainId, MODE_SECTION, $parentId); $index = array_search ($name, $names); $length = count ($names) - 1; if ($document->actions ('section', 'move', 'up') and $index) { // move up $move_up = &$store->domainContent->open ($parent->domainId, $names[$index]); $move_down = &$store->domainContent->open ($parent->domainId, $names[$index - 1]); $move_up['index']--; $move_down['index']++; } // move up elseif ($document->actions ('section', 'move', 'down') and $index < $length) { // move down $move_up = &$store->domainContent->open ($parent->domainId, $names[$index + 1]); $move_down = &$store->domainContent->open ($parent->domainId, $names[$index]); $move_up['index']--; $move_down['index']++; } // move down unset ($document->actions['section']); $document->application = $parent->child ($name); } // function action_move static function action_moveto ($document) { // function action_moveto global $store; unset ($document->actions['section']); $me = $document->application; $oldParentId = $me->data['parent_id']; $formulary = $document->createFormulary ('section_moveTo', $me->data, 'moveto'); $formulary->action = '_section-moveto'; if ($formulary->command ('cancel')) return true; if ($formulary->command ('save') and $formulary->save ()) { // save $newParentId = $formulary->data['parent_id']; if ($newParentId == $oldParentId) return true; $me->data['parent_id'] = $newParentId; unset ($store->domainContent->chargedMode[$me->domainId][MODE_SECTION]); $store->domainContent->childrenReindex ($me->domainId, MODE_SECTION, $newParentId); $me->data['index'] = count ($store->domainContent->children ($me->domainId, MODE_SECTION, $newParentId)); unset ($store->domainContent->indexByParent[$me->domainId][MODE_SECTION][$oldParentId][$me->id]); $store->domainContent->childrenReindex ($me->domainId, MODE_SECTION, $oldParentId); $store->domainContent->indexByParent[$me->domainId][MODE_SECTION][$newParentId][$me->id] = $me->id; unset ($store->domainContent->chargedParents[$me->domainId][MODE_SECTION][$oldParentId]); unset ($store->domainContent->chargedParents[$me->domainId][MODE_SECTION][$newParentId]); $document->reload = $document->url ($store->domainContent->pathway ($me->domainId, $me->id)); return false; } // save $document->mod->formulary = $formulary; $document->dataReplace ('section_moveTo'); return false; } // function action_moveto static function remove ($me) { // function remove if (isset ($me->data['flags']['section_type'])) $class = 'eclApp_section' . ucfirst ($me->data['flags']['section_type']); else $class = 'eclApp_sectionFolder'; if (is_callable ($class . '::remove')) $class::remove ($me); global $store; $store->domainContent->delete ($me->domainId, $me->id); $store->domainFile->deletePrefixedFiles ($me->domainId, $me->name); $store->domainExtras->deleteAllChildren ($me->domainId, $me->id); } // function remove } // class eclApp_section //!eof:library/section/eclApp_section.php; //!file:library/section/eclFilter_section_moveto.php; class eclFilter_section_moveto { // class eclFilter_section_moveto static function create ($fieldName, $control, $formulary) { // function create global $store; $control['type'] = 'list'; $control['name'] = $fieldName; $parentId = $formulary->data['parent_id']; $id = $formulary->data['id']; $item = $formulary->appendChild ($control); // Main menu $item->appendChild ('section_moveToMain') ->set ('value', '0') ->active ($parentId == 0); // Footer menu $item->appendChild ('section_moveToFooter') ->set ('value', '1') ->active ($parentId == 1); foreach ($store->domainContent->mode ($formulary->data['domain_id'], MODE_SECTION) as $data) { // each section if ($data['id'] == $id) continue; if (isset ($data['flags']['section_type']) and ($data['flags']['section_type'] == 'folder' or $data['flags']['section_type'] == 'menu')) $item->appendChild ($data) ->set ('value', $data['id']) ->active ($data['id'] == $parentId); } // each section } // function create static function save ($fieldName, $control, $formulary) { // function save global $store; if (!isset ($formulary->received[$fieldName])) return; $id = strval ($formulary->received[$fieldName]); if ($id == 0 or $id == 1) return $formulary->data['parent_id'] = $id; $data = $store->domainContent->openById ($formulary->data['domain_id'], $id); if (!$data or $data['mode'] != MODE_SECTION or !isset ($data['flags']['section_type'])) return; if ($data['flags']['section_type'] == 'folder' or $data['flags']['section_type'] == 'menu') $formulary->data['parent_id'] = $id; } // function save } // class eclFilter_section_moveto //!eof:library/section/eclFilter_section_moveto.php; //!file:library/section/eclFilter_section_selectGroup.php; class eclFilter_section_selectGroup { // class eclFilter_section_selectGroup static function create ($fieldName, $control, $formulary) { // function create global $store; $me = $formulary->document->application; $groups = $store->domainContent->mode ($me->domainId, MODE_GROUP); if (!$groups) return; $control['name'] = $fieldName; $control['type'] = 'select'; $item = $formulary->appendChild ($control); $value = $formulary->getField ('links/group'); $item->appendChild ('section_editGroupNone'); foreach ($groups as $data) { // each group $local = array ( 'caption' => $data['text']['title'], 'value' => $data['id'] ); $item->appendChild ($local) ->active ($data['id'] == $value); } // each group } // function create static function save ($fieldName, $control, $formulary) { // function save global $store; $me = $formulary->document->application; if (isset ($formulary->received[$fieldName])) $id = intval ($formulary->received[$fieldName]); else $id = false; if ($id) { // find group $data = $store->domainContent->openById ($me->domainId, $id); if (!$data or $data['mode'] != MODE_GROUP) $id = false; } // find group $formulary->setField ('links/group', $id); } // function save } // class eclFilter_section_selectGroup //!eof:library/section/eclFilter_section_selectGroup.php; //!file:library/section/eclFilter_section_specialFields.php; class eclFilter_section_specialFields { // class eclFilter_section_specialFields static function create ($fieldName, $control, $formulary) { // function create global $store; if (!isset ($formulary->data['flags']['section_type'])) return; if (!isset ($control['flags']['sufix'])) return; $special = $store->control->read ('section' . ucfirst ($formulary->data['flags']['section_type']) . $control['flags']['sufix']); if (isset ($special['children'])) $formulary->insertControlChildren ($special); } // function create static function save ($fieldName, $control, $formulary) { // function save global $store; if (!isset ($formulary->data['flags']['section_type'])) return; if (!isset ($control['flags']['sufix'])) return; $special = $store->control->read ('section' . ucfirst ($formulary->data['flags']['section_type']) . $control['flags']['sufix']); if (isset ($special['children'])) $formulary->insertControlChildren ($special); } // function save } // class eclFilter_section_specialFields //!eof:library/section/eclFilter_section_specialFields.php; //!file:library/section/preset/eclApp_section_preset.php; class eclApp_section_preset { // class eclApp_section_preset static function is_child ($me, $name) { // function is_child if (!isset ($me->data['flags']['preset'])) return false; if ($name == '-preset') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array ('-preset'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ($me->parent->data['flags']['preset']); } // function constructor_helper static function dispatch ($document) { // function dispatch } // function dispatch } // class eclApp_section_preset //!eof:library/section/preset/eclApp_section_preset.php; //!file:library/sectionBlog/create/eclApp_sectionBlog_create.php; class eclApp_sectionBlog_create { // class eclApp_sectionBlog_create static function is_child ($me, $name) { // function is_child switch ($name) { // switch name case 'blog': case 'galery': case 'events': case 'news': case 'podcast': case 'products': case 'videocast': return true; } // switch name return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names global $store; $names = array ('blog', 'galery', 'news', 'events', 'podcast', 'videocast'); if ($store->domainContent->findMarker ($me->domainId, 12)) $names[] = 'products'; return $names; } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('sectionBlog_create_' . $me->name); $me->map = array ('section_preset'); } // function constructor_helper static function dispatch ($document) { // function dispatch } // function dispatch } // class eclApp_sectionBlog_create //!eof:library/sectionBlog/create/eclApp_sectionBlog_create.php; //!file:library/sectionBlog/eclApp_sectionBlog.php; class eclApp_sectionBlog { // class eclApp_sectionBlog static function constructor_helper ($me) { // function constructor_helper $me->map = array ('sectionBlog_post', 'sectionBlog_post_new'); } // function constructor_helper static function dispatch ($document) { // function dispatch $me = $document->application; if ($document->access (4)) { // admin // Context new post $pathway = $me->pathway; $pathway[] = '-new-post'; $document->mod->context->appendChild ('sectionBlog_post_contextNew') ->url ($pathway); $document->mod->editor->enable (); } // admin $document->mod->sort = new eclMod_sectionBlog_sort ($document); $document->mod->list = new eclMod_sectionBlog_list ($document); $document->mod->pages = new eclMod_sectionBlog_pages ($document); } // function dispatch static function remove ($me) { // function remove } // function remove } // class eclApp_sectionBlog //!eof:library/sectionBlog/eclApp_sectionBlog.php; //!file:library/sectionBlog/eclMod_sectionBlog_list.php; class eclMod_sectionBlog_list { // class eclMod_sectionBlog_list public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $render = $document->render; $me = $document->application; // Procure o mdulo dentro da aplicao if (isset ($me->data['extras']['list'])) $mod->data = $me->data['extras']['list']; else { // from preset if (isset ($me->data['flags']['modList_preset'])) $preset = $me->data['flags']['modList_preset']; else $preset = 'blog'; $mod->data = $render->block ('modules/list_' . $preset); if (!$mod->data) $mod->data = $render->block ('modules/list_blog'); } // from preset $mod->data['name'] = 'section_' . $me->name; // configuraes de listagem $local = $mod->data['local']; isset ($local['list_sort']) or $local['list_sort'] = 'index'; isset ($local['list_direction']) or $local['list_direction'] = 'asc'; isset ($local['list_max']) or $local['list_max'] = 0; if (isset ($document->actions['sort'][1])) { // force sorting mode switch ($document->actions['sort'][1]) { // switch sorgting mode case 'cheaper': $local['list_sort'] = 'value'; $local['list_direction'] = 'asc'; break; case 'expensive': $local['list_sort'] = 'value'; $local['list_direction'] = 'desc'; break; case 'hits': $local['list_sort'] = 'hits'; $local['list_direction'] = 'desc'; break; case 'ratings': $local['list_sort'] = 'spotlight'; $local['list_direction'] = 'desc'; break; case 'recents': $local['list_sort'] = 'created'; $local['list_direction'] = 'desc'; break; case 'post': $local['list_sort'] = 'created'; $local['list_direction'] = 'asc'; break; case 'event': $local['list_sort'] = 'event_start'; $local['list_direction'] = 'asc'; break; case 'alphabetically': $local['list_sort'] = 'name'; $local['list_direction'] = 'asc'; break; } // switch sorting mode } // force sorting mode if ($local['list_max'] and isset ($document->actions['page'][1])) { // pagination $page = intval ($document->actions['page'][1]); if ($page <= 0) $page = 1; $offset = $local['list_max'] * intval ($document->actions['page'][1] - 1); } // pagination else $offset = 0; switch ($local['list_sort']) { // switch list sort case 'name': case 'created': case 'updated': case 'event_start': case 'coments_last_update': case 'hits': case 'value': case 'spotlight': $children = $store->domainContent->children ($me->domainId, MODE_POST, $me->id, 4, $local['list_max'], $offset, $local['list_sort'], $local['list_direction']); break; default: $children = $store->domainContent->children ($me->domainId, MODE_POST, $me->id, 4, $local['list_max'], $offset, 'index', $local['list_direction']); } // switch list sort $row = $mod->appendChild (); foreach ($children as $data) { // each child $row->appendChild ($me->child ($data['name'])) ->set ('editable', $document->contentEditable) ->url (); } // each child if (!$row->children) return; if ($document->templateEditable and $document->access (4)) { // personalite reference $pathway = array_slice ($me->pathway, 1); array_unshift ($pathway, $document->domain->name, '-personalite', 'extras', 'list'); $mod->data['local']['personalite_url'] = $document->url ($pathway); $caption = $store->control->read ('modList_edit'); $mod->data['local']['personalite_caption'] = $caption['text']['caption']; } // reference $mod->enabled = true; } // function setModule } // class eclMod_sectionBlog_list //!eof:library/sectionBlog/eclMod_sectionBlog_list.php; //!file:library/sectionBlog/eclMod_sectionBlog_pages.php; class eclMod_sectionBlog_pages { // class eclMod_sectionBlog_pages public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $me = $document->application; isset ($me->data['extras']['list']['local']) ? $local = $me->data['extras']['list']['local'] : $local = array (); isset ($local['list_sort']) or $local['list_sort'] = 'index'; isset ($local['list_direction']) or $local['list_direction'] = 'asc'; isset ($local['list_max']) or $local['list_max'] = 0; $action = ''; if (isset ($document->actions['sort'][1])) { // force sorting mode $action = '_sort-' . $document->actions['sort'][1]; switch ($document->actions['sort'][1]) { // switch sorgting mode case 'cheaper': $local['list_sort'] = 'value'; $local['list_direction'] = 'asc'; break; case 'expensive': $local['list_sort'] = 'value'; $local['list_direction'] = 'desc'; break; case 'hits': $local['list_sort'] = 'hits'; $local['list_direction'] = 'desc'; break; case 'ratings': $local['list_sort'] = 'spotlight'; $local['list_direction'] = 'desc'; break; case 'recents': $local['list_sort'] = 'created'; $local['list_direction'] = 'desc'; break; case 'post': $local['list_sort'] = 'created'; $local['list_direction'] = 'asc'; break; case 'event': $local['list_sort'] = 'event_start'; $local['list_direction'] = 'asc'; break; case 'alphabetically': $local['list_sort'] = 'name'; $local['list_direction'] = 'asc'; break; default: $action = ''; } // switch sorting mode } // force sorting mode if (!$local['list_max']) return; if (isset ($document->actions['page'][1])) $page = intval ($document->actions['page'][1]); else $page = 1; if (!$page) $page = 1; $names = $store->domainContent->childrenNames ($me->domainId, MODE_POST, $me->id, true, 0, 0, $local['list_sort'], $local['list_direction']); $length = count ($names); if ($length <= $local['list_max']) return; $numPages = ceil ($length / $local['list_max']); $row = $mod->appendChild (); // First $row->appendChild ('labels/navigation/first') ->active ($page == 1) ->url (true, true, $action); for ($i = 1; $i <= $numPages; $i++) { // loop pages $caption['local']['caption'] = $document->textMerge (strval ($i)); $row->appendChild (false, $caption) ->active ($page == $i) ->url (true, true, $action . '_page-' . $i); } // loop pages // last $row->appendChild ('labels/navigation/last') ->active ($page == $numPages) ->url (true, true, $action . '_page-' . $numPages); if (isset ($me->data['extras']['pages'])) $mod->data = $me->data['extras']['pages']; else $mod->data = $document->render->block ('modules/pages'); if ($document->templateEditable and $document->access (4)) { // personalite reference $pathway = array ($document->domain->name, '-dialog', 'section_pages_pages_' . $me->name); $mod->data['local']['personalite_url'] = $document->url ($pathway); $caption = $store->control->read ('modPages_edit'); $mod->data['local']['personalite_caption'] = $caption['text']['caption']; } // reference $mod->enabled = true; } // function setModule } // class eclMod_sectionBlog_pages //!eof:library/sectionBlog/eclMod_sectionBlog_pages.php; //!file:library/sectionBlog/eclMod_sectionBlog_sort.php; class eclMod_sectionBlog_sort { // class eclMod_sectionBlog_sort public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $me = $document->application; // Procure o mdulo dentro da aplicao if (isset ($me->data['extras']['sort'])) $mod->data = $me->data['extras']['sort']; else { // from preset if (isset ($me->data['flags']['modList_preset'])) $preset = $me->data['flags']['modList_preset']; else $preset = 'blog'; $mod->data = $render->block ('modules/sort_' . $preset); if (!$mod->data) $mod->data = $render->block ('modules/sort_blog'); } // from preset $mod->data['name'] = 'sort_' . $me->name; // configuraes de listagem $local = isset ($me->data['extras']['list']['local']) ? $me->data['extras']['list']['local'] : array (); $sort = isset ($local['list_sort']) ? $local['list_sort'] : 'index'; $direction = isset ($local['list_direction']) ? $local['list_direction'] : 'asc'; if (isset ($document->actions['sort'][1])) $value = $document->actions['sort'][1]; elseif ($sort == 'value' and $direction == 'asc') $value = 'cheaper'; elseif ($sort == 'value' and $direction == 'desc') $value = 'expensive'; elseif ($sort == 'hits') $value = 'hits'; elseif ($sort == 'spotlight') $value = 'ratings'; elseif ($sort == 'created' and $direction == 'desc') $value = 'recents'; elseif ($sort == 'created' and $direction == 'asc') $value = 'post'; elseif ($sort == 'event_start') $value = 'event'; elseif ($sort == 'name') $value = 'alphabetically'; else $value = ''; foreach (array ('cheaper', 'expensive', 'hits', 'ratings', 'recents', 'post', 'event', 'alphabetically') as $mode) { // each mode $mod->appendChild ('sectionBlog_sort' . ucfirst ($mode)) ->set ('value', $document->url (true, true, '_sort-' . $mode)) ->active ($value == $mode); } // each mode if ($document->templateEditable and $document->access (4)) { // personalite reference $pathway = array_slice ($me->pathway, 1); array_unshift ($pathway, $document->domain->name, '-personalite', 'extras', 'sort'); $mod->data['local']['personalite_url'] = $document->url ($pathway); $caption = $store->control->read ('modSort_edit'); $mod->data['local']['personalite_caption'] = $caption['text']['caption']; } // reference $mod->enabled = true; } // function setModule } // class eclMod_sectionBlog_sort //!eof:library/sectionBlog/eclMod_sectionBlog_sort.php; //!file:library/sectionBlog/post/eclApp_sectionBlog_post.php; class eclApp_sectionBlog_post { // class eclApp_sectionBlog_post static function is_child ($me, $name) { // function is_child global $store; if ($name[0] == '-') return false; $data = $store->domainContent->openChild ($me->domainId, MODE_POST, $me->id, $name); if ($data) return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'post'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names global $store; return $store->domainContent->childrenNames ($me->domainId, MODE_POST, $me->id); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = &$store->domainContent->open ($me->domainId, $me->name); $me->id = $me->data['id']; } // function constructor_helper static function dispatch ($document) { // function dispatch global $store; $view = true; if ($document->access (4)) { // user is admin if ($document->actions ('post', 'edit')) $view = self::action_edit ($document); elseif ($document->actions ('post', 'remove')) return self::action_remove ($document); // Edit $document->mod->context->appendChild ('sectionBlog_post_edit') ->active ($document->actions ('post', 'edit')) ->url (true, true, '_post-edit'); // Versioning $store->domainExtras->versioning ($document); // Context Remove $document->mod->context->appendChild ('sectionBlog_post_remove') ->url (true, true, '_post-remove') ->confirm ('sectionBlog_post_msgRemoveConfirm'); // Context new post $pathway = $document->application->parent->pathway; $pathway[] = '-new-post'; $document->mod->context->appendChild ('sectionBlog_post_contextNew') ->url ($pathway); } // user is admin if (!$view) return; // Hit counter if ($document->access (4)) $document->mod->editor->enable (); else $document->application->data['hits']++; $document->mod->content = new eclMod_sectionBlog_post_content ($document); $document->mod->pages = new eclMod_sectionBlog_post_pages ($document); $document->mod->comments->enable (); } // function dispatch static function action_edit ($document) { // function action_edit global $store; $me = $document->application; $formulary = $document->createFormulary ('sectionBlog_post_edit', $me->data, 'post'); if ($formulary->command ('cancel')) { // cancel unset ($document->actions['post']); return true; } // cancel if ($formulary->command ('save') and $formulary->save ()) { // save formulary unset ($document->actions['post']); $me->data = $formulary->data; if (!$me->data['owner_id']) $me->data['owner_id'] = $document->user->userId; // New version $store->domainExtras->createVersion ($me->domainId, $me->data, $document); $me->name = $formulary->data['name']; array_pop ($me->pathway); $me->pathway[] = $formulary->data['name']; $document->dataReplace ($me->data); return true; } // save formulary $formulary->action = '_post-edit-save'; $document->mod->formulary = $formulary; if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); $document->mod->languages->action = '_post-edit'; $document->dataReplace ('sectionBlog_post_edit'); return false; } // function action_edit static function action_remove ($document) { // function action_remove global $io, $store; unset ($document->actions['post']); $me = $document->application; $parent = $me->parent; $me->remove (); // reindex brothers $store->domainContent->childrenReindex ($parent->domainId, MODE_POST, $parent->id); $parent->reset (); $document->application = $parent; $document->application->dispatch ($document); $document->reload = $document->url (); } // function action_remove static function remove ($me) { // function remove global $store; $store->domainContent->delete ($me->domainId, $me->id); $store->domainExtras->deleteAllChildren ($me->domainId, $me->id); $store->domainFile->deletePrefixedFiles ($me->domainId, $me->name); } // function remove } // class eclApp_sectionBlog_post //!eof:library/sectionBlog/post/eclApp_sectionBlog_post.php; //!file:library/sectionBlog/post/eclApp_sectionBlog_post_new.php; class eclApp_sectionBlog_post_new { // class eclApp_sectionBlog_post_new static function is_child ($me, $name) { // function is_child if ($name == '-new-post') return true; return false; } // function is_child static function get_menu_type ($me) { // function get_menu_type return 'post'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array ('-new-post'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->access = 4; $me->data = $store->control->read ('sectionBlog_post_new'); } // function constructor_helper static function dispatch ($document) { // function dispatch global $store; $me = $document->application; $formulary = $document->createFormulary ('sectionBlog_post_new', array (), 'create'); if ($formulary->command ('cancel')) { // cancel $document->application = $me->parent; $document->application->dispatch ($document); $document->reload = $document->url (); return; } // cancel if ($formulary->command ('save') and $formulary->save (1)) { // save post $parent = $document->application->parent; $data = &$formulary->data; $data['mode'] = MODE_POST; $data['parent_id'] = $parent->id; $data['owner_id'] = $document->user->userId; $data['subscription_id'] = $document->subscription->id; $data['id'] = $store->domainContent->insert ($parent->domainId, $data); $me->id = $data['id']; $formulary->save (2); $store->domainExtras->createVersion ($me->domainId, $data, $document); unset ($document->application); $parent->reset (); $document->application = $parent->child ($data['name']); $document->application->dispatch ($document); $document->reload = $document->url (); return; } // save post $document->mod->formulary = $formulary; if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); } // function dispatch } // class eclApp_sectionBlog_post_new //!eof:library/sectionBlog/post/eclApp_sectionBlog_post_new.php; //!file:library/sectionBlog/post/eclFilter_sectionBlog_post_product.php; class eclFilter_sectionBlog_post_product { // class eclFilter_sectionBlog_post_product static function create ($fieldName, $control, $formulary) { // function create $formulary->appendChild ('sectionBlog_post_specialProductPrice', array ( 'name' => $fieldName . '_price', 'value' => $formulary->getField ('local/product_price') )); } // function create static function save ($fieldName, $control, $formulary) { // function save $received = $formulary->received; if (isset ($received[$fieldName . '_price'])) { // save value $formulary->setField ('local/product_price', $received[$fieldName . '_price']); $formulary->setField ('value', intval ($received[$fieldName . '_price'])); } // save value else { // clear value $formulary->setField ('local/product_price', false); $formulary->setField ('value', 0); } // clear value } // function save } // class eclFilter_sectionBlog_post_product //!eof:library/sectionBlog/post/eclFilter_sectionBlog_post_product.php; //!file:library/sectionBlog/post/eclFilter_sectionBlog_post_specialFields.php; class eclFilter_sectionBlog_post_specialFields { // class eclFilter_sectionBlog_post_specialFields static function create ($fieldName, $control, $formulary) { // function create $formulary->insertControlChildren (self::findSpecialFields ($formulary)); } // function create static function save ($fieldName, $control, $formulary) { // function save $formulary->insertControlChildren (self::findSpecialFields ($formulary)); } // function save static function findSpecialFields ($formulary) { // function findSpecialFields global $store; $render = $formulary->document->render; $fields['title'] = true; foreach (array ('list', 'post') as $from) { // loop post and list $details = self::getDetails ($formulary->document, $from); foreach (explode (CRLF, $details) as $name) { // each detail $detail = $render->block ('details/' . $name); if (!isset ($detail['local']['filters'])) continue; foreach (explode (CRLF, $detail['local']['filters']) as $filter) { // each filter $fields[$filter] = true; } // each filter } // each detail } // loop post and list unset ($fields['title'], $fields['caption'], $fields['name'], $fields['specialFields']); $control = array (); foreach ($fields as $field => $notImportant) { // each field $control['children'][] = 'sectionBlog_post_edit' . ucfirst ($field); } // each field return $control; } // function findSpecialFields static function getDetails ($document, $from) { // function getDetails $render = $document->render; $me = $document->application->parent; if (isset ($me->data['extras'][$from]['local']['details'])) return $me->data['extras'][$from]['local']['details']; if (isset ($me->data['flags']['modList_preset'])) $preset = $me->data['flags']['modList_preset']; else $preset = 'blog'; $post = $render->block ('modules/' . $from . '_' . $preset); if (!$post) $post = $render->block ('modules/' . $from . '_blog'); if (isset ($post['local']['details'])) return $post['local']['details']; return array (); } // function getDetails } // class eclFilter_sectionBlog_post_specialFields //!eof:library/sectionBlog/post/eclFilter_sectionBlog_post_specialFields.php; //!file:library/sectionBlog/post/eclMod_sectionBlog_post_content.php; class eclMod_sectionBlog_post_content { // class eclMod_sectionBlog_post_content public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $render = $document->render; $me = $document->application->parent; // Procure o mdulo dentro da aplicao if (isset ($me->data['extras']['post'])) $data = $me->data['extras']['post']; else { // from preset if (isset ($me->data['flags']['modList_preset'])) $preset = $me->data['flags']['modList_preset']; else $preset = 'blog'; $data = $render->block ('modules/post_' . $preset); if (!$data) $data = $render->block ('modules/post_blog'); } // from preset $mod->data = $render->block ('modules/content'); $mod->data = array_replace_recursive ($mod->data, $data); // Itens da lista $mod->appendChild ($document->application) ->set ('editable', $document->contentEditable); // Se o mdulo pode ser editado if ($document->templateEditable and $document->access (4, $me->groups)) { // reference $pathway = array_slice ($me->pathway, 1); array_unshift ($pathway, $document->domain->name, '-personalite', 'extras', 'post'); $mod->data['local']['personalite_url'] = $document->url ($pathway); $caption = $store->control->read ('modContent_edit'); $mod->data['local']['personalite_caption'] = $caption['text']['caption']; } // reference $mod->enabled = true; } // function setModule } // class eclMod_sectionBlog_post_content //!eof:library/sectionBlog/post/eclMod_sectionBlog_post_content.php; //!file:library/sectionBlog/post/eclMod_sectionBlog_post_pages.php; class eclMod_sectionBlog_post_pages { // class eclMod_sectionBlog_post_pages public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $me = $document->application->parent; $row = $mod->appendChild (); if (isset ($me->data['extras']['list'])) $list = $me->data['extras']['list']; elseif (isset ($me->data['flags']['modList_preset'])) $list = $document->render->block ('modules/list_' . $me->data['flags']['modList_preset']); else $list = $document->render->block ('modules/list_blog'); $sort = isset ($list['local']['list_sort']) ? $list['local']['list_sort'] : 'index'; $direction = isset ($list['local']['list_direction']) ? $list['local']['list_direction'] : 'asc'; switch ($sort) { // switch list sort case 'name': case 'created': case 'updated': case 'event_start': case 'coments_last_update': case 'hits': case 'value': case 'spotlight': $names = $store->domainContent->childrenNames ($me->domainId, MODE_POST, $me->id, 4, 0, 0, $sort, $direction); break; default: $names = $store->domainContent->childrenNames ($me->domainId, MODE_POST, $me->id, 4, 0, 0, 'index', $direction); } // switch list sort $index = array_search ($document->application->name, $names); if ($index === false) return; $length = count ($names); if ($length < 2) return; if ($index) { // previous $pathway = $me->pathway; $pathway[] = $names[$index - 1]; $row->appendChild ('labels/layout/previous') ->url ($pathway); } // previous if ($index < $length - 1) { // next $pathway = $me->pathway; $pathway[] = $names[$index + 1]; $row->appendChild ('labels/layout/next') ->url ($pathway); } // next if (isset ($me->data['extras']['post_pages'])) $mod->data = $me->data['extras']['post_pages']; else $mod->data = $document->render->block ('modules/pages_post'); if ($document->templateEditable and $document->access (4)) { // personalite reference $pathway = array_slice ($me->pathway, 1); array_unshift ($pathway, $document->domain->name, '-personalite', 'post', 'pages'); $mod->data['local']['personalite_url'] = $document->url ($pathway); $caption = $store->control->read ('modPages_edit'); $mod->data['local']['personalite_caption'] = $caption['text']['caption']; } // reference $mod->enabled = true; } // function setModule } // class eclMod_sectionBlog_post_pages //!eof:library/sectionBlog/post/eclMod_sectionBlog_post_pages.php; //!file:library/sectionCart/create/eclApp_sectionCart_create.php; class eclApp_sectionCart_create { // class eclApp_sectionCart_create static function is_child ($me, $name) { // function is_child global $store; if ($me->parent->access) return false; if (!$store->domainContent->findMarker ($me->domainId, 12) and $name == 'cart') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names ($parent) { // function get_children_names global $store; if ($parent->parent->access) return array (); if (!$store->domainContent->findMarker ($parent->domainId, 12)) return array ('cart'); return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('sectionCart_create_content'); $me->map = array ('section_preset'); } // function constructor_helper static function dispatch ($document) { // function dispatch } // function dispatch } // class eclApp_sectionCart_create //!eof:library/sectionCart/create/eclApp_sectionCart_create.php; //!file:library/sectionCart/eclApp_sectionCart.php; class eclApp_sectionCart { // class eclApp_sectionCart static function constructor_helper ($me) { // function constructor_helper $me->map = array ('financialAccount'); } // function constructor_helper static function dispatch ($document) { // function dispatch if ($document->access (4)) { // admin $document->mod->editor->enable (); } // admin if (!$document->access (1)) { // please connect $document->mod->panel->main = array ('content', 'login', 'user_subscribe'); $document->dataMerge ('sectionCart_contentPleaseConnect'); return; } // please connect if (isset ($document->session['order'])) return self::action_view_order ($document); } // function dispatch static function action_view_order ($document) { // function action_view_order $formulary = $document->createFormulary ('sectionCart_choosePaymentMethod', array (), 'method'); if ($formulary->command ('next') and $formulary->save ()) { // next $document->application = $document->application->child ($formulary->data['account'])->child ($formulary->data['method']); $document->application->dispatch ($document); return; } // next $document->mod->list = new eclMod_sectionCart_order ($document); $document->mod->formulary = $formulary; } // function action_view_order static function remove ($me) { // function remove } // function remove } // class eclApp_sectionCart //!eof:library/sectionCart/eclApp_sectionCart.php; //!file:library/sectionCart/eclApp_sectionCart_preload.php; class eclApp_sectionCart_preload { // class eclApp_sectionCart_preload static function is_child ($me, $name) { // function is_child if ($name == 'cart') return true; return false; } // function is_child static function get_menu_type ($me) { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper } // function constructor_helper static function dispatch ($document) { // function dispatch global $store; if ($document->actions ('cart', 'timeout')) { // cart timeout unset ($document->session['cart_' . $document->domain->name]); $document->mod->humperstilshen->alert ('sectionCart_alertTimeout'); return; } // cart timeout $received = $document->received; if (!isset ($received['id']) or !intval ($received['id'])) return; $data = $store->domainContent->openById ($document->domain->domainId, intval ($received['id'])); if (!$data or !$data['value'] or !isset ($data['local']['product_price'])) return; if (isset ($received['quantity']) and intval ($received['quantity'])) $quantity = $received['quantity']; else $quantity = 1; preg_match ('/([0-9]+)[,][0]?([0-9]+)/', $data['local']['product_price'], $match); $value = floatval ($match[1]) + (floatval ($match[2]) / 100); $cart = 'cart_' . $document->domain->name; if (!isset ($document->session[$cart])) $document->session[$cart] = array(); if (!isset ($document->session[$cart]['start_time'])) $document->session[$cart]['start_time'] = TIME; if (!isset ($document->session[$cart]['order'])) $document->session[$cart]['order'] = array(); $document->session[$cart]['order'][] = array ( 'domain_id' => $data['domain_id'], 'id' => $data['id'], 'caption' => $data['text']['caption'], 'value' => $value, 'quantity' => $quantity ); } // function dispatch } // class eclApp_sectionCart_preload //!eof:library/sectionCart/eclApp_sectionCart_preload.php; //!file:library/sectionCart/eclMod_sectionCart_order.php; class eclMod_sectionCart_order { // class eclMod_sectionCart_order public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $me = $document->application; $mod->data['local']['list'] = 'table_simple'; $row = $mod->appendChild (); $row->appendChild ('sectionCart_listCode'); $row->appendChild ('sectionCart_listDescription'); $row->appendChild ('sectionCart_listPrice'); $row->appendChild ('sectionCart_listQuantity'); $row->appendChild ('sectionCart_listValue'); $row->appendChild ('sectionCart_listAction'); $order = $document->session['order']; $remove = 0; if (isset ($document->actions['product'][2]) and $document->actions['product'][1] == 'remove' and intval ($document->actions['product'][2])) $remove = $document->actions['product'][2]; $total = 0; foreach ($order as $key => $product) { // each product if ($remove and $product['id'] == $remove) { // remove product unset ($document->session['order'][$key]); continue; } // remove product $data = $store->domainContent->openById ($product['domain_id'], $product['id']); if (!isset ($data['local']['product_price'])) { // remove product unset ($document->session['order'][$key]); continue; } // remove product $price = $data['local']['product_price']; $total += $price * $product['quantity']; $row = $mod->appendChild (); if (isset ($data['local']['product_code'])) $row->appendChild (array ( 'caption' => $document->textMerge ($data['local']['code']) )); else $row->appendChild (array ( 'caption' => $document->textMerge ('-') )); $row->appendChild (array ( 'caption' => $data['text']['title'] )); $row->appendChild (array ( 'caption' => $document->textMerge ($price) )); $row->appendChild (array ( 'caption' => $document->textMerge ($product['quantity']) )); $row->appendChild (array ( 'caption' => $document->textMerge ($product['quantity'] * $price) )); $row->appendChild ('labels/action/remove') ->url (true, true, '_product-remove-' . $product['id']); } // each product // total $row = $mod->appendChild (); $row->appendChild ('sectionCart_listTotal', array ( 'rowspan' => 4 )); $row->appendChild (array ( 'caption' => $document->textMerge ($total) )); $mod->enabled = true; } // function setModule } // class eclMod_sectionCart_order //!eof:library/sectionCart/eclMod_sectionCart_order.php; //!file:library/sectionCart/order/eclApp_sectionCart_order.php; class eclApp_sectionCart_order { // class eclApp_sectionCart_order static function is_child ($me, $name) { // function is_child global $store; $data = $store->domainComplement->openById ($me->domainId, intval ($name)); if ($data and $data['mode'] == MODE_ORDER) return true; return false; } // function is_child static function get_menu_type ($me) { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper } // function constructor_helper static function dispatch ($document) { // function dispatch } // function dispatch } // class eclApp_sectionCart_order //!eof:library/sectionCart/order/eclApp_sectionCart_order.php; //!file:library/sectionFolder/create/eclApp_sectionFolder_create.php; class eclApp_sectionFolder_create { // class eclApp_sectionFolder_create static function is_child ($me, $name) { // function is_child if (count ($me->pathway) < 5 and $name == 'folder') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names if (count ($me->pathway) < 5) return array ('folder'); return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('sectionFolder_create_content'); $me->map = array ('section_preset'); } // function constructor_helper static function dispatch ($document) { // function dispatch } // function dispatch } // class eclApp_sectionFolder_create //!eof:library/sectionFolder/create/eclApp_sectionFolder_create.php; //!file:library/sectionFolder/eclApp_sectionFolder.php; class eclApp_sectionFolder { // class eclApp_sectionFolder static function constructor_helper ($me) { // function constructor_helper $me->map = array ('section', 'section_create'); } // function constructor_helper static function dispatch ($document) { // function dispatch $me = $document->application; if ($document->access (4)) { // admin $document->mod->editor->enable (); $pathway = $me->pathway; $pathway[] = '-new-section'; $document->mod->context->appendChild ('section_create_contextNew') ->url ($pathway); } // admin $document->mod->list = new eclMod_sectionFolder_list ($document); } // function dispatch static function remove ($me) { // function remove } // function remove } // class eclApp_sectionFolder //!eof:library/sectionFolder/eclApp_sectionFolder.php; //!file:library/sectionFolder/eclMod_sectionFolder_list.php; class eclMod_sectionFolder_list { // class eclMod_sectionFolder_list public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $me = $document->application; if (isset ($me->data['extras']['list'])) $mod->data = $me->data['extras']['list']; else $mod->data = $document->render->block ('modules/list'); $mod->data['name'] = 'section_' . $me->name; $row = $mod->appendChild (); foreach ($me->menuChildren ($document) as $child) { // each child $row->appendChild ($child->data) ->virtual ($child->access) ->set ('editable', $document->contentEditable) ->swapTitle () ->url ($child->pathway); } // each child if (!$row->children) return; if ($document->templateEditable and $document->access (4)) { // personalite reference $pathway = array_slice ($me->pathway, 1); array_unshift ($pathway, $document->domain->name, '-personalite', 'extras', 'list'); $mod->data['local']['personalite_url'] = $document->url ($pathway); $caption = $store->control->read ('modList_edit'); $mod->data['local']['personalite_caption'] = $caption['text']['caption']; } // reference $mod->enabled = true; } // function setModule } // class eclMod_sectionFolder_list //!eof:library/sectionFolder/eclMod_sectionFolder_list.php; //!file:library/sectionFormulary/create/eclApp_sectionFormulary_create.php; class eclApp_sectionFormulary_create { // class eclApp_sectionFormulary_create static function is_child ($me, $name) { // function is_child if ($name == 'formulary') return true; if ($name == 'contact') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names global $store; if ($store->domainContent->findMarker ($me->domainId, 4)) return array ('formulary'); return array ('contact', 'formulary'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('sectionFormulary_create_' . $me->name); $me->map = array ('section_preset'); } // function constructor_helper static function dispatch ($document) { // function dispatch } // function dispatch } // class eclApp_sectionFormulary_create //!eof:library/sectionFormulary/create/eclApp_sectionFormulary_create.php; //!file:library/sectionFormulary/done/eclApp_sectionFormulary_done.php; class eclApp_sectionFormulary_done { // class eclApp_sectionFormulary_done static function is_child ($me, $name) { // function is_child if ($name == '-done') return true; return false; } // function is_child static function get_menu_type ($me) { // function get_menu_type return 'section'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array ('-done'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; if ($store->domainContent->open ($me->domainId, '-' . $me->parent->id . '-done')) { // custom content $me->data = &$store->domainContent->open ($me->domainId, '-' . $me->parent->id . '-done'); $me->id = $me->data['id']; } // custom content else $me->data = $store->control->read ('sectionFormulary_done_content'); $me->access = 4; } // function constructor_helper static function dispatch ($document) { // function dispatch global $store; $me = $document->application; $view = $me->id ? 'custom' : 'default'; if ($document->access (4)) { // admin access // Restore to default message if ($view == 'custom' and $document->actions ('message', 'restore')) $view = self::action_restore ($document); // Edit custom message elseif ($view == 'custom' and $document->actions ('message', 'edit')) $view = self::action_edit ($document); // Edit default message elseif ($view == 'default' and $document->actions ('message', 'custom')) $view = self::action_custom ($document); // Create a custom message to save Wysiwyg edition elseif ($view == 'default' and $document->actions ('wysiwyg', 'save')) $view = self::action_wysiwyg_save ($document); if ($view == 'default' or $document->actions ('message', 'custom')) { // default tools // Context custom message $document->mod->context->appendChild ('sectionFormulary_done_custom') ->active ($document->actions ('message', 'custom')) ->url (true, true, '_message-custom'); } // default tools else { // custom tools // context edit $document->mod->context->appendChild ('sectionFormulary_done_edit') ->active ($document->actions ('message', 'edit')) ->url (true, true, '_message-edit'); // Versioning $store->domainExtras->versioning ($document); // context restore $document->mod->context->appendChild ('sectionFormulary_done_restore') ->url (true, true, '_message-restore'); } // custom tools if ($view != 'form') $document->mod->editor->enable (); } // admin access } // function dispatch static function action_wysiwyg_save ($document) { // function action_wysiwyg_save global $store; $me = $document->application; $data = $me->data; $data['name'] = 'm' . TIME; $data['mode'] = MODE_QUESTION; $data['parent_id'] = $me->parent->id; $me->id = $store->domainContent->insert ($me->domainId, $data); $me->data = &$store->domainContent->openById ($me->domainId, $me->id); return 'custom'; } // function action_wysiwyg_save static function action_custom ($document) { // function action_custom global $store; $me = $document->application; $formulary = $document->createFormulary ('sectionFormulary_done_edit', $store->control->read ('sectionFormulary_done_content')); $formulary->action = '_message-custom'; if ($formulary->command ('cancel')) { // cancel unset ($document->actions['message']); return 'default'; } // cancel if ($formulary->command ('save') and $formulary->save ()) { // save unset ($document->actions['message']); $data = $formulary->data; $data['name'] = 'm' . TIME; $data['mode'] = MODE_QUESTION; $data['parent_id'] = $me->parent->id; $me->id = $store->domainContent->insert ($me->domainId, $data); $me->data = $data; $store->domainExtras->createVersion ($me->domainId, $me->data, $document); $document->dataReplace ($me->data); return 'custom'; } // save $document->dataReplace ('sectionFormulary_done_custom'); $document->mod->formulary = $formulary; if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); $document->mod->languages->action = '_message-custom'; return 'form'; } // function action_custom static function action_edit ($document) { // function action_edit global $store; $me = $document->application; $formulary = $document->createFormulary ('sectionFormulary_done_edit', $me->data); $formulary->action = '_message-edit'; if ($formulary->command ('cancel')) { // cancel unset ($document->actions['message']); return 'custom'; } // cancel if ($formulary->command ('save') and $formulary->save ()) { // save unset ($document->actions['message']); $me->data = $formulary->data; $store->domainExtras->createVersion ($me->domainId, $me->data, $document); $document->dataReplace ($me->data); return 'custom'; } // save $document->dataReplace ('sectionFormulary_done_edit'); $document->mod->formulary = $formulary; if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); $document->mod->languages->action = '_message-edit'; return 'form'; } // function action_edit static function action_restore ($document) { // function action_restore global $store; $me = $document->application; unset ($document->actions['message']); $store->domainContent->delete ($me->domainId, $me->id); $store->domainFile->deletePrefixedFiles ($me->domainId, $me->data['name']); $store->domainExtras->deleteAllChildren ($me->domainId, $me->id); $document->dataReplace ('sectionFormulary_done_content'); $me->id = 0; return 'default'; } // function action_restore static function remove ($me) { // function remove global $store; if ($me->id) $store->domainContent->delete ($me->domainId, $me->id); $store->domainFile->deletePrefixedFiles ($me->domainId, $me->data['name']); } // function remove } // class eclApp_sectionFormulary_done //!eof:library/sectionFormulary/done/eclApp_sectionFormulary_done.php; //!file:library/sectionFormulary/eclApp_sectionFormulary.php; class eclApp_sectionFormulary { // class eclApp_sectionFormulary static function constructor_helper ($me) { // function constructor_helper $me->map = array ('sectionFormulary_received', 'sectionFormulary_removed', 'sectionFormulary_statistics', 'sectionFormulary_done', 'sectionFormulary_selectColumns', 'personaliteFields'); } // function constructor_helper static function dispatch ($document) { // function dispatch $me = $document->application; $view = true; if ($document->access (4)) { // admin access // edit fields if ($document->actions ('fields', 'edit') or !isset ($me->data['extras']['formulary'])) $view = self::action_edit_fields ($document); // context edit fields $document->mod->context->appendChild ('sectionFormulary_fields') ->url (true, true, '_fields-edit') ->active ($document->actions ('fields', 'edit') or !isset ($me->data['extras']['formulary'])); // security if ($document->actions ('security', 'edit')) $view = self::action_edit_security ($document); // context edit security $document->mod->context->appendChild ('sectionFormulary_security') ->url (true, true, '_security-edit') ->active ($document->actions ('security', 'edit')); } // admin access if (!$view) return; if (isset ($document->actions['review'][1])) $view = self::action_review ($document); elseif (isset ($me->data['extras']['formulary'])) $view = self::action_formulary ($document); if (!$view) return; if ($document->access (4)) $document->mod->editor->enable (); $document->mod->list = new eclMod_sectionFolder_list ($document); } // function dispatch static function action_edit_fields ($document) { // function action_edit_fields $me = $document->application; $formulary = $document->createFormulary ('sectionFormulary_fields', $me->data, 'editfields'); $formulary->action = '_fields-edit'; if ($formulary->command ('cancel')) { // cancel unset ($document->actions['fields']); return true; } // cancel if ($formulary->command ('save') and $formulary->save ()) { // save unset ($document->actions['fields']); $me->data = $formulary->data; return true; } // save $document->dataReplace ('sectionFormulary_fields'); $document->mod->formulary = $formulary; if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); return false; } // function action_edit_fields static function action_edit_security ($document) { // function action_edit_security $me = $document->application; $formulary = $document->createFormulary ('sectionFormulary_security', $me->data, 'editsecurity'); $formulary->action = '_security-edit'; if ($formulary->command ('cancel')) { // cancel unset ($document->actions['security']); return true; } // cancel if ($formulary->command ('save') and $formulary->save ()) { // save unset ($document->actions['security']); $me->data = $formulary->data; return true; } // save $document->dataReplace ('sectionFormulary_security'); $document->mod->formulary = $formulary; if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); return false; } // function action_edit_security static function action_formulary ($document) { // function action_formulary $me = $document->application; if (isset ($document->actions['review'][1]) and $token = $document->actions['review'][1] and isset ($document->session['form_' . $token])) $data = $document->session['form_' . $token]; elseif ($document->actions ('share', 'user', 'data', 'enable')) { // share user data $data = array ('share_user_data' => true); } // share user data elseif ($document->user->userId and !$document->received) { // user is connected $data = array (); foreach ($me->data['extras']['formulary'] as $field) { // each field if (isset ($field['share_user_data'])) { // share request $local = array ( 'alert' => 1, 'url' => $document->url (true, true, '_share-user-data-enable') ); $document->mod->humperstilshen->dialog ('personaliteFields_alertShareUserDataRequest', $local); break; } // share request } // each field } // user is connected else $data = array (); $formulary = $document->createFormulary ('sectionFormulary_formulary', $data, 'page0'); if ($formulary->command ('cancel')) { // cancel $formulary->data = array (); } // cancel if ($formulary->command ('save') and $formulary->save ()) { // save $token = md5 (TIME . session_id ()); $document->actions['review'] = array ('review', $token); $document->session['form_' . $token] = $formulary->data; if (isset ($document->application->data['flags']['form_review'])) return self::action_review ($document); return self::action_done ($document); } // save if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); $document->mod->formulary = $formulary; $document->mod->panel->main = array ('content', 'formulary', 'list'); return true; } // function action_formulary static function action_review ($document) { // function action_review $token = $document->actions['review'][1]; if (isset ($document->session['form_' . $token])) $data = $document->session['form_' . $token]; else return false; $formulary = $document->createFormulary ('sectionFormulary_review', $data, 'review'); if ($formulary->command ('previous')) return self::action_formulary ($document); if ($formulary->command ('save')) return self::action_done ($document); $formulary->action = '_review-' . $token; $document->mod->formulary = $formulary; $document->mod->panel->main = array ('content', 'formulary', 'list'); return false; } // function action_review static function action_done ($document) { // function action_done global $store; $me = $document->application; $token = $document->actions['review'][1]; $data = $document->session['form_' . $token]; $data['domain_id'] = $me->domainId; $data['mode'] = MODE_FORM; $data['parent_id'] = $me->id; $data['owner_id'] = $document->user->userId; $data['status'] = 720; $id = $store->domainExtras->insert ($me->domainId, $data); unset ($document->actions['review']); unset ($document->session['form_' . $token]); $message = $me->child ('-done'); $document->dataReplace ($message->data); if (!isset ($me->data['local']['mail']) or !INTEGRATION_SMTP_ENABLE) return false; $template = clone $document; $template->application = $me->child ('-received')->child ($id); $template->application->access = 0; $template->dispatch (); $template->data['flags']['modLayout_base'] = 'mail'; $template->charset = 'UTF-8'; $template->render (); $subject = $template->selectLanguage ($template->textMerge ($document->domain->data['text']['title'], ' -> ', $me->data['text']['caption'])); $mail = $document->createMail () ->subject ($subject[1]) ->to ($me->data['local']['mail']) ->contentHTML ($template->buffer); $errorMsg = $mail->send (); if ($errorMsg) $document->mod->humperstilshen->alert ($errorMsg); return false; } // function action_done static function remove ($me) { // function remove } // function remove } // class eclApp_sectionFormulary //!eof:library/sectionFormulary/eclApp_sectionFormulary.php; //!file:library/sectionFormulary/eclFilter_sectionFormulary_fields.php; class eclFilter_sectionFormulary_fields { // class eclFilter_sectionFormulary_fields static function create ($fieldName, $control, $formulary) { // function create $fields['children'] = self::getFields ($formulary->document->application); $formulary->insertControlChildren ($fields); } // function create static function save ($fieldName, $control, $formulary) { // function save $fields['children'] = self::getFields ($formulary->document->application); $formulary->insertControlChildren ($fields); } // function save static function getFields ($me) { // function getFields if (!isset ($me->data['extras']['formulary'])) return array (); $index = 0; $formulary = $me->data['extras']['formulary']; $sorted = array (); $fields = array (); foreach ($formulary as $name => $field) { // sort fields if (isset ($field[$index])) $sorted[$index][] = $name; else $sorted[100000][] = $name; } // sort fields ksort ($sorted); foreach ($sorted as $group) { // each group foreach ($group as $name) { // each field $field = $formulary[$name]; list ($filter) = explode ('_', $name, 2); if (!isset ($field['caption'])) continue; $flags = array ( 'field_name' => $name, 'filter' => 'personaliteFields_' . $filter ); if (isset ($field['type'])) $flags['type'] = $field['type']; $fields[] = array ( 'flags' => $flags, 'text' => array ('caption' => $field['caption']), 'local' => $field ); } // each field } // each group return $fields; } // function getFields } // class eclFilter_sectionFormulary_fields //!eof:library/sectionFormulary/eclFilter_sectionFormulary_fields.php; //!file:library/sectionFormulary/eclFilter_sectionFormulary_fieldsView.php; class eclFilter_sectionFormulary_fieldsView { // class eclFilter_sectionFormulary_fieldsView static function create ($fieldName, $control, $formulary) { // function create $me = $formulary->document->application; if ($me->applicationName == 'sectionFormulary_record') $me = $me->parent->parent; $fields['children'] = self::getFields ($me); $formulary->insertControlChildren ($fields); } // function create static function save ($fieldName, $control, $formulary) { // function save } // function save static function getFields ($me) { // function getFields if (!isset ($me->data['extras']['formulary'])) return array (); $fields = array (); foreach ($me->data['extras']['formulary'] as $name => $field) { // each field if (!isset ($field['caption'])) continue; list ($filter) = explode ('_', $name, 2); $flags = array ( 'field_name' => $name, 'filter' => 'personaliteFields_' . $filter, 'view' => true ); $fields[] = array ( 'flags' => $flags, 'text' => array ('caption' => $field['caption']), 'local' => $field ); } // each field return $fields; } // function getFields } // class eclFilter_sectionFormulary_fieldsView //!eof:library/sectionFormulary/eclFilter_sectionFormulary_fieldsView.php; //!file:library/sectionFormulary/eclMod_sectionFormulary.php; class eclMod_sectionFormulary { // class eclMod_sectionFormulary public $document; public $formulary; public function __construct ($document, $formulary) { // function __construct $this->document = $document; $this->formulary = $formulary; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $me = $document->application; $mod->children = $this->formulary->create (); // Procure o mdulo dentro da aplicao if (isset ($me->data['extras']['formulary'])) $mod->data = $me->data['extras']['formulary']; else { // from preset if (isset ($me->data['flags']['modFormulary_preset'])) $preset = $me->data['flags']['modFormulary_preset']; else $preset = 'edit'; $mod->data = $render->block ('modules/formulary_' . $preset); if (!$mod->data) $mod->data = $render->block ('modules/formulary'); } // from preset $mod->data['name'] = 'section_' . $me->name; if ($document->templateEditable and $document->access (4)) { // personalite reference $pathway = array_slice ($me->pathway, 1); array_unshift ($pathway, $document->domain->name, '-personalite', 'extras', 'formulary'); $mod->data['local']['personalite_url'] = $document->url ($pathway); $caption = $store->control->read ('modList_edit'); $mod->data['local']['personalite_caption'] = $caption['text']['caption']; } // reference $mod->enabled = true; } // function setModule } // class eclMod_sectionFormulary //!eof:library/sectionFormulary/eclMod_sectionFormulary.php; //!file:library/sectionFormulary/received/eclApp_sectionFormulary_received.php; class eclApp_sectionFormulary_received { // class eclApp_sectionFormulary_received static function is_child ($me, $name) { // function is_child if ($name == '-received') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'section'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array ('-received'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->access = 4; $me->data = $store->control->read ('sectionFormulary_received_content'); $me->map = array ('sectionFormulary_record'); $children = $store->domainExtras->children ($me->domainId, MODE_FORM, $me->parent->id); $num = 0; foreach ($children as $data) { // each children if (!$data['status'] or $data['status'] == 720) $num++; } // each children $me->data['num_children'] = $num; } // function constructor_helper static function dispatch ($document) { // function dispatch global $store; $me = $document->application; $view = true; if (isset ($document->actions['selectcolumns'])) $view = self::action_selectcolumns ($document); $document->mod->context->appendChild ('sectionFormulary_received_selectColumns') ->active (isset ($document->actions['selectcolumns'])) ->url (true, true, '_selectcolumns'); if (!$view) return; $document->mod->list = new eclMod_sectionFormulary_received_list ($document); } // function dispatch static function action_selectcolumns ($document) { // function action_selectcolumns $formulary = $document->createFormulary ('sectionFormulary_received_selectColumns', array (), 'selectcolumns'); $formulary->action = '_selectcolumns'; if ($formulary->command ('cancel')) { // cancel unset ($document->actions['selectcolumns']); return true; } // cancel if ($formulary->command ('save') and $formulary->save ()) { // save unset ($document->actions['selectcolumns']); return true; } // save $document->mod->formulary = $formulary; $document->dataReplace ('sectionFormulary_received_selectColumns'); return false; } // function action_selectcolumns } // class eclApp_sectionFormulary_received //!eof:library/sectionFormulary/received/eclApp_sectionFormulary_received.php; //!file:library/sectionFormulary/received/eclFilter_sectionFormulary_received_selectColumns.php; class eclFilter_sectionFormulary_received_selectColumns { // class eclFilter_sectionFormulary_received_selectColumns static function create ($fieldName, $control, $formulary) { // function create global $store; $document = $formulary->document; $me = $document->application->parent; $control['name'] = $fieldName; $control['type'] = 'manager'; $item = $formulary->appendChild ($control); // references $pathway = $me->pathway; $pathway[] = '-columns'; $item->data['url_add'] = $document->url ($pathway); $item->data['move-enable'] = 1; $item->data['remove-enable'] = 1; $item->data['edit-enable'] = 0; if (!isset ($me->data['extras']['formulary'])) return; $sorted = array (); foreach ($me->data['extras']['formulary'] as $name => $field) { // each field switch ($field['filter']) { // switch filter case 'checkbox': case 'created': case 'mail': case 'radio': case 'select': case 'text': if (isset ($field['list_index'])) $sorted[$field['list_index']][] = array ($name, $field); } // switch filter } // each field ksort ($sorted); $buffer = ''; foreach ($sorted as $group) { // each group foreach ($group as $column) { // each column list ($name, $field) = $column; $buffer .= $name . CRLF; // $pathway = $me->pathway; // $pathway[] = '-columns'; // $pathway[] = $name; $local = array ( 'value' => $name, 'caption' => $field['caption'], // 'url' => $document->url ($pathway) ); $item->appendChild ($local); } // each column } // each group $item->data['serialized'] = $buffer; } // function create static function save ($fieldName, $control, $formulary) { // function save $me = $formulary->document->application->parent; if (!isset ($me->data['extras']['formulary'])) return; if (!isset ($formulary->received[$fieldName . '_serialized'])) return $formulary->setRequiredMsg ($fieldName, $control); foreach ($me->data['extras']['formulary'] as &$field) { // clear each field unset ($field['list_index']); } // clear each field unset ($field); $serialized = $formulary->received[$fieldName . '_serialized']; $index = 0; foreach (explode (LF, $serialized) as $name) { // each line $index++; $name = trim ($name); if (isset ($me->data['extras']['formulary'][$name])) $me->data['extras']['formulary'][$name]['list_index'] = $index; } // each line } // function save } // class eclFilter_sectionFormulary_received_selectColumns //!eof:library/sectionFormulary/received/eclFilter_sectionFormulary_received_selectColumns.php; //!file:library/sectionFormulary/received/eclMod_sectionFormulary_received_list.php; class eclMod_sectionFormulary_received_list { // class eclMod_sectionFormulary_received_list public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $me = $document->application; $mod->data = $store->control->read ('sectionFormulary_received_list'); // Conditions if (!isset ($me->parent->data['extras']['formulary'])) return; $from = &$me->parent->data['extras']['formulary']; // Get listable fields $sorted = array (); foreach ($from as $name => $field) { // sort fields if (isset ($field['list_index'])) $sorted[$field['list_index']] = $name; } // sort fields ksort ($sorted); if (!$sorted) { // append created column $from['created'] = $store->control->read ('personaliteFields_created_preset'); $sorted[] = 'created'; } // append created column // Table headers $row = $mod->appendChild (); foreach ($sorted as $name) { // each field $row->appendChild ($from[$name]); } // each field // list received forms $children = $store->domainExtras->children ($me->domainId, MODE_FORM, $me->parent->id); foreach ($children as $data) { // each child if ($data['status'] != 0 and ($data['status'] < 720 or $data['status'] > 729)) continue; $pathway = $me->pathway; $pathway[] = $data['id']; $url = $document->url ($pathway); $row = $mod->appendChild (); foreach ($sorted as $name) { // each column list ($filter) = explode ('_', $name, 2); if (!preg_match ('/[a-z]+/', $filter)) { // error $row->appendChild (); continue; } // error $class = 'eclFilter_personaliteFields_' . $filter; $local = $class::column ($document, $data, $name, $from[$name], $url); if (!$local) continue; $row->appendChild ($local); } // each column } // each child $mod->enabled = true; } // function setModule } // class eclMod_sectionFormulary_received_list //!eof:library/sectionFormulary/received/eclMod_sectionFormulary_received_list.php; //!file:library/sectionFormulary/record/eclApp_sectionFormulary_record.php; class eclApp_sectionFormulary_record { // class eclApp_sectionFormulary_record static function is_child ($me, $name) { // function is_child global $store; if ($name[0] == '-') return false; $data = $store->domainExtras->openById ($me->domainId, intval ($name)); if ($data and $data['mode'] == MODE_FORM and $data['parent_id'] == $me->parent->id) return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'post'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names global $store; return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = &$store->domainExtras->openById ($me->domainId, intval ($me->name)); $me->id = $me->data['id']; } // function constructor_helper static function dispatch ($document) { // function dispatch global $store; $me = $document->application; if ($me->parent->name == '-received') $me->data['status'] = 721; if ($document->actions ('record', 'remove')) return self::action_remove ($document); // context remove $document->mod->context->appendChild ('sectionFormulary_record_remove') ->url (true, true, '_record-remove'); $data = $store->control->read ('sectionFormulary_record_content'); $document->dataMerge ($data); $formulary = $document->createFormulary ('sectionFormulary_view', $me->data, 'form'); $document->mod->formulary = $formulary; } // function dispatch static function action_remove ($document) { // function action_remove $me = $document->application; if ($me->parent->name == '-received') $me->data['status'] = 730; else $me->remove (); $parent = $me->parent; $parent->reset (); $document->application = $parent; $document->application->dispatch ($document); $document->reload = $document->url ($parent->pathway); return; } // function action_remove static function remove ($me) { // function remove global $store; $store->domainExtras->delete ($me->domainId, $me->id); $store->domainFile->deletePrefixedFiles ($me->domainId, $me->name); } // function remove } // class eclApp_sectionFormulary_record //!eof:library/sectionFormulary/record/eclApp_sectionFormulary_record.php; //!file:library/sectionFormulary/removed/eclApp_sectionFormulary_removed.php; class eclApp_sectionFormulary_removed { // class eclApp_sectionFormulary_removed static function is_child ($me, $name) { // function is_child if ($name == '-removed') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'section'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names global $store; $children = $store->domainExtras->children ($me->domainId, MODE_FORM, $me->parent->id); foreach ($children as $data) { // each children if ($data['status'] >= 730) return array ('-removed'); } // each data return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->access = 4; $me->data = $store->control->read ('sectionFormulary_removed_content'); $me->map = array ('sectionFormulary_record'); } // function constructor_helper static function dispatch ($document) { // function dispatch global $store; $me = $document->application; $children = $store->domainExtras->children ($me->domainId, MODE_FORM, $me->parent->id); $document->mod->list = new eclMod_sectionFormulary_removed_list ($document); } // function dispatch } // class eclApp_sectionFormulary_removed //!eof:library/sectionFormulary/removed/eclApp_sectionFormulary_removed.php; //!file:library/sectionFormulary/removed/eclMod_sectionFormulary_removed_list.php; class eclMod_sectionFormulary_removed_list { // class eclMod_sectionFormulary_removed_list public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $me = $document->application; $mod->data = $store->control->read ('sectionFormulary_received_list'); $fieldsList = array ( 'created' => 'created' ); $children = $store->domainExtras->children ($me->domainId, MODE_FORM, $me->parent->id); foreach ($children as $data) { // each child if ($data['status'] < 730 or $data['status'] > 739) continue; $pathway = $me->pathway; $pathway[] = $data['id']; $row = $mod->appendChild (); foreach ($fieldsList as $fieldName => $fieldType) { // each field switch ($fieldType) { // switch type case 'created': $local['caption'] = $document->textMerge (date ('d-m-Y h:i', $data['created'])); $row->appendChild ($local) ->url ($pathway); break; } // switch type } // each field } // each child $mod->enabled = true; } // function setModule } // class eclMod_sectionFormulary_removed_list //!eof:library/sectionFormulary/removed/eclMod_sectionFormulary_removed_list.php; //!file:library/sectionFormulary/selectColumns/eclApp_sectionFormulary_selectColumns.php; class eclApp_sectionFormulary_selectColumns { // class eclApp_sectionFormulary_selectColumns static function is_child ($me, $name) { // function is_child if ($name == '-columns') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names () { // function get_children_names return array ('-columns'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('sectionFormulary_selectColumns_content'); $me->isDomain = true; } // function constructor_helper static function dispatch ($document) { // function dispatch $document->mod->list = new eclMod_sectionFormulary_selectColumns_list ($document); } // function dispatch } // class eclApp_sectionFormulary_selectColumns //!eof:library/sectionFormulary/selectColumns/eclApp_sectionFormulary_selectColumns.php; //!file:library/sectionFormulary/selectColumns/eclMod_sectionFormulary_selectColumns_list.php; class eclMod_sectionFormulary_selectColumns_list { // class eclMod_sectionFormulary_selectColumns_list public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $me = $document->application->parent; $mod->data = $store->control->read ('modules/list'); if (!isset ($me->data['extras']['formulary'])) return; foreach ($me->data['extras']['formulary'] as $name => $field) { // each field if (!isset ($field['filter'])) continue; switch ($field['filter']) { // switch filter case 'address': case 'checkbox': case 'created': case 'mail': case 'phone': case 'radio': case 'select': case 'text': case 'user': case 'status': $mod->appendChild ($field, array ('name' => $name)); } // switch filter } // each field $mod->enabled = true; } // function setModule } // class eclMod_sectionFormulary_selectColumns_list //!eof:library/sectionFormulary/selectColumns/eclMod_sectionFormulary_selectColumns_list.php; //!file:library/sectionFormulary/statistics/eclApp_sectionFormulary_statistics.php; class eclApp_sectionFormulary_statistics { // class eclApp_sectionFormulary_statistics static function is_child ($me, $name) { // function is_child if ($name == '-statistics') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'section'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names if (!isset ($me->data['extras']['formulary'])) return array (); foreach ($me->data['extras']['formulary'] as $name => $field) { // each field list ($filter) = explode ('_', $name); if ($filter == 'radio' or $filter == 'checkbox' or $filter == 'select') return array ('-statistics'); } // each field return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->access = 4; $me->data = $store->control->read ('sectionFormulary_statistics_content'); } // function constructor_helper static function dispatch ($document) { // function dispatch global $store; $document->mod->list = new eclMod_sectionFormulary_statistics_list ($document); } // function dispatch } // class eclApp_sectionFormulary_statistics //!eof:library/sectionFormulary/statistics/eclApp_sectionFormulary_statistics.php; //!file:library/sectionFormulary/statistics/eclMod_sectionFormulary_statistics_list.php; class eclMod_sectionFormulary_statistics_list { // class eclMod_sectionFormulary_statistics_list public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $me = $document->application->parent; $mod->data = $store->control->read ('sectionFormulary_statistics_list'); if (!isset ($me->data['extras']['formulary'])) return; $children = array (); foreach ($store->domainContent->children ($me->domainId, MODE_FORM, $me->id) as $child) { // each child if ($child['marker'] == 255) continue; $children[] = $child; } // each child if (!$children) return; $total = count ($children); foreach ($me->data['extras']['formulary'] as $fieldName => $field) { // each field switch ($field['filter']) { // switch filter case 'checkbox': $counter = 0; foreach ($children as $child) { // each child if (isset ($child['local']['form'][$fieldName]['value']) and $child['local']['form'][$fieldName]['value']) $counter++; } // each child $item = $mod->appendChild (); $item->data['caption'] = $field['caption']; $item->data['units'] = strval ($counter); $item->data['percent'] = strval (round ( ($counter / $total) * 100, 1)); break; case 'select': case 'radio': $values = array (); foreach ($children as $child) { // each child if (isset ($child['local']['form'][$fieldName]['value'])) { // set value if (isset ($values[$child['local']['form'][$fieldName]['value']])) $values[$child['local']['form'][$fieldName]['value']]++; else $values[$child['local']['form'][$fieldName]['value']] = 1; } // set value } // each child $select = $mod->appendChild ($field); $select->data['header'] = 1; foreach ($field['options'] as $value => $caption) { // each option $option = $select->appendChild (); $option->data['caption'] = $caption; if (isset ($values[$value])) { // set values $option->data['units'] = strval ($values[$value]); $option->data['percent'] = strval (round ( ($values[$value] / $total) * 100, 1)); } // set values else { // empty $option->data['units'] = '0'; $option->data['percent'] = '0'; } // empty } // each option } // switch filter } // each field $mod->enabled = true; } // function setModule } // class eclMod_sectionFormulary_statistics_list //!eof:library/sectionFormulary/statistics/eclMod_sectionFormulary_statistics_list.php; //!file:library/sectionGlossary/create/eclApp_sectionGlossary_create.php; class eclApp_sectionGlossary_create { // class eclApp_sectionGlossary_create static function is_child ($me, $name) { // function is_child global $store; if ($me->parent->access) return false; if (!$store->domainContent->findMarker ($me->domainId, 1) and $name == 'glossary') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names ($parent) { // function get_children_names global $store; if ($parent->parent->access) return array (); if (!$store->domainContent->findMarker ($parent->domainId, 1)) return array ('glossary'); return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('sectionGlossary_create_content'); $me->map = array ('section_preset'); } // function constructor_helper static function dispatch ($document) { // function dispatch } // function dispatch } // class eclApp_sectionGlossary_create //!eof:library/sectionGlossary/create/eclApp_sectionGlossary_create.php; //!file:library/sectionGlossary/eclApp_sectionGlossary.php; class eclApp_sectionGlossary { // class eclApp_sectionGlossary static function constructor_helper ($me) { // function constructor_helper $me->map = array ('domainGlossary_keyword'); } // function constructor_helper static function dispatch ($document) { // function dispatch if ($document->access (4)) $document->mod->editor->enable (); $document->mod->list = new eclMod_domainGlossary_list ($document); } // function dispatch static function remove ($me) { // function remove global $store; $data = &$store->domainContent->open ($me->domainId, '-register'); unset ($data['links']['sectionGlossary']); } // function remove } // class eclApp_sectionGlossary //!eof:library/sectionGlossary/eclApp_sectionGlossary.php; //!file:library/sectionInfo/create/eclApp_sectionInfo_create.php; class eclApp_sectionInfo_create { // class eclApp_sectionInfo_create static function is_child ($me, $name) { // function is_child global $store; if ($me->parent->access) return false; if (!$store->domainContent->findMarker ($me->domainId, 6) and $name == 'info') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names ($parent) { // function get_children_names global $store; if ($parent->parent->access) return array (); if (!$store->domainContent->findMarker ($parent->domainId, 6)) return array ('info'); return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('sectionInfo_create_content'); $me->map = array ('section_preset'); } // function constructor_helper } // class eclApp_sectionInfo_create //!eof:library/sectionInfo/create/eclApp_sectionInfo_create.php; //!file:library/sectionInfo/eclApp_sectionInfo.php; class eclApp_sectionInfo { // class eclApp_sectionInfo static function constructor_helper ($me) { // function constructor_helper } // function constructor_helper static function dispatch ($document) { // function dispatch if ($document->access (4)) $document->mod->editor->enable (); $document->mod->formulary = $document->createFormulary ('domainInfo_view', $document->domain->data); $document->mod->list = new eclMod_domainInfo_listAdministrators ($document); } // function dispatch static function remove ($me) { // function remove } // function remove } // class eclApp_sectionInfo //!eof:library/sectionInfo/eclApp_sectionInfo.php; //!file:library/sectionMenu/create/eclApp_sectionMenu_create.php; class eclApp_sectionMenu_create { // class eclApp_sectionMenu_create static function is_child ($me, $name) { // function is_child if (count ($me->pathway) < 3 and $name == 'menu') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names if (count ($me->pathway) < 3) return array ('menu'); return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('sectionMenu_create_menu'); $me->map = array ('section_preset'); } // function constructor_helper static function dispatch ($document) { // function dispatch } // function dispatch } // class eclApp_sectionMenu_create //!eof:library/sectionMenu/create/eclApp_sectionMenu_create.php; //!file:library/sectionMenu/eclApp_sectionMenu.php; class eclApp_sectionMenu { // class eclApp_sectionMenu static function constructor_helper ($me) { // function constructor_helper $me->map = array ('section', 'section_create'); } // function constructor_helper static function dispatch ($document) { // function dispatch $me = $document->application; if ($document->access (4)) { // admin $pathway = $me->pathway; $pathway[] = '-new-section'; $document->mod->context->appendChild ('section_create_contextNew') ->url ($pathway); } // admin $document->mod->list = new eclMod_sectionMenu_list ($document); } // function dispatch static function remove ($me) { // function remove } // function remove } // class eclApp_sectionMenu //!eof:library/sectionMenu/eclApp_sectionMenu.php; //!file:library/sectionMenu/eclMod_sectionMenu_list.php; class eclMod_sectionMenu_list { // class eclMod_sectionMenu_list public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $me = $document->application; if (isset ($me->data['extras']['list'])) $mod->data = $me->data['extras']['list']; else $mod->data = $document->render->block ('modules/list'); $mod->data['name'] = 'section_' . $me->name; $row = $mod->appendChild (); foreach ($me->menuChildren ($document) as $child) { // each child $row->appendChild ($child->data) ->virtual ($child->access) ->set ('editable', $document->contentEditable) ->swapTitle () ->url ($child->pathway); } // each child if (!$row->children) return; if ($document->templateEditable and $document->access (4)) { // personalite reference $pathway = array ($document->domain->name, '-dialog', 'section_list_menu_' . $me->name); $mod->data['local']['personalite_url'] = $document->url ($pathway); $caption = $store->control->read ('modList_edit'); $mod->data['local']['personalite_caption'] = $caption['text']['caption']; } // reference $mod->enabled = true; } // function setModule } // class eclMod_sectionMenu_list //!eof:library/sectionMenu/eclMod_sectionMenu_list.php; //!file:library/sectionPrivacyPolicy/create/eclApp_sectionPrivacyPolicy_create.php; class eclApp_sectionPrivacyPolicy_create { // class eclApp_sectionPrivacyPolicy_create static function is_child ($me, $name) { // function is_child global $store; if (!$store->domainContent->findMarker ($me->domainId, 7) and $name == 'privacypolicy') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names global $store; $domain = $me; while (!$domain->isDomain and $domain = $domain->parent); if ($domain->name != SYSTEM_DEFAULT_DOMAIN_NAME) return array (); if (!$store->domainContent->findMarker ($me->domainId, 7)) return array ('privacypolicy'); return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('sectionPrivacyPolicy_create_content'); $me->map = array ('section_preset'); } // function constructor_helper static function dispatch ($document) { // function dispatch } // function dispatch } // class eclApp_sectionPrivacyPolicy_create //!eof:library/sectionPrivacyPolicy/create/eclApp_sectionPrivacyPolicy_create.php; //!file:library/sectionPrivacyPolicy/eclApp_sectionPrivacyPolicy.php; class eclApp_sectionPrivacyPolicy { // class eclApp_sectionPrivacyPolicy static function constructor_helper ($me) { // function constructor_helper } // function constructor_helper static function dispatch ($document) { // function dispatch if ($document->access (4)) $document->mod->editor->enable (); } // function dispatch static function remove ($me) { // function remove } // function remove } // class eclApp_sectionPrivacyPolicy //!eof:library/sectionPrivacyPolicy/eclApp_sectionPrivacyPolicy.php; //!file:library/sectionRedirect/create/eclApp_sectionRedirect_create.php; class eclApp_sectionRedirect_create { // class eclApp_sectionRedirect_create static function is_child ($me, $name) { // function is_child global $store; if ($name == 'redirect') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names global $store; return array ('redirect'); return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('sectionRedirect_create_content'); $me->map = array ('section_preset'); } // function constructor_helper static function dispatch ($document) { // function dispatch } // function dispatch } // class eclApp_sectionRedirect_create //!eof:library/sectionRedirect/create/eclApp_sectionRedirect_create.php; //!file:library/sectionRedirect/eclApp_sectionRedirect.php; class eclApp_sectionRedirect { // class eclApp_sectionRedirect static function constructor_helper ($me) { // function constructor_helper $me->data['hits']++; $me->access = 0; } // function constructor_helper static function dispatch ($document) { // function dispatch global $io; if ($document->access (4)) { // admin $document->dataMerge ('sectionRedirect_content'); return; } // admin $me = $document->application; if (!isset ($me->data['local']['url']) or !$me->data['local']['url']) return; $me->data['value']++; $document->reload = $me->data['local']['url']; $io->log->silent = true; } // function dispatch static function remove ($me) { // function remove } // function remove } // class eclApp_sectionRedirect //!eof:library/sectionRedirect/eclApp_sectionRedirect.php; //!file:library/sectionSearch/create/eclApp_sectionSearch_create.php; class eclApp_sectionSearch_create { // class eclApp_sectionSearch_create static function is_child ($me, $name) { // function is_child global $store; if ($me->parent->access) return false; if (!$store->domainContent->findMarker ($me->domainId, 3) and $name == 'search') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names ($parent) { // function get_children_names global $store; if ($parent->parent->access) return array (); if (!$store->domainContent->findMarker ($parent->domainId, 3)) return array ('search'); return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('sectionSearch_create_content'); $me->map = array ('section_preset'); } // function constructor_helper static function dispatch ($document) { // function dispatch } // function dispatch } // class eclApp_sectionSearch_create //!eof:library/sectionSearch/create/eclApp_sectionSearch_create.php; //!file:library/sectionSearch/eclApp_sectionSearch.php; class eclApp_sectionSearch { // class eclApp_sectionSearch static function constructor_helper ($me) { // function constructor_helper } // function constructor_helper static function dispatch ($document) { // function dispatch if ($document->access (4)) $document->mod->editor->enable (); $document->mod->panel->main = array ('content', 'formulary', 'list'); $document->mod->formulary = new eclMod_domainSearch_formulary ($document); $document->mod->list = new eclMod_domainSearch_list ($document); } // function dispatch static function remove ($me) { // function remove } // function remove } // class eclApp_sectionSearch //!eof:library/sectionSearch/eclApp_sectionSearch.php; //!file:library/sectionSubdomains/create/eclApp_sectionSubdomains_create.php; class eclApp_sectionSubdomains_create { // class eclApp_sectionSubdomains_create static function is_child ($me, $name) { // function is_child global $store; if (!$store->domainContent->findMarker ($me->domainId, 91) and $name == 'subdomains') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names global $store; $domain = $me; while (!$domain->isDomain and $domain = $domain->parent); if ($domain->name != SYSTEM_DEFAULT_DOMAIN_NAME) return array (); if (!$store->domainContent->findMarker ($me->domainId, 91)) return array ('subdomains'); return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('sectionSubdomains_create_content'); $me->map = array ('section_preset'); } // function constructor_helper static function dispatch ($document) { // function dispatch } // function dispatch } // class eclApp_sectionSubdomains_create //!eof:library/sectionSubdomains/create/eclApp_sectionSubdomains_create.php; //!file:library/sectionSubdomains/eclApp_sectionSubdomains.php; class eclApp_sectionSubdomains { // class eclApp_sectionSubdomains static function constructor_helper ($me) { // function constructor_helper } // function constructor_helper static function dispatch ($document) { // function dispatch if ($document->access (4)) $document->mod->editor->enable (); $document->mod->list = new eclMod_sectionSubdomains_list ($document); } // function dispatch static function remove ($me) { // function remove } // function remove } // class eclApp_sectionSubdomains //!eof:library/sectionSubdomains/eclApp_sectionSubdomains.php; //!file:library/sectionSubdomains/eclMod_sectionSubdomains_list.php; class eclMod_sectionSubdomains_list { // class eclMod_sectionSubdomains_list public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $me = $document->application; $row = $mod->appendChild (); foreach ($store->domain->childrenNames () as $name) { // each domain $domainId = $store->domain->getId ($name); $status = $store->domain->getStatus ($name); if ($status != 2) continue; $data = $store->domainContent->open ($domainId, '-register'); $row->appendChild ($data) ->swapTitle () ->url (array ($name)); } // each domain if (!$row->children) return; if (isset ($me->data['extras']['list'])) $mod->data = $me->data['extras']['list']; else $mod->data = $document->render->block ('modules/list'); $mod->data['name'] = 'section_' . $me->name; if ($document->templateEditable and $document->access (4)) { // personalite reference $pathway = array_slice ($me->pathway, 1); array_unshift ($pathway, $document->domain->name, '-personalite', 'extras', 'list'); $mod->data['local']['personalite_url'] = $document->url ($pathway); $caption = $store->control->read ('modList_edit'); $mod->data['local']['personalite_caption'] = $caption['text']['caption']; } // reference $mod->enabled = true; } // function setModule } // class eclMod_sectionSubdomains_list //!eof:library/sectionSubdomains/eclMod_sectionSubdomains_list.php; //!file:library/sectionTeam/create/eclApp_sectionTeam_create.php; class eclApp_sectionTeam_create { // class eclApp_sectionTeam_create static function is_child ($me, $name) { // function is_child global $store; if (!$store->domainContent->findMarker ($me->domainId, 30) and $name == 'team') return true; if (!$store->domainContent->findMarker ($me->domainId, 31) and $name == 'partners') return true; if (!$store->domainContent->findMarker ($me->domainId, 32) and $name == 'students') return true; if (!$store->domainContent->findMarker ($me->domainId, 33) and $name == 'subscriptions') return true; if (!$store->domainContent->findMarker ($me->domainId, 34) and $name == 'suppliers') return true; if (!$store->domainContent->findMarker ($me->domainId, 35) and $name == 'clients') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names global $store; $names = array (); if (!$store->domainContent->findMarker ($me->domainId, 30)) $names[] = 'team'; if (!$store->domainContent->findMarker ($me->domainId, 31)) $names[] = 'partners'; if (!$store->domainContent->findMarker ($me->domainId, 32)) $names[] = 'students'; if (!$store->domainContent->findMarker ($me->domainId, 33)) $names[] = 'subscriptions'; if (!$store->domainContent->findMarker ($me->domainId, 34)) $names[] = 'suppliers'; if (!$store->domainContent->findMarker ($me->domainId, 35)) $names[] = 'clients'; return $names; } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('sectionTeam_create_' . $me->name); $me->map = array ('section_preset'); } // function constructor_helper static function dispatch ($document) { // function dispatch } // function dispatch } // class eclApp_sectionTeam_create //!eof:library/sectionTeam/create/eclApp_sectionTeam_create.php; //!file:library/sectionTeam/eclApp_sectionTeam.php; class eclApp_sectionTeam { // class eclApp_sectionTeam static function constructor_helper ($me) { // function constructor_helper $me->map = array ('sectionTeam_group', 'sectionTeam_group_new', 'sectionTeam_member', 'sectionTeam_member_import', 'sectionTeam_member_inactive', 'sectionTeam_member_new'); } // function constructor_helper static function dispatch ($document) { // function dispatch if ($document->access (4)) $document->mod->editor->enable (); $document->mod->panel->main = array ('content', 'listmembers', 'listgroups'); $document->mod->listmembers = new eclMod_sectionTeam_listAllMembers ($document); $document->mod->listgroups = new eclMod_sectionTeam_listAllGroups ($document); } // function dispatch static function remove ($me) { // function remove } // function remove } // class eclApp_sectionTeam //!eof:library/sectionTeam/eclApp_sectionTeam.php; //!file:library/sectionTeam/eclMod_sectionTeam_listAllGroups.php; class eclMod_sectionTeam_listAllGroups { // class eclMod_sectionTeam_listAllGroups public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $me = $document->application; $marker = $me->data['marker']; $mod->data = array_replace_recursive ( $store->control->read ('modules/list_card'), $store->control->read ('sectionTeam_listAllGroups') ); $row = $mod->appendChild (); $sectors = $store->domainContent->children ($me->domainId, MODE_GROUP, 0); foreach ($sectors as $sector) { // each sector if ($sector['marker'] != $marker) continue; $pathway = $me->pathway; $pathway[] = $sector['name']; $row->appendChild ($sector) ->url ($pathway); } // each sector if ($document->access (4)) { // admin access if ($row->children) $row = $mod->appendChild (); $pathway = $me->pathway; $pathway[] = '-new-group'; $row->appendChild ('sectionTeam_group_new') ->url ($pathway); } // admin access if ($row->children) $mod->enabled = true; } // function setModule } // class eclMod_sectionTeam_listAllGroups //!eof:library/sectionTeam/eclMod_sectionTeam_listAllGroups.php; //!file:library/sectionTeam/eclMod_sectionTeam_listAllMembers.php; class eclMod_sectionTeam_listAllMembers { // class eclMod_sectionTeam_listAllMembers public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $me = $document->application; $marker = $me->data['marker']; if ($marker == 30) $mod->data = $store->control->read ('sectionTeam_listAllMembers'); elseif ($marker == 31) $mod->data = $store->control->read ('sectionTeam_listAllPartners'); elseif ($marker == 32) $mod->data = $store->control->read ('sectionTeam_listAllStudents'); elseif ($marker == 33) $mod->data = $store->control->read ('sectionTeam_listAllSubscriptions'); elseif ($marker == 34) $mod->data = $store->control->read ('sectionTeam_listAllSuppliers'); elseif ($marker == 35) $mod->data = $store->control->read ('sectionTeam_listAllClients'); $mod->data = array_replace_recursive ($store->control->read ('modules/list_card'), $mod->data); $where = array ( 'domain_id' => $me->domainId, 'mode' => MODE_SUBSCRIPTION, 'marker' => $marker, ); $members = $store->domainContent->search ($where, 255, 0, 0, 'name', 'desc'); $row = $mod->appendChild (); foreach ($members as $member) { // each member if ($member['access'] > 4) { // inactive $inactive = true; continue; } // inactive $pathway = $me->pathway; $pathway[] = $member['name']; $row->appendChild ($member) ->swapTitle () ->url ($pathway) ->popUpOpen (); } // each member if ($document->access (4)) { // add new member if ($row->children) $row = $mod->appendChild (); // inactive if (isset ($inactive)) { // inactive member $pathway = $me->pathway; $pathway[] = '-inactive-member'; $row->appendChild ('sectionTeam_member_inactive') ->url ($pathway) ->popUpOpen (); } // inactive member // new $pathway = $me->pathway; $pathway[] = '-new-member'; $row->appendChild ('sectionTeam_member_new') ->url ($pathway) ->popUpOpen (); // import existing profile $pathway = $me->pathway; $pathway[] = '-import-profile'; $row->appendChild ('sectionTeam_member_import') ->url ($pathway) ->popUpOpen (); } // add new member if ($row->children) $mod->enabled = true; } // function setModule } // class eclMod_sectionTeam_listAllMembers //!eof:library/sectionTeam/eclMod_sectionTeam_listAllMembers.php; //!file:library/sectionTeam/group/eclApp_sectionTeam_group.php; class eclApp_sectionTeam_group { // class eclApp_sectionTeam_group static function is_child ($me, $name) { // function is_child global $store; $data = $store->domainContent->openChild ($me->domainId, MODE_GROUP, 0, $name); if ($data) return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'post'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names global $store; return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = &$store->domainContent->open ($me->domainId, $me->name); $me->id = $me->data['id']; $me->access = 4; } // function constructor_helper static function dispatch ($document) { // function dispatch $view = true; // Action remove if ($document->actions ('group', 'remove')) return self::action_remove ($document); // action edit if ($document->actions ('group', 'edit')) $view = self::action_edit ($document); // context edit $document->mod->context->appendChild ('sectionTeam_group_edit') ->active ($document->actions ('group', 'edit')) ->url (true, true, '_group-edit'); // Context remove $document->mod->context->appendChild ('sectionTeam_group_remove') ->url (true, true, '_group-remove') ->confirm ('sectionTeam_group_removeConfirm'); if ($view) { // view $document->mod->editor->enable (); $document->mod->list = new eclMod_sectionTeam_group_listMembers ($document); } // view } // function dispatch static function action_edit ($document) { // function action_edit $me = $document->application; $formulary = $document->createFormulary ('sectionTeam_group_edit', $me->data, 'group_edit'); $formulary->action = '_group-edit'; if ($formulary->command ('cancel')) { // cancel unset ($document->actions['group']); return true; } // cancel if ($formulary->command ('save') and $formulary->save ()) { // save unset ($document->actions['group']); $me->data = $formulary->data; $document->dataReplace ($me->data); return true; } // save $document->mod->formulary = $formulary; if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); return false; } // function action_edit static function action_remove ($document) { // function action_remove global $store; $me = $document->application; unset ($document->actions['group']); $parent = $me->parent; $store->domainContent->delete ($me->domainId, $me->id); $store->domainFile->deletePrefixedFiles ($me->domainId, $me->name); $parent->reset (); // reindex brothers $store->domainContent->childrenReindex ($parent->domainId, MODE_group, $parent->id); $document->application = $parent; $document->reload = $document->url (); $document->application->dispatch ($document); } // function action_remove static function remove ($me) { // function remove global $store; /* * Do not remove by parent */ } // function remove } // class eclApp_sectionTeam_group //!eof:library/sectionTeam/group/eclApp_sectionTeam_group.php; //!file:library/sectionTeam/group/eclApp_sectionTeam_group_new.php; class eclApp_sectionTeam_group_new { // class eclApp_sectionTeam_group_new static function is_child ($me, $name) { // function is_child if ($name == '-new-group') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'section'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array ('-new-group'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->access = 4; $me->data = $store->control->read ('sectionTeam_group_new'); } // function constructor_helper static function dispatch ($document) { // function dispatch global $store; $me = $document->application; $formulary = $document->createFormulary ('sectionTeam_group_edit', array (), 'new_group'); if ($formulary->command ('save') and $formulary->save ()) { // save $data = $formulary->data; $data['domain_id'] = $me->domainId; $data['mode'] = MODE_GROUP; $data['marker'] = $me->parent->data['marker']; $store->domainContent->insert ($me->domainId, $data); $parent = $me->parent; $parent->reset (); $document->application = $parent->child ($data['name']); $document->application->dispatch ($document); $document->reload = $document->url (); return; } // save $document->mod->formulary = $formulary; if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); } // function dispatch } // class eclApp_sectionTeam_group_new //!eof:library/sectionTeam/group/eclApp_sectionTeam_group_new.php; //!file:library/sectionTeam/group/eclMod_sectionTeam_group_listMembers.php; class eclMod_sectionTeam_group_listMembers { // class eclMod_sectionTeam_group_listMembers public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $me = $document->application; $marker = $me->data['marker']; if ($marker == 30) $mod->data = $store->control->read ('sectionTeam_listAllMembers'); elseif ($marker == 31) $mod->data = $store->control->read ('sectionTeam_listAllPartners'); elseif ($marker == 32) $mod->data = $store->control->read ('sectionTeam_listAllStudents'); elseif ($marker == 33) $mod->data = $store->control->read ('sectionTeam_listAllSubscriptions'); elseif ($marker == 34) $mod->data = $store->control->read ('sectionTeam_listAllSuppliers'); elseif ($marker == 35) $mod->data = $store->control->read ('sectionTeam_listAllClients'); $mod->data = array_replace_recursive ($store->control->read ('modules/list_card'), $mod->data); $members = $store->domainContent->children ($me->domainId, MODE_SUBSCRIPTION, $me->id);; $row = $mod->appendChild (); foreach ($members as $member) { // each member if ($member['access'] > 4) { // inactive $inactive = true; continue; } // inactive $pathway = $me->parent->pathway; $pathway[] = $member['name']; $row->appendChild ($member) ->swapTitle () ->url ($pathway) ->popUpOpen (); } // each member if ($document->access (4)) { // add new member if ($row->children) $row = $mod->appendChild (); // inactive if (isset ($inactive)) { // inactive member $pathway = $me->parent->pathway; $pathway[] = '-inactive-member'; $row->appendChild ('sectionTeam_member_inactive') ->url ($pathway) ->popUpOpen (); } // inactive member // new $pathway = $me->parent->pathway; $pathway[] = '-new-member'; $row->appendChild ('sectionTeam_member_new') ->url ($pathway) ->popUpOpen (); // import existing profile $pathway = $me->parent->pathway; $pathway[] = '-import-profile'; $row->appendChild ('sectionTeam_member_import') ->url ($pathway) ->popUpOpen (); } // add new member if ($row->children) $mod->enabled = true; } // function setModule } // class eclMod_sectionTeam_group_listMembers //!eof:library/sectionTeam/group/eclMod_sectionTeam_group_listMembers.php; //!file:library/sectionTeam/member/eclApp_sectionTeam_member.php; class eclApp_sectionTeam_member { // class eclApp_sectionTeam_member static function is_child ($me, $name) { // function is_child global $store; if (substr ($name, 0, 6) != '-user-') $name = '-user-' . $name; $data = $store->domainContent->open ($me->domainId, $name); if ($data and $data['mode'] == MODE_SUBSCRIPTION and $data['marker'] == $me->data['marker']) return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'post'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names global $store; $names = array (); $where = array ( 'domain_id' => $me->domainId, 'mode' => MODE_SUBSCRIPTION, 'marker' => $me->data['marker'] ); foreach ($store->domainContent->search ($where) as $data) { // each group $names[] = $data['name']; } // each group asort ($names); return $names; } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; switch ($me->parent->data['marker']) { // switch marker case 30: $me->data = $store->control->read ('sectionTeam_member_contentMember'); break; case 31: $me->data = $store->control->read ('sectionTeam_member_contentPartner'); break; case 32: $me->data = $store->control->read ('sectionTeam_member_contentStudant'); break; case 33: $me->data = $store->control->read ('sectionTeam_member_contentSubscription'); break; case 34: $me->data = $store->control->read ('sectionTeam_member_contentSuplier'); break; case 35: $me->data = $store->control->read ('sectionTeam_member_contentClient'); break; } // switch marker $me->access = 2; $me->isDomain = true; } // function constructor_helper static function dispatch ($document) { // function dispatch global $store; $me = $document->application; if (substr ($me->name, 0, 6) != '-user-') $data = &$store->domainContent->open ($me->domainId, '-user-' . $me->name); else $data = &$store->domainContent->open ($me->domainId, $me->name); if ($document->access (4)) { // admin access $formulary = $document->createFormulary ('sectionTeam_member_edit', $data); if ($formulary->command ('remove') or $document->actions ('member', 'unlink')) { // remove self::action_unlink ($document, $data); return; } // remove if ($data['marker'] <= 245) $document->mod->context->appendChild ('sectionTeam_member_unlink') ->url (true, true, '_member-unlink'); if ($formulary->command ('save') and $formulary->save ()) { // save $data = $formulary->data; $document->dataReplace ('layouts/dialog_close'); return; } // save } // admin access else $formulary = $document->createFormulary ('sectionTeam_member_view', $data); if ($formulary->command ('cancel') or $formulary->command ('close')) { // close $document->dataReplace ('layouts/dialog_cancel'); return; } // close if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); $document->mod->formulary = $formulary; } // function dispatch static function action_unlink ($document, &$data) { // function action_unlink if ($data['marker'] == 0) $document->mod->humperstilshen->alert ('sectionTeam_member_unlinkMember'); else $document->mod->humperstilshen->alert ('sectionTeam_member_unlinkMessage'); $data['parent_id'] = 0; $data['master_id'] = 0; $data['marker'] = 246; $data['updated'] = TIME; $formulary = $document->createFormulary ('sectionTeam_member_view', $data, 'view'); $document->mod->formulary = $formulary; } // function action_unlink } // class eclApp_sectionTeam_member //!eof:library/sectionTeam/member/eclApp_sectionTeam_member.php; //!file:library/sectionTeam/member/eclApp_sectionTeam_member_import.php; class eclApp_sectionTeam_member_import { // class eclApp_sectionTeam_member_import static function is_child ($me, $name) { // function is_child if ($name == '-import-profile') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'post'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array ('-import-profile'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('sectionTeam_member_import'); $me->access = 4; $me->isDomain = true; } // function constructor_helper static function dispatch ($document) { // function dispatch global $store; $me = $document->application; $formulary = $document->createFormulary ('sectionTeam_member_import'); if ($formulary->command ('cancel')) { // cancel $document->dataReplace ('layouts/dialog_close'); return; } // cancel if ($formulary->command ('save') and $formulary->save ()) { // save $data = $formulary->data; $name = $data['name']; $userId = $store->user->getId ($name); $data['name'] = '-user-' . $name; $data['mode'] = MODE_SUBSCRIPTION; $data['marker'] = $me->parent->data['marker']; $data['owner_id'] = $userId; $store->domainContent->insert ($me->domainId, $data); $document->dataReplace ('layouts/dialog_close'); return; } // save $document->mod->formulary = $formulary; if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); } // function dispatch } // class eclApp_sectionTeam_member_import //!eof:library/sectionTeam/member/eclApp_sectionTeam_member_import.php; //!file:library/sectionTeam/member/eclApp_sectionTeam_member_inactive.php; class eclApp_sectionTeam_member_inactive { // class eclApp_sectionTeam_member_inactive static function is_child ($me, $name) { // function is_child if ($name == '-inactive-member') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'post'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array ('-inactive-member'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('sectionTeam_member_inactive'); $me->access = 4; $me->isDomain = true; } // function constructor_helper static function dispatch ($document) { // function dispatch global $store; $me = $document->application; $formulary = $document->createFormulary ('sectionTeam_member_inactive'); if ($formulary->command ('cancel')) { // cancel $document->dataReplace ('layouts/dialog_close'); return; } // cancel if ($formulary->command ('save') and $formulary->save ()) { // save $data = &$store->domainContent->open ($me->domainId, $formulary->data['name']); $data['parent_id'] = 0; $data['master_id'] = 0; $data['marker'] = $me->parent->data['marker']; $document->dataReplace ('layouts/dialog_close'); return; } // save $document->mod->formulary = $formulary; if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); } // function dispatch } // class eclApp_sectionTeam_member_inactive //!eof:library/sectionTeam/member/eclApp_sectionTeam_member_inactive.php; //!file:library/sectionTeam/member/eclApp_sectionTeam_member_new.php; class eclApp_sectionTeam_member_new { // class eclApp_sectionTeam_member_new static function is_child ($me, $name) { // function is_child if ($name == '-new-member') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'post'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array ('-new-member'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('sectionTeam_member_new'); $me->access = 4; $me->isDomain = true; } // function constructor_helper static function dispatch ($document) { // function dispatch global $store; $me = $document->application; $formulary = $document->createFormulary ('sectionTeam_member_new'); if ($formulary->command ('cancel')) { // cancel $document->dataReplace ('layouts/dialog_close'); return; } // cancel if ($formulary->command ('save') and $formulary->save ()) { // save $user['name'] = $formulary->data['name']; $user['password'] = $formulary->data['password']; $user['status'] = 1; $userId = $store->user->insert ($user); $data = $formulary->data; $data['mode'] = MODE_DOMAIN; $data['parent_id'] = 0; $data['name'] = '-register'; $store->userContent->insert ($userId, $data); $data = $formulary->data; $name = $data['name']; $data['name'] = '-user-' . $name; $data['mode'] = MODE_SUBSCRIPTION; $data['master_id'] = 0; $data['marker'] = $me->parent->data['marker']; $data['owner_id'] = $userId; $store->domainContent->insert ($me->domainId, $data); $document->dataReplace ('layouts/dialog_close'); return; } // save $document->mod->formulary = $formulary; if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); } // function dispatch } // class eclApp_sectionTeam_member_new //!eof:library/sectionTeam/member/eclApp_sectionTeam_member_new.php; //!file:library/sectionTeam/member/eclFilter_sectionTeam_member_importList.php; class eclFilter_sectionTeam_member_importList { // class eclFilter_sectionTeam_member_importList static function create ($fieldName, $control, $formulary) { // function create global $io, $store; $document = $formulary->document; $me = $document->application; $item = $formulary->appendChild ($control); // name $item->data['name'] = $fieldName; // type if (isset ($control['flags']['type'])) $item->data['type'] = $control['flags']['type']; else $item->data['type'] = 'list'; $item->data['size'] = 15; $users = $store->domainGroup->getDomainSubscribedUsers ($me->domainId); foreach ($store->user->childrenNames () as $name) { // each user $userId = $store->user->getId ($name); if (isset ($users[$userId])) continue; $data = $store->userContent->open ($userId, '-register'); if (isset ($data['text']['title'])) $caption = $data['text']['title']; elseif (isset ($data['text']['caption'])) $caption = $data['text']['caption']; else $caption = $document->textMerge ('unknown'); $item->appendChild (false, array ( 'value' => $name, 'caption' => $caption )); } // each user } // function create static function save ($fieldName, $control, $formulary) { // function save global $store; if (!isset ($formulary->received[$fieldName])) goto ERROR; if (!strlen ($formulary->received[$fieldName])) goto ERROR; $name = $formulary->received[$fieldName]; $userId = $store->user->getId ($name); if (!$userId) goto ERROR; $formulary->data = $store->userContent->open ($userId, '-register'); $formulary->data['name'] = $name; return; ERROR: $formulary->setErrorMsg ($control, $fieldName, 'sectionTeam_member_importListError'); } // function save } // class eclFilter_sectionTeam_member_importList //!eof:library/sectionTeam/member/eclFilter_sectionTeam_member_importList.php; //!file:library/sectionTeam/member/eclFilter_sectionTeam_member_inactiveList.php; class eclFilter_sectionTeam_member_inactiveList { // class eclFilter_sectionTeam_member_inactiveList static function create ($fieldName, $control, $formulary) { // function create global $store; $document = $formulary->document; $me = $document->application; $item = $formulary->appendChild ($control); // name $item->data['name'] = $fieldName; // type if (isset ($control['flags']['type'])) $item->data['type'] = $control['flags']['type']; else $item->data['type'] = 'list'; $item->data['size'] = 15; $where = array ( 'domain_id' => $me->domainId, 'mode' => MODE_SUBSCRIPTION, 'marker' => $me->parent->data['marker'], 'access' => '> 200' ); $profiles = $store->domainContent->search ($where, 255, 0, 0, 'name', 'asc'); foreach ($profiles as $data) { // each user $item->appendChild ($data, array ('value' => $data['name'])); } // each user } // function create static function save ($fieldName, $control, $formulary) { // function save global $store; $me = $formulary->document->application; if (!isset ($formulary->received[$fieldName])) goto ERROR; if (!strlen ($formulary->received[$fieldName])) goto ERROR; $name = $formulary->received[$fieldName]; $data = &$store->domainContent->open ($me->domainId, $name); if ($data['mode'] != MODE_SUBSCRIPTION or $data['marker'] < 245) goto ERROR; $formulary->data = $data; return; ERROR: $formulary->setErrorMsg ($control, $fieldName, 'sectionTeam_member_importListError'); } // function save } // class eclFilter_sectionTeam_member_inactiveList //!eof:library/sectionTeam/member/eclFilter_sectionTeam_member_inactiveList.php; //!file:library/sectionTeam/member/eclFilter_sectionTeam_member_selectGroup.php; class eclFilter_sectionTeam_member_selectGroup { // class eclFilter_sectionTeam_member_selectGroup static function create ($fieldName, $control, $formulary) { // function create global $io, $store; $document = $formulary->document; $me = $document->application; $marker = $me->parent->data['marker']; $item = $formulary->appendChild ($control); // name $item->data['name'] = $fieldName; // type if (isset ($control['flags']['type'])) $item->data['type'] = $control['flags']['type']; else $item->data['type'] = 'select'; $item->appendChild ('sectionTeam_member_editGroupNone'); // value $id = $formulary->getField ('parent_id'); $groups = $store->domainContent->children ($me->domainId, MODE_GROUP, 0); foreach ($groups as $data) { // each user if ($data['marker'] != $marker) continue; $item->appendChild (false, array ( 'value' => $data['id'], 'caption' => $data['text']['caption'] )) ->active ($data['id'] == $id); } // each user } // function create static function save ($fieldName, $control, $formulary) { // function save global $store; $me = $formulary->document->application; if (!isset ($formulary->received[$fieldName][0])) return $formulary->data['parent_id'] = 0; $id = intval ($formulary->received[$fieldName]); if (!$id) return $formulary->data['parent_id'] = 0; $data = $store->domainContent->openById ($me->domainId, $id); if (!$data or $data['mode'] != MODE_GROUP) return $formulary->data['parent_id'] = 0; $formulary->data['parent_id'] = $id; } // function save } // class eclFilter_sectionTeam_member_selectGroup //!eof:library/sectionTeam/member/eclFilter_sectionTeam_member_selectGroup.php; //!file:library/sectionTerms/create/eclApp_sectionTerms_create.php; class eclApp_sectionTerms_create { // class eclApp_sectionTerms_create static function is_child ($me, $name) { // function is_child global $store; if (!$store->domainContent->findMarker ($me->domainId, 5) and $name == 'terms') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names global $store; $domain = $me; while (!$domain->isDomain and $domain = $domain->parent); if ($domain->name != SYSTEM_DEFAULT_DOMAIN_NAME) return array (); if (!$store->domainContent->findMarker ($me->domainId, 5)) return array ('terms'); return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('sectionTerms_create_content'); $me->map = array ('section_preset'); } // function constructor_helper static function dispatch ($document) { // function dispatch } // function dispatch } // class eclApp_sectionTerms_create //!eof:library/sectionTerms/create/eclApp_sectionTerms_create.php; //!file:library/sectionTerms/eclApp_sectionTerms.php; class eclApp_sectionTerms { // class eclApp_sectionTerms static function constructor_helper ($me) { // function constructor_helper } // function constructor_helper static function dispatch ($document) { // function dispatch if ($document->access (4)) $document->mod->editor->enable (); } // function dispatch static function remove ($me) { // function remove } // function remove } // class eclApp_sectionTerms //!eof:library/sectionTerms/eclApp_sectionTerms.php; //!file:library/system/eclApp_system.php; class eclApp_system { // class eclApp_system static function get_menu_type () { // function get_menu_type return 'domain'; } // function get_menu_type static function constructor_helper ($me) { // function constructor_helper global $io, $store; // Set default layout $me->data['flags'] = array ( 'modLayout_base' => 'responsive', 'modLayout_from' => 'domain', 'modLayout_name' => 'default' ); // Default settings $me->data['generator'] = SYSTEM_GENERATOR; $me->data['version'] = SYSTEM_VERSION; $me->data['release'] = SYSTEM_RELEASE; // Project name and reference $me->data['text']['caption'][SYSTEM_DEFAULT_LANGUAGE][TEXT_CONTENT] = SYSTEM_PROJECT_CAPTION; if (SYSTEM_DEFAULT_CHARSET == 'ISO-8859-1') $me->data['text']['caption'][SYSTEM_DEFAULT_LANGUAGE][TEXT_CHARSET] = 1; $me->data['url'] = SYSTEM_PROJECT_URL; $me->getMap (); $me->isDomain = true; $me->groups[] = new eclGroup_system (); } // function constructor_helper } // class eclApp_system //!eof:library/system/eclApp_system.php; //!file:library/system/eclGroup_system.php; class eclGroup_system { // class eclGroup_system public function check ($document) { // function check if (!defined ('ADMIN_IDENTIFIER')) return 0; if ($document->user->name == ADMIN_IDENTIFIER) return 4; if (defined ('ADMIN_HELPERS') and strlen (ADMIN_HELPERS) and in_array ($document->user->name, explode (' ', ADMIN_HELPERS))) return 4; return 0; } // function check } // class eclGroup_system //!eof:library/system/eclGroup_system.php; //!file:library/systemAccessDenied/eclApp_systemAccessDenied.php; class eclApp_systemAccessDenied { // class eclApp_systemAccessDenied static function is_child ($me, $name) { // function is_child if ($name == '-access-denied') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names () { // function get_children_names return array ('-access-denied'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('systemAccessDenied_content'); $me->ignoreSubfolders = true; } // function constructor_helper static function dispatch ($document) { // function dispatch global $io; $document->base = 'system_message'; if ($document->pathway[0] == SYSTEM_PROFILES_URI) $document->dataMerge ('systemAccessDenied_contentProfile'); $io->request->header ('HTTP/1.1 503 Service Temporarily Unavailable'); $io->request->header ('X-Robots-Tag: noindex'); $io->request->header ('Retry-After: 86400'); } // function dispatch } // class eclApp_systemAccessDenied //!eof:library/systemAccessDenied/eclApp_systemAccessDenied.php; //!file:library/systemDefault/eclApp_systemDefault.php; class eclApp_systemDefault { // class eclApp_systemDefault static function is_child ($me, $name) { // function is_child if ($name == '-default') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'domain'; } // function get_menu_type static function get_children_names () { // function get_children_names return array ('-default'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('systemDefault_content'); $me->ignoreSubfolders = true; $me->isDomain = true; } // function constructor_helper static function dispatch ($document) { // function dispatch $document->base = 'system_message'; } // function dispatch } // class eclApp_systemDefault //!eof:library/systemDefault/eclApp_systemDefault.php; //!file:library/systemInstallation/eclApp_systemInstallation.php; class eclApp_systemInstallation { // class eclApp_systemInstallation static function is_child ($parent, $name) { // function is_child if (!defined ('ADMIN_IDENTIFIER')) return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'domain'; } // function get_menu_type static function get_children_names () { // function get_children_names return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('systemInstallation_index'); $me->map = array ('systemInstallation_index'); $me->isDomain = true; } // function constructor_helper } // class eclApp_systemInstallation //!eof:library/systemInstallation/eclApp_systemInstallation.php; //!file:library/systemInstallation/eclApp_systemInstallation_index.php; class eclApp_systemInstallation_index { // class eclApp_systemInstallation_index static function is_child ($parent, $name) { // function is_child if ($name == '') return true; if ($name == '-default') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names ($parent) { // function get_children_names return array (''); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; // As subpastas devero ser ignoradas $me->ignoreSubfolders = true; $me->data = $store->control->read ('systemInstallation_index'); unset ($me->pathway[1]); $me->isDomain = true; } // function constructor_helper static function dispatch ($document) { // function dispatch global $store; if (!is_file (PATH_ROOT . SYSTEM_CONFIG_FILE)) { // config file not found $n = @file_put_contents (PATH_ROOT . SYSTEM_CONFIG_FILE, 'dataMerge ('systemInstallation_accessDenied'); return; } // unable to write unlink (PATH_ROOT . SYSTEM_CONFIG_FILE); } // config file not found if (!isset ($document->session['systemInstallation'])) { // presets $document->session['systemInstallation'] = $store->control->read ('systemInstallation_templateForConfig'); if ($document->protocol == 'https') $document->session['systemInstallation']['SYSTEM_HTTPS_REDIRECT'] = true; if ($document->rewriteEngine or strpos (' ' . strtolower ($_SERVER['SERVER_SOFTWARE']), 'apache')) $document->session['systemInstallation']['SYSTEM_REWRITE_ENGINE'] = true; } // presets if (!isset ($document->session['systemInstallation_page'])) $document->session['systemInstallation_page'] = 0; PROCESS_PAGE: $page = $document->session['systemInstallation_page']; $formulary = $document->createFormulary ('systemInstallation_' . $page, $document->session['systemInstallation'], 'page' . $page); if (!$document->rewriteEngine and strpos (' ' . strtolower ($_SERVER['SERVER_SOFTWARE']), 'apache')) $formulary->flags['rewrite_engine_choose'] = true; if ($formulary->command ('next') and $formulary->save ()) { // next $document->session['systemInstallation'] = $formulary->data; $document->session['systemInstallation_page']++; if ($document->session['systemInstallation_page'] == 3) return self::finish_installation ($document); goto PROCESS_PAGE; } // next elseif ($formulary->command ('previous')) { // previous $formulary->save (); $document->session['systemInstallation'] = $formulary->data; $document->session['systemInstallation_page']--; goto PROCESS_PAGE; } // previous $document->mod->formulary = $formulary; if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); $document->data['url'] = $document->url (); $document->data['folder'] = PATH_ROOT; } // function dispatch static function finish_installation ($document) { // function finish_installation $constants = $document->session['systemInstallation']; if ($constants['SYSTEM_HOSTING_MODE'] == 0) { // set default configuration $constants['DATABASE_ENABLED'] = true; $constants['DATABASE_CLIENT'] = 'sqlite'; $constants['SYSTEM_DEFAULT_DOMAIN_NAME'] = 'ecolabore'; $constants['SYSTEM_DEFAULT_LANGUAGE'] = $document->lang; } // set default configuration ksort ($constants); $buffer = ' $value) { // each constant $buffer .= "define ('" . $key . "', "; if ($value === false) $buffer .= 'false'; elseif ($value === true) $buffer .= 'true'; elseif (is_int ($value)) $buffer .= strval ($value); elseif (is_string ($value)) $buffer .= "'" . str_replace ("'", CHR_BSLASH . CHR_TIC, $value) . "'"; $buffer .= ");" . CRLF; } // each constant $buffer .= CRLF . '?>'; header ('Content-type: application/force-download'); header ('Content-Disposition: attachment; filename="config.php"'); print $buffer; $document->session = array (); exit; } // function finish_installation } // class eclApp_systemInstallation_index //!eof:library/systemInstallation/eclApp_systemInstallation_index.php; //!file:library/systemInstallation/eclFilter_systemInstallation_password.php; /* * Control flags * control_type * control_filter = password * control_target * control_field_name * control_required * control_error_msg */ class eclFilter_systemInstallation_password { // class eclFilter_systemInstallation_password static function create ($fieldName, $control, $formulary) { // function create $local['name'] = $fieldName; // type if (isset ($control['flags']['type'])) $local['type'] = $control['flags']['type']; else $local['type'] = 'text_password'; $formulary->appendChild ($control, $local); $local['name'] .= '_repeat'; $formulary->appendChild ('labels/field/user_repeat_password', $local); } // function create static function save ($fieldName, $control, $formulary) { // function save isset ($formulary->received[$fieldName]) ? $password = $formulary->received[$fieldName] : $password = false; isset ($formulary->received[$fieldName . '_repeat']) ? $password2 = $formulary->received[$fieldName . '_repeat'] : $password2 = false; if (!$password and $password !== '0') $password = false; // required if ($password === false and isset ($control['flags']['required'])) return $formulary->setRequiredMsg ($control, $fieldName, 'adminUsers_add_msgPasswordRequired'); // no password, no required if (!$password) return; if ($password != $password2) return $formulary->setErrorMsg ($control, $fieldName, 'adminUsers_add_msgPasswordRepeatError'); foreach (str_split ($password) as $char) { // each char if (ord ($char) < 32 or ord ($char) > 127) return $formulary->setErrorMsg ($control, $fieldName, 'adminUsers_add_msgPasswordInvalidCharacter'); } // each char // md5 if (isset ($control['flags']['password_md5'])) $password = md5 ($password); // target if (isset ($control['flags']['target'])) $formulary->setField ($control['flags']['target'], $password); } // function save } // class eclFilter_systemInstallation_password //!eof:library/systemInstallation/eclFilter_systemInstallation_password.php; //!file:library/systemPreload/eclApp_systemPreload.php; class eclApp_systemPreload { // class eclApp_systemPreload static function is_child ($me, $name) { // function is_child if ($name == '-preload') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names () { // function get_children_names return array ('-preload'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper $me->getMap (); } // function constructor_helper static function dispatch ($document) { // function dispatch } // function dispatch } // class eclApp_systemPreload //!eof:library/systemPreload/eclApp_systemPreload.php; //!file:library/systemShared/eclApp_systemShared.php; class eclApp_systemShared { // class eclApp_systemShared static function is_child ($me, $name) { // function is_child global $io; if (in_array ('-shared', $io->request->pathway)) return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names () { // function get_children_names return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper $me->name = '-shared'; $me->ignoreSubfolders = true; $me->ignoreSession (true); } // function constructor_helper static function dispatch ($document) { // function dispatch global $components, $dataMap, $io; $me = $document->application; $pathway = $document->pathway; while (array_shift ($pathway) != $me->name); if (count ($pathway) < 2) exit; if (isset ($components[$pathway[0]])) { // find component shared file $component = $pathway[0]; $file = PATH_COMPONENTS . $component . '/' . $components[$component] . '/shared/' . $pathway[1]; if (!is_file ($file)) exit; $headers = array ( 'Content-Disposition' => 'inline', 'Cache-Control' => 'public, only-if-cached, max-age=2592000' ); $io->sendFile->send ($file, $headers); exit; } // find component shared file static $mime = array ( 'css' => 'text/css', 'gif' => 'image/gif', 'html' => 'text/html', 'htm' => 'text/html', 'jpg' => 'image/jpeg', 'js' => 'text/javascript', 'mp3' => 'audio/mpeg', 'png' => 'image/png', 'svg' => 'image/svg+xml', 'txt' => 'text/plain', 'ttf' => 'font/ttf' ); $folders = $pathway; $name = array_pop ($folders); $path = implode ('/', $folders); if (isset ($dataMap['f'][$path][$name])) { // embeded @list (, $extension) = explode ('.', $name, 2); if (!isset ($mime[$extension])) { // bad request header ('HTTP/1.0 400 Bad Request'); exit; } // bad request if (SYSTEM_TIME_LIMIT) set_time_limit (0); error_reporting (0); while (@ob_end_clean ()); $headers = is_callable ('apache_request_headers') ? apache_request_headers () : array (); header_remove ('Pragma'); header_remove ('Expires'); header_remove ('X-Powered-By'); $buffer = $io->cachedControls->file ($path, $name); $size = strval (strlen ($buffer)); $eTag = md5 ($name . SYSTEM_PACKED_DATE); if (isset ($headers['ETag']) and $headers['ETag'] == $eTag) { // not modified header ('HTTP/1.1 304 Not Modified'); exit; } // not modified if (isset ($headers['If-Modified-Since']) and $headers['If-Modified-Since'] == SYSTEM_PACKED_DATE) { // not modified header ('HTTP/1.1 304 Not Modified'); exit; } // not modified header ('HTTP/1.1 200 OK'); header ('Access-Control-Allow-Origin: *'); header ('Cache-Control: public, only-if-cached, max-age=172800'); header ('Last-Modified: ' . SYSTEM_PACKED_DATE); header ('ETag: "' . $eTag . '"'); header ('Content-type: ' . $mime[$extension]); header ('Content-Length: ' . $size); header ('Connection: close'); print $buffer; exit; } // embeded $path = PATH_SHARED . implode ('/', $pathway); $headers = array ( 'Content-Disposition' => 'inline', 'Cache-Control' => 'public, only-if-cached, max-age=2592000' ); $io->sendFile->send ($path, $headers); exit; } // function dispatch } // class eclApp_systemShared //!eof:library/systemShared/eclApp_systemShared.php; //!file:library/tool/eclApp_tool.php; class eclApp_tool { // class eclApp_tool static function is_child ($parent, $name) { // function is_child if ($name == '-tools') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names () { // function get_children_names return array ('-tools'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('tool_content'); $me->access = 4; $me->getMap (); $me->isDomain = true; } // function constructor_helper static function dispatch ($document) { // function dispatch } // function dispatch } // class eclApp_tool //!eof:library/tool/eclApp_tool.php; //!file:library/toolConfig/about/eclApp_toolConfig_about.php; class eclApp_toolConfig_about { // class eclApp_toolConfig_about static function is_child ($parent, $name) { // function is_child if ($name == 'about') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'section'; } // function get_menu_type static function get_children_names () { // function get_children_names return array ('about'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('toolConfig_about_content'); } // function constructor_helper static function dispatch ($document) { // function dispatch global $store; $me = $document->application; $data = &$store->domainContent->open ($me->domainId, '-register'); $formulary = $document->createFormulary ('toolConfig_about_edit', $data); if ($formulary->command ('save') and $formulary->save ()) { // save $data = $formulary->data; } // save $document->mod->formulary = $formulary; } // function dispatch } // class eclApp_toolConfig_about //!eof:library/toolConfig/about/eclApp_toolConfig_about.php; //!file:library/toolConfig/eclApp_toolConfig.php; class eclApp_toolConfig { // class eclApp_toolConfig const name = 'config'; const menuType = 'section'; const dataFrom = 'toolConfig_content'; const map = 'toolConfig_about toolConfig_languages toolConfig_versioning'; const isDomain = true; static function dispatch ($document) { // function dispatch $document->mod->list = new eclMod_admin_list ($document); } // function dispatch } // class eclApp_toolConfig //!eof:library/toolConfig/eclApp_toolConfig.php; //!file:library/toolConfig/languages/eclApp_toolConfig_languages.php; class eclApp_toolConfig_languages { // class eclApp_toolConfig_languages static function is_child ($parent, $name) { // function is_child if ($name == 'languages') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'section'; } // function get_menu_type static function get_children_names () { // function get_children_names return array ('languages'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('toolConfig_languages_content'); $me->map = array ('toolConfig_languages_select', 'toolConfig_languages_currencies'); } // function constructor_helper static function dispatch ($document) { // function dispatch global $store; $me = $document->application; $data = &$store->domainContent->open ($me->domainId, '-register'); $formulary = $document->createFormulary ('toolConfig_languages_edit', $data); if ($formulary->command ('save') and $formulary->save ()) { // save $data = $formulary->data; } // save $document->mod->formulary = $formulary; } // function dispatch } // class eclApp_toolConfig_languages //!eof:library/toolConfig/languages/eclApp_toolConfig_languages.php; //!file:library/toolConfig/languages/eclApp_toolConfig_languages_currencies.php; class eclApp_toolConfig_languages_currencies { // class eclApp_toolConfig_languages_currencies static function is_child ($parent, $name) { // function is_child if ($name == 'currencies') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names () { // function get_children_names return array ('currencies'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('toolConfig_languages_currencies'); $me->isDomain = true; } // function constructor_helper static function dispatch ($document) { // function dispatch $document->mod->list = new eclMod_toolConfig_languages_currencies ($document); } // function dispatch } // class eclApp_toolConfig_languages_currencies //!eof:library/toolConfig/languages/eclApp_toolConfig_languages_currencies.php; //!file:library/toolConfig/languages/eclApp_toolConfig_languages_select.php; class eclApp_toolConfig_languages_select { // class eclApp_toolConfig_languages_select static function is_child ($parent, $name) { // function is_child if ($name == 'select') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names () { // function get_children_names return array ('select'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('toolConfig_languages_select'); $me->isDomain = true; } // function constructor_helper static function dispatch ($document) { // function dispatch $document->mod->list = new eclMod_toolConfig_languages_select ($document); } // function dispatch } // class eclApp_toolConfig_languages_select //!eof:library/toolConfig/languages/eclApp_toolConfig_languages_select.php; //!file:library/toolConfig/languages/eclFilter_toolConfig_languages_currenciesManager.php; class eclFilter_toolConfig_languages_currenciesManager { // class eclFilter_toolConfig_languages_currenciesManager static function create ($fieldName, $control, $formulary) { // function create global $io, $store; $document = $formulary->document; $me = $document->application; $item = $document->createListItem ($control); // name $item->data['name'] = $fieldName; // type if (isset ($control['flags']['type'])) $item->data['type'] = $control['flags']['type']; else $item->data['type'] = 'manager'; // help if (isset ($control['flags']['help']) and !isset ($control['flags']['help_msg'])) $item->data['help_msg'] = 'system_msg_filterDetailsHelp'; // references $pathway = array ($document->domain->name, '-tools', 'config', 'languages', 'currencies'); $item->data['url_add'] = $document->url ($pathway); $item->data['move-enable'] = 1; $item->data['remove-enable'] = 1; // $item->data['edit-enable'] = 1; $value = $formulary->getField ('flags/currencies'); $buffer = ''; foreach (explode (CRLF, $value) as $currency) { // each line $currency = trim ($currency); if (!isset ($currency[0])) continue; $data = $store->control->read ('labels/currency/' . $currency); if (isset ($data['text']['caption'])) $caption = $data['text']['caption']; else $caption = $document->textMerge ($currency); $buffer .= $currency . CRLF; $item->appendChild (false, array ('value' => $currency, 'caption' => $caption)); } // each line $item->data['serialized'] = $buffer; return $item; } // function create static function save ($fieldName, $control, $formulary) { // function save global $store; $buffer = array (); if (isset ($formulary->received[$fieldName . '_serialized'])) { // received foreach (explode (LF, $formulary->received[$fieldName . '_serialized']) as $line) { // each line $line = trim ($line); if (preg_match ('/^[a-z][a-z]$/', $line)) $buffer[] = $line; } // each line } // received if ($buffer) $buffer = implode (CRLF, $buffer); else $buffer = false; $formulary->setField ('flags/currencies', $buffer); } // function save } // class eclFilter_toolConfig_languages_currenciesManager //!eof:library/toolConfig/languages/eclFilter_toolConfig_languages_currenciesManager.php; //!file:library/toolConfig/languages/eclFilter_toolConfig_languages_manager.php; class eclFilter_toolConfig_languages_manager { // class eclFilter_toolConfig_languages_manager static function create ($fieldName, $control, $formulary) { // function create global $io, $store; $document = $formulary->document; $me = $document->application; $item = $document->createListItem ($control); // name $item->data['name'] = $fieldName; // type if (isset ($control['flags']['type'])) $item->data['type'] = $control['flags']['type']; else $item->data['type'] = 'manager'; // help if (isset ($control['flags']['help']) and !isset ($control['flags']['help_msg'])) $item->data['help_msg'] = 'system_msg_filterDetailsHelp'; // references $pathway = array ($document->domain->name, '-tools', 'config', 'languages', 'select'); $item->data['url_add'] = $document->url ($pathway); $item->data['move-enable'] = 1; $item->data['remove-enable'] = 1; // $item->data['edit-enable'] = 1; $value = $formulary->getField ('flags/languages'); $buffer = ''; foreach (explode (CRLF, $value) as $lang) { // each line $lang = trim ($lang); if (!isset ($lang[0])) continue; $data = $store->control->read ('labels/lang/' . $lang); if (isset ($data['text']['caption'])) $caption = $data['text']['caption']; else $caption = $document->textMerge ($lang); $buffer .= $lang . CRLF; $item->appendChild (false, array ('value' => $lang, 'caption' => $caption)); } // each line $item->data['serialized'] = $buffer; return $item; } // function create static function save ($fieldName, $control, $formulary) { // function save global $store; $buffer = array (); if (isset ($formulary->received[$fieldName . '_serialized'])) { // received foreach (explode (LF, $formulary->received[$fieldName . '_serialized']) as $line) { // each line $line = trim ($line); if (preg_match ('/^[a-z][a-z]$/', $line)) $buffer[] = $line; } // each line } // received if ($buffer) $buffer = implode (CRLF, $buffer); else $buffer = false; $formulary->setField ('flags/languages', $buffer); } // function save } // class eclFilter_toolConfig_languages_manager //!eof:library/toolConfig/languages/eclFilter_toolConfig_languages_manager.php; //!file:library/toolConfig/languages/eclMod_toolConfig_languages_currencies.php; class eclMod_toolConfig_languages_currencies { // class eclMod_toolConfig_languages_currencies public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $me = $document->application; $render = $document->render; $names = $store->control->scandir ('t', 'labels/currency'); foreach ($names as $currency) { // each currency $data = $store->control->read ('labels/currency/' . $currency); $mod->appendChild ($data, array ('name' => $currency)); } // each currency $mod->enabled = true; } // function setModule } // class eclMod_toolConfig_languages_currencies //!eof:library/toolConfig/languages/eclMod_toolConfig_languages_currencies.php; //!file:library/toolConfig/languages/eclMod_toolConfig_languages_select.php; class eclMod_toolConfig_languages_select { // class eclMod_toolConfig_languages_select public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $me = $document->application; $render = $document->render; $names = $store->control->scandir ('t', 'labels/lang'); foreach ($names as $lang) { // each lang $data = $store->control->read ('labels/lang/' . $lang); $mod->appendChild ($data, array ('name' => $lang)); } // each lang $mod->enabled = true; } // function setModule } // class eclMod_toolConfig_languages_select //!eof:library/toolConfig/languages/eclMod_toolConfig_languages_select.php; //!file:library/toolConfig/versioning/eclApp_toolConfig_versioning.php; class eclApp_toolConfig_versioning { // class eclApp_toolConfig_versioning const name = 'versioning'; const menuType = 'section'; const dataFrom = 'toolConfig_versioning_content'; static function dispatch ($document) { // function dispatch global $store; $me = $document->application; $data = &$store->domainContent->open ($me->domainId, '-register'); $formulary = $document->createFormulary ('toolConfig_versioning_edit', $data); if ($formulary->command ('clear')) { // clear cache } // clear cache if ($formulary->command ('save') and $formulary->save ()) { // save $data = $formulary->data; } // save $document->mod->formulary = $formulary; } // function dispatch } // class eclApp_toolConfig_versioning //!eof:library/toolConfig/versioning/eclApp_toolConfig_versioning.php; //!file:library/toolMediaGalery/eclApp_toolMediaGalery.php; class eclApp_toolMediaGalery { // class eclApp_toolMediaGalery const name = 'media'; const menuType = 'section'; const dataFrom = 'toolMediaGalery_content'; const map = 'toolMediaGalery_images toolMediaGalery_audios toolMediaGalery_videos'; const isDomain = true; static function dispatch ($document) { // function dispatch $document->mod->list = new eclMod_toolImageGalery_list ($document); } // function dispatch } // class eclApp_toolMediaGalery //!eof:library/toolMediaGalery/eclApp_toolMediaGalery.php; //!file:library/user/eclApp_user.php; class eclApp_user { // class eclApp_user static function is_child ($me, $name) { // function is_child if ($name == SYSTEM_PROFILES_URI) return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'domain'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array (SYSTEM_PROFILES_URI); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('user_content'); $me->groups = array (); $me->getMap (); $me->isDomain = true; } // function constructor_helper } // class eclApp_user //!eof:library/user/eclApp_user.php; //!file:library/user/eclGroup_user.php; class eclGroup_user { // class eclGroup_user private $userId; public function __construct ($userId) { // function __construct $this->userId = $userId; } // function __construct public function check ($document) { // function check if ($this->userId == $document->user->userId) return 4; if (defined ('ADMIN_IDENTIFIER') and $document->user->name == ADMIN_IDENTIFIER) return 1; elseif (!$document->user->userId) return 0; return 1; } // function check } // class eclGroup_user //!eof:library/user/eclGroup_user.php; //!file:library/userAdmin/eclApp_userAdmin.php; class eclApp_userAdmin { // class eclApp_userAdmin static function is_child ($me, $name) { // function is_child global $store; if (!defined ('ADMIN_IDENTIFIER')) return false; if ($name != ADMIN_IDENTIFIER) return false; if ($store->user->getId ($name)) return false; return true; } // function is_child static function get_menu_type () { // function get_menu_type return 'post'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $io, $store; $me->name = ADMIN_IDENTIFIER; $me->map = array ('userAdmin_index', 'userHome_welcome'); $me->data = &$io->session->cache; $me->data['text']['caption'] = array ('en' => array (1 => ADMIN_CAPTION)); $me->data['text']['title'] = array ('en' => array (1 => ADMIN_CAPTION)); $me->data['name'] = ADMIN_IDENTIFIER; $me->data['local']['mail'] = ADMIN_MAIL; $me->data['local']['gender'] = ADMIN_GENDER; } // function constructor_helper static function dispatch ($document) { // function dispatch $document->application = $document->application->child ('-index'); $document->application->dispatch ($document); } // function dispatch } // class eclApp_userAdmin //!eof:library/userAdmin/eclApp_userAdmin.php; //!file:library/userAdmin/eclApp_userAdmin_index.php; class eclApp_userAdmin_index { // class eclApp_userAdmin_index static function is_child ($me, $name) { // function is_child if ($name == '' or $name == '-index') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'section'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array (''); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('userAdmin_content'); array_pop ($me->pathway); } // function constructor_helper static function dispatch ($document) { // function dispatch } // function dispatch } // class eclApp_userAdmin_index //!eof:library/userAdmin/eclApp_userAdmin_index.php; //!file:library/userAnonimous/eclApp_userAnonimous.php; class eclApp_userAnonimous { // class eclApp_userAnonimous static function is_child ($me, $name) { // function is_child if ($name == '-anonimous') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'post'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array ('-anonimous'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('userAnonimous_content'); } // function constructor_helper static function dispatch ($document) { // function dispatch } // function dispatch } // class eclApp_userAnonimous //!eof:library/userAnonimous/eclApp_userAnonimous.php; //!file:library/userDefault/eclApp_userDefault.php; class eclApp_userDefault { // class eclApp_userDefault static function is_child ($me, $name) { // function is_child if ($name == '-default') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'post'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array ('-default'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('userDefault_content'); $me->ignoreSubfolders = true; } // function constructor_helper static function dispatch ($document) { // function dispatch } // function dispatch } // class eclApp_userDefault //!eof:library/userDefault/eclApp_userDefault.php; //!file:library/userHome/alerts/eclApp_userHome_alerts.php; class eclApp_userHome_alerts { // class eclApp_userHome_alerts static function is_child ($me, $name) { // function is_child if ($name == '-alerts') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array ('-alerts'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('userHome_alerts_content'); $me->isDomain = true; $me->getMap (); $me->access = 4; } // function constructor_helper static function dispatch ($document) { // function dispatch $document->mod->list = new eclMod_user_alerts ($document); } // function dispatch } // class eclApp_userHome_alerts //!eof:library/userHome/alerts/eclApp_userHome_alerts.php; //!file:library/userHome/alerts/eclApp_userHome_alerts_mail.php; class eclApp_userHome_alerts_mail { // class eclApp_userHome_alerts_mail static function is_child ($me, $name) { // function is_child if (INTEGRATION_SMTP_ENABLE and $name == '-mail') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names global $store; if (!INTEGRATION_SMTP_ENABLE) return array (); $name = $me->pathway[1]; $user = $store->user->open ($name); if (!$user['mail']) return array ('-mail'); else return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('userHome_alerts_mail'); $me->pathway = array_slice ($me->pathway, 0, - 2); $me->pathway[] = $me->name; $me->isDomain = true; $me->access = 4; } // function constructor_helper static function dispatch ($document) { // function dispatch } // function dispatch } // class eclApp_userHome_alerts_mail //!eof:library/userHome/alerts/eclApp_userHome_alerts_mail.php; //!file:library/userHome/alerts/eclApp_userHome_alerts_phone.php; class eclApp_userHome_alerts_phone { // class eclApp_userHome_alerts_phone static function is_child ($me, $name) { // function is_child if (INTEGRATION_SMS_ENABLE and $name == '-phone') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names global $store; if (!INTEGRATION_SMS_ENABLE) return array (); $name = $me->pathway[1]; $user = $store->user->open ($name); if (!$user['phone']) return array ('-phone'); else return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('userHome_alerts_phone'); $me->pathway = array_slice ($me->pathway, 0, - 2); $me->pathway[] = $me->name; $me->isDomain = true; $me->access = 4; } // function constructor_helper static function dispatch ($document) { // function dispatch } // function dispatch } // class eclApp_userHome_alerts_phone //!eof:library/userHome/alerts/eclApp_userHome_alerts_phone.php; //!file:library/userHome/default/eclApp_userHome_default.php; class eclApp_userHome_default { // class eclApp_userHome_default static function is_child ($me, $name) { // function is_child if ($name == '-default') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array ('-default'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('userHome_default_content'); $me->ignoreSubfolders = true; } // function constructor_helper static function dispatch ($document) { // function dispatch } // function dispatch } // class eclApp_userHome_default //!eof:library/userHome/default/eclApp_userHome_default.php; //!file:library/userHome/eclApp_userHome.php; class eclApp_userHome { // class eclApp_userHome static function is_child ($me, $name) { // function is_child global $store; if (!strlen ($name) or $name[0] == '-') return false; if ($store->user->getId ($name)) return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'post'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->userId = $store->user->getId ($me->name); $me->getMap (); $me->groups = array ( new eclGroup_user ($me->userId)); $me->data = &$store->userContent->open ($me->userId, '-register'); } // function constructor_helper static function dispatch ($document) { // function dispatch $document->application = $document->application->child ('-index'); $document->pathway = $document->application->pathway; $document->application->dispatch ($document); } // function dispatch } // class eclApp_userHome //!eof:library/userHome/eclApp_userHome.php; //!file:library/userHome/index/eclApp_userHome_index.php; class eclApp_userHome_index { // class eclApp_userHome_index static function is_child ($me, $name) { // function is_child if ($name == '-index') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'section'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array ('-index'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('userHome_index_content'); $me->data['text']['profile'] = $me->parent->data['text']['caption']; } // function constructor_helper static function dispatch ($document) { // function dispatch $document->mod->list1 = new eclMod_userHome_index_domains ($document); $document->mod->list2 = new eclMod_userHome_index_recents ($document); $document->mod->panel->main = array ('content', 'list1', 'list2'); } // function dispatch } // class eclApp_userHome_index //!eof:library/userHome/index/eclApp_userHome_index.php; //!file:library/userHome/index/eclMod_userHome_index_domains.php; class eclMod_userHome_index_domains { // class eclMod_userHome_index_domains public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $io, $store, $system; $document = $this->document; $me = $document->application; $mod->data = array_replace ($store->control->read ('modules/list_card'), $store->control->read ('userHome_index_domains')); $row = $mod->appendChild (); $where = array ( 'user_id' => $me->userId, 'group_id' => 1 ); $groups = $io->database->select ($store->domainGroup, $where); if (!$groups) return; $names = array (); foreach ($groups as $group) { // each group $name = $store->domain->getName ($group['domain_id']); $status = $store->domain->getStatus ($name); if ($status == 2 or $status == 4) $names[] = $name; } // each group if (!$names) return; asort ($names); foreach ($names as $name) { // list domains $domain = $system->child ($name); $row->appendChild ($domain->data) ->swapTitle () ->url ($domain->pathway); } // list domains $mod->enabled = true; } // function setModule } // class eclMod_userHome_index_domains //!eof:library/userHome/index/eclMod_userHome_index_domains.php; //!file:library/userHome/index/eclMod_userHome_index_recents.php; class eclMod_userHome_index_recents { // class eclMod_userHome_index_recents public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store, $system; $document = $this->document; $me = $document->application; $mod->data = array_replace ($store->control->read ('modules/list_card'), $store->control->read ('userHome_index_recents')); $row = $mod->appendChild (); $where = array ( 'mode' => MODE_POST, 'owner_id' => $me->userId ); $recents = $store->domainContent->search ($where); $recents = array_reverse ($recents); $index = 0; foreach ($recents as $data) { // each recent post $pathway = $store->domainContent->pathway ($data['domain_id'], $data['name']); $levels = $pathway; $post = $system; TEST_NEXT_LEVEL: $post = $post->child (array_shift ($levels)); if ($post->access) continue; if ($levels) goto TEST_NEXT_LEVEL; $row->appendChild ($data) ->url ($pathway); $index++; if ($index == 10) break; } // each recent post if ($index) $mod->enabled = true; } // function setModule } // class eclMod_userHome_index_recents //!eof:library/userHome/index/eclMod_userHome_index_recents.php; //!file:library/userHome/mail/eclApp_userHome_mail.php; class eclApp_userHome_mail { // class eclApp_userHome_mail static function is_child ($me, $name) { // function is_child if (!INTEGRATION_SMTP_ENABLE) return false; if ($name == '-mail') return true; if ($name == '-mail-check') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names if (INTEGRATION_SMTP_ENABLE) return array ('-mail'); return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('userHome_mail_content'); $me->isDomain = true; if ($me->name == '-mail-check') $me->access = 0; else $me->access = 4; } // function constructor_helper static function dispatch ($document) { // function dispatch global $store; if ($document->application->name == '-mail-check') return self::action_mail_check ($document); if ($document->actions ('mail', 'input')) return self::action_mail_input ($document); $me = $document->application->parent; $user = $store->user->open ($me->name); if (isset ($me->data['flags']['userHome_mail_key'])) return self::action_mail_sent ($document); if ($user['mail'] == '') return self::action_mail_input ($document); } // function dispatch static function action_mail_input ($document) { // function action_mail_input $me = $document->application->parent; $formulary = $document->createFormulary ('userHome_mail_input', $me->data, 'input'); $formulary->action = '_mail-input'; if ($formulary->command ('next') and $formulary->save ()) { // save $key = mt_rand (1000000, 9999999); $me->data = $formulary->data; $me->data['flags']['userHome_mail_key'] = $key; $template = clone $document; $template->user = $me; $template->charset = 'UTF-8'; $template->dataReplace ('userHome_mail_messageTemplate'); $template->data['url'] = $document->url (array (SYSTEM_PROFILES_URI, $me->name, '-mail-check'), true, '_key-' . $key); $template->render (); $subject = $template->selectLanguage ($template->textMerge ($template->data['text']['title'], ' ', $me->data['text']['caption'])); $mail = $document->createMail () ->subject ($subject[1]) ->to ($me->data['local']['mail']) ->contentHTML ($template->buffer); $errorMsg = $mail->send (); if ($errorMsg) { // mail error $document->mod->humperstilshen->alert ($errorMsg); $document->mod->formulary = $formulary; return; } // mail error self::action_mail_sent ($document); return; } // save $document->mod->formulary = $formulary; if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); } // function action_mail_input static function action_mail_sent ($document) { // function action_mail_sent $formulary = $document->createFormulary ('userHome_mail_sent', array (), 'sent'); if ($formulary->command ('cancel')) return $document->dataReplace ('layouts/dialog_cancel'); if ($formulary->command ('update')) return self::action_mail_input ($document); $document->mod->formulary = $formulary; $document->dataMerge ('userHome_mail_contentMailSent'); } // function action_mail_sent static function action_mail_check ($document) { // function action_mail_check global $store; $me = $document->application->parent; $document->dataReplace ('userHome_mail_content'); if (!isset ($document->actions['key'][1])) return $document->dataMerge ('userHome_mail_contentFail'); if (!isset ($me->data['flags']['userHome_mail_key'])) { // just verified or an error occurred $user = &$store->user->open ($me->name); if ($user['mail'] == '') return $document->dataMerge ('userHome_mail_contentFail'); if ($document->user->name == $me->name) return $document->dataMerge ('userHome_mail_contentVerified'); $document->user = $me; return $document->dataMerge ('userHome_mail_contentReady'); } // verified or error $key = $document->actions['key'][1]; if ($key == $me->data['flags']['userHome_mail_key']) { // success $user = &$store->user->open ($me->name); $user['mail'] = $me->data['local']['mail']; unset ($me->data['flags']['userHome_mail_key']); $document->user = $me; $document->dataMerge ('userHome_mail_contentVerified'); return; } // success } // function action_mail_check } // class eclApp_userHome_mail //!eof:library/userHome/mail/eclApp_userHome_mail.php; //!file:library/userHome/password/eclApp_userHome_password.php; class eclApp_userHome_password { // class eclApp_userHome_password static function is_child ($me, $name) { // function is_child if ($name == '-password') return true; if ($name == '-recover-password') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array ('-password'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('userHome_password_content'); $me->isDomain = true; if ($me->name == '-recover-password') $me->access = 0; else $me->access = 4; } // function constructor_helper static function dispatch ($document) { // function dispatch global $store; $me = $document->application; if ($me->name == '-recover-password') { // test token $document->user = $me->parent; if (!isset ($document->actions['token'][1])) return $document->dataMerge ('userHome_password_msgInvalidToken'); if (!isset ($me->parent->data['flags']['userRecoverPassword_token'])) return $document->dataMerge ('userHome_password_msgInvalidToken'); if ($document->actions['token'][1] != $me->parent->data['flags']['userRecoverPassword_token']) return $document->dataMerge ('userHome_password_msgInvalidToken'); $formulary = $document->createFormulary ('userHome_password_editRecoverPassword', $me->parent->data, 'change'); $formulary->action = '_token-' . $document->actions['token'][1]; } // test token else $formulary = $document->createFormulary ('userHome_password_edit', $me->parent->data, 'change'); if ($formulary->command ('cancel')) { // close pop up $document->dataReplace ('layouts/dialog_cancel'); } // close pop up if ($formulary->command ('save') and $formulary->save ()) { // change password $user = &$store->user->open ($document->user->name); $user['password'] = $formulary->data['password']; if ($me->name == '-recover-password') { // close dialog $document->dataReplace ('userHome_password_msgPasswordRecovered'); unset ($me->parent->data['flags']['userRecoverPassword_token']); return; } // close dialog $document->mod->humperstilshen->alert ('userHome_password_alertPasswordChanged'); } // change password if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); $document->mod->formulary = $formulary; } // function dispatch } // class eclApp_userHome_password //!eof:library/userHome/password/eclApp_userHome_password.php; //!file:library/userHome/personal/eclApp_userHome_personal.php; class eclApp_userHome_personal { // class eclApp_userHome_personal static function is_child ($me, $name) { // function is_child if ($name == '-personal') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array ('-personal'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('userHome_personal_content'); $me->access = 4; $me->isDomain = true; } // function constructor_helper static function dispatch ($document) { // function dispatch global $store; $me = $document->application->parent; $formulary = $document->createFormulary ('userHome_personal_edit', $me->data, 'personal'); if ($formulary->command ('cancel')) { // close pop up $document->dataReplace ('layouts/dialog_cancel'); } // close pop up if ($formulary->command ('save') and $formulary->save ()) { // save $me->data = $formulary->data; $document->mod->humperstilshen->alert ('userHome_personal_alertDataUpdated'); } // save if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); $document->mod->formulary = $formulary; } // function dispatch } // class eclApp_userHome_personal //!eof:library/userHome/personal/eclApp_userHome_personal.php; //!file:library/userHome/phone/eclApp_userHome_phone.php; class eclApp_userHome_phone { // class eclApp_userHome_phone static function is_child ($me, $name) { // function is_child if (INTEGRATION_SMS_ENABLE and $name == '-phone') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names if (INTEGRATION_SMS_ENABLE) return array ('-phone'); return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('userHome_phone_content'); $me->isDomain = true; $me->access = 4; } // function constructor_helper static function dispatch ($document) { // function dispatch global $store; $me = $document->application->parent; $user = $store->user->open ($document->user->name); if ($document->actions ('phone', 'input')) return self::action_phone_input ($document); if ($user['phone'] == '' and !isset ($me->data['flags']['userHome_phone_check'])) return self::action_phone_input ($document); if ($user['phone'] == '' and isset ($me->data['flags']['userHome_phone_check'])) return self::action_phone_check ($document); self::action_phone_verified ($document); } // function dispatch static function action_phone_input ($document) { // function action_phone_input global $io, $store; $me = $document->user; $formulary = $document->createFormulary ('userHome_phone_input', $me->data, 'input'); $formulary->action = '_phone-input'; if ($formulary->command ('next') and $formulary->save ()) { // save $user = &$store->user->open ($document->user->name); $me->data = $formulary->data; $newNumber = $me->data['local']['phone_area'] . $me->data['local']['phone_number']; if ($newNumber == $user['phone']) return self::action_phone_verified ($document); $user['phone'] = ''; $code = mt_rand (1000, 9999); $me->data['flags']['userHome_phone_check'] = $code; $io->sms->send (array ( 'number' => $newNumber, 'message' => strval ($code) )); return self::action_phone_check ($document); } // save $document->mod->formulary = $formulary; if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); } // function action_phone_input static function action_phone_check ($document) { // function action_phone_check global $store; $me = $document->user; $formulary = $document->createFormulary ('userHome_phone_check', array (), 'check'); if ($formulary->command ('next') and $formulary->save ()) { // save if ($formulary->data['code'] == $me->data['flags']['userHome_phone_check']) { // verified $user = &$store->user->open ($me->name); $user['phone'] = $me->data['local']['phone_area'] . $me->data['local']['phone_number']; unset ($me->data['flags']['userHome_phone_check']); return self::action_phone_verified ($document); } // verified $document->mod->humperstilshen->alert ('userHome_phone_alertInvalidCode'); } // save $document->mod->formulary = $formulary; if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); } // function action_phone_check static function action_phone_verified ($document) { // function action_phone_verified global $store; $me = $document->user; $formulary = $document->createFormulary ('userHome_phone_verified', array (), 'verified'); if ($formulary->command ('cancel')) return $document->dataReplace ('layouts/dialog_cancel'); if ($formulary->command ('update')) return self::action_phone_input ($document); $document->mod->formulary = $formulary; $document->dataReplace ('userHome_phone_verified'); $document->data['number'] = $me->data['local']['phone_area'] . ' - ' . $me->data['local']['phone_number']; } // function action_phone_verified } // class eclApp_userHome_phone //!eof:library/userHome/phone/eclApp_userHome_phone.php; //!file:library/userHome/welcome/eclApp_userHome_welcome.php; class eclApp_userHome_welcome { // class eclApp_userHome_welcome static function is_child ($me, $name) { // function is_child if ($name == '-welcome') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper $me->access = 4; } // function constructor_helper static function dispatch ($document) { // function dispatch global $store, $system; $me = $document->user; if (isset ($me->data['local']['gender']) and $document->user->data['local']['gender'] == 'female') $gender = 'F'; else $gender = 'M'; if ($me->name == ADMIN_IDENTIFIER) $status = STATUS_ADMIN; else $status = $store->user->getStatus ($me->name); if ($status == STATUS_REMOVED and !$document->access (4, $system->groups)) { // disabled $document->session = array ('session_time' => TIME); $document->mod->humperstilshen->alert ('userHome_welcome_disabled' . $gender); } // disabled else { // welcome if ($document->pathway[0] == SYSTEM_PROFILES_URI) $document->mod->humperstilshen->alert ('userHome_welcome_welcomeToProfile'); else $document->mod->humperstilshen->alert ('userHome_welcome_welcome'); } // welcome } // function dispatch } // class eclApp_userHome_welcome //!eof:library/userHome/welcome/eclApp_userHome_welcome.php; //!file:library/userIndex/eclApp_userIndex.php; class eclApp_userIndex { // class eclApp_userIndex static function is_child ($me, $name) { // function is_child if ($name == '') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'section'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array (''); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('userIndex_content'); unset ($me->pathway[1]); } // function constructor_helper static function dispatch ($document) { // function dispatch $document->mod->list = new eclMod_userIndex_list ($document); } // function dispatch } // class eclApp_userIndex //!eof:library/userIndex/eclApp_userIndex.php; //!file:library/userIndex/eclMod_userIndex_list.php; class eclMod_userIndex_list { // class eclMod_userIndex_list public $document; public function __construct ($document) { // function __construct $this->document = $document; } // function __construct public function setModule ($mod, $arguments) { // function setModule global $store; $document = $this->document; $names = $store->user->childrenNames (); $userId; $name; $data; $pathway; $row = $mod->appendChild (); foreach ($names as $name) { // each name $userId = $store->user->getId ($name); $data = $store->userContent->open ($userId, '-register'); if (!$data) $data = $store->userContent->open ($userId, '-index'); $pathway = array (SYSTEM_PROFILES_URI, $name); $row->appendChild ($data) ->swapTitle () ->url ($pathway); } // each name $mod->data = $store->control->read ('modules/list'); $mod->enabled = true; } // function setModule } // class eclMod_userIndex_list //!eof:library/userIndex/eclMod_userIndex_list.php; //!file:library/userJoin/eclApp_userJoin.php; class eclApp_userJoin { // class eclApp_userJoin static function is_child ($me, $name) { // function is_child if ($name == '-join') return true; return false; } // function is_child static function get_menu_type ($me) { // function get_menu_type return 'hidden'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names return array ('-join'); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('userJoin_content'); $me->isDomain = true; } // function constructor_helper static function dispatch ($document) { // function dispatch $session = &$document->session; if (!isset ($session['page'])) $document->session['page'] = 0; do { // process pages $process = 'page' . $document->session['page']; } // process pages while (self::$process ($document) != 'stop'); } // function dispatch static function page0 ($document) { // function page0 global $store; if ($domainId = $store->domain->getId (SYSTEM_DEFAULT_DOMAIN_NAME) and $id = $store->domainContent->findMarker ($domainId, 5)) { // service terms found $formulary = $document->createFormulary ('userJoin_page0', $document->session, 'page0'); if ($formulary->command ('next') and $formulary->save () and isset ($formulary->data['agree'])) { // go page 1 $document->session = $formulary->data; $document->session['page'] = 1; return 'go next'; } // go page 1 $document->dataReplace ('userJoin_page0'); $document->mod->formulary = $formulary; return 'stop'; } // service terms found $document->session['page'] = 1; return 'go next'; } // function page0 static function page1 ($document) { // function page1 global $store, $system; if (isset ($document->session['agree'])) $formulary = $document->createFormulary ('userJoin_page1previous', $document->session, 'page1'); else $formulary = $document->createFormulary ('userJoin_page1', $document->session, 'page1'); if ($formulary->command ('previous')) { // previous $formulary->save (); $document->session = $formulary->data; $document->session['page'] = 0; return 'go next'; } // previous if ($formulary->command ('next') and $formulary->save ()) { // next $user['name'] = $formulary->data['name']; $user['password'] = $formulary->data['password']; $user['status'] = 1; $userId = $store->user->insert ($user); $data = $formulary->data; $data['mode'] = MODE_DOMAIN; $data['name'] = '-register'; $store->userContent->insert ($userId, $data); // login $document->session['user_id'] = $userId; $document->session['user_name'] = $user['name']; $document->session['time'] = TIME; $document->user = $system->child (SYSTEM_PROFILES_URI)->child ($document->session['user_name']); $document->mod->humperstilshen->alert ('userJoin_alertWelcome'); $document->session['page'] = 2; return 'go next'; } // next $document->dataReplace ('userJoin_page1'); $document->mod->formulary = $formulary; if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); return 'stop'; } // function page1 static function page2 ($document) { // function page2 global $store; $formulary = $document->createFormulary ('userJoin_page2', $document->user->data, 'page2'); if ($formulary->command ('cancel') and $formulary->save ()) { // close $document->user->data = $formulary->data; $document->dataReplace ('layouts/dialog_close'); return 'stop'; } // close $document->dataReplace ('userJoin_page2'); $document->mod->formulary = $formulary; if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); return 'stop'; } // function page2 } // class eclApp_userJoin //!eof:library/userJoin/eclApp_userJoin.php; //!file:library/userJoin/eclFilter_userJoin_termsView.php; class eclFilter_userJoin_termsView { // class eclFilter_userJoin_termsView static function create ($fieldName, $control, $formulary) { // function create global $store; $control['type'] = 'content'; if ($domainId = $store->domain->getId (SYSTEM_DEFAULT_DOMAIN_NAME) and $id = $store->domainContent->findMarker ($domainId, 5)) { // terms found $data = $store->domainContent->openById ($domainId, $id); $formulary->appendChild ($control, $data); } // terms found } // function create static function save ($fieldName, $control, $formulary) { // function save } // function save } // class eclFilter_userJoin_termsView //!eof:library/userJoin/eclFilter_userJoin_termsView.php; //!file:library/userRecoverPassword/eclApp_userRecoverPassword.php; class eclApp_userRecoverPassword { // class eclApp_userRecoverPassword static function is_child ($me, $name) { // function is_child if (INTEGRATION_SMTP_ENABLE and $name == '-recover-password') return true; return false; } // function is_child static function get_menu_type () { // function get_menu_type return 'post'; } // function get_menu_type static function get_children_names ($me) { // function get_children_names if (INTEGRATION_SMTP_ENABLE) return array ('-recover-password'); return array (); } // function get_children_names static function constructor_helper ($me) { // function constructor_helper global $store; $me->data = $store->control->read ('userRecoverPassword_content'); $me->isDomain = true; } // function constructor_helper static function dispatch ($document) { // function dispatch global $system; $formulary = $document->createFormulary ('userRecoverPassword_edit'); if ($formulary->save ()) { // save formulary $token = md5 (mt_rand () . TIME); $user = $system->child (SYSTEM_PROFILES_URI)->child ($formulary->data['identifier']); $user->data['flags']['userRecoverPassword_token'] = $token; $template = clone $document; $template->user = $user; $template->charset = 'UTF-8'; $template->dataReplace ('userRecoverPassword_messageTemplate'); $template->data['url'] = $document->url (array (SYSTEM_PROFILES_URI, $template->user->name, '-recover-password'), true, '_token-' . $token); $template->render (); $subject = $template->selectLanguage ($template->textMerge ($template->data['text']['title'], ' ', $user->data['text']['caption'])); $mail = $document->createMail () ->subject ($subject[1]) ->to ($formulary->data['local']['mail']) ->contentHTML ($template->buffer); $errorMsg = $mail->send (); if ($errorMsg) { // mail error $document->mod->humperstilshen->alert ($errorMsg); return; } // mail error $document->dataMerge ('userRecoverPassword_msgMailSent'); $document->data['mail_from'] = INTEGRATION_SMTP_FROM; return; } // save formulary $document->mod->formulary = $formulary; if ($formulary->errorMsg) $document->mod->humperstilshen->alert ($formulary->errorMsg); } // function dispatch } // class eclApp_userRecoverPassword //!eof:library/userRecoverPassword/eclApp_userRecoverPassword.php; //!file:library/userRecoverPassword/eclFilter_userRecoverPassword_identifier.php; class eclFilter_userRecoverPassword_identifier { // class eclFilter_userRecoverPassword_identifier static function create ($fieldName, $control, $formulary) { // function create $control['name'] = $fieldName; // type if (isset ($control['flags']['type'])) $control['type'] = $control['flags']['type']; else $control['type'] = 'text'; $formulary->appendChild ($control); } // function create static function save ($fieldName, $control, $formulary) { // function save global $store; if (!isset ($formulary->received[$fieldName]) or !preg_match ('/^[a-z0-9_-]+$/', $formulary->received[$fieldName])) return $formulary->setRequiredMsg ($control, $fieldName, 'userRecoverPassword_editAdminNotFound'); $userId = $store->user->getId ($formulary->received[$fieldName]); // required if (!$userId) return $formulary->setRequiredMsg ($control, $fieldName, 'userRecoverPassword_editAdminNotFound'); $data = $store->userContent->open ($userId, '-register'); if (!$data or !isset ($data['local']['mail'])) return $formulary->setRequiredMsg ($control, $fieldName, 'userRecoverPassword_editAdminMailNotFound'); $formulary->data = $data; $formulary->data['identifier'] = $formulary->received[$fieldName]; } // function save } // class eclFilter_userRecoverPassword_identifier //!eof:library/userRecoverPassword/eclFilter_userRecoverPassword_identifier.php; //!packager:end_of_files // Input and output drivers $io = new eclEngine_io (); // Data managers $store = new eclEngine_store(); // Applications tre $system = new eclEngine_application (); // The document $document = new eclEngine_document (); $document->route($io->request); $document->sessionStart ($document->application->ignoreSession ()); $document->dispatch(); $document->render(); $store->close(); $io->close(); $io->request->giveBack ($document); __HALT_COMPILER();a:2:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:7:"default";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:3:{i:1;s:39:"Administrao do [text $system.caption]";i:2;i:1;i:6;i:1;}s:2:"en";a:3:{i:1;s:37:"[text $system.caption] Administration";i:2;i:1;i:6;i:1;}}s:5:"title";a:2:{s:2:"pt";a:3:{i:1;s:39:"Administrao do [text $system.caption]";i:2;i:1;i:6;i:1;}s:2:"en";a:3:{i:1;s:37:"[text $system.caption] Administration";i:2;i:1;i:6;i:1;}}s:11:"description";a:1:{s:2:"pt";a:3:{i:1;s:81:"Oferece um conjunto de ferramentas para a administrao do [text $system.caption]";i:2;i:1;i:6;i:1;}}}}a:2:{s:5:"flags";a:6:{s:4:"type";s:10:"text_small";s:6:"filter";s:20:"admin_constants_flag";s:6:"target";s:13:"ADMIN_CAPTION";s:10:"field_name";s:13:"ADMIN_CAPTION";s:10:"value_cast";s:4:"free";s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:4:"Nome";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"Name";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:4:"Nome";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"Name";}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:35:"Nome ou apelido do administrador.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:3:{s:5:"flags";a:6:{s:4:"type";s:6:"select";s:6:"filter";s:22:"admin_constants_select";s:6:"target";s:12:"ADMIN_GENDER";s:10:"field_name";s:12:"ADMIN_GENDER";s:10:"value_cast";s:6:"string";s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:19:"Forma de tratamento";i:2;i:1;}s:2:"en";a:1:{i:1;s:6:"Gender";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:19:"Forma de tratamento";i:2;i:1;}s:2:"en";a:1:{i:1;s:6:"Gender";}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:140:"A forma como o administrador ou a administradora prefere ser tratado - no necessariamente o sexo constante no seu registro de nascimento!#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}s:8:"children";a:2:{i:0;s:16:"~adminGenderMale";i:1;s:18:"~adminGenderFemale";}}a:2:{s:5:"flags";a:1:{s:5:"value";s:6:"female";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Senhora";i:2;i:1;}s:2:"en";a:2:{i:1;s:3:"Mis";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:4:"male";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Senhor";i:2;i:1;}s:2:"en";a:2:{i:1;s:6:"Mister";i:2;i:1;}}}}a:2:{s:5:"flags";a:6:{s:4:"type";s:4:"text";s:6:"filter";s:20:"admin_constants_flag";s:6:"target";s:13:"ADMIN_HELPERS";s:10:"field_name";s:13:"ADMIN_HELPERS";s:10:"value_cast";s:6:"string";s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Ajudantes";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Helpers";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:9:"Ajudantes";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Helpers";}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:383:"#r#nCaso tenha cadastrado outros usurios e deseja dar-lhes status de administrador do sistema, escreva neste campo o identificador ou uma lista de identificadores separados por espao.#r#n#r#nLembre que o status de administrador permite acesso a todos os ambientes e ferramentas do sistema. Caso queira que algum usurio administre um domnio, inscreva-o como administrador do domnio.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:2:{s:5:"flags";a:6:{s:4:"type";s:10:"text_small";s:6:"filter";s:20:"admin_constants_flag";s:6:"target";s:16:"ADMIN_IDENTIFIER";s:10:"field_name";s:16:"ADMIN_IDENTIFIER";s:10:"value_cast";s:6:"string";s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Identificador";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Identifier";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:13:"Identificador";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Identifier";}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:250:"Este o identificador que o administrador dever informar ao conectar-se.#r#n#r#nLembre-se de que o administrador possui direitos privilegiados em todos os mdulos do sistema. Previna que pessoas no autorizadas utilizem esta informao indevidamente.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:2:{s:5:"flags";a:6:{s:4:"type";s:4:"text";s:6:"filter";s:20:"admin_constants_flag";s:6:"target";s:10:"ADMIN_MAIL";s:10:"field_name";s:10:"ADMIN_MAIL";s:10:"value_cast";s:4:"free";s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"E-mail";i:2;i:1;}s:2:"en";a:1:{i:1;s:6:"E-mail";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:6:"E-mail";i:2;i:1;}s:2:"en";a:1:{i:1;s:6:"E-mail";}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:461:"O endereo de e-mail utilizado para contatar o administrador.#r#n#r#nCaso seja configurada uma conta de correio eletrnico para que o sistema possa enviar mensagens via SMTP, o administrador poder receber alertas automticos do sistema.#r#n#r#nCertifique-se de que o endereo de e-mail seja informado corretamente. Lembre-se de que, para receber mensagens do sistema, sua caixa de mensagens no pode estar cheia nem poder ter as mensagens bloqueadas pelo anti-spam.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:2:{s:5:"flags";a:5:{s:4:"type";s:13:"text_password";s:6:"filter";s:24:"admin_constants_password";s:6:"target";s:14:"ADMIN_PASSWORD";s:10:"field_name";s:14:"ADMIN_PASSWORD";s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Senha";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Password";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:5:"Senha";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Password";}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:375:"Esta ser a senha que o administrador dever utilizar ao conectar-se ao sistema.#r#n#r#nA senha no pode conter caracteres especiais, pois isto poder acarretar problemas ao tentar conectar-se ao sistema utilizando um conjunto de caracteres diferente do atual.#r#n#r#nTodavia, recomendamos misturar letras maisculas, letras minsculas e nmeros, evitando o uso de palavras comuns.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Repetir senha";i:2;i:1;}s:2:"en";a:1:{i:1;s:15:"Repeat password";}}}}a:2:{s:5:"flags";a:6:{s:4:"type";s:9:"text_tiny";s:6:"filter";s:20:"admin_constants_flag";s:6:"target";s:7:"CHR_FNS";s:10:"field_name";s:7:"CHR_FNS";s:10:"value_cast";s:6:"string";s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:29:"Separador em nome de arquivos";i:2;i:1;}s:2:"en";a:1:{i:1;s:23:"Separator for filenames";}}s:5:"title";a:1:{s:2:"pt";a:2:{i:1;s:30:"Separador em nomes de arquivos";i:2;i:1;}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:101:"#r#nUm servidor Microsoft no aceitou o caractre "+" na URL.#r#n#r#nA soluo foi substitu-lo por "__".#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:3:{s:5:"flags";a:6:{s:4:"type";s:6:"select";s:6:"filter";s:20:"admin_constants_flag";s:6:"target";s:15:"DATABASE_CLIENT";s:10:"field_name";s:15:"DATABASE_CLIENT";s:10:"value_cast";s:6:"string";s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Cliente";i:2;i:1;}s:2:"en";a:1:{i:1;s:6:"Client";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:6:"Client";i:2;i:1;}s:2:"en";a:1:{i:1;s:6:"Client";}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:251:"O cliente de banco de dados disponvel no servidor.#r#n#r#nO sistema utiliza a abstrao de banco de dados DBO do PHP. Porm, apenas o MySQL foi testado.#r#n#r#nPara suporte a outros clientes de banco de dados, atualizaes no sistema podem ser necessrias.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}s:8:"children";a:2:{i:0;s:21:"~databaseClientSqlite";i:1;s:20:"~databaseClientMysql";}}a:2:{s:5:"flags";a:1:{s:5:"value";s:5:"mysql";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"MySQL";i:2;i:1;}s:2:"en";a:2:{i:1;s:5:"MySQL";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:6:"sqlite";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"SQLite";i:2;i:1;}s:2:"en";a:2:{i:1;s:6:"SQLite";i:2;i:1;}}}}a:2:{s:5:"flags";a:5:{s:4:"type";s:10:"text_small";s:6:"filter";s:20:"admin_constants_flag";s:6:"target";s:11:"DATABASE_DB";s:10:"field_name";s:11:"DATABASE_DB";s:10:"value_cast";s:6:"string";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:14:"Banco de dados";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Database";}}}}a:2:{s:5:"flags";a:6:{s:4:"type";s:8:"checkbox";s:6:"filter";s:20:"admin_constants_flag";s:6:"target";s:23:"DATABASE_DISPLAY_ERRORS";s:10:"field_name";s:23:"DATABASE_DISPLAY_ERRORS";s:10:"value_cast";s:4:"bool";s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:42:"Enviar mensagens de erros para o navegador";i:2;i:1;}s:2:"en";a:2:{i:1;s:35:"Send errors messages to the browser";i:2;i:1;}}s:5:"title";a:1:{s:2:"pt";a:2:{i:1;s:42:"Enviar mensagens de erros para o navegador";i:2;i:1;}}s:7:"content";a:1:{s:2:"pt";a:3:{i:1;s:351:"#r#nQuando ativada, esta configurao faz com que qualquer erro do banco de dados seja impresso diretamente no navegador.#r#n#r#nIsto facilita o desenvolvimento. Porm, em ambientes de produo, recomendamos desativar esta opo.#r#n#r#nAs mensagens de erro podem expor informaes importantes do seu sistema, que podero ser exploradas em ataques contra ele.#r#n";i:2;i:1;i:4;i:1;}}}}a:2:{s:5:"flags";a:6:{s:4:"type";s:8:"checkbox";s:6:"filter";s:20:"admin_constants_flag";s:6:"target";s:16:"DATABASE_ENABLED";s:10:"field_name";s:16:"DATABASE_ENABLED";s:10:"value_cast";s:4:"bool";s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:23:"Ativar o banco de dados";i:2;i:1;}s:2:"en";a:1:{i:1;s:15:"Database enable";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:23:"Ativar o banco de dados";i:2;i:1;}s:2:"en";a:1:{i:1;s:15:"Database enable";}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:418:"Ativa ou desativa o uso de banco de dados.#r#n#r#nO banco de dados necessrio para armazenar o contedo das pginas dos usurios. Desativando esta opo, recursos importantes do sistema no estaro disponveis.#r#n#r#nAs informaes sobre a conexo com o banco de dados devem ser fornecidas pelo servio de hospedagem. Caso no possua estas informaes, entre em contato com o suporte tcnico do seu servio de hospedagem.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:7:"default";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:25:"Banco de dados desativado";i:2;i:1;}s:2:"en";a:1:{i:1;s:17:"Database disabled";}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:147:"O acesso ao banco de dados est desativado.#r#n#r#nAlguns recursos do [text $system.caption] que dependem do banco de dados permanecero desativados.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:5:"crash";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"A conexo falhou";i:2;i:1;}s:2:"en";a:1:{i:1;s:20:"The connection fails";}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:114:"O [text $system.caption] no foi capaz de conectar-se ao banco de dados utilizando as informaes do formulrio.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:5:"happy";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Sucesso!";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Success!";}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:70:"O [text $system.caption] conectou-se ao banco de dados corretamente.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:2:{s:5:"flags";a:5:{s:4:"type";s:10:"text_small";s:6:"filter";s:20:"admin_constants_flag";s:6:"target";s:13:"DATABASE_HOST";s:10:"field_name";s:13:"DATABASE_HOST";s:10:"value_cast";s:6:"string";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:4:"Host";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"Host";}}}}a:2:{s:5:"flags";a:6:{s:4:"type";s:8:"checkbox";s:6:"filter";s:20:"admin_constants_flag";s:6:"target";s:19:"DATABASE_LOG_ERRORS";s:10:"field_name";s:19:"DATABASE_LOG_ERRORS";s:10:"value_cast";s:4:"bool";s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:33:"Registrar erros no arquivo de log";i:2;i:1;}s:2:"en";a:2:{i:1;s:33:"Register errors into the log file";i:2;i:1;}}s:5:"title";a:1:{s:2:"pt";a:2:{i:1;s:33:"Registrar erros no arquivo de log";i:2;i:1;}}s:7:"content";a:1:{s:2:"pt";a:3:{i:1;s:75:"Esta configurao registra qualquer erro do banco de dados em um arquivo.#r#n";i:2;i:1;i:4;i:1;}}}}a:2:{s:5:"flags";a:5:{s:4:"type";s:10:"text_small";s:6:"filter";s:20:"admin_constants_flag";s:6:"target";s:17:"DATABASE_PASSWORD";s:10:"field_name";s:17:"DATABASE_PASSWORD";s:10:"value_cast";s:6:"string";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Senha";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Password";}}}}a:2:{s:5:"flags";a:6:{s:4:"type";s:10:"text_small";s:6:"filter";s:20:"admin_constants_flag";s:6:"target";s:15:"DATABASE_PREFIX";s:10:"field_name";s:15:"DATABASE_PREFIX";s:10:"value_cast";s:6:"string";s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:19:"Prefixo das tabelas";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Tables prefix";}}s:5:"title";a:1:{s:2:"pt";a:2:{i:1;s:20:"Prefixos das tabelas";i:2;i:1;}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:426:"#r#nAcrescentando um prefixo aos nomes de tabelas, voc poder evitar conflitos com outras instalaes do [text $system.caption] compartilhando um mesmo banco de dados.#r#n#r#nUtilize o mesmo prefixo de uma instalao anterior caso queira reutilizar os dados das tabelas j existentes. Neste caso, certifique-se de que os formatos das tabelas utilizadas na outra instalao so compatveis verso que voc est instalando agora.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:2:{s:5:"flags";a:5:{s:4:"type";s:10:"text_small";s:6:"filter";s:20:"admin_constants_flag";s:6:"target";s:13:"DATABASE_USER";s:10:"field_name";s:13:"DATABASE_USER";s:10:"value_cast";s:6:"string";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Usurio";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"User";}}}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:5:"error";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:14:"Valor invlido";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Invalid value";}}s:7:"content";a:1:{s:2:"pt";a:5:{i:1;s:180:"O valor informado "[$value]" no um valor vlido para o campo "[text $field_caption]".#r#n#r#nUtilize somente letras minsculas (a-z) no acentuadas, nmeros e os caractres _ e -.#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:5:"error";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:22:"Nome de pasta invlido";i:2;i:1;}s:2:"en";a:1:{i:1;s:19:"Invalid folder name";}}s:7:"content";a:1:{s:2:"pt";a:5:{i:1;s:120:"O valor informado "[$value]" no um nome de pasta vlido.#r#n#r#nUtilize somente letras minsculas (a-z) no acentuadas.#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:5:"error";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:22:"Nome de pasta invlido";i:2;i:1;}s:2:"en";a:1:{i:1;s:19:"Invalid folder name";}}s:7:"content";a:1:{s:2:"pt";a:5:{i:1;s:141:"Uma pasta com o nome "[$value]" est sendo utilizada para outra finalidade.#r#n#r#nEscolha um novo nome para a pasta "[text $field_caption]".#r#n#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:2:{s:5:"flags";a:5:{s:4:"type";s:10:"text_small";s:6:"filter";s:22:"admin_constants_folder";s:6:"target";s:17:"FOLDER_COMPONENTS";s:10:"field_name";s:17:"FOLDER_COMPONENTS";s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Componentes";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Components";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:11:"Componentes";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Components";}}s:7:"content";a:1:{s:2:"pt";a:3:{i:1;s:253:"Nesta pasta ficaro armazenados os componentes instalados.#r#n#r#nO nome original desta pasta "components/".#r#n#r#nAntes de remover algum componente ou a pasta de componentes, verifique se os componentes em uso necessitam de aes prvias antes da remoo.#r#n";i:2;i:1;i:4;i:1;}}}}a:2:{s:5:"flags";a:5:{s:4:"type";s:10:"text_small";s:6:"filter";s:22:"admin_constants_folder";s:6:"target";s:15:"FOLDER_DATABASE";s:10:"field_name";s:15:"FOLDER_DATABASE";s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:14:"Banco de dados";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Database";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:14:"Banco de dados";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Database";}}s:7:"content";a:1:{s:2:"pt";a:3:{i:1;s:339:"Esta pasta utilizada para armazenar arquivos relacionados ao banco de dados.#r#n#r#nO nome original desta pasta "database/".#r#n#r#nSe voc escolher utilizar SQLite para gerir seus dados, os arquivos de dados ficaro armazenados nesta pasta. Portanto, removendo-se esta pasta, dados de usurios e dos domnios sero permanentemente perdidos.#r#n";i:2;i:1;i:4;i:1;}}}}a:2:{s:5:"flags";a:5:{s:4:"type";s:10:"text_small";s:6:"filter";s:22:"admin_constants_folder";s:6:"target";s:14:"FOLDER_DOMAINS";s:10:"field_name";s:14:"FOLDER_DOMAINS";s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Domnios";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Domains";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:8:"Domnios";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Domains";}}s:7:"content";a:1:{s:2:"pt";a:3:{i:1;s:226:"Esta pasta acomoda os arquivos dos domnios.#r#n#r#nDentro desta pasta so criadas subpastas, uma para cada subdomnio.#r#n#r#nO nome das subpastas correspondem aos nomes dos subdomnios.#r#n#r#nO nome original desta pasta "domains/".#r#n";i:2;i:1;i:4;i:1;}}}}a:2:{s:5:"flags";a:5:{s:4:"type";s:10:"text_small";s:6:"filter";s:22:"admin_constants_folder";s:6:"target";s:13:"FOLDER_ENGINE";s:10:"field_name";s:13:"FOLDER_ENGINE";s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:26:"Engine (ncleo do sistema)";i:2;i:1;}s:2:"en";a:1:{i:1;s:22:"Engine (system kernel)";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:26:"Engine (ncleo do sistema)";i:2;i:1;}s:2:"en";a:1:{i:1;s:22:"Engine (system kernel)";}}s:7:"content";a:1:{s:2:"pt";a:3:{i:1;s:201:"Nesta pasta so armazenados os scripts principais do sistema.#r#n#r#nO nome original desta pasta "engine/".#r#n#r#nSe o sistema estiver "empacotado", esta pasta pode no estar presente ou pode estar vazia.#r#n";i:2;i:1;i:4;i:1;}}}}a:2:{s:5:"flags";a:5:{s:4:"type";s:10:"text_small";s:6:"filter";s:22:"admin_constants_folder";s:6:"target";s:14:"FOLDER_LIBRARY";s:10:"field_name";s:14:"FOLDER_LIBRARY";s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:21:"Biblioteca de mdulos";i:2;i:1;}s:2:"en";a:1:{i:1;s:15:"Modules library";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:21:"Biblioteca de mdulos";i:2;i:1;}s:2:"en";a:1:{i:1;s:15:"Modules library";}}s:7:"content";a:1:{s:2:"pt";a:3:{i:1;s:270:"Nesta pasta so armazenados os scripts dos mdulos.#r#n#r#nVoc poder acrescentar novos mdulos ao sistema adicionando-os nesta pasta.#r#n#r#nO nome original desta pasta "library/".#r#nSe o sistema estiver "empacotado", esta pasta pode no estar presente ou pode estar vazia.#r#n";i:2;i:1;i:4;i:1;}}}}a:2:{s:5:"flags";a:5:{s:4:"type";s:10:"text_small";s:6:"filter";s:22:"admin_constants_folder";s:6:"target";s:15:"FOLDER_PROFILES";s:10:"field_name";s:15:"FOLDER_PROFILES";s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:18:"Perfis de usurios";i:2;i:1;}s:2:"en";a:1:{i:1;s:14:"Users profiles";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:18:"Perfis de usurios";i:2;i:1;}s:2:"en";a:1:{i:1;s:14:"Users profiles";}}s:7:"content";a:1:{s:2:"pt";a:3:{i:1;s:235:"Esta pasta acomoda os arquivos dos usurios.#r#n#r#nDentro desta pasta sero criadas subpastas, uma para cada usurio.#r#n#r#nOs nomes das subpastas correspondem aos identificadores dos usurios.#r#n#r#nO nome original desta pasta "profiles/".#r#n";i:2;i:1;i:4;i:1;}}}}a:2:{s:5:"flags";a:5:{s:4:"type";s:10:"text_small";s:6:"filter";s:22:"admin_constants_folder";s:6:"target";s:13:"FOLDER_SHARED";s:10:"field_name";s:13:"FOLDER_SHARED";s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:23:"Arquivos compartilhados";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Shared files";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:23:"Arquivos compartilhados";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Shared files";}}s:7:"content";a:1:{s:2:"pt";a:3:{i:1;s:375:"Os arquivos compartilhados podem ser utilizados como complementos para a construo de layouts e como multi-mdia auxiliar para todos os domnios.#r#n#r#nVoc poder acrescentar novos layouts e mdias ao sistema adicionando-os nesta pasta.#r#n#r#nO nome original desta pasta "shared/".#r#n#r#nSe o sistema estiver "empacotado", esta pasta pode no estar presente ou pode estar vazia.#r#n";i:2;i:1;i:4;i:1;}}}}a:2:{s:5:"flags";a:5:{s:4:"type";s:10:"text_small";s:6:"filter";s:22:"admin_constants_folder";s:6:"target";s:16:"FOLDER_TEMPLATES";s:10:"field_name";s:16:"FOLDER_TEMPLATES";s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:19:"Arquivos de modelos";i:2;i:1;}s:2:"en";a:1:{i:1;s:14:"Template files";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:19:"Arquivos de modelos";i:2;i:1;}s:2:"en";a:1:{i:1;s:14:"Template files";}}s:7:"content";a:1:{s:2:"pt";a:3:{i:1;s:498:"#r#n possvel criar, instalar ou editar seus prprios blocos para a construo dos documentos em cada ambiente. Noentanto, na falta de algum bloco ou mesmo na ausncia total de blocos personalizados, o sistema usar seus prprios blocos, disponveis nesta pasta. #r#n#r#nVoc poder acrescentar novos blocos de construo ao sistema adicionando-os nesta pasta.#r#n#r#nO nome original desta pasta "templates/".#r#n#r#nSe o sistema estiver "empacotado", esta pasta pode no estar presente ou pode estar vazia.#r#n";i:2;i:1;i:4;i:1;}}}}a:2:{s:5:"flags";a:6:{s:4:"type";s:10:"text_small";s:6:"filter";s:20:"admin_constants_flag";s:6:"target";s:16:"SYSTEM_ADMIN_URI";s:10:"field_name";s:16:"SYSTEM_ADMIN_URI";s:10:"value_cast";s:6:"string";s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:3:{i:1;s:54:"Caminho para "Administrao do [text $system.caption]"";i:2;i:1;i:6;i:1;}s:2:"en";a:2:{i:1;s:48:"Path to "[text $profile.caption] Administration"";i:6;i:1;}}s:5:"title";a:2:{s:2:"pt";a:3:{i:1;s:54:"Caminho para "Administrao do [text $system.caption]"";i:2;i:1;i:6;i:1;}s:2:"en";a:2:{i:1;s:48:"Path to "[text $profile.caption] Administration"";i:6;i:1;}}s:7:"content";a:1:{s:2:"pt";a:3:{i:1;s:594:"#r#nEste o caminho para a rea administrativa da Ecolabore Engine. Inicialmente o caminho "admin".#r#n#r#nPara acessar o painel administrativo em diferentes configuraes, veja os exemplos abaixo:#r#n#r#n* Em modo "Portal": www.admin.dominio.com#r#n* Em modo "Mltiplos ambientes": www.dominio.com/admin ou localhost/admin#r#n* Em "Ambiente nico": www.dominio.com/-admin ou localhost/-admin#r#n#r#nUtilizando o sistema em uma subpasta:#r#n#r#n* Em modo "Mltiplos ambientes": www.dominio.com/pasta/admin ou localhost/pasta/admin#r#n* Em "Ambiente nico": www.dominio.com/pasta/-admin ou localhost/pasta/-admin#r#n#r#n";i:2;i:1;i:4;i:1;}}}}a:3:{s:5:"flags";a:6:{s:4:"type";s:6:"select";s:6:"filter";s:22:"admin_constants_select";s:6:"target";s:22:"SYSTEM_DEFAULT_CHARSET";s:10:"field_name";s:22:"SYSTEM_DEFAULT_CHARSET";s:10:"value_cast";s:6:"string";s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:25:"Codificao de caracteres";i:2;i:1;}s:2:"en";a:2:{i:1;s:19:"Characters encoding";i:2;i:1;}}s:5:"title";a:1:{s:2:"pt";a:2:{i:1;s:25:"Codificao de caracteres";i:2;i:1;}}s:7:"content";a:1:{s:2:"pt";a:3:{i:1;s:526:"#r#nEsta ser a codificao de caracteres utilizada pela Ecolabore Engine ao enviar dados para o navegador.#r#n#r#nCaso os dados estejam armazenados em outra codificao, os dados sero convertidos automaticamente no momento de composio do documento.#r#n#r#nSe voc escolher um conjunto de caracteres mais restrito que a codificao de algum contedo armazenado previamente, alguns caracteres especiais podero no ser convertidos corretamente.#r#n#r#nCada ambiente poder ser configurado para ter sua prpria codificao de caracteres.#r#n";i:2;i:1;i:4;i:1;}}}s:8:"children";a:2:{i:0;s:25:"~systemDefaultCharsetUtf8";i:1;s:29:"~systemDefaultCharsetIso88591";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:28:"Europeu ocidental ISO-8859-1";i:2;i:1;}s:2:"en";a:2:{i:1;s:27:"Western European ISO-8859-1";i:2;i:1;}}}s:5:"flags";a:1:{s:5:"value";s:10:"ISO-8859-1";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:13:"Unicode UTF-8";i:2;i:1;}}}s:5:"flags";a:1:{s:5:"value";s:5:"UTF-8";}}a:2:{s:5:"flags";a:6:{s:4:"type";s:6:"select";s:6:"filter";s:30:"admin_constants_selectCurrency";s:6:"target";s:23:"SYSTEM_DEFAULT_CURRENCY";s:10:"field_name";s:23:"SYSTEM_DEFAULT_CURRENCY";s:10:"value_cast";s:6:"string";s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:12:"Moeda padro";i:2;i:1;}s:2:"en";a:1:{i:1;s:16:"Default currency";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:12:"Moeda padro";i:2;i:1;}s:2:"en";a:1:{i:1;s:16:"Default currency";}}s:7:"content";a:1:{s:2:"pt";a:3:{i:1;s:145:"#r#nEsta ser a moeda utilizada por padro ao exibir valores monetrios.#r#n#r#nCada ambiente poder ser configurado para utilizar sua prpria moeda.#r#n";i:2;i:1;i:4;i:1;}}}}a:2:{s:5:"flags";a:6:{s:4:"type";s:10:"text_small";s:6:"filter";s:20:"admin_constants_flag";s:6:"target";s:26:"SYSTEM_DEFAULT_DOMAIN_NAME";s:10:"field_name";s:26:"SYSTEM_DEFAULT_DOMAIN_NAME";s:10:"value_cast";s:6:"string";s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:14:"Domnio padro";i:2;i:1;}s:2:"en";a:1:{i:1;s:14:"Default domain";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:14:"Domnio padro";i:2;i:1;}s:2:"en";a:1:{i:1;s:14:"Default domain";}}s:7:"content";a:1:{s:2:"pt";a:3:{i:1;s:477:"#r#nCaso o sistema esteja trabalhando em modo "Portal", este ser o ambiente aberto quando nenhum subdomnio for informado na requisio.#r#n#r#nCaso o sistema esteja trabalhando com subdomnios em subpastas, este ser o ambiente padro quando nenhuma subpasta for informada na requisio.#r#n#r#nCaso o sistema esteja configurado para trabalhar com um nico ambiente, o nome deste campo dever coincidir com o nome do ambiente em uso. Neste modo outros ambientes no ficam acessveis.#r#n";i:2;i:1;i:4;i:1;}}}}a:2:{s:5:"flags";a:6:{s:4:"type";s:6:"select";s:6:"filter";s:26:"admin_constants_selectLang";s:6:"target";s:23:"SYSTEM_DEFAULT_LANGUAGE";s:10:"field_name";s:23:"SYSTEM_DEFAULT_LANGUAGE";s:10:"value_cast";s:6:"string";s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Idioma padro";i:2;i:1;}s:2:"en";a:1:{i:1;s:16:"Default language";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:13:"Idioma padro";i:2;i:1;}s:2:"en";a:1:{i:1;s:16:"Default language";}}s:7:"content";a:1:{s:2:"pt";a:3:{i:1;s:158:"#r#nEste ser o idioma utilizado quando nenhum idioma for informado na requisio.#r#n#r#nCada ambiente poder ser configurado para ter seu prprio idioma padro.#r#n";i:2;i:1;i:4;i:1;}}}}a:2:{s:5:"flags";a:6:{s:4:"type";s:8:"checkbox";s:6:"filter";s:20:"admin_constants_flag";s:6:"target";s:21:"SYSTEM_DISPLAY_ERRORS";s:10:"field_name";s:21:"SYSTEM_DISPLAY_ERRORS";s:10:"value_cast";s:4:"bool";s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:42:"Enviar mensagens de erros para o navegador";i:2;i:1;}s:2:"en";a:2:{i:1;s:35:"Send errors messages to the browser";i:2;i:1;}}s:5:"title";a:1:{s:2:"pt";a:2:{i:1;s:42:"Enviar mensagens de erros para o navegador";i:2;i:1;}}s:7:"content";a:1:{s:2:"pt";a:3:{i:1;s:340:"#r#nQuando ativada, esta configurao faz com que o PHP imprima as mensagens de erro diretamente no navegador.#r#n#r#nIsto facilita o desenvolvimento. Porm, em ambientes de produo, recomendamos desativar esta opo.#r#n#r#nAs mensagens de erro podem expor informaes importantes do seu sistema, que podero ser exploradas em ataques contra ele.#r#n";i:2;i:1;i:4;i:1;}}}}a:2:{s:5:"flags";a:6:{s:4:"type";s:8:"checkbox";s:6:"filter";s:20:"admin_constants_flag";s:6:"target";s:26:"SYSTEM_ENABLE_USER_DOMAINS";s:10:"field_name";s:26:"SYSTEM_ENABLE_USER_DOMAINS";s:10:"value_cast";s:4:"bool";s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:45:"Permitir aos usurios criarem novos ambientes";i:2;i:1;}s:2:"en";a:1:{i:1;s:34:"Enable users to create new domains";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:45:"Permitir aos usurios criarem novos ambientes";i:2;i:1;}s:2:"en";a:1:{i:1;s:34:"Enable users to create new domains";}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:111:"#r#nAtivando esta opo, qualquer usurio pode iniciar a construo de um novo ambiente caso este esteja livre.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:2:{s:5:"flags";a:6:{s:4:"type";s:8:"checkbox";s:6:"filter";s:20:"admin_constants_flag";s:6:"target";s:32:"SYSTEM_ENABLE_USER_SUBSCRIPTIONS";s:10:"field_name";s:32:"SYSTEM_ENABLE_USER_SUBSCRIPTIONS";s:10:"value_cast";s:4:"bool";s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:42:"Permitir aos usurios criarem novos perfis";i:2;i:1;}s:2:"en";a:1:{i:1;s:35:"Enable users to create new profiles";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:42:"Permitir aos usurios criarem novos perfis";i:2;i:1;}s:2:"en";a:1:{i:1;s:35:"Enable users to create new profiles";}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:125:"#r#nAtivando esta opo, um link adicionado no menu de "Boas vindas", permitindo aos usurios criarem seus prprios perfis.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:2:{s:5:"flags";a:6:{s:4:"type";s:10:"text_small";s:6:"filter";s:20:"admin_constants_flag";s:6:"target";s:11:"SYSTEM_HOST";s:10:"field_name";s:11:"SYSTEM_HOST";s:10:"value_cast";s:6:"string";s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:4:"Host";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"Host";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:4:"Host";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"Host";}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:180:"#r#nO host no qual o [text $system.caption] est instalado.#r#n#r#nEste o domnio principal que dever ser utilizado quando o sistema estiver utilizando subdomnios em "Modo Portal".#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:3:{s:5:"flags";a:6:{s:4:"type";s:6:"select";s:6:"filter";s:20:"admin_constants_flag";s:6:"target";s:19:"SYSTEM_HOSTING_MODE";s:10:"field_name";s:19:"SYSTEM_HOSTING_MODE";s:10:"value_cast";s:3:"int";s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:18:"Modo de hospedagem";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Hosting mode";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:18:"Modo de hospedagem";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Hosting mode";}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:1181:"#r#nO [text $system.caption] capaz de gerenciar mltiplos ambientes independentes entre si. Podem ser acessados como subpastas ou como subdomnios, de acordo com a configurao escolhida e das capacidades do servidor.#r#n#r#nPara utilizar o modo "Portal", em que os mltiplos ambientes sejam acessados como subdomnios, certifique-se de:#r#n#r#n* O servidor deve ser Apache e deve ter o mdulo "rewriteEngine" habilitado#r#n* O servidor deve estar configurado para aceitar qualquer subdomnio#r#n* Todo o sistema deve estar na raiz do domnio#r#n* O arquivo ".htdocs" correto deve ser colocado na raiz do seu sistema#r#n* Voc deve certificar-se de que outras aplicaes no entrem em conflito com o [text $system.caption].#r#n#r#nEm modo "ambientes como subpastas" voc pode acessar os diversos ambientes como se fossem subpastas do seu domnio. Neste caso, todo o sistema poder ser colocado dentro de uma subpasta do seu domnio, caso voc queira evitar conflito com outras aplicaes. Este modo permite acesso local atravs de "localhost".#r#n#r#nO modo "Ambiente nico" permite o acesso a um nico ambiente, porm, sem restringir o acesso rea de configurao do sistema e aos perfis de usurios.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}s:8:"children";a:3:{i:0;s:24:"~systemHostingModeSingle";i:1;s:28:"~systemHostingModeSubfolders";i:2;s:24:"~systemHostingModePortal";}}a:2:{s:5:"flags";a:1:{s:5:"value";i:2;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Modo portal";i:2;i:1;}s:2:"en";a:2:{i:1;s:11:"Portal mode";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:5:"value";i:0;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:14:"Ambiente nico";i:2;i:1;}s:2:"en";a:2:{i:1;s:11:"Single site";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:5:"value";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:19:"Mltiplos ambientes";i:2;i:1;}s:2:"en";a:2:{i:1;s:14:"Multiple sites";i:2;i:1;}}}}a:2:{s:5:"flags";a:6:{s:4:"type";s:8:"checkbox";s:6:"filter";s:20:"admin_constants_flag";s:6:"target";s:21:"SYSTEM_HTTPS_REDIRECT";s:10:"field_name";s:21:"SYSTEM_HTTPS_REDIRECT";s:10:"value_cast";s:4:"bool";s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:73:"Redirecionar conexes http para conexes seguras utilizando SSL via https";i:2;i:1;}s:2:"en";a:1:{i:1;s:58:"Redirect http connections to secure socket layer via https";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:32:"Sempre utilizar conexes seguras";i:2;i:1;}s:2:"en";a:1:{i:1;s:28:"Aways use secure connections";}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:544:"#r#nSe seu domnio possui uma assinatura digital, voc pode configurar o [text $system.caption] para mudar de uma conexo aberta para uma conexo segura automaticamente.#r#n#r#nCaso no possua uma assinatura digital e os usurios tentem conectar-se utilizando o protocolo https, os navegadores iro exibir mensagens desencorajadoras de falhas na autenticidade. Normalmente possvel utilizar criptografia em todos os servidores, porm, caso os usurios no saibam o que as mensagens significam, podero acreditar que voc est tentando engan-los.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:2:{s:5:"flags";a:6:{s:4:"type";s:8:"checkbox";s:6:"filter";s:20:"admin_constants_flag";s:6:"target";s:17:"SYSTEM_LOG_ERRORS";s:10:"field_name";s:17:"SYSTEM_LOG_ERRORS";s:10:"value_cast";s:4:"bool";s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:33:"Registrar erros no arquivo de log";i:2;i:1;}s:2:"en";a:2:{i:1;s:33:"Register errors into the log file";i:2;i:1;}}s:5:"title";a:1:{s:2:"pt";a:2:{i:1;s:33:"Registrar erros no arquivo de log";i:2;i:1;}}s:7:"content";a:1:{s:2:"pt";a:3:{i:1;s:194:"Esta configurao fora o PHP a registrar os erros da Ecolabore Engine em um arquivo de log prprio.#r#n#r#nEstas informaes no sero includas em logs de erros de outras aplicaes do servidor.#r#n";i:2;i:1;i:4;i:1;}}}}a:2:{s:5:"flags";a:6:{s:4:"type";s:8:"checkbox";s:6:"filter";s:20:"admin_constants_flag";s:6:"target";s:23:"SYSTEM_PACKED_MAP_FIRST";s:10:"field_name";s:23:"SYSTEM_PACKED_MAP_FIRST";s:10:"value_cast";s:4:"bool";s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:47:"Mapas de aplicaes empacotados tm preferncia";i:2;i:1;}s:2:"en";a:1:{i:1;s:39:"Applications maps packed has preference";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:47:"Mapas de aplicaes empacotados tm preferncia";i:2;i:1;}s:2:"en";a:1:{i:1;s:39:"Applications maps packed has preference";}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:603:"Esta opo - ativada por padro - verifica se o mapa da aplicao requisitado est dentro do pacote. Caso no o encontre, ser criado o link para o arquivo correspondente fora do pacote.#r#n#r#nDesativando esta opo o comportamento se inverte, forando o sistema a checar a presena do arquivo solicitado fora do pacote. Caso no exista, ento o arquivo interno ser utilizado. Isto permite extender o sistema sem desempacot-lo.#r#n#r#nLembre-se que no possvel atualizar algum mdulo com o sistema empacotado, pois os arquivos externos que possurem equivalentes dentro do pacote nunca sero utilizados.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:2:{s:5:"flags";a:6:{s:4:"type";s:8:"checkbox";s:6:"filter";s:20:"admin_constants_flag";s:6:"target";s:26:"SYSTEM_PACKED_SHARED_FIRST";s:10:"field_name";s:26:"SYSTEM_PACKED_SHARED_FIRST";s:10:"value_cast";s:4:"bool";s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:51:"Arquivos compartilhados empacotados tm preferncia";i:2;i:1;}s:2:"en";a:1:{i:1;s:34:"Shared files packed has preference";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:51:"Arquivos compartilhados empacotados tm preferncia";i:2;i:1;}s:2:"en";a:1:{i:1;s:34:"Shared files packed has preference";}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:521:"Esta opo - ativada por padro - verifica se o arquivo requisitado est dentro do pacote. Caso no o encontre, ser criado o link para o arquivo correspondente fora do pacote.#r#n#r#nDesativando esta opo o comportamento se inverte, forando o sistema a checar a presena do arquivo solicitado fora do pacote. Caso no exista, ento o arquivo interno ser utilizado. Isto lhe permitir extender ou atualizar arquivos compartilhados sem desempacotar o sistema. Observe porm que isto implicar uma perda de desempenho.#r#n#r#n#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:2:{s:5:"flags";a:6:{s:4:"type";s:10:"text_small";s:6:"filter";s:20:"admin_constants_flag";s:6:"target";s:19:"SYSTEM_PROFILES_URI";s:10:"field_name";s:19:"SYSTEM_PROFILES_URI";s:10:"value_cast";s:6:"string";s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:3:{i:1;s:33:"Caminho para "Perfis de usurios"";i:2;i:1;i:6;i:1;}s:2:"en";a:2:{i:1;s:24:"Path to "Users profiles"";i:6;i:1;}}s:5:"title";a:2:{s:2:"pt";a:3:{i:1;s:33:"Caminho para "Perfis de usurios"";i:2;i:1;i:6;i:1;}s:2:"en";a:2:{i:1;s:24:"Path to "Users profiles"";i:6;i:1;}}s:7:"content";a:1:{s:2:"pt";a:3:{i:1;s:604:"#r#nEste o caminho para a rea social da Ecolabore Engine. Inicialmente o caminho "profiles".#r#n#r#nPara acessar a rea social em diferentes configuraes, veja os exemplos abaixo:#r#n#r#n* Em modo "Portal": www.profiles.dominio.com#r#n* Em modo "Mltiplos ambientes": www.dominio.com/profiles ou localhost/profiles#r#n* Em "Ambiente nico": www.dominio.com/-profiles ou localhost/-profiles#r#n#r#nUtilizando o sistema em uma subpasta:#r#n#r#n* Em modo "Mltiplos ambientes": www.dominio.com/pasta/profiles ou localhost/pasta/profiles#r#n* Em "Ambiente nico": www.dominio.com/pasta/-profiles ou localhost/pasta/-profiles#r#n";i:2;i:1;i:4;i:1;}}}}a:2:{s:5:"flags";a:6:{s:4:"type";s:4:"text";s:6:"filter";s:20:"admin_constants_flag";s:6:"target";s:22:"SYSTEM_PROJECT_CAPTION";s:10:"field_name";s:22:"SYSTEM_PROJECT_CAPTION";s:10:"value_cast";s:4:"free";s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Organizao";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Organization";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:11:"Organizao";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Organization";}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:198:"#r#nCaso o Portal Ecolabore esteja configurado para administrar diversos ambientes, voc pode especificar o nome e o endereo (url) da sua organizao para que seja exibida no menu de "Boas vindas".#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:2:{s:5:"flags";a:6:{s:4:"type";s:4:"text";s:6:"filter";s:20:"admin_constants_flag";s:6:"target";s:18:"SYSTEM_PROJECT_URL";s:10:"field_name";s:18:"SYSTEM_PROJECT_URL";s:10:"value_cast";s:4:"free";s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:28:"Endereo da pgina principal";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Main page URL";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:28:"Endereo da pgina principal";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Main page URL";}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:198:"#r#nCaso o Portal Ecolabore esteja configurado para administrar diversos ambientes, voc pode especificar o nome e o endereo (url) da sua organizao para que seja exibida no menu de "Boas vindas".#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:2:{s:5:"flags";a:7:{s:9:"condition";s:16:"server_is_apache";s:4:"type";s:8:"checkbox";s:6:"filter";s:20:"admin_constants_flag";s:6:"target";s:21:"SYSTEM_REWRITE_ENGINE";s:10:"field_name";s:21:"SYSTEM_REWRITE_ENGINE";s:10:"value_cast";s:4:"bool";s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:129:"Ativar endereos elegantes utilizando o mdulo Rewrite Engine do Apache (Poder causar o bloqueio de outros servios nesta pasta)";i:2;i:1;}s:2:"en";a:1:{i:1;s:118:" Enable elegant addresses using the Apache Rewrite Engine module (May cause blocking of other services in this folder)";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:19:"Endereos elegantes";i:2;i:1;}s:2:"en";a:1:{i:1;s:17:"Elegant addresses";}}s:7:"content";a:2:{s:2:"pt";a:4:{i:1;s:715:"#r#nO [text $system.caption] detectou que este servidor Apache e pode tentar ativar o mdulo RewriteEngine.#r#n#r#nUma vez que todas as requisies feitas ao [text $system.caption] so sempre direcionadas para "index.php", o mdulo Rewrite Engine pode redirecionar todas as requisies desta pasta para o "index.php", mesmo que "index.php" no esteja presente na requisio do usurio.#r#n#r#nIsto torna o sistema mais seguro e os endereos (URLs) mais amigveis aos usurios. Porm, outros servios que porventura possam estar disponveis nesta pasta ou em subpastas podero se tornar inacessveis.#r#n#r#nCaso voc queira oferecer outros servios junto ao [text $system.caption], no o coloque na pasta raiz do seu domnio.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}s:2:"en";a:3:{i:1;s:656:"#r#n[Text $ system.caption] has detected that this server is Apache, and you can try to activate the RewriteEngine module.#r#n#r#nSince all requests made to [text $ system.caption] are always directed to "index.php", the Rewrite Engine module can redirect all requests from this folder to "index.php", even though "index.php" is not present in the user#ss request.#r#n#r#nThis makes the system more secure and addresses (URLs) more friendly. However, other services that may be available in this folder or in subfolders may become inaccessible.#r#n#r#nIf you want to offer other services next to [text $ system.caption], do not put it in the root folder of your domain.#r#n";i:4;i:1;i:6;i:1;}}}}a:2:{s:5:"flags";a:6:{s:4:"type";s:10:"text_small";s:6:"filter";s:20:"admin_constants_flag";s:6:"target";s:27:"SYSTEM_SESSION_CACHE_EXPIRE";s:10:"field_name";s:27:"SYSTEM_SESSION_CACHE_EXPIRE";s:10:"value_cast";s:3:"int";s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:37:"Limpar cache de sesso aps (minutos)";i:2;i:1;}s:2:"en";a:1:{i:1;s:35:"Clear session cache after (minutes)";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:22:"Limpar cache de sesso";i:2;i:1;}s:2:"en";a:1:{i:1;s:19:"Clear session cache";}}s:7:"content";a:1:{s:2:"pt";a:3:{i:1;s:406:"#r#nMesmo aps expirar, a sesso do usurio permanece em cache, permitindo que o usurio se reconnecte e continue algum trabalho pendente.#r#n#r#nQuando o usurio submete um formulrio aps o perodo de validade da sesso, os dados recebidos so guardados na sesso. Caso o usurio se reconnecte imediatamente, ser possvel concluir a operao.#r#n#r#nO cache ser extinto aps o perodo especificado neste campo.#r#n";i:2;i:1;i:4;i:1;}}}}a:2:{s:5:"flags";a:6:{s:4:"type";s:10:"text_small";s:6:"filter";s:20:"admin_constants_flag";s:6:"target";s:18:"SYSTEM_SESSION_TTL";s:10:"field_name";s:18:"SYSTEM_SESSION_TTL";s:10:"value_cast";s:3:"int";s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:35:"Desconectar usurio aps (segundos)";i:2;i:1;}s:2:"en";a:1:{i:1;s:31:"Disconnect user after (seconds)";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:28:"Durao da sesso do usurio";i:2;i:1;}s:2:"en";a:1:{i:1;s:21:"User session lifetime";}}s:7:"content";a:1:{s:2:"pt";a:3:{i:1;s:152:"#r#nPara maior segurana, a sesso do usurio extinta aps o tempo limite dado neste campo.#r#n#r#nA cada nova requisio do usurio o timer reiniciado.#r#n";i:2;i:1;i:4;i:1;}}}}a:2:{s:5:"flags";a:6:{s:4:"type";s:10:"text_small";s:6:"filter";s:20:"admin_constants_flag";s:6:"target";s:17:"SYSTEM_TIME_LIMIT";s:10:"field_name";s:17:"SYSTEM_TIME_LIMIT";s:10:"value_cast";s:3:"int";s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:41:"Suspender execuo do PHP aps (segundos)";i:2;i:1;}s:2:"en";a:2:{i:1;s:35:"Halt PHP execution before (seconds)";i:2;i:1;}}s:5:"title";a:1:{s:2:"pt";a:2:{i:1;s:28:"Suspender a execusso do PHP";i:2;i:1;}}s:7:"content";a:1:{s:2:"pt";a:3:{i:1;s:295:"#r#nLimita o tempo de execusso dos scripts PHP para cada requisio.#r#n#r#nEsta configurao afeta somente a Ecolabore Engine, no interferindo em qualquer outra aplicao PHP do servidor.#r#n#r#nObserve que algumas aplicaes especiais podero exigir mais tempo, portanto, iro ignorar esta diretiva.#r#n";i:2;i:1;i:4;i:1;}}}}a:4:{s:5:"flags";a:6:{s:4:"type";s:6:"select";s:6:"filter";s:29:"admin_constants_selectOptions";s:6:"target";s:15:"SYSTEM_TIMEZONE";s:10:"field_name";s:15:"SYSTEM_TIMEZONE";s:10:"value_cast";s:6:"string";s:4:"help";i:1;}s:5:"local";a:1:{s:4:"size";s:2:"30";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:12:"Zona horria";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Time zones";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:14:"Zonas horrias";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Time zones";}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:397:"#r#nAjusta o fuso-horrio para a zona horria especificada.#r#n#r#nEsta configurao afeta somente a Ecolabore Engine, no interferindo no relgio do servidor ou qualquer outra aplicao PHP.#r#n#r#nA lista de nomes dados foi produzida a partir de localidades importantes, sem necessariamente uma correspondncia poltica, j que grandes cidades no mudam com tanta frequncia quanto alteraes polticas.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}s:7:"options";a:422:{i:0;s:14:"Africa/Abidjan";i:1;s:12:"Africa/Accra";i:2;s:18:"Africa/Addis_Ababa";i:3;s:14:"Africa/Algiers";i:4;s:13:"Africa/Asmara";i:5;s:13:"Africa/Bamako";i:6;s:13:"Africa/Bangui";i:7;s:13:"Africa/Banjul";i:8;s:13:"Africa/Bissau";i:9;s:15:"Africa/Blantyre";i:10;s:18:"Africa/Brazzaville";i:11;s:16:"Africa/Bujumbura";i:12;s:12:"Africa/Cairo";i:13;s:17:"Africa/Casablanca";i:14;s:12:"Africa/Ceuta";i:15;s:14:"Africa/Conakry";i:16;s:12:"Africa/Dakar";i:17;s:20:"Africa/Dar_es_Salaam";i:18;s:15:"Africa/Djibouti";i:19;s:13:"Africa/Douala";i:20;s:15:"Africa/El_Aaiun";i:21;s:15:"Africa/Freetown";i:22;s:15:"Africa/Gaborone";i:23;s:13:"Africa/Harare";i:24;s:19:"Africa/Johannesburg";i:25;s:11:"Africa/Juba";i:26;s:14:"Africa/Kampala";i:27;s:15:"Africa/Khartoum";i:28;s:13:"Africa/Kigali";i:29;s:15:"Africa/Kinshasa";i:30;s:12:"Africa/Lagos";i:31;s:17:"Africa/Libreville";i:32;s:11:"Africa/Lome";i:33;s:13:"Africa/Luanda";i:34;s:17:"Africa/Lubumbashi";i:35;s:13:"Africa/Lusaka";i:36;s:13:"Africa/Malabo";i:37;s:13:"Africa/Maputo";i:38;s:13:"Africa/Maseru";i:39;s:14:"Africa/Mbabane";i:40;s:16:"Africa/Mogadishu";i:41;s:15:"Africa/Monrovia";i:42;s:14:"Africa/Nairobi";i:43;s:15:"Africa/Ndjamena";i:44;s:13:"Africa/Niamey";i:45;s:17:"Africa/Nouakchott";i:46;s:18:"Africa/Ouagadougou";i:47;s:17:"Africa/Porto-Novo";i:48;s:15:"Africa/Sao_Tome";i:49;s:14:"Africa/Tripoli";i:50;s:12:"Africa/Tunis";i:51;s:15:"Africa/Windhoek";i:52;s:12:"America/Adak";i:53;s:17:"America/Anchorage";i:54;s:16:"America/Anguilla";i:55;s:15:"America/Antigua";i:56;s:17:"America/Araguaina";i:57;s:30:"America/Argentina/Buenos_Aires";i:58;s:27:"America/Argentina/Catamarca";i:59;s:25:"America/Argentina/Cordoba";i:60;s:23:"America/Argentina/Jujuy";i:61;s:26:"America/Argentina/La_Rioja";i:62;s:25:"America/Argentina/Mendoza";i:63;s:30:"America/Argentina/Rio_Gallegos";i:64;s:23:"America/Argentina/Salta";i:65;s:26:"America/Argentina/San_Juan";i:66;s:26:"America/Argentina/San_Luis";i:67;s:25:"America/Argentina/Tucuman";i:68;s:25:"America/Argentina/Ushuaia";i:69;s:13:"America/Aruba";i:70;s:16:"America/Asuncion";i:71;s:16:"America/Atikokan";i:72;s:13:"America/Bahia";i:73;s:22:"America/Bahia_Banderas";i:74;s:16:"America/Barbados";i:75;s:13:"America/Belem";i:76;s:14:"America/Belize";i:77;s:20:"America/Blanc-Sablon";i:78;s:17:"America/Boa_Vista";i:79;s:14:"America/Bogota";i:80;s:13:"America/Boise";i:81;s:21:"America/Cambridge_Bay";i:82;s:20:"America/Campo_Grande";i:83;s:14:"America/Cancun";i:84;s:15:"America/Caracas";i:85;s:15:"America/Cayenne";i:86;s:14:"America/Cayman";i:87;s:15:"America/Chicago";i:88;s:17:"America/Chihuahua";i:89;s:18:"America/Costa_Rica";i:90;s:15:"America/Creston";i:91;s:14:"America/Cuiaba";i:92;s:15:"America/Curacao";i:93;s:20:"America/Danmarkshavn";i:94;s:14:"America/Dawson";i:95;s:20:"America/Dawson_Creek";i:96;s:14:"America/Denver";i:97;s:15:"America/Detroit";i:98;s:16:"America/Dominica";i:99;s:16:"America/Edmonton";i:100;s:16:"America/Eirunepe";i:101;s:19:"America/El_Salvador";i:102;s:19:"America/Fort_Nelson";i:103;s:17:"America/Fortaleza";i:104;s:17:"America/Glace_Bay";i:105;s:15:"America/Godthab";i:106;s:17:"America/Goose_Bay";i:107;s:18:"America/Grand_Turk";i:108;s:15:"America/Grenada";i:109;s:18:"America/Guadeloupe";i:110;s:17:"America/Guatemala";i:111;s:17:"America/Guayaquil";i:112;s:14:"America/Guyana";i:113;s:15:"America/Halifax";i:114;s:14:"America/Havana";i:115;s:18:"America/Hermosillo";i:116;s:28:"America/Indiana/Indianapolis";i:117;s:20:"America/Indiana/Knox";i:118;s:23:"America/Indiana/Marengo";i:119;s:26:"America/Indiana/Petersburg";i:120;s:25:"America/Indiana/Tell_City";i:121;s:21:"America/Indiana/Vevay";i:122;s:25:"America/Indiana/Vincennes";i:123;s:23:"America/Indiana/Winamac";i:124;s:14:"America/Inuvik";i:125;s:15:"America/Iqaluit";i:126;s:15:"America/Jamaica";i:127;s:14:"America/Juneau";i:128;s:27:"America/Kentucky/Louisville";i:129;s:27:"America/Kentucky/Monticello";i:130;s:18:"America/Kralendijk";i:131;s:14:"America/La_Paz";i:132;s:12:"America/Lima";i:133;s:19:"America/Los_Angeles";i:134;s:21:"America/Lower_Princes";i:135;s:14:"America/Maceio";i:136;s:15:"America/Managua";i:137;s:14:"America/Manaus";i:138;s:15:"America/Marigot";i:139;s:18:"America/Martinique";i:140;s:17:"America/Matamoros";i:141;s:16:"America/Mazatlan";i:142;s:17:"America/Menominee";i:143;s:14:"America/Merida";i:144;s:18:"America/Metlakatla";i:145;s:19:"America/Mexico_City";i:146;s:16:"America/Miquelon";i:147;s:15:"America/Moncton";i:148;s:17:"America/Monterrey";i:149;s:18:"America/Montevideo";i:150;s:18:"America/Montserrat";i:151;s:14:"America/Nassau";i:152;s:16:"America/New_York";i:153;s:15:"America/Nipigon";i:154;s:12:"America/Nome";i:155;s:15:"America/Noronha";i:156;s:27:"America/North_Dakota/Beulah";i:157;s:27:"America/North_Dakota/Center";i:158;s:30:"America/North_Dakota/New_Salem";i:159;s:15:"America/Ojinaga";i:160;s:14:"America/Panama";i:161;s:19:"America/Pangnirtung";i:162;s:18:"America/Paramaribo";i:163;s:15:"America/Phoenix";i:164;s:22:"America/Port-au-Prince";i:165;s:21:"America/Port_of_Spain";i:166;s:19:"America/Porto_Velho";i:167;s:19:"America/Puerto_Rico";i:168;s:19:"America/Rainy_River";i:169;s:20:"America/Rankin_Inlet";i:170;s:14:"America/Recife";i:171;s:14:"America/Regina";i:172;s:16:"America/Resolute";i:173;s:18:"America/Rio_Branco";i:174;s:16:"America/Santarem";i:175;s:16:"America/Santiago";i:176;s:21:"America/Santo_Domingo";i:177;s:17:"America/Sao_Paulo";i:178;s:20:"America/Scoresbysund";i:179;s:13:"America/Sitka";i:180;s:21:"America/St_Barthelemy";i:181;s:16:"America/St_Johns";i:182;s:16:"America/St_Kitts";i:183;s:16:"America/St_Lucia";i:184;s:17:"America/St_Thomas";i:185;s:18:"America/St_Vincent";i:186;s:21:"America/Swift_Current";i:187;s:19:"America/Tegucigalpa";i:188;s:13:"America/Thule";i:189;s:19:"America/Thunder_Bay";i:190;s:15:"America/Tijuana";i:191;s:15:"America/Toronto";i:192;s:15:"America/Tortola";i:193;s:17:"America/Vancouver";i:194;s:18:"America/Whitehorse";i:195;s:16:"America/Winnipeg";i:196;s:15:"America/Yakutat";i:197;s:19:"America/Yellowknife";i:198;s:16:"Antarctica/Casey";i:199;s:16:"Antarctica/Davis";i:200;s:25:"Antarctica/DumontDUrville";i:201;s:20:"Antarctica/Macquarie";i:202;s:17:"Antarctica/Mawson";i:203;s:18:"Antarctica/McMurdo";i:204;s:17:"Antarctica/Palmer";i:205;s:18:"Antarctica/Rothera";i:206;s:16:"Antarctica/Syowa";i:207;s:16:"Antarctica/Troll";i:208;s:17:"Antarctica/Vostok";i:209;s:20:" Arctic/Longyearbyen";i:210;s:9:"Asia/Aden";i:211;s:11:"Asia/Almaty";i:212;s:10:"Asia/Amman";i:213;s:11:"Asia/Anadyr";i:214;s:10:"Asia/Aqtau";i:215;s:11:"Asia/Aqtobe";i:216;s:13:"Asia/Ashgabat";i:217;s:12:"Asia/Baghdad";i:218;s:12:"Asia/Bahrain";i:219;s:9:"Asia/Baku";i:220;s:12:"Asia/Bangkok";i:221;s:12:"Asia/Barnaul";i:222;s:11:"Asia/Beirut";i:223;s:12:"Asia/Bishkek";i:224;s:11:"Asia/Brunei";i:225;s:10:"Asia/Chita";i:226;s:15:"Asia/Choibalsan";i:227;s:12:"Asia/Colombo";i:228;s:13:"Asia/Damascus";i:229;s:10:"Asia/Dhaka";i:230;s:9:"Asia/Dili";i:231;s:10:"Asia/Dubai";i:232;s:13:"Asia/Dushanbe";i:233;s:14:"Asia/Famagusta";i:234;s:9:"Asia/Gaza";i:235;s:11:"Asia/Hebron";i:236;s:16:"Asia/Ho_Chi_Minh";i:237;s:14:"Asia/Hong_Kong";i:238;s:9:"Asia/Hovd";i:239;s:12:"Asia/Irkutsk";i:240;s:12:"Asia/Jakarta";i:241;s:13:"Asia/Jayapura";i:242;s:14:"Asia/Jerusalem";i:243;s:10:"Asia/Kabul";i:244;s:14:"Asia/Kamchatka";i:245;s:12:"Asia/Karachi";i:246;s:14:"Asia/Kathmandu";i:247;s:13:"Asia/Khandyga";i:248;s:12:"Asia/Kolkata";i:249;s:16:"Asia/Krasnoyarsk";i:250;s:17:"Asia/Kuala_Lumpur";i:251;s:12:"Asia/Kuching";i:252;s:11:"Asia/Kuwait";i:253;s:10:"Asia/Macau";i:254;s:12:"Asia/Magadan";i:255;s:13:"Asia/Makassar";i:256;s:11:"Asia/Manila";i:257;s:11:"Asia/Muscat";i:258;s:12:"Asia/Nicosia";i:259;s:17:"Asia/Novokuznetsk";i:260;s:16:"Asia/Novosibirsk";i:261;s:9:"Asia/Omsk";i:262;s:9:"Asia/Oral";i:263;s:15:"Asia/Phnom_Penh";i:264;s:14:"Asia/Pontianak";i:265;s:14:"Asia/Pyongyang";i:266;s:10:"Asia/Qatar";i:267;s:14:"Asia/Qyzylorda";i:268;s:11:"Asia/Riyadh";i:269;s:13:"Asia/Sakhalin";i:270;s:14:"Asia/Samarkand";i:271;s:10:"Asia/Seoul";i:272;s:13:"Asia/Shanghai";i:273;s:14:"Asia/Singapore";i:274;s:18:"Asia/Srednekolymsk";i:275;s:11:"Asia/Taipei";i:276;s:13:"Asia/Tashkent";i:277;s:12:"Asia/Tbilisi";i:278;s:11:"Asia/Tehran";i:279;s:12:"Asia/Thimphu";i:280;s:10:"Asia/Tokyo";i:281;s:10:"Asia/Tomsk";i:282;s:16:"Asia/Ulaanbaatar";i:283;s:11:"Asia/Urumqi";i:284;s:13:"Asia/Ust-Nera";i:285;s:14:"Asia/Vientiane";i:286;s:16:"Asia/Vladivostok";i:287;s:12:"Asia/Yakutsk";i:288;s:11:"Asia/Yangon";i:289;s:18:"Asia/Yekaterinburg";i:290;s:12:"Asia/Yerevan";i:291;s:16:" Atlantic/Azores";i:292;s:16:"Atlantic/Bermuda";i:293;s:15:"Atlantic/Canary";i:294;s:19:"Atlantic/Cape_Verde";i:295;s:14:"Atlantic/Faroe";i:296;s:16:"Atlantic/Madeira";i:297;s:18:"Atlantic/Reykjavik";i:298;s:22:"Atlantic/South_Georgia";i:299;s:18:"Atlantic/St_Helena";i:300;s:16:"Atlantic/Stanley";i:301;s:19:" Australia/Adelaide";i:302;s:18:"Australia/Brisbane";i:303;s:21:"Australia/Broken_Hill";i:304;s:16:"Australia/Currie";i:305;s:16:"Australia/Darwin";i:306;s:15:"Australia/Eucla";i:307;s:16:"Australia/Hobart";i:308;s:18:"Australia/Lindeman";i:309;s:19:"Australia/Lord_Howe";i:310;s:19:"Australia/Melbourne";i:311;s:15:"Australia/Perth";i:312;s:16:"Australia/Sydney";i:313;s:16:"Europe/Amsterdam";i:314;s:14:"Europe/Andorra";i:315;s:16:"Europe/Astrakhan";i:316;s:13:"Europe/Athens";i:317;s:15:"Europe/Belgrade";i:318;s:13:"Europe/Berlin";i:319;s:17:"Europe/Bratislava";i:320;s:15:"Europe/Brussels";i:321;s:16:"Europe/Bucharest";i:322;s:15:"Europe/Budapest";i:323;s:15:"Europe/Busingen";i:324;s:15:"Europe/Chisinau";i:325;s:17:"Europe/Copenhagen";i:326;s:13:"Europe/Dublin";i:327;s:16:"Europe/Gibraltar";i:328;s:15:"Europe/Guernsey";i:329;s:15:"Europe/Helsinki";i:330;s:18:"Europe/Isle_of_Man";i:331;s:15:"Europe/Istanbul";i:332;s:13:"Europe/Jersey";i:333;s:18:"Europe/Kaliningrad";i:334;s:11:"Europe/Kiev";i:335;s:12:"Europe/Kirov";i:336;s:13:"Europe/Lisbon";i:337;s:16:"Europe/Ljubljana";i:338;s:13:"Europe/London";i:339;s:17:"Europe/Luxembourg";i:340;s:13:"Europe/Madrid";i:341;s:12:"Europe/Malta";i:342;s:16:"Europe/Mariehamn";i:343;s:12:"Europe/Minsk";i:344;s:13:"Europe/Monaco";i:345;s:13:"Europe/Moscow";i:346;s:11:"Europe/Oslo";i:347;s:12:"Europe/Paris";i:348;s:16:"Europe/Podgorica";i:349;s:13:"Europe/Prague";i:350;s:11:"Europe/Riga";i:351;s:11:"Europe/Rome";i:352;s:13:"Europe/Samara";i:353;s:17:"Europe/San_Marino";i:354;s:15:"Europe/Sarajevo";i:355;s:17:"Europe/Simferopol";i:356;s:13:"Europe/Skopje";i:357;s:12:"Europe/Sofia";i:358;s:16:"Europe/Stockholm";i:359;s:14:"Europe/Tallinn";i:360;s:13:"Europe/Tirane";i:361;s:16:"Europe/Ulyanovsk";i:362;s:15:"Europe/Uzhgorod";i:363;s:12:"Europe/Vaduz";i:364;s:14:"Europe/Vatican";i:365;s:13:"Europe/Vienna";i:366;s:14:"Europe/Vilnius";i:367;s:16:"Europe/Volgograd";i:368;s:13:"Europe/Warsaw";i:369;s:13:"Europe/Zagreb";i:370;s:17:"Europe/Zaporozhye";i:371;s:13:"Europe/Zurich";i:372;s:20:" Indian/Antananarivo";i:373;s:13:"Indian/Chagos";i:374;s:16:"Indian/Christmas";i:375;s:12:"Indian/Cocos";i:376;s:13:"Indian/Comoro";i:377;s:16:"Indian/Kerguelen";i:378;s:11:"Indian/Mahe";i:379;s:15:"Indian/Maldives";i:380;s:16:"Indian/Mauritius";i:381;s:14:"Indian/Mayotte";i:382;s:14:"Indian/Reunion";i:383;s:12:"Pacific/Apia";i:384;s:16:"Pacific/Auckland";i:385;s:20:"Pacific/Bougainville";i:386;s:15:"Pacific/Chatham";i:387;s:13:"Pacific/Chuuk";i:388;s:14:"Pacific/Easter";i:389;s:13:"Pacific/Efate";i:390;s:17:"Pacific/Enderbury";i:391;s:15:"Pacific/Fakaofo";i:392;s:12:"Pacific/Fiji";i:393;s:16:"Pacific/Funafuti";i:394;s:17:"Pacific/Galapagos";i:395;s:15:"Pacific/Gambier";i:396;s:19:"Pacific/Guadalcanal";i:397;s:12:"Pacific/Guam";i:398;s:16:"Pacific/Honolulu";i:399;s:16:"Pacific/Johnston";i:400;s:18:"Pacific/Kiritimati";i:401;s:14:"Pacific/Kosrae";i:402;s:17:"Pacific/Kwajalein";i:403;s:14:"Pacific/Majuro";i:404;s:17:"Pacific/Marquesas";i:405;s:14:"Pacific/Midway";i:406;s:13:"Pacific/Nauru";i:407;s:12:"Pacific/Niue";i:408;s:15:"Pacific/Norfolk";i:409;s:14:"Pacific/Noumea";i:410;s:17:"Pacific/Pago_Pago";i:411;s:13:"Pacific/Palau";i:412;s:16:"Pacific/Pitcairn";i:413;s:15:"Pacific/Pohnpei";i:414;s:20:"Pacific/Port_Moresby";i:415;s:17:"Pacific/Rarotonga";i:416;s:14:"Pacific/Saipan";i:417;s:14:"Pacific/Tahiti";i:418;s:14:"Pacific/Tarawa";i:419;s:17:"Pacific/Tongatapu";i:420;s:12:"Pacific/Wake";i:421;s:14:"Pacific/Wallis";}}a:2:{s:5:"flags";a:6:{s:4:"type";s:8:"checkbox";s:6:"filter";s:20:"admin_constants_flag";s:6:"target";s:15:"TRACKING_ENABLE";s:10:"field_name";s:15:"TRACKING_ENABLE";s:10:"value_cast";s:4:"bool";s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:19:"Ativar rastreamento";i:2;i:1;}s:2:"en";a:1:{i:1;s:15:"Tracking enable";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:19:"Ativar rastreamento";i:2;i:1;}s:2:"en";a:1:{i:1;s:15:"Tracking enable";}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:950:"Esta opo faz com que o [text $system.caption] colete dados do usurio.#r#n#r#nOs seguintes dados sero registrados:#r#n#r#n* Ip do usurio#r#n* Data e hora da requisio#r#n* Pgina alvo da requisio#r#n* Link a partir de onde o usurio veio#r#n* Agente do usurio (navegador e sistema operacional)#r#n* Status do usurio (se o mesmo est conectado e possui direitos administrativos)#r#n#r#n=== Observaes ===#r#n#r#n#c Para economia de espao, registros consecutivos de mesma procedncia deixaro de lado dados repetidos ou inteis.#r#n#c Pginas administrativas geradas pelo sistema no so registradas no log.#r#n#c Desativar o rastreamento no ir interferir na contagem de visitas das pginas.#r#n#c Voc pode configurar para que outros dados sejam armazenados no log.#r#n#c Recomendamos que voc cuide para que o arquivo de log no se torne muito grande. Voc pode mov-lo para um local de backup e outro arquivo ser gerado automaticamente. O nome do arquivo ".tracking.db".#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:3:{s:5:"flags";a:6:{s:4:"type";s:6:"select";s:6:"filter";s:22:"admin_constants_select";s:6:"target";s:20:"TRACKING_GEOIP_CACHE";s:10:"field_name";s:20:"TRACKING_GEOIP_CACHE";s:10:"value_cast";s:3:"int";s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:32:"Cache de dados de geolocalizao";i:2;i:1;}s:2:"en";a:1:{i:1;s:22:"Geolocation data cache";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:32:"Cache de dados de geolocalizao";i:2;i:1;}s:2:"en";a:1:{i:1;s:22:"Geolocation data cache";}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:100:"O perodo em que os dados de geolocalizao devem permanecer armazenados antes de serem excludos.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}s:8:"children";a:4:{i:0;s:27:"~trackingGeoipCacheNoExpire";i:1;s:25:"~trackingGeoipCache1month";i:2;s:26:"~trackingGeoipCache3months";i:3;s:26:"~trackingGeoipCache6months";}}a:2:{s:5:"flags";a:1:{s:5:"value";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"1 ms";i:2;i:1;}s:2:"en";a:2:{i:1;s:7:"1 month";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:5:"value";i:3;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"3 meses";i:2;i:1;}s:2:"en";a:2:{i:1;s:8:"3 months";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:5:"value";i:6;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"6 meses";i:2;i:1;}s:2:"en";a:2:{i:1;s:8:"6 months";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:5:"value";i:0;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"Permanente";i:2;i:1;}s:2:"en";a:2:{i:1;s:9:"Permanent";i:2;i:1;}}}}a:2:{s:5:"flags";a:6:{s:4:"type";s:8:"checkbox";s:6:"filter";s:20:"admin_constants_flag";s:6:"target";s:21:"TRACKING_GEOIP_ENABLE";s:10:"field_name";s:21:"TRACKING_GEOIP_ENABLE";s:10:"value_cast";s:4:"bool";s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:31:"Rastrear localizao do usurio";i:2;i:1;}s:2:"en";a:1:{i:1;s:19:"Track user location";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:31:"Rastrear localizao do usurio";i:2;i:1;}s:2:"en";a:1:{i:1;s:19:"Track user location";}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:236:"#r#nAtivando esta opo, o [text $system.caption] ir utilizar um servio externo para adquirir informaes sobre a localizao geogrfica do usurio baseada no endereo IP da requisio.#r#n#r#nEstas informaes sero armazenadas em cache.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:2:{s:5:"flags";a:6:{s:4:"type";s:4:"text";s:6:"filter";s:20:"admin_constants_flag";s:6:"target";s:22:"TRACKING_GEOIP_SERVICE";s:10:"field_name";s:22:"TRACKING_GEOIP_SERVICE";s:10:"value_cast";s:4:"free";s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:28:"Servio de Geolocalizao IP";i:2;i:1;}s:2:"en";a:1:{i:1;s:22:"IP Geolocation service";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:28:"Servio de Geolocalizao IP";i:2;i:1;}s:2:"en";a:1:{i:1;s:22:"IP Geolocation service";}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:397:"#r#nO servio freegeoip.net gratuito e est configurado por padro no [text $system.caption].#r#n#r#nCaso voc queira utilizar este servio, considere fazer uma doao.#r#n#r#nO servio da freegeoip.net possui limitaes de trfego. Consulte a pgina do projeto para mais informaes.#r#n#r#nVoc pode baixar esta ferramenta e instal-la em seu servidor, ento voc ter de alterar o endereo deste servio.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:2:{s:5:"flags";a:6:{s:4:"type";s:8:"checkbox";s:6:"filter";s:20:"admin_constants_flag";s:6:"target";s:22:"TRACKING_REMOVED_PAGES";s:10:"field_name";s:22:"TRACKING_REMOVED_PAGES";s:10:"value_cast";s:4:"bool";s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:28:"No apagar pginas excludas";i:2;i:1;}s:2:"en";a:1:{i:1;s:28:"Do not remove excluded pages";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:29:"No remover pginas excludas";i:2;i:1;}s:2:"en";a:1:{i:1;s:28:"Do not remove excluded pages";}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:80:"#r#nEsta opo ir marcar as pginas excludas sem remov-las do banco de dados.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:2:{s:5:"flags";a:6:{s:4:"type";s:8:"checkbox";s:6:"filter";s:20:"admin_constants_flag";s:6:"target";s:29:"TRACKING_STORE_FULL_BACKTRACE";s:10:"field_name";s:29:"TRACKING_STORE_FULL_BACKTRACE";s:10:"value_cast";s:4:"bool";s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:34:"Armazenar todos os dados recebidos";i:2;i:1;}s:2:"en";a:1:{i:1;s:23:"Store all received data";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:34:"Armazenar todos os dados recebidos";i:2;i:1;}s:2:"en";a:1:{i:1;s:23:"Store all received data";}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:424:"#r#nArmazenar todos os dados recebidos via POST permite refazer todas as atividades dos usurios no sistema.#r#n#r#nEsta opo deve ser utilizada com cautela, pois o arquivo de log pode se tornar muito grande rapidamente.#r#n#r#nRecomendamos esta opo para rastrear casos especficos de usurios mal intensionados.#r#n#r#nSe esta opo for ativada, um "backtrace" poder ser acessada pelos administradores em cada pgina separadamente.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:1:{s:4:"text";a:3:{s:7:"caption";a:1:{s:2:"pt";a:3:{i:1;s:6:"Avisos";i:2;i:1;i:6;i:1;}}s:5:"title";a:1:{s:2:"pt";a:3:{i:1;s:24:"Sobre o quadro de avisos";i:2;i:1;i:6;i:1;}}s:7:"content";a:1:{s:2:"pt";a:5:{i:1;s:253:"#r#nNesta pgina so reunidos todos os avisos gerados por diferentes ferramentas.#r#n#r#nAcionando um item da lista voc ser direcionad[gender:o|a] para a ferramenta que produziu a mensagem.#r#n#r#nProblemas solucionados so removidos automaticamente da lista.#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Avisos";i:2;i:1;}s:2:"en";a:2:{i:1;s:6:"Alerts";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:17:"Avisos do sistema";i:2;i:1;}s:2:"en";a:2:{i:1;s:13:"System alerts";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"content";a:2:{s:2:"pt";a:3:{i:1;s:14:"No h avisos.";i:2;i:1;i:4;i:1;}s:2:"en";a:3:{i:1;s:18:"There#ss no alerts.";i:2;i:1;i:4;i:1;}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:43:"Mensagens de erros no log do banco de dados";i:2;i:1;}s:2:"en";a:2:{i:1;s:31:"Messages in database errors log";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:46:"H mensagens no log de erros do banco de dados";i:2;i:1;}s:2:"en";a:2:{i:1;s:31:"Messages in database errors log";i:2;i:1;}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:32:"O banco de dados est desativado";i:2;i:1;}s:2:"en";a:2:{i:1;s:24:"The database is disabled";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:32:"O banco de dados est desativado";i:2;i:1;}s:2:"en";a:2:{i:1;s:24:"The database is disabled";i:2;i:1;}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:24:"Erros de execuo do PHP";i:2;i:1;}s:2:"en";a:2:{i:1;s:19:"PHP execution error";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:35:"H mensagens no log de erros do PHP";i:2;i:1;}s:2:"en";a:2:{i:1;s:26:"Messages in PHP errors log";i:2;i:1;}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:22:"Nova verso disponvel";i:2;i:1;}s:2:"en";a:2:{i:1;s:21:"New version available";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:22:"Nova verso disponvel";i:2;i:1;}s:2:"en";a:2:{i:1;s:21:"New version available";i:2;i:1;}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Componentes";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Components";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:11:"Componentes";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Components";}}}}a:1:{s:4:"text";a:1:{s:7:"content";a:2:{s:2:"pt";a:4:{i:1;s:125:"Nenhum componente est disponvel.#r#n#r#nInstale novos componentes para expandir as funcionalidades do [text $system.caption].#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}s:2:"en";a:3:{i:1;s:22:"There#ss no components.";i:2;i:1;i:4;i:1;}}}}a:1:{s:8:"children";a:4:{i:0;s:6:"_start";i:1;s:15:"~editComponents";i:2;s:5:"_save";i:3;s:4:"_end";}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:1:{i:1;s:12:"Desabilitado";}s:2:"en";a:1:{i:1;s:8:"Disabled";}}}}a:1:{s:5:"flags";a:2:{s:6:"filter";s:29:"adminComponents_selectVersion";s:10:"field_name";s:9:"component";}}a:1:{s:8:"children";a:5:{i:0;s:6:"_start";i:1;s:10:"~folderMsg";i:2;s:30:"admin_constants_pathComponents";i:3;s:13:"~folderSubmit";i:4;s:4:"_end";}}a:2:{s:5:"flags";a:1:{s:6:"filter";s:29:"personaliteFields_descriptive";}s:4:"text";a:1:{s:7:"content";a:2:{s:2:"pt";a:3:{i:1;s:161:"#r#nAntes de instalar componentes, necessrio criar uma pasta para acomodar os componentes instalados.#r#n#r#nPara criar esta pasta agora, clique em "Criar pasta".#r#n";i:2;i:1;i:4;i:1;}s:2:"en";a:2:{i:1;s:152:"#r#nBefore installing components, you must create a folder to accommodate the installed components.#r#n#r#nTo create this folder now, click "Create folder".#r#n";i:4;i:1;}}}}a:2:{s:5:"flags";a:2:{s:6:"filter";s:6:"submit";s:10:"field_name";s:6:"create";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Criar pasta";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Create folder";}}}}a:1:{s:4:"text";a:3:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:11:"Componentes";i:2;i:1;}}s:5:"title";a:1:{s:2:"pt";a:2:{i:1;s:10:"Components";i:2;i:1;}}s:7:"content";a:1:{s:2:"pt";a:5:{i:1;s:311:"#r#nAqui esto os componentes que podero ser ativados pelo [text $system.caption] para possibilitar mais funcionalidades.#r#n#r#nCada componente precisa ser configurado individualmente, e pode ser necessrio o cadastro e o pagamento de taxas para seu uso.#r#n#r#nEncontre mais informaes na pgina de cada componente.#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Ativar";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Activate";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:31:"Ativar ou desativar componentes";i:2;i:1;}s:2:"en";a:1:{i:1;s:34:"Activate or desactivate components";}}}}a:1:{s:4:"text";a:1:{s:7:"content";a:2:{s:2:"pt";a:4:{i:1;s:125:"Nenhum componente est disponvel.#r#n#r#nInstale novos componentes para expandir as funcionalidades do [text $system.caption].#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}s:2:"en";a:3:{i:1;s:22:"There#ss no components.";i:2;i:1;i:4;i:1;}}}}a:1:{s:4:"text";a:3:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:11:"Componentes";i:2;i:1;}}s:5:"title";a:1:{s:2:"pt";a:2:{i:1;s:10:"Components";i:2;i:1;}}s:7:"content";a:1:{s:2:"pt";a:5:{i:1;s:311:"#r#nAqui esto os componentes que podero ser ativados pelo [text $system.caption] para possibilitar mais funcionalidades.#r#n#r#nCada componente precisa ser configurado individualmente, e pode ser necessrio o cadastro e o pagamento de taxas para seu uso.#r#n#r#nEncontre mais informaes na pgina de cada componente.#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:14:"Banco de dados";i:2;i:1;}s:2:"en";a:2:{i:1;s:8:"Database";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:14:"Banco de dados";i:2;i:1;}s:2:"en";a:2:{i:1;s:8:"Database";i:2;i:1;}}}}a:1:{s:8:"children";a:5:{i:0;s:6:"_start";i:1;s:8:"~editMsg";i:2;s:28:"admin_constants_pathDatabase";i:3;s:11:"~editSubmit";i:4;s:4:"_end";}}a:2:{s:5:"flags";a:1:{s:6:"filter";s:29:"personaliteFields_descriptive";}s:4:"text";a:1:{s:7:"content";a:2:{s:2:"pt";a:3:{i:1;s:182:"#r#nAntes de configurar o banco de dados, necessrio criar uma pasta para acomodar arquivos relacionados ao banco de dados.#r#n#r#nPara criar esta pasta agora, clique em "Criar pasta".#r#n";i:2;i:1;i:4;i:1;}s:2:"en";a:2:{i:1;s:159:"#r#nBefore adding users, it#ss necessary to create a folder to accommodate the personal files of each user.#r#n#r#nTo create this folder now, click "Create folder".#r#n";i:4;i:1;}}}}a:2:{s:5:"flags";a:2:{s:6:"filter";s:6:"submit";s:10:"field_name";s:6:"create";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Criar pasta";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Create folder";}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:27:"Configurar o Banco de dados";i:2;i:1;}s:2:"en";a:2:{i:1;s:22:"Database configuration";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:27:"Configurar o banco de dados";i:2;i:1;}s:2:"en";a:2:{i:1;s:22:"Database configuration";i:2;i:1;}}}}a:1:{s:8:"children";a:11:{i:0;s:6:"_start";i:1;s:31:"admin_constants_databaseEnabled";i:2;s:30:"admin_constants_databaseClient";i:3;s:12:"~editMessage";i:4;s:28:"admin_constants_databaseHost";i:5;s:28:"admin_constants_databaseUser";i:6;s:32:"admin_constants_databasePassword";i:7;s:26:"admin_constants_databaseDb";i:8;s:30:"admin_constants_databasePrefix";i:9;s:7:"_submit";i:10;s:4:"_end";}}a:2:{s:5:"flags";a:1:{s:6:"filter";s:29:"personaliteFields_descriptive";}s:4:"text";a:1:{s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:143:"#r#nO uso do SQLite (recomendvel) no requer configuraes.#r#n#r#nPara os demais servios, preencha os campos abaixo de acordo com a necessidade:#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:12:"Criptografia";i:2;i:1;}s:2:"en";a:2:{i:1;s:10:"Encryption";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:12:"Criptografia";i:2;i:1;}s:2:"en";a:2:{i:1;s:10:"Encryption";i:2;i:1;}}}}a:1:{s:4:"text";a:2:{s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:11:"Gerar chave";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Generate key";}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:735:"#r#nA chave utilizada para criptografar os dados a nica forma de recuperar esses dados. Portanto, recomendamos que voc guarde esta chave em local muito seguro para o caso de vir a ser necessrio recuperar ou exportar seu banco de dados no futuro.#r#n#r#nAdicionalmente, informe uma senha que ser utilizada para criptografar a chave a ser exportada.#r#n#r#nCaso venha a ser necessrio importar esta chave no futuro, lhe ser solicitada esta mesma senha.#r#n#r#nNo utilize a senha do administrador para esta operao.#r#n#r#n== Ateno! ==#r#n#r#nCaso voc esteja tentando recuperar os dados de um banco de dados previamente criptografado, por exemplo se voc estiver reinstalando o sistema, retroceda para o passo anterior e escolha "Importar chave".#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:1:{s:4:"text";a:2:{s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:14:"Importar chave";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Import key";}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:271:"#r#nSe o banco de dados j possui dados criptografados, ser necessrio informar a mesma chave utilizada anteriormente.#r#n#r#nSe voc no possui esta chave e seu banco de dados est criptografado, e se seu escritrio fica acima do dcimo andar, considere saltar pela janela!#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:202:"#r#nA criptografia essencial para proteger dados sensveis no banco de dados. Noentanto, antes que o [text $system.caption] possa operar dados criptografados, necessrio informar ou criar uma chave.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:2:{s:5:"flags";a:1:{s:6:"filter";s:29:"personaliteFields_descriptive";}s:4:"text";a:1:{s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:727:"#r#nPara criptografar as informaes sensveis do seu banco de dados, voc precisa escolher o tipo de criptografia e informar a chave a serem utilizados.#r#n#r#nA chave deve estar codificada em base64.#r#n#r#nCaso voc precise acessar dados previamente criptografados no banco de dados, o tipo de criptografia e a chave devem ser exatamente os mesmos.#r#n#r#nSe o banco de dados no estiver criptografado, voc pode escolher o tipo de criptografia a ser utilizada e gerar uma chave acionando o boto "Gerar nova chave".#r#n#r#n=== Ateno! ===#r#n#r#nA chave a nica forma de recuperar os dados do seu banco de dados. Guarde a chave em uso em local muito seguro. Ela pode ser a nica chance de recuperar os dados em caso de um ataque ao sistema.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:1:{s:8:"children";a:6:{i:0;s:6:"_start";i:1;s:18:"~generateAlgorithm";i:2;s:17:"~generatePassword";i:3;s:23:"~generateRepeatPassword";i:4;s:13:"_previousNext";i:5;s:4:"_end";}}a:2:{s:5:"flags";a:4:{s:6:"filter";s:32:"adminDatabase_encrypt_algorithms";s:10:"field_name";s:9:"algorythm";s:6:"target";s:9:"algorithm";s:8:"required";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Algortmo";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Algorithm";}}}}a:1:{s:8:"children";a:3:{i:0;s:6:"_start";i:1;s:13:"_previousNext";i:2;s:4:"_end";}}a:1:{s:8:"children";a:4:{i:0;s:6:"_start";i:1;s:10:"~keyMethod";i:2;s:5:"_next";i:3;s:4:"_end";}}a:3:{s:5:"flags";a:5:{s:4:"type";s:5:"radio";s:6:"filter";s:6:"select";s:10:"field_name";s:4:"mode";s:6:"target";s:4:"mode";s:8:"required";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:21:"Chave de criptografia";i:2;i:1;}s:2:"en";a:1:{i:1;s:16:"Cryptography key";}}}s:8:"children";a:2:{i:0;s:18:"~keyMethodGenerate";i:1;s:16:"~keyMethodImport";}}a:2:{s:5:"flags";a:1:{s:5:"value";s:8:"generate";}s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:117:"Gerar uma nova chave de segurana - aconselhvel se o seu banco de dados no possua dados previamente criptografados.";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:6:"import";}s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:128:"Importar uma chave de segurana previamente salva - necessrio caso o banco de dados j possua dados previamente criptografados.";i:2;i:1;}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:12:"Log de erros";i:2;i:1;}s:2:"en";a:2:{i:1;s:9:"error log";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:30:"Log de erros do banco de dados";i:2;i:1;}s:2:"en";a:2:{i:1;s:18:"Database error log";i:2;i:1;}}}}a:1:{s:8:"children";a:8:{i:0;s:6:"_start";i:1;s:37:"admin_constants_databaseDisplayErrors";i:2;s:33:"admin_constants_databaseLogErrors";i:3;s:7:"_submit";i:4;s:10:"_separator";i:5;s:12:"~editLogView";i:6;s:13:"~editLogClear";i:7;s:4:"_end";}}a:2:{s:5:"flags";a:3:{s:4:"type";s:6:"submit";s:6:"filter";s:6:"submit";s:10:"field_name";s:9:"clear_log";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"Limpar log";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Clear log";}}}}a:2:{s:5:"flags";a:3:{s:4:"type";s:8:"textarea";s:6:"filter";s:17:"adminDatabase_log";s:10:"field_name";s:3:"log";}s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:9:"error_log";i:2;i:1;}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:12:"Consulta SQL";i:2;i:1;}s:2:"en";a:2:{i:1;s:9:"SQL query";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:12:"Consulta SQL";i:2;i:1;}s:2:"en";a:2:{i:1;s:9:"SQL query";i:2;i:1;}}}}a:1:{s:8:"children";a:5:{i:0;s:6:"_start";i:1;s:11:"~editResult";i:2;s:10:"~editInput";i:3;s:7:"_submit";i:4;s:4:"_end";}}a:2:{s:5:"flags";a:2:{s:4:"type";s:14:"textarea_small";s:10:"field_name";s:11:"query_input";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Consulta";i:2;i:1;}s:2:"en";a:2:{i:1;s:11:"Query input";i:2;i:1;}}}}a:2:{s:5:"flags";a:3:{s:4:"type";s:8:"textarea";s:6:"filter";s:27:"adminDatabase_query_command";s:10:"field_name";s:5:"query";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:21:"Resultado da consulta";i:2;i:1;}s:2:"en";a:2:{i:1;s:12:"Query result";i:2;i:1;}}}}a:1:{s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"en";a:2:{i:1;s:14:"Page not found";i:2;i:1;}s:2:"pt";a:2:{i:1;s:21:"Pgina no encontrada";i:2;i:1;}}s:5:"title";a:2:{s:2:"en";a:2:{i:1;s:14:"Page not found";i:2;i:1;}s:2:"pt";a:2:{i:1;s:21:"Pgina no encontrada";i:2;i:1;}}s:7:"content";a:2:{s:2:"en";a:5:{i:1;s:72:"The address you provided does not match a valid address in this server. ";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}s:2:"pt";a:5:{i:1;s:66:"O endereo que voc forneceu no corresponde a um endereo vlido.";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Domnios";i:2;i:1;}s:2:"en";a:2:{i:1;s:7:"Domains";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:8:"Domnios";i:2;i:1;}s:2:"en";a:2:{i:1;s:7:"Domains";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"content";a:2:{s:2:"pt";a:4:{i:1;s:146:"Este recurso est desativado.#r#n#r#n[if $document.user_is_admin]#r#n#r#nPara ativar este recurso necessrio configurar o banco de dados.#r#n#r#n[} // if]#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}s:2:"en";a:3:{i:1;s:130:"This resource is disabled.#r#n#r#n[if $document.user_is_admin]#r#n#r#nTo enable this resource, set the database connection.#r#n#r#n[} // if]#r#n";i:4;i:1;i:6;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"content";a:2:{s:2:"pt";a:3:{i:1;s:28:"No h domnios cadastrados.";i:2;i:1;i:4;i:1;}s:2:"en";a:2:{i:1;s:30:"There#ss no registered domains.";i:4;i:1;}}}}a:1:{s:8:"children";a:5:{i:0;s:6:"_start";i:1;s:8:"~editMsg";i:2;s:27:"admin_constants_pathDomains";i:3;s:11:"~editSubmit";i:4;s:4:"_end";}}a:2:{s:5:"flags";a:1:{s:6:"filter";s:29:"personaliteFields_descriptive";}s:4:"text";a:1:{s:7:"content";a:2:{s:2:"pt";a:3:{i:1;s:174:"#r#nAntes de adicionar domnios, necessrio criar uma pasta para acomodar os arquivos particulares de cada domnio.#r#n#r#nPara criar esta pasta agora, clique em "Criar pasta".#r#n";i:2;i:1;i:4;i:1;}s:2:"en";a:2:{i:1;s:159:"#r#nBefore adding users, it#ss necessary to create a folder to accommodate the personal files of each user.#r#n#r#nTo create this folder now, click "Create folder".#r#n";i:4;i:1;}}}}a:2:{s:5:"flags";a:2:{s:6:"filter";s:6:"submit";s:10:"field_name";s:6:"create";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Criar pasta";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Create folder";}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"Adicionar domnio";i:2;i:1;}s:2:"en";a:2:{i:1;s:10:"Add domain";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:17:"Adicionar domnio";i:2;i:1;}s:2:"en";a:2:{i:1;s:10:"Add domain";i:2;i:1;}}}}a:1:{s:8:"children";a:10:{i:0;s:6:"_start";i:1;s:9:"~editName";i:2;s:10:"~editTitle";i:3;s:16:"~editDescription";i:4;s:19:"adminUsers_editMail";i:5;s:20:"adminUsers_editPhone";i:6;s:20:"~editDefaultLanguage";i:7;s:10:"~editAdmin";i:8;s:7:"_submit";i:9;s:4:"_end";}}a:2:{s:5:"flags";a:6:{s:4:"type";s:10:"text_small";s:6:"filter";s:6:"~admin";s:6:"target";s:5:"admin";s:10:"field_name";s:5:"admin";s:8:"required";i:1;s:9:"error_msg";s:29:"adminDomains_msgAdminRequired";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Administrador";i:2;i:1;}s:2:"en";a:2:{i:1;s:13:"Administrator";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:5:"error";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"Usurio invlido";i:2;i:1;}s:2:"en";a:2:{i:1;s:12:"Invalid user";i:2;i:1;}}s:7:"content";a:2:{s:2:"pt";a:2:{i:1;s:47:"O nome de usurio informado no foi encontrado.";i:2;i:1;}s:2:"en";a:5:{i:1;s:28:"The user name was not found.";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:2:{s:5:"flags";a:3:{s:6:"filter";s:23:"adminDomains_selectLang";s:6:"target";s:18:"flags/default_lang";s:10:"field_name";s:12:"default_lang";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Idioma padro";i:2;i:1;}s:2:"en";a:2:{i:1;s:16:"Default language";i:2;i:1;}}}}a:1:{s:5:"flags";a:6:{s:4:"type";s:4:"text";s:6:"filter";s:4:"text";s:6:"target";s:16:"text/description";s:10:"field_name";s:11:"description";s:8:"required";i:1;s:7:"caption";s:24:"labels/field/description";}}a:2:{s:5:"flags";a:5:{s:4:"type";s:10:"text_small";s:6:"filter";s:5:"~name";s:6:"target";s:4:"name";s:10:"field_name";s:4:"name";s:8:"required";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Domnio";i:2;i:1;}s:2:"en";a:2:{i:1;s:6:"Domain";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:5:"error";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:24:"Nome de domnio invlido";i:2;i:1;}s:2:"en";a:2:{i:1;s:19:"Invalid domain name";i:2;i:1;}}s:7:"content";a:2:{s:2:"pt";a:2:{i:1;s:35:"Um domnio com este nome j existe.";i:2;i:1;}s:2:"en";a:5:{i:1;s:39:"A domain with this name already exists.";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:5:"error";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:24:"Nome de domnio invlido";i:2;i:1;}s:2:"en";a:2:{i:1;s:19:"Invalid domain name";i:2;i:1;}}s:7:"content";a:2:{s:2:"pt";a:2:{i:1;s:112:"Um nome de domnio pode conter apenas letras minsculas, nmeros e os caractres sublinhado ("_") e hifem ("-").";i:2;i:1;}s:2:"en";a:5:{i:1;s:107:"A domain name can only contain small letters, numbers and the characters underscore ("_") and hiffem ("-").";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:5:"error";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:24:"Nome de domnio invlido";i:2;i:1;}s:2:"en";a:2:{i:1;s:19:"Invalid domain name";i:2;i:1;}}s:7:"content";a:2:{s:2:"pt";a:2:{i:1;s:55:"Escolha um nome de domnio com no mximo 18 caracteres.";i:2;i:1;}s:2:"en";a:5:{i:1;s:49:"Choose a domain name witch 18 characters or less.";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:2:{s:5:"flags";a:5:{s:4:"type";s:4:"text";s:6:"filter";s:4:"text";s:6:"target";s:10:"text/title";s:10:"field_name";s:5:"title";s:8:"required";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:15:"Nome do website";i:2;i:1;}s:2:"en";a:2:{i:1;s:12:"Website name";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:5:"error";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"Usurio invlido";i:2;i:1;}s:2:"en";a:2:{i:1;s:12:"Invalid user";i:2;i:1;}}s:7:"content";a:2:{s:2:"pt";a:2:{i:1;s:49:"Este usurio j um administrador deste domnio.";i:2;i:1;}s:2:"en";a:5:{i:1;s:52:"The user is already an administrator of this domain.";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:8:"question";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:18:"Quem devo remover?";i:2;i:1;}s:2:"en";a:2:{i:1;s:20:"Who should I remove?";i:2;i:1;}}s:7:"content";a:2:{s:2:"pt";a:2:{i:1;s:58:"Para remover um administrador, selecione um nome da lista.";i:2;i:1;}s:2:"en";a:5:{i:1;s:52:"To remove an administrator, select one item of list.";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:2:{s:5:"flags";a:2:{s:4:"icon";s:5:"crash";s:7:"caption";s:33:"system_msg_alertOperationCanceled";}s:4:"text";a:1:{s:7:"content";a:2:{s:2:"pt";a:2:{i:1;s:44:"Um erro ocorreu ao tentar remover o usurio.";i:2;i:1;}s:2:"en";a:5:{i:1;s:50:"An error occurred while trying to remove the user.";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:2:{s:5:"flags";a:2:{s:4:"icon";s:5:"error";s:7:"caption";s:33:"system_msg_alertOperationCanceled";}s:4:"text";a:1:{s:7:"content";a:2:{s:2:"pt";a:3:{i:1;s:113:"Este domnio precisa de pelo menos um administrador.#r#n#r#nAcrescente um novo administrador antes de remover este.#r#n";i:2;i:1;i:4;i:1;}s:2:"en";a:5:{i:1;s:98:"This domain needs at least one administrator.#r#n#r#nAdd a new administrator before removing this one.";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:5:"error";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"Usurio invlido";i:2;i:1;}s:2:"en";a:2:{i:1;s:12:"Invalid user";i:2;i:1;}}s:7:"content";a:2:{s:2:"pt";a:2:{i:1;s:47:"O nome de usurio informado no foi encontrado.";i:2;i:1;}s:2:"en";a:5:{i:1;s:28:"The user name was not found.";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:19:"Detalhes do domnio";i:2;i:1;}s:2:"en";a:2:{i:1;s:14:"Domain details";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:19:"Detalhes do domnio";i:2;i:1;}s:2:"en";a:2:{i:1;s:14:"Domain details";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:15:"Remover domnio";i:2;i:1;}s:2:"en";a:2:{i:1;s:13:"Remove domain";i:2;i:1;}}}}a:3:{s:5:"flags";a:2:{s:6:"action";s:14:"_domain-remove";s:4:"icon";s:8:"question";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:15:"Remover domnio";i:2;i:1;}s:2:"en";a:2:{i:1;s:15:"Remover domnio";i:2;i:1;}}s:7:"content";a:2:{s:2:"pt";a:4:{i:1;s:258:"Esta operao ir remover o domnio e todos os vnculos a ele relacionados.#r#n#r#n===Ateno!===#r#n#r#nEsta operao irreversvel. Ao invs de remover os dados, voc pode bloquear um domnio alterando o status.#r#n#r#nTenha certeza de que esta operao adequada.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}s:2:"en";a:5:{i:1;s:247:"This operation will remove the domain and all the links related to it.#r#n#r#n=== Attention! ===#r#n#r#nThis operation is irreversible. Instead of removing the data, you can block a domain changing the status.#r#n#r#nMake sure that this operation is adequate.";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}s:8:"children";a:5:{i:0;s:6:"_start";i:1;s:23:"~contextRemoveConfirmOk";i:2;s:10:"_separator";i:3;s:37:"modHumperstilshen_submitConfirmCancel";i:4;s:4:"_end";}}a:2:{s:5:"flags";a:2:{s:4:"icon";s:5:"crash";s:7:"caption";s:33:"system_msg_alertOperationCanceled";}s:4:"text";a:1:{s:7:"content";a:2:{s:2:"pt";a:3:{i:1;s:96:"#r#nO texto que voc digitou no se parece com "ok".#r#n#r#nOs dados do domnio no foram removidos.#r#n";i:2;i:1;i:4;i:1;}s:2:"en";a:5:{i:1;s:81:"The text you entered does not look like "ok".#r#n#r#nThe domain data was not removed.";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:2:{s:5:"flags";a:3:{s:6:"filter";s:8:"admin_ok";s:10:"field_name";s:10:"confirm_ok";s:9:"error_msg";s:26:"~contextRemoveConfirmError";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Digite "ok"";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Type "ok"";}}}}a:1:{s:8:"children";a:18:{i:0;s:6:"_start";i:1;s:9:"~editName";i:2;s:10:"~editTitle";i:3;s:12:"~editCaption";i:4;s:16:"~editDescription";i:5;s:19:"adminUsers_editMail";i:6;s:20:"adminUsers_editPhone";i:7;s:22:"adminUsers_editAddress";i:8;s:20:"~editDefaultLanguage";i:9;s:11:"~editStatus";i:10;s:11:"~editUpdate";i:11;s:10:"_separator";i:12;s:20:"~editAdminRemoveList";i:13;s:22:"~editAdminRemoveSubmit";i:14;s:10:"_separator";i:15;s:17:"~editAdminAddName";i:16;s:19:"~editAdminAddSubmit";i:17;s:4:"_end";}}a:2:{s:5:"flags";a:4:{s:4:"type";s:10:"text_small";s:6:"filter";s:9:"~adminAdd";s:6:"target";s:10:"admin_name";s:10:"field_name";s:10:"admin_name";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:24:"Adicionar administrador ";i:2;i:1;}s:2:"en";a:2:{i:1;s:17:"Add administrator";i:2;i:1;}}}}a:1:{s:5:"flags";a:4:{s:4:"type";s:6:"submit";s:6:"filter";s:6:"submit";s:10:"field_name";s:9:"admin_add";s:7:"caption";s:17:"labels/action/add";}}a:3:{s:5:"flags";a:4:{s:4:"type";s:4:"list";s:6:"filter";s:12:"~adminSelect";s:6:"target";s:12:"admin_select";s:10:"field_name";s:12:"admin_select";}s:5:"local";a:1:{s:4:"size";i:4;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:15:"Administradores";i:2;i:1;}s:2:"en";a:2:{i:1;s:14:"Administrators";i:2;i:1;}}}}a:1:{s:5:"flags";a:4:{s:4:"type";s:6:"submit";s:6:"filter";s:6:"submit";s:10:"field_name";s:12:"admin_remove";s:7:"caption";s:20:"labels/action/remove";}}a:2:{s:5:"flags";a:5:{s:4:"type";s:4:"text";s:6:"filter";s:4:"text";s:6:"target";s:12:"text/caption";s:10:"field_name";s:7:"caption";s:8:"required";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Organizao";i:2;i:1;}s:2:"en";a:2:{i:1;s:12:"Organization";i:2;i:1;}}}}a:2:{s:5:"flags";a:3:{s:6:"filter";s:27:"adminDomains_selectCurrency";s:6:"target";s:14:"flags/currency";s:10:"field_name";s:8:"currency";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Moeda";i:2;i:1;}s:2:"en";a:2:{i:1;s:8:"Currency";i:2;i:1;}}}}a:2:{s:5:"flags";a:3:{s:6:"filter";s:23:"adminDomains_selectLang";s:6:"target";s:18:"flags/default_lang";s:10:"field_name";s:12:"default_lang";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Idioma padro";i:2;i:1;}s:2:"en";a:2:{i:1;s:16:"Default language";i:2;i:1;}}}}a:1:{s:5:"flags";a:6:{s:4:"type";s:4:"text";s:6:"filter";s:4:"text";s:6:"target";s:16:"text/description";s:10:"field_name";s:11:"description";s:8:"required";i:1;s:7:"caption";s:24:"labels/field/description";}}a:2:{s:5:"flags";a:4:{s:4:"type";s:4:"view";s:6:"filter";s:4:"view";s:6:"target";s:4:"name";s:10:"field_name";s:4:"name";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Domnio";i:2;i:1;}s:2:"en";a:1:{i:1;s:6:"domain";}}}}a:3:{s:5:"flags";a:4:{s:4:"type";s:6:"select";s:6:"filter";s:6:"select";s:6:"target";s:6:"status";s:10:"field_name";s:6:"status";}s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:6:"Status";i:2;i:1;}}}s:8:"children";a:5:{i:0;s:18:"~editStatusWaiting";i:1;s:18:"~editStatusDefault";i:2;s:16:"~editStatusAlert";i:3;s:19:"~editStatusReserved";i:4;s:19:"~editStatusDisabled";}}a:2:{s:5:"flags";a:1:{s:5:"value";s:1:"3";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Alerta";i:2;i:1;}s:2:"en";a:2:{i:1;s:5:"Alert";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:1:"2";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Ativo";i:2;i:1;}s:2:"en";a:2:{i:1;s:6:"Active";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:1:"5";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Bloqueado";i:2;i:1;}s:2:"en";a:2:{i:1;s:7:"Blocked";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:1:"4";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:14:"rea reservada";i:2;i:1;}s:2:"en";a:2:{i:1;s:13:"Reserved area";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:1:"1";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:22:"Aguardando atualizao";i:2;i:1;}s:2:"en";a:2:{i:1;s:15:"Awaiting update";i:2;i:1;}}}}a:2:{s:5:"flags";a:5:{s:4:"type";s:4:"text";s:6:"filter";s:4:"text";s:6:"target";s:10:"text/title";s:10:"field_name";s:5:"title";s:8:"required";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:15:"Nome do website";i:2;i:1;}s:2:"en";a:2:{i:1;s:12:"Website name";i:2;i:1;}}}}a:1:{s:5:"flags";a:4:{s:4:"type";s:6:"submit";s:6:"filter";s:6:"submit";s:10:"field_name";s:4:"save";s:7:"caption";s:20:"labels/action/update";}}a:1:{s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Incio";i:2;i:1;}s:2:"en";a:2:{i:1;s:4:"Home";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:3:{i:1;s:39:"Administrao do [text $system.caption]";i:2;i:1;i:6;i:1;}s:2:"en";a:3:{i:1;s:37:"[text $system.caption] Administration";i:2;i:1;i:6;i:1;}}s:7:"content";a:2:{s:2:"pt";a:4:{i:1;s:355:"#r#n[if $document.user_is_admin{]#r#nOl [text $user.caption],#r#n#r#nBem-vind[gender:o|a] como administrador[gender:|a].#r#n#r#n[}elseif $document.user_is_connected{]#r#n#r#nPrezad[gender:o|a] [text $user.caption],#r#n#r#nSua credencial no lhe d direito de acesso estas ferramentas.#r#n#r#n[}else{]#r#n#r#nSe voc um administrador, conecte-se para obter acesso.#r#n#r#n[} // if]#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}s:2:"en";a:5:{i:1;s:309:"[if $document.user_is_admin{]#r#nHello [text $user.caption],#r#n#r#nWelcome as administrator.#r#n#r#n[}elseif $document.user_is_connected{]#r#n#r#nDear [text $user.caption],#r#n#r#nYour profile does not give you right of access to these tools.#r#n#r#n[}else{]#r#n#r#nIf you are an administrator, connect to guive access.#r#n#r#n[} // if]#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:1:{s:4:"text";a:3:{s:7:"caption";a:1:{s:2:"pt";a:3:{i:1;s:39:"Administrao do [text $system.caption]";i:2;i:1;i:6;i:1;}}s:5:"title";a:1:{s:2:"pt";a:3:{i:1;s:39:"Sobre a pgina inicial da administrao";i:2;i:1;i:6;i:1;}}s:7:"content";a:1:{s:2:"pt";a:5:{i:1;s:401:"#r#nEste o ambiente administrativo do [text$system.caption].#r#n#r#nAqui encontram-se reunidas diversas ferramentas que englobam todos os ambientes criados neste sistema.#r#n#r#nPara obter informaes sobre as ferramentas deste administrador, procure ajuda no menu de contexto em cada pgina.#r#n#r#nAjuda mais especfica tambm pode ser obtida acionando os cones presentes ao lado dos campos dos formulrios.#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Servios";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Services";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:8:"Servios";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Services";}}}}a:1:{s:4:"text";a:1:{s:7:"content";a:2:{s:2:"pt";a:4:{i:1;s:119:"Nenhum servio est disponvel.#r#n#r#nInstale novos servios para expandir as funcionalidades do [text $system.caption].#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}s:2:"en";a:3:{i:1;s:20:"There#ss no services.";i:2;i:1;i:4;i:1;}}}}a:1:{s:4:"text";a:3:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:11:"Integraes";i:2;i:1;}}s:5:"title";a:1:{s:2:"pt";a:2:{i:1;s:11:"Integraes";i:2;i:1;}}s:7:"content";a:1:{s:2:"pt";a:5:{i:1;s:302:"#r#nAqui esto os servios que podero ser ativados pelo [text $system.caption] para possibilitar mais funcionalidades.#r#n#r#nCada servio precisa ser configurado individualmente, e pode ser necessrio o cadastro e o pagamento de taxas para seu uso.#r#n#r#nEncontre mais informaes na pgina de cada servio.#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Sistema";i:2;i:1;}s:2:"en";a:2:{i:1;s:6:"System";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:7:"Sistema";i:2;i:1;}s:2:"en";a:2:{i:1;s:6:"System";i:2;i:1;}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Administrador";i:2;i:1;}s:2:"en";a:2:{i:1;s:13:"Administrator";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:13:"Administrador";i:2;i:1;}s:2:"en";a:2:{i:1;s:13:"Administrator";i:2;i:1;}}}}a:1:{s:8:"children";a:10:{i:0;s:6:"_start";i:1;s:31:"admin_constants_adminIdentifier";i:2;s:28:"admin_constants_adminCaption";i:3;s:25:"admin_constants_adminMail";i:4;s:27:"admin_constants_adminGender";i:5;s:29:"admin_constants_adminPassword";i:6;s:30:"admin_constants_adminPassword2";i:7;s:28:"admin_constants_adminHelpers";i:8;s:7:"_submit";i:9;s:4:"_end";}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Executar";i:2;i:1;}s:2:"en";a:2:{i:1;s:20:"Run PHP instructions";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:23:"Executar instrues PHP";i:2;i:1;}s:2:"en";a:2:{i:1;s:20:"Run PHP instructions";i:2;i:1;}}}}a:1:{s:8:"children";a:4:{i:0;s:6:"_start";i:1;s:14:"~editEvalInput";i:2;s:7:"_submit";i:3;s:4:"_end";}}a:2:{s:5:"flags";a:3:{s:4:"type";s:12:"textarea_big";s:6:"filter";s:10:"~evalInput";s:10:"field_name";s:4:"eval";}s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:4:"eval";i:2;i:1;}}}}a:1:{s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:12:"Desempacotar";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Unpack system";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:20:"Desempacotar sistema";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Unpack system";}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:639:"#r#nO sistema est empacotado. Isto significa que todos os componentes necessrios para o seu funcionamento esto reunidos em um nico arquivo.#r#n#r#nPara editar scripts, adicionar ou remover componentes, voc pode desempacotar o sistema, extraindo os componentes em arquivos distintos.#r#n#r#nIsto acarretar uma perda significativa no desempenho, e arquivos de controle do sistema podero estar expostos aos usurios. Por isto, no recomendamos manter o sistema desempacotado em um ambiente de produo.#r#n#r#nPosteriormente voc poder empacotar novamente o sistema, facilitando a transferncia, aumentando a segurana e melhorando o desempenho.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:1:{s:8:"children";a:19:{i:0;s:6:"_start";i:1;s:39:"admin_constants_systemPackedSharedFirst";i:2;s:36:"admin_constants_systemPackedMapFirst";i:3;s:5:"_save";i:4;s:10:"_separator";i:5;s:26:"admin_constants_pathEngine";i:6;s:27:"admin_constants_pathLibrary";i:7;s:26:"admin_constants_pathShared";i:8;s:29:"admin_constants_pathTemplates";i:9;s:10:"_separator";i:10;s:11:"~editNlMode";i:11;s:16:"~editIndentStart";i:12;s:17:"~editIndentString";i:13;s:18:"~editDataExtension";i:14;s:24:"~editScriptAccessibility";i:15;s:17:"~editCreateBackup";i:16;s:19:"~editBackupFilename";i:17;s:11:"~editSubmit";i:18;s:4:"_end";}}a:2:{s:5:"flags";a:8:{s:4:"type";s:10:"text_small";s:6:"filter";s:8:"filename";s:6:"target";s:8:"filename";s:10:"field_name";s:8:"filename";s:14:"file_extension";s:3:"php";s:13:"default_value";s:11:"install.php";s:8:"required";i:1;s:5:"error";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:25:"Nome do arquivo de backup";i:2;i:1;}s:2:"en";a:1:{i:1;s:16:"Backup file name";}}}}a:2:{s:5:"flags";a:4:{s:6:"filter";s:8:"checkbox";s:6:"target";s:13:"create_backup";s:10:"field_name";s:13:"create_backup";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:34:"Criar backup do sistema empacotado";i:2;i:1;}s:2:"en";a:1:{i:1;s:34:"Create a backup of packaged system";}}}}a:3:{s:5:"flags";a:4:{s:13:"conttrol_type";s:6:"select";s:6:"filter";s:6:"select";s:6:"target";s:26:"output_data_file_extension";s:10:"field_name";s:14:"file_extension";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:27:"Formato de arquivo de dados";i:2;i:1;}s:2:"en";a:1:{i:1;s:16:"Data file format";}}}s:8:"children";a:3:{i:0;s:22:"~editDataExtensionJson";i:1;s:21:"~editDataExtensionEcl";i:2;s:24:"~editDataExtensionEclPhp";}}a:2:{s:5:"flags";a:1:{s:5:"value";s:4:".ecl";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:27:"Formato Simplificado (.ecl)";i:2;i:1;}s:2:"en";a:1:{i:1;s:24:"Simplified format (.ecl)";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:5:".json";}s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"en";a:2:{i:1;s:34:"JavaScript Object Notation (.json)";i:2;i:1;}}}}a:3:{s:5:"flags";a:4:{s:13:"conttrol_type";s:6:"select";s:6:"filter";s:6:"select";s:6:"target";s:19:"script_indent_start";s:10:"field_name";s:19:"script_indent_start";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:26:"Indentar a partir do nvel";i:2;i:1;}s:2:"en";a:1:{i:1;s:18:"Indent after level";}}}s:8:"children";a:3:{i:0;s:17:"~editIndentStart1";i:1;s:17:"~editIndentStart2";i:2;s:17:"~editIndentStart3";}}a:2:{s:5:"flags";a:1:{s:5:"value";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"1 - Classes";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"1 - Classes";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";i:2;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"2 - Mtodos";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"2 - Methods";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";i:3;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:26:"3 - Estruturas de controle";i:2;i:1;}s:2:"en";a:1:{i:1;s:22:"3 - Control structures";}}}}a:3:{s:5:"flags";a:4:{s:13:"conttrol_type";s:6:"select";s:6:"filter";s:6:"select";s:6:"target";s:13:"script_indent";s:10:"field_name";s:13:"script_indent";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:18:"Modo de indentao";i:2;i:1;}s:2:"en";a:1:{i:1;s:16:"Indentation mode";}}}s:8:"children";a:3:{i:0;s:20:"~editIndentStringTab";i:1;s:24:"~editIndentString4spaces";i:2;s:24:"~editIndentString2spaces";}}a:2:{s:5:"flags";a:1:{s:5:"value";s:5:"32,32";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"2 Espaos";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"2 Spaces";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:11:"32,32,32,32";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"4 Espaos";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"4 Spaces";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:1:"9";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:3:"Tab";i:2;i:1;}s:2:"en";a:1:{i:1;s:3:"Tab";}}}}a:3:{s:5:"flags";a:4:{s:13:"conttrol_type";s:6:"select";s:6:"filter";s:6:"select";s:6:"target";s:9:"script_nl";s:10:"field_name";s:9:"script_nl";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:15:"Quebra de linha";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Line break";}}}s:8:"children";a:2:{i:0;s:18:"~editNlModeWindows";i:1;s:16:"~editNlModeLinux";}}a:2:{s:5:"flags";a:1:{s:5:"value";s:2:"LF";}s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:10:"Linux (LF)";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:4:"CRLF";}s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:14:"Windows (CRLF)";i:2;i:1;}}}}a:2:{s:5:"flags";a:4:{s:6:"filter";s:8:"checkbox";s:6:"target";s:20:"script_accessibility";s:10:"field_name";s:20:"script_accessibility";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:37:"No indentar scripts (Modo acessvel)";i:2;i:1;}s:2:"en";a:1:{i:1;s:38:"No indent scripts (Accessibility mode)";}}}}a:2:{s:5:"flags";a:2:{s:6:"filter";s:6:"submit";s:10:"field_name";s:7:"extract";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:20:"Desempacotar sistema";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Unpack system";}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"Hospedagem";i:2;i:1;}s:2:"en";a:2:{i:1;s:7:"Hosting";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:10:"Hospedagem";i:2;i:1;}s:2:"en";a:2:{i:1;s:7:"Hosting";i:2;i:1;}}}}a:1:{s:8:"children";a:12:{i:0;s:6:"_start";i:1;s:33:"admin_constants_systemHostingMode";i:2;s:26:"admin_constants_systemHost";i:3;s:39:"admin_constants_systemDefaultDomainName";i:4;s:30:"admin_constants_systemAdminUri";i:5;s:33:"admin_constants_systemProfilesUri";i:6;s:36:"admin_constants_systemProjectCaption";i:7;s:32:"admin_constants_systemProjectRef";i:8;s:45:"admin_constants_systemEnableUserSubscriptions";i:9;s:39:"admin_constants_systemEnableUserDomains";i:10;s:7:"_submit";i:11;s:4:"_end";}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Erros";i:2;i:1;}s:2:"en";a:2:{i:1;s:13:"PHP error log";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:19:"Log de erros do PHP";i:2;i:1;}s:2:"en";a:2:{i:1;s:13:"PHP error log";i:2;i:1;}}}}a:1:{s:8:"children";a:9:{i:0;s:6:"_start";i:1;s:31:"admin_constants_systemTimeLimit";i:2;s:35:"admin_constants_systemDisplayErrors";i:3;s:31:"admin_constants_systemLogErrors";i:4;s:7:"_submit";i:5;s:10:"_separator";i:6;s:12:"~editLogView";i:7;s:13:"~editLogClear";i:8;s:4:"_end";}}a:2:{s:5:"flags";a:3:{s:4:"type";s:6:"submit";s:6:"filter";s:6:"submit";s:10:"field_name";s:9:"clear_log";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"Limpar log";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Clear log";}}}}a:2:{s:5:"flags";a:3:{s:4:"type";s:8:"textarea";s:6:"filter";s:8:"~logView";s:10:"field_name";s:3:"log";}s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:9:"error_log";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:5:"happy";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"Empacotar sistema";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"Pack system";}}s:7:"content";a:2:{s:2:"pt";a:3:{i:1;s:24:"O sistema foi empacotado";i:2;i:1;i:4;i:1;}s:2:"en";a:2:{i:1;s:21:"The system was packed";i:4;i:1;}}}}a:1:{s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Empacotar";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"Pack system";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:17:"Empacotar sistema";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"Pack system";}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:322:"#r#nAtualmente o sistema est distribudo em diversos arquivos. Isto facilita a manuteno e o desenvolvimento. Porm, este modo no indicado para ambientes de produo.#r#n#r#nVoc pode empacotar todos os componentes em um nico arquivo, facilitando a transferncia, elevando o nvel de segurana e melhorando o desempenho.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:1:{s:8:"children";a:6:{i:0;s:6:"_start";i:1;s:19:"~editPackMediaFiles";i:2;s:16:"~editClearServer";i:3;s:19:"~editExportFilename";i:4;s:11:"~editSubmit";i:5;s:4:"_end";}}a:2:{s:5:"flags";a:4:{s:6:"filter";s:8:"checkbox";s:6:"target";s:18:"clear_source_files";s:10:"field_name";s:10:"clearfiles";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:26:"Remover arquivos de origem";i:2;i:1;}s:2:"en";a:1:{i:1;s:19:"Remove source files";}}}}a:2:{s:5:"flags";a:8:{s:4:"type";s:10:"text_small";s:6:"filter";s:8:"filename";s:6:"target";s:8:"filename";s:10:"field_name";s:8:"filename";s:14:"file_extension";s:3:"php";s:13:"default_value";s:11:"install.php";s:8:"required";i:1;s:5:"error";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:15:"Nome do arquivo";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"File name";}}}}a:2:{s:5:"flags";a:4:{s:6:"filter";s:8:"checkbox";s:6:"target";s:16:"pack_media_files";s:10:"field_name";s:16:"pack_media_files";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:43:"Empacotar arquivos de mdia (udio e vdeo)";i:2;i:1;}s:2:"en";a:1:{i:1;s:34:"Pack media files (audio and video)";}}}}a:2:{s:5:"flags";a:2:{s:6:"filter";s:6:"submit";s:10:"field_name";s:4:"pack";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"Empacotar sistema";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"Pack system";}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Servidor";i:2;i:1;}s:2:"en";a:2:{i:1;s:6:"Server";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:8:"Servidor";i:2;i:1;}s:2:"en";a:2:{i:1;s:6:"Server";i:2;i:1;}}}}a:1:{s:8:"children";a:6:{i:0;s:6:"_start";i:1;s:35:"admin_constants_systemHttpsRedirect";i:2;s:35:"admin_constants_systemRewriteEngine";i:3;s:22:"admin_constants_chrFns";i:4;s:7:"_submit";i:5;s:4:"_end";}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Configuraes";i:2;i:1;}s:2:"en";a:2:{i:1;s:14:"Configurations";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:32:"Configuraes bsicas do sistema";i:2;i:1;}s:2:"en";a:2:{i:1;s:26:"Basic system configuration";i:2;i:1;}}}}a:1:{s:8:"children";a:9:{i:0;s:6:"_start";i:1;s:37:"admin_constants_systemDefaultLanguage";i:2;s:36:"admin_constants_systemDefaultCharset";i:3;s:37:"admin_constants_systemDefaultCurrency";i:4;s:30:"admin_constants_systemTimezone";i:5;s:32:"admin_constants_systemSessionTTL";i:6;s:40:"admin_constants_systemSessionCacheExpire";i:7;s:7:"_submit";i:8;s:4:"_end";}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:12:"Atualizaes";i:2;i:1;}s:2:"en";a:2:{i:1;s:7:"Updates";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:12:"Atualizaes";i:2;i:1;}s:2:"en";a:2:{i:1;s:7:"Updates";i:2;i:1;}}}}a:1:{s:8:"children";a:7:{i:0;s:6:"_start";i:1;s:19:"~viewCurrentVersion";i:2;s:19:"~viewCurrentRelease";i:3;s:21:"~viewLastVerification";i:4;s:13:"~editCheckNow";i:5;s:24:"~viewNewVersionAvailable";i:6;s:4:"_end";}}a:2:{s:5:"flags";a:2:{s:6:"filter";s:6:"submit";s:10:"field_name";s:5:"check";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:21:"Procurar atualizaes";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Check updates";}}}}a:2:{s:5:"flags";a:2:{s:6:"filter";s:6:"submit";s:10:"field_name";s:6:"update";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:15:"Atualizar agora";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Update now";}}}}a:2:{s:5:"flags";a:1:{s:6:"filter";s:37:"adminSystem_update_viewCurrentRelease";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"Lanamento";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Release";}}}}a:2:{s:5:"flags";a:1:{s:6:"filter";s:37:"adminSystem_update_viewCurrentVersion";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:12:"Verso atual";i:2;i:1;}s:2:"en";a:1:{i:1;s:15:"Current version";}}}}a:2:{s:5:"flags";a:1:{s:6:"filter";s:39:"adminSystem_update_viewLastVerification";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:18:"ltima verificao";i:2;i:1;}s:2:"en";a:1:{i:1;s:17:"Last verification";}}}}a:2:{s:5:"flags";a:1:{s:6:"filter";s:42:"adminSystem_update_viewNewVersionAvailable";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:22:"Nova verso disponvel";i:2;i:1;}s:2:"en";a:1:{i:1;s:21:"New version available";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:15:"Notas da verso";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Release notes";}}}}a:2:{s:5:"local";a:1:{s:4:"type";s:11:"descriptive";}s:4:"text";a:1:{s:7:"content";a:2:{s:2:"pt";a:3:{i:1;s:63:"A verso instalada parece ser a verso mais recente disponvel.";i:2;i:1;i:4;i:1;}s:2:"en";a:2:{i:1;s:65:"The installed version appears to be the latest version available.";i:4;i:1;}}}}a:1:{s:8:"children";a:4:{i:0;s:6:"_start";i:1;s:16:"~adminProfileMsg";i:2;s:19:"~adminProfileButtom";i:3;s:4:"_end";}}a:2:{s:5:"flags";a:2:{s:6:"filter";s:6:"submit";s:10:"field_name";s:6:"create";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:29:"Criar perfil do administrador";i:2;i:1;}s:2:"en";a:1:{i:1;s:20:"Create admin profile";}}}}a:2:{s:5:"flags";a:1:{s:6:"filter";s:29:"personaliteFields_descriptive";}s:4:"text";a:1:{s:7:"content";a:2:{s:2:"pt";a:4:{i:1;s:321:"#r#n=== Ateno ===#r#n#r#nO administrador [text $user.caption] no possui um perfil para si.#r#n#r#nAo criar um perfil com o mesmo identificador do administrador, ambos possuiro os mesmos direitos de acesso.#r#n#r#nPor isso recomendamos fortemente que voc crie um perfil para o administrador antes que acidentalmente outro o faa!#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}s:2:"en";a:3:{i:1;s:321:"#r#n=== Attention ===#r#n#r#nThe administrator [text $ user.caption] does not have a profile for him.#r#n#r#nWhen creating a profile with the same administrator identifier, both will have the same access rights.#r#n#r#nSo we strongly recommend that you create a profile for the administrator before someone else accidentally does it!#r#n";i:4;i:1;i:6;i:1;}}}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:5:"error";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:3:{i:1;s:14:"Senha invlida";i:2;i:1;i:5;i:2;}s:2:"en";a:2:{i:1;s:16:"Invalid password";i:2;i:1;}}s:7:"content";a:2:{s:2:"pt";a:4:{i:1;s:184:"No permitido utilizar caractres extendidos (como letras acentuadas). #r#n#r#nIsto poder impedir a conexo caso se esteja utilizando uma codificao de caracteres diferente da atual.#r#n";i:2;i:1;i:4;i:1;i:5;i:2;}s:2:"en";a:5:{i:1;s:162:"You may not use extended characters (such as accented letters).#r#n#r#nThis may prevent the connection if you are using a different character encoding of the current.";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:5:"error";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:3:{i:1;s:13:"Repetir senha";i:2;i:1;i:5;i:2;}s:2:"en";a:2:{i:1;s:15:"Repeat password";i:2;i:1;}}s:7:"content";a:2:{s:2:"pt";a:2:{i:1;s:39:"As senhas informadas no so idnticas.";i:2;i:1;}s:2:"en";a:5:{i:1;s:41:"The informed passwords are not identical.";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:8:"question";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Cad a senha?";i:2;i:1;}s:2:"en";a:2:{i:1;s:21:"Where#ss the password?";i:2;i:1;}}s:7:"content";a:2:{s:2:"pt";a:2:{i:1;s:32:" necessrio informar uma senha.";i:2;i:1;}s:2:"en";a:5:{i:1;s:26:"You must enter a password.";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:5:"alert";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:22:"Identificador invlido";i:2;i:1;}s:2:"en";a:2:{i:1;s:18:"Invalid identifier";i:2;i:1;}}s:7:"content";a:2:{s:2:"pt";a:4:{i:1;s:52:"Um usurio com o identificador "[$value]" j existe.";i:2;i:1;i:4;i:1;i:6;i:1;}s:2:"en";a:5:{i:1;s:53:"A user with the identifier "[$value]" already exists.";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:5:"error";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:3:{i:1;s:22:"Identificador invlido";i:2;i:1;i:5;i:2;}s:2:"en";a:2:{i:1;s:18:"Invalid identifier";i:2;i:1;}}s:7:"content";a:2:{s:2:"pt";a:4:{i:1;s:158:"#r#nO identificador "[$value]" no vlido#r#n#r#nUm identificador pode conter somente letras minsculas, nmeros e os caractres sublinhado ("_") e hifem ("-").#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}s:2:"en";a:5:{i:1;s:151:"#r#nThe identifier "[$value]" is invalid.#r#n#r#nAn identifier can contain only lowercase letters, numbers and underscore characters ("_") and hyphen ( "-").";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:8:"question";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:3:{i:1;s:21:"Cad o identificador?";i:2;i:1;i:5;i:1;}s:2:"en";a:2:{i:1;s:23:"Where#ss the identifier?";i:2;i:1;}}s:7:"content";a:2:{s:2:"pt";a:3:{i:1;s:168:"No foi possvel encontrar um identificador vlido.#r#n#r#nUm identificador pode conter somente letras minsculas, nmeros e os caractres sublinhado ("_") e hifem ("-").#r#n";i:2;i:1;i:4;i:1;}s:2:"en";a:5:{i:1;s:146:"Could not find a valid identifier.#r#n#r#nAn identifier can contain only lowercase letters, numbers and underscore characters ("_") and hyphen ( "-").";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Usurios";i:2;i:1;}s:2:"en";a:2:{i:1;s:5:"Users";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:8:"Usurios";i:2;i:1;}s:2:"en";a:2:{i:1;s:5:"Users";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"content";a:2:{s:2:"pt";a:4:{i:1;s:146:"Este recurso est desativado.#r#n#r#n[if $document.user_is_admin]#r#n#r#nPara ativar este recurso necessrio configurar o banco de dados.#r#n#r#n[} // if]#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}s:2:"en";a:3:{i:1;s:130:"This resource is disabled.#r#n#r#n[if $document.user_is_admin]#r#n#r#nTo enable this resource, set the database connection.#r#n#r#n[} // if]#r#n";i:4;i:1;i:6;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"content";a:2:{s:2:"pt";a:3:{i:1;s:28:"No h usurios cadastrados.";i:2;i:1;i:4;i:1;}s:2:"en";a:2:{i:1;s:28:"There#ss no registered users.";i:4;i:1;}}}}a:1:{s:8:"children";a:5:{i:0;s:6:"_start";i:1;s:16:"~createFolderMsg";i:2;s:28:"admin_constants_pathProfiles";i:3;s:19:"~createFolderButtom";i:4;s:4:"_end";}}a:2:{s:5:"flags";a:2:{s:6:"filter";s:6:"submit";s:10:"field_name";s:6:"create";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Criar pasta";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Create folder";}}}}a:2:{s:5:"flags";a:1:{s:6:"filter";s:29:"personaliteFields_descriptive";}s:4:"text";a:1:{s:7:"content";a:2:{s:2:"pt";a:3:{i:1;s:170:"#r#nAntes de adicionar usurios, necessrio criar uma pasta para acomodar os arquivos pessoais de cada usurio.#r#n#r#nPara criar esta pasta agora, clique em "Criar pasta".#r#n";i:2;i:1;i:4;i:1;}s:2:"en";a:2:{i:1;s:159:"#r#nBefore adding users, it#ss necessary to create a folder to accommodate the personal files of each user.#r#n#r#nTo create this folder now, click "Create folder".#r#n";i:4;i:1;}}}}a:2:{s:5:"flags";a:3:{s:4:"type";s:16:"address_buscacep";s:6:"filter";s:25:"personaliteFields_address";s:10:"field_name";s:7:"address";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Endereo";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Address";}}}}a:2:{s:5:"flags";a:4:{s:4:"type";s:10:"text_small";s:6:"filter";s:4:"free";s:10:"field_name";s:9:"born_date";s:6:"target";s:19:"local/document/born";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:18:"Data de nascimento";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Born date";}}}}a:2:{s:5:"flags";a:6:{s:4:"type";s:10:"text_small";s:6:"filter";s:4:"text";s:6:"target";s:12:"text/caption";s:10:"field_name";s:7:"caption";s:8:"required";i:1;s:8:"monolang";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:15:"Nome ou apelido";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Nick name";}}}}a:2:{s:5:"flags";a:4:{s:4:"type";s:10:"text_small";s:6:"filter";s:4:"free";s:10:"field_name";s:3:"cpf";s:6:"target";s:18:"local/document/cpf";}s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:3:"CPF";i:2;i:1;}}}}a:2:{s:5:"flags";a:4:{s:4:"type";s:4:"text";s:6:"filter";s:4:"text";s:10:"field_name";s:11:"description";s:6:"target";s:16:"text/description";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:21:"Frase de apresentao";i:2;i:1;}s:2:"en";a:1:{i:1;s:28:"Presentation humorous phrase";}}}}a:3:{s:5:"flags";a:4:{s:4:"type";s:6:"select";s:6:"filter";s:6:"select";s:6:"target";s:12:"local/gender";s:10:"field_name";s:6:"gender";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:19:"Forma de tratamento";i:2;i:1;}s:2:"en";a:1:{i:1;s:6:"Gender";}}}s:8:"children";a:3:{i:0;s:20:"~editGenderUndefined";i:1;s:17:"~editGenderFemale";i:2;s:15:"~editGenderMale";}}a:2:{s:5:"flags";a:1:{s:5:"value";s:6:"female";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Senhora";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"Miss";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:4:"male";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Senhor";i:2;i:1;}s:2:"en";a:1:{i:1;s:6:"Mister";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:9:"undefined";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:18:"(No especificado)";i:2;i:1;}s:2:"en";a:1:{i:1;s:15:"(Not specified)";}}}}a:2:{s:5:"flags";a:3:{s:4:"type";s:4:"text";s:6:"filter";s:22:"personaliteFields_mail";s:10:"field_name";s:4:"mail";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Email";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Email";}}}}a:2:{s:5:"flags";a:5:{s:4:"type";s:10:"text_small";s:6:"filter";s:15:"adminUsers_name";s:6:"target";s:4:"name";s:10:"field_name";s:4:"name";s:8:"required";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Identificador";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Identifier";}}}}a:1:{s:5:"flags";a:6:{s:4:"type";s:13:"text_password";s:6:"filter";s:19:"adminUsers_password";s:6:"target";s:8:"password";s:10:"field_name";s:8:"password";s:7:"caption";s:26:"labels/field/user_password";s:8:"required";i:1;}}a:1:{s:5:"flags";a:4:{s:4:"type";s:13:"text_password";s:10:"field_name";s:15:"password_repeat";s:8:"required";i:1;s:7:"caption";s:33:"labels/field/user_repeat_password";}}a:2:{s:5:"flags";a:3:{s:4:"type";s:5:"phone";s:6:"filter";s:23:"personaliteFields_phone";s:10:"field_name";s:5:"phone";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Telefone";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Phone";}}}}a:2:{s:5:"flags";a:4:{s:4:"type";s:4:"text";s:6:"filter";s:4:"text";s:10:"field_name";s:9:"full_name";s:6:"target";s:10:"text/title";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Nome completo";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Full name";}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"Adicionar usurio";i:2;i:1;}s:2:"en";a:2:{i:1;s:8:"Add user";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:17:"Adicionar usurio";i:2;i:1;}s:2:"en";a:2:{i:1;s:8:"Add user";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:6:"action";s:10:"_user-edit";}s:8:"children";a:10:{i:0;s:6:"_start";i:1;s:19:"adminUsers_editName";i:2;s:22:"adminUsers_editCaption";i:3;s:20:"adminUsers_editTitle";i:4;s:19:"adminUsers_editMail";i:5;s:21:"adminUsers_editGender";i:6;s:23:"adminUsers_editPassword";i:7;s:24:"adminUsers_editPassword2";i:8;s:7:"_submit";i:9;s:4:"_end";}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:19:"Detalhes do usurio";i:2;i:1;}s:2:"en";a:2:{i:1;s:12:"User details";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:19:"Detalhes do usurio";i:2;i:1;}s:2:"en";a:2:{i:1;s:12:"User details";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:6:"action";s:10:"_user-edit";}s:8:"children";a:12:{i:0;s:6:"_start";i:1;s:9:"~editName";i:2;s:22:"adminUsers_editCaption";i:3;s:20:"adminUsers_editTitle";i:4;s:19:"adminUsers_editMail";i:5;s:21:"adminUsers_editGender";i:6;s:24:"~editPasswordDescription";i:7;s:13:"~editPassword";i:8;s:24:"adminUsers_editPassword2";i:9;s:13:"~editComments";i:10;s:7:"_submit";i:11;s:4:"_end";}}a:2:{s:5:"flags";a:4:{s:4:"type";s:14:"textarea_small";s:6:"filter";s:4:"text";s:6:"target";s:13:"text/comments";s:10:"field_name";s:8:"comments";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Observaes";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Observations";}}}}a:1:{s:5:"flags";a:5:{s:4:"type";s:4:"view";s:6:"filter";s:4:"view";s:6:"target";s:4:"name";s:10:"field_name";s:4:"name";s:7:"caption";s:28:"labels/field/user_identifier";}}a:1:{s:5:"flags";a:5:{s:4:"type";s:13:"text_password";s:6:"filter";s:19:"adminUsers_password";s:6:"target";s:8:"password";s:10:"field_name";s:8:"password";s:7:"caption";s:26:"labels/field/user_password";}}a:2:{s:5:"flags";a:1:{s:4:"type";s:11:"descriptive";}s:4:"text";a:1:{s:7:"content";a:2:{s:2:"pt";a:2:{i:1;s:65:"Para alterar a senha, especifique a nova senha nos campos abaixo:";i:2;i:1;}s:2:"en";a:5:{i:1;s:69:"To change the password, specify the new password in the fields below:";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:2:{s:5:"flags";a:2:{s:4:"icon";s:5:"crash";s:7:"caption";s:33:"system_msg_alertOperationCanceled";}s:4:"text";a:1:{s:7:"content";a:2:{s:2:"pt";a:3:{i:1;s:96:"#r#nO texto que voc digitou no se parece com "ok".#r#n#r#nOs dados da usuria no foram removidos.#r#n";i:2;i:1;i:4;i:1;}s:2:"en";a:5:{i:1;s:79:"The text you entered does not look like "ok".#r#n#r#nThe user data was not removed.";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:2:{s:5:"flags";a:2:{s:4:"icon";s:5:"crash";s:7:"caption";s:33:"system_msg_alertOperationCanceled";}s:4:"text";a:1:{s:7:"content";a:2:{s:2:"pt";a:3:{i:1;s:96:"#r#nO texto que voc digitou no se parece com "ok".#r#n#r#nOs dados do usurio no foram removidos.#r#n";i:2;i:1;i:4;i:1;}s:2:"en";a:5:{i:1;s:79:"The text you entered does not look like "ok".#r#n#r#nThe user data was not removed.";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:3:{s:5:"flags";a:2:{s:6:"action";s:12:"_user-remove";s:4:"icon";s:8:"question";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:15:"Remover usuria";i:2;i:1;}s:2:"en";a:2:{i:1;s:11:"Remove user";i:2;i:1;}}s:7:"content";a:2:{s:2:"pt";a:4:{i:1;s:259:"Esta operao ir remover a usuria e todos os vnculos a ela relacionados.#r#n#r#n===Ateno!===#r#n#r#nEsta operao irreversvel. Ao invs de remover os dados, voc pode bloquear uma usuria alterando o status.#r#n#r#nTenha certeza de que esta operao adequada.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}s:2:"en";a:5:{i:1;s:242:"This operation will remove the user and all links related to it.#r#n#r#n=== Attention! ===#r#n#r#nThis operation is irreversible. Instead of removing the data, you can block a user by changing the status.#r#n#r#nMake sure that this operation is adequate.";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}s:8:"children";a:5:{i:0;s:6:"_start";i:1;s:17:"~removeConfirmOkF";i:2;s:10:"_separator";i:3;s:37:"modHumperstilshen_submitConfirmCancel";i:4;s:4:"_end";}}a:3:{s:5:"flags";a:2:{s:6:"action";s:12:"_user-remove";s:4:"icon";s:8:"question";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:15:"Remover usurio";i:2;i:1;}s:2:"en";a:2:{i:1;s:11:"Remove user";i:2;i:1;}}s:7:"content";a:2:{s:2:"pt";a:4:{i:1;s:256:"Esta operao ir remover o usurio e todos os vnculos a ele relacionados.#r#n#r#n===Ateno!===#r#n#r#nEsta operao irreversvel. Ao invs de remover os dados, voc pode bloquear um usurio alterando o status.#r#n#r#nTenha certeza de que esta operao adequada.";i:2;i:1;i:4;i:1;i:6;i:1;}s:2:"en";a:5:{i:1;s:242:"This operation will remove the user and all links related to it.#r#n#r#n=== Attention! ===#r#n#r#nThis operation is irreversible. Instead of removing the data, you can block a user by changing the status.#r#n#r#nMake sure that this operation is adequate.";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}s:8:"children";a:5:{i:0;s:6:"_start";i:1;s:17:"~removeConfirmOkM";i:2;s:10:"_separator";i:3;s:37:"modHumperstilshen_submitConfirmCancel";i:4;s:4:"_end";}}a:2:{s:5:"flags";a:3:{s:6:"filter";s:8:"admin_ok";s:10:"field_name";s:10:"confirm_ok";s:9:"error_msg";s:20:"~removeConfirmErrorF";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Digite "ok"";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Type "ok"";}}}}a:2:{s:5:"flags";a:3:{s:6:"filter";s:8:"admin_ok";s:10:"field_name";s:10:"confirm_ok";s:9:"error_msg";s:20:"~removeConfirmErrorM";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Digite "ok"";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Type "ok"";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:15:"Remover usuria";i:2;i:1;}s:2:"en";a:2:{i:1;s:11:"Remove user";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:15:"Remover usurio";i:2;i:1;}s:2:"en";a:2:{i:1;s:11:"Remove user";i:2;i:1;}}}}a:2:{s:5:"flags";a:2:{s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:7:"default";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Incio";i:2;i:1;}s:2:"en";a:2:{i:1;s:5:"Start";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:17:"Domnio bloqueado";i:2;i:1;}s:2:"en";a:2:{i:1;s:14:"Blocked domain";i:2;i:1;}}s:7:"content";a:2:{s:2:"pt";a:4:{i:1;s:234:"#r#nOl [text $user.caption],#r#n#r#nPor motivos de segurana este domnio est temporariamente bloqueado.#r#n#r#nSe voc um administrador deste domnio, favor entrar em contato com a equipe do [text $system.caption] o mais rpido possvel.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}s:2:"en";a:5:{i:1;s:201:"Hello [text $user.caption],#r#n#r#nFor security reasons this domain is temporarily locked.#r#n#r#nIf you are an administrator of this domain, please contact the [text $system.caption] team as soon as possible.";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:2:{s:4:"text";a:4:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Incio";i:2;i:1;}s:2:"en";a:2:{i:1;s:4:"Home";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:35:"Aguardando a publicao de contedo";i:2;i:1;}s:2:"en";a:2:{i:1;s:30:"Waiting for publishing content";i:2;i:1;}}s:11:"description";a:1:{s:2:"pt";a:2:{i:1;s:0:"";i:2;i:1;}}s:7:"content";a:2:{s:2:"pt";a:4:{i:1;s:285:"#r#n#r#n[if $document.user_is_admin]#r#n#r#n#r#n[}elseif $document.user_is_connected]#r#n#r#nOl [text $user.caption],#r#n#r#nSua credencial no lhe d direito a editar esta pgina.#r#n#r#n[}else{]#r#n#r#nSe voc um administrador deste domnio, conecte-se e comece a criar seu site agora mesmo!#r#n#r#n[} // if]#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}s:2:"en";a:5:{i:1;s:289:"#r#n[if $document.user_is_admin]#r#n#r#n[}elseif $document.user_is_connected]#r#n#r#nHello [text $user.caption],#r#n#r#nYour credential does not give you access to edit this page.#r#n#r#n[}else{]#r#n#r#nIf you are an administrator of this domain, log in and start creating your website right now!#r#n#r#n[} // if]#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}s:5:"flags";a:1:{s:20:"personalite_disabled";i:1;}}a:2:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:22:"Criar a pgina inicial";i:2;i:1;}s:2:"en";a:2:{i:1;s:20:"Create the home page";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:22:"Criar a pgina inicial";i:2;i:1;}s:2:"en";a:2:{i:1;s:20:"Create the home page";i:2;i:1;}}}s:8:"children";a:13:{i:0;s:6:"_start";i:1;s:24:"domain_setRecognizeFlags";i:2;s:10:"~editTitle";i:3;s:12:"~editCaption";i:4;s:16:"~editDescription";i:5;s:13:"~editKeywords";i:6;s:12:"~editContent";i:7;s:24:"~editRecognizeParagraphs";i:8;s:18:"~editRecognizeHTML";i:9;s:23:"~editRecognizeEcolabore";i:10;s:17:"~editKeywordsPack";i:11;s:5:"_save";i:12;s:4:"_end";}}a:2:{s:5:"flags";a:5:{s:4:"type";s:10:"text_small";s:6:"filter";s:4:"text";s:6:"target";s:12:"text/caption";s:10:"field_name";s:7:"caption";s:8:"required";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:49:"Legenda (como ser apresentada no menu de sees)";i:2;i:1;}s:2:"en";a:2:{i:1;s:39:"Caption (as it will appear on the menu)";i:2;i:1;}}}}a:2:{s:5:"flags";a:7:{s:4:"type";s:8:"textarea";s:6:"filter";s:4:"text";s:6:"target";s:12:"text/content";s:10:"field_name";s:7:"content";s:13:"format_enable";i:1;s:11:"html_enable";i:1;s:16:"ecolabore_enable";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:50:"Texto de apresentao da pgina inicial (opcional)";i:2;i:1;}s:2:"en";a:2:{i:1;s:46:"Presentation text for the home page (optional)";i:2;i:1;}}}}a:2:{s:5:"flags";a:5:{s:4:"type";s:14:"textarea_small";s:6:"filter";s:4:"text";s:6:"target";s:16:"text/description";s:10:"field_name";s:11:"description";s:8:"required";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:27:"Breve descrio do seu site";i:2;i:1;}s:2:"en";a:2:{i:1;s:30:"Short description of your site";i:2;i:1;}}}}a:1:{s:5:"flags";a:6:{s:9:"condition";s:20:"section_editKeywords";s:4:"type";s:4:"text";s:6:"filter";s:4:"text";s:10:"field_name";s:8:"keywords";s:6:"target";s:13:"text/keywords";s:7:"caption";s:21:"labels/field/keywords";}}a:1:{s:5:"flags";a:3:{s:4:"type";s:4:"none";s:6:"filter";s:8:"keywords";s:6:"target";s:8:"keywords";}}a:2:{s:5:"flags";a:5:{s:4:"type";s:4:"text";s:6:"filter";s:4:"text";s:6:"target";s:10:"text/title";s:10:"field_name";s:10:"page_title";s:7:"caption";s:18:"labels/field/title";}s:4:"text";a:1:{s:7:"content";a:2:{s:2:"pt";a:2:{i:1;s:242:"Edite aqui o ttulo da pgina inicial.#r#n#r#nO ttulo no obrigatrio. Ao invs disto, voc poder preferir uma figura em seu lugar.#r#n#r#nNeste caso, no se esquea de fornecer uma descrio para a figura correspondente ao ttulo do documento.#r#n";i:2;i:1;}s:2:"en";a:5:{i:1;s:241:"Edit here the title for the home page#r#n#r#nO ttulo no obrigatrio. Ao invs disto, voc poder preferir uma figura em seu lugar.#r#n#r#nNeste caso, no se esquea de fornecer uma descrio para a figura correspondente ao ttulo do documento.#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"Portal Ecolabore";i:2;i:1;}s:2:"en";a:2:{i:1;s:16:"Ecolabore Portal";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:16:"Portal Ecolabore";i:2;i:1;}s:2:"en";a:2:{i:1;s:16:"Ecolabore Portal";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:14:"modLayout_from";s:9:"templates";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Domnio livre";i:2;i:1;}s:2:"en";a:2:{i:1;s:11:"Free domain";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:13:"Domnio livre";i:2;i:1;}s:2:"en";a:2:{i:1;s:11:"Free domain";i:2;i:1;}}s:7:"content";a:1:{s:2:"pt";a:5:{i:1;s:788:"#r#nEste domnio no est sendo utilizado no momento.#r#n#r#n[if($document.enable_user_domains){]#r#n#r#nSe voc gostou do endereo [$document.ref] e deseja acomodar sua organizao no [text $system.caption], basta conectar-se.#r#n#r#nPara conectar-se, acione o cone no canto superior direito da pgina. Se no possui um cadastro no [text $system.caption], #r#n[if($document.enable_user_subscriptions){]#r#nacione "No cadastrado?" logo abaixo da caixa de login.#r#n[}else{]#r#nsolicite aos administradores.#r#n[}]#r#n#r#n[}else{]#r#n#r#nSe voc gostou do endereo [$document.ref] e deseja acomodar sua organizao no [text $system.caption], entre em contato com os administradores.#r#n#r#n[}]#r#n#r#n[if($system.ref){]#r#n#r#nPara mais informaes, visite nosso projeto em [$system.ref].#r#n#r#n[}]#r#n#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:2:{s:5:"flags";a:1:{s:14:"modLayout_from";s:9:"templates";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:19:"Criar novo ambiente";i:2;i:1;}s:2:"en";a:2:{i:1;s:19:"Creating new domain";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:19:"Criar novo ambiente";i:2;i:1;}s:2:"en";a:2:{i:1;s:19:"Creating new domain";i:2;i:1;}}}}a:1:{s:8:"children";a:9:{i:0;s:6:"_start";i:1;s:12:"~editCaption";i:2;s:10:"~editTitle";i:3;s:16:"~editDescription";i:4;s:19:"adminUsers_editMail";i:5;s:20:"adminUsers_editPhone";i:6;s:22:"adminUsers_editAddress";i:7;s:7:"_create";i:8;s:4:"_end";}}a:2:{s:5:"flags";a:6:{s:4:"type";s:4:"text";s:6:"filter";s:4:"text";s:10:"field_name";s:7:"caption";s:6:"target";s:12:"text/caption";s:8:"required";i:1;s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:19:"Nome da organizao";i:2;i:1;}}s:5:"title";a:1:{s:2:"pt";a:2:{i:1;s:19:"Nome da organizao";i:2;i:1;}}s:7:"content";a:1:{s:2:"pt";a:5:{i:1;s:126:"#r#nO nome como sua organizao foi oficialmente registrada.#r#n#r#nPara pginas pessoais, este deve ser o nome oficial da pgina.#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:2:{s:5:"flags";a:6:{s:4:"type";s:14:"textarea_small";s:6:"filter";s:4:"text";s:10:"field_name";s:11:"description";s:6:"target";s:16:"text/description";s:8:"required";i:1;s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:9:"Descrio";i:2;i:1;}}s:5:"title";a:1:{s:2:"pt";a:2:{i:1;s:9:"Descrio";i:2;i:1;}}s:7:"content";a:1:{s:2:"pt";a:5:{i:1;s:98:"#r#nDescreva em poucas palavras o ramo de atividade da sua organizao ou o propsito do seu site.#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:2:{s:5:"flags";a:6:{s:4:"type";s:4:"text";s:6:"filter";s:4:"text";s:10:"field_name";s:5:"title";s:6:"target";s:10:"text/title";s:8:"required";i:1;s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:13:"Nome fantasia";i:2;i:1;}}s:5:"title";a:1:{s:2:"pt";a:2:{i:1;s:13:"Nome fantasia";i:2;i:1;}}s:7:"content";a:1:{s:2:"pt";a:5:{i:1;s:65:"#r#nEste ser o nome apresentado no topo das pginas do ambiente.#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:1:{s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:21:"Pgina no encontrada";i:2;i:1;}s:2:"en";a:2:{i:1;s:14:"Page not found";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:21:"Pgina no encontrada";i:2;i:1;}s:2:"en";a:2:{i:1;s:14:"Page not found";i:2;i:1;}}s:7:"content";a:2:{s:2:"pt";a:4:{i:1;s:108:"#r#nOl [text $user.caption],#r#n#r#nA pgina que voc procura no existe. Ela pode ter sido movida ou removida.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}s:2:"en";a:5:{i:1;s:101:"Hello [text $user.caption],#r#n#r#n#r#nThe page you requested does not exist. It can be moved or removed.#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:1:{s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:21:"Personalizar mensagem";i:2;i:1;}s:2:"en";a:2:{i:1;s:14:"Custom message";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:21:"Personalizar mensagem";i:2;i:1;}s:2:"en";a:2:{i:1;s:14:"Custom message";i:2;i:1;}}s:7:"content";a:0:{}}}a:2:{s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:29:"Editar mensagem personalizada";i:2;i:1;}s:2:"en";a:2:{i:1;s:23:"Edit customized message";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:29:"Editar mensagem personalizada";i:2;i:1;}s:2:"en";a:2:{i:1;s:23:"Edit customized message";i:2;i:1;}}s:7:"content";a:0:{}}s:8:"children";a:12:{i:0;s:6:"_start";i:1;s:24:"domain_setRecognizeFlags";i:2;s:12:"~editCaption";i:3;s:10:"~editTitle";i:4;s:12:"~editContent";i:5;s:24:"~editRecognizeParagraphs";i:6;s:18:"~editRecognizeHtml";i:7;s:23:"~editRecognizeEcolabore";i:8;s:12:"~editUpdated";i:9;s:11:"_saveCancel";i:10;s:17:"_required_message";i:11;s:4:"_end";}}a:2:{s:5:"flags";a:5:{s:4:"type";s:4:"text";s:6:"filter";s:4:"text";s:6:"target";s:12:"text/caption";s:10:"field_name";s:7:"caption";s:8:"required";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:35:"Legenda (como ser exibida no menu)";i:2;i:1;}s:2:"en";a:2:{i:1;s:38:"Caption (as it will apear on the menu)";i:2;i:1;}}}}a:2:{s:5:"flags";a:8:{s:4:"type";s:8:"textarea";s:6:"filter";s:4:"text";s:6:"target";s:12:"text/content";s:10:"field_name";s:7:"content";s:8:"required";i:1;s:13:"format_enable";i:1;s:11:"html_enable";i:1;s:16:"ecolabore_enable";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Contedo";i:2;i:1;}s:2:"en";a:2:{i:1;s:7:"Content";i:2;i:1;}}}}a:1:{s:5:"flags";a:7:{s:9:"condition";s:21:"text_ecolabore_choose";s:4:"type";s:8:"checkbox";s:6:"filter";s:8:"checkbox";s:10:"field_name";s:14:"text_ecolabore";s:6:"target";s:20:"flags/text_ecolabore";s:6:"invert";i:1;s:7:"caption";s:32:"labels/field/recognize_ecolabore";}}a:1:{s:5:"flags";a:6:{s:9:"condition";s:16:"text_html_choose";s:4:"type";s:8:"checkbox";s:6:"filter";s:8:"checkbox";s:10:"field_name";s:9:"text_html";s:6:"target";s:15:"flags/text_html";s:7:"caption";s:27:"labels/field/recognize_html";}}a:1:{s:5:"flags";a:7:{s:9:"condition";s:18:"text_format_choose";s:4:"type";s:8:"checkbox";s:6:"filter";s:8:"checkbox";s:10:"field_name";s:11:"text_format";s:6:"target";s:17:"flags/text_format";s:6:"invert";i:1;s:7:"caption";s:33:"labels/field/recognize_paragraphs";}}a:2:{s:5:"flags";a:5:{s:4:"type";s:4:"text";s:6:"filter";s:4:"text";s:6:"target";s:10:"text/title";s:10:"field_name";s:5:"title";s:8:"required";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Ttulo";i:2;i:1;}s:2:"en";a:2:{i:1;s:5:"Title";i:2;i:1;}}}}a:1:{s:5:"flags";a:5:{s:13:"field_display";s:5:"never";s:4:"type";s:4:"none";s:6:"filter";s:9:"timestamp";s:10:"field_name";s:7:"updated";s:6:"target";s:7:"updated";}}a:1:{s:4:"text";a:2:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:40:"Sobre a mensagem "Pgina no encontrada"";i:2;i:1;}}s:7:"content";a:1:{s:2:"pt";a:5:{i:1;s:289:"#r#nA mensagem "Pgina no encontrada" exibida quando o endereo fornecido pelo usurio no corresponde a um endereo vlido.#r#n#r#n[if($document.user_is_admin){]#r#n#r#nVoc pode personalizar esta mensagem, alterando o ttulo, o contedo e inserindo figuras, tabelas e outros elementos.#r#n#r#n[}]#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:31:"Dica para pgina no encontrada";i:2;i:1;}}s:7:"content";a:1:{s:2:"pt";a:5:{i:1;s:403:"#r#n[if($document.user_is_admin){]#r#n#r#nEsta a mensagem apresentada aos visitantes quando uma pgina no localizada.#r#n#r#nPersonalize esta mensagem adicionando figuras, listas, tabelas e outros elementos ao seu contedo.#r#n#r#n[}else{]#r#n#r#nSeja bem-vind[gender:o|a].#r#n#r#nSe voc um administrador, conecte-se para iniciar seu trabalho.#r#n#r#nSe no cadastrado, cadastre-se e crie seu prprio ambiente.#r#n#r#n[}]#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:27:"Restaurar mensagem original";i:2;i:1;}s:2:"en";a:2:{i:1;s:24:"Restore original message";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:27:"Restaurar mensagem original";i:2;i:1;}s:2:"en";a:2:{i:1;s:24:"Restore original message";i:2;i:1;}}}}a:1:{s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Glossrio";i:2;i:1;}s:2:"en";a:2:{i:1;s:8:"Glossary";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:9:"Glossrio";i:2;i:1;}s:2:"en";a:2:{i:1;s:8:"Glossary";i:2;i:1;}}s:7:"content";a:2:{s:2:"pt";a:4:{i:1;s:94:"#r#nNesta seo voc encontra a lista completa de palavras-chaves utilizadas neste ambiente.#r#n#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}s:2:"en";a:5:{i:1;s:67:"#r#nIn this section you can find all keywords used in this ambient.#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:3:"tip";}s:4:"text";a:3:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:9:"Glossrio";i:2;i:1;}}s:5:"title";a:1:{s:2:"pt";a:2:{i:1;s:17:"Sobre o glossrio";i:2;i:1;}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:271:"#r#nAqui temos uma lista de todas as palavras-chave utilizadas neste ambiente.#r#n#r#nEsta pgina no pode ser editada.#r#n#r#nPara criar um glossrio personalizado, crie uma nova seo do tipo "Glossrio". Todas as palavras-chave listadas aqui sero automaticamente listadas l.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:1:{s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:15:"A criar verbete";i:2;i:1;}s:2:"en";a:2:{i:1;s:15:"To create entry";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:15:"A criar verbete";i:2;i:1;}s:2:"en";a:2:{i:1;s:15:"To create entry";i:2;i:1;}}s:7:"content";a:2:{s:2:"pt";a:4:{i:1;s:135:"#r#n[if(!$document.user_is_admin){]#r#n#r#nOoops!#r#n#r#nEsta pgina ainda no recebeu seu contedo.#r#n#r#nDesculpa-nos pelo inconveniente.#r#n#r#n[}]#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}s:2:"en";a:5:{i:1;s:139:"#r#n[if(!$document.user_is_admin){]#r#n#r#nOoops!#r#n#r#n This page has not yet received its content.#r#n#r#nWe apologize for the inconvenience.#r#n#r#n[}]#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:2:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:14:"Editar verbete";i:2;i:1;}s:2:"en";a:2:{i:1;s:10:"Edit entry";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:14:"Editar verbete";i:2;i:1;}s:2:"en";a:2:{i:1;s:10:"Edit entry";i:2;i:1;}}}s:8:"children";a:8:{i:0;s:6:"_start";i:1;s:10:"~editTitle";i:2;s:12:"~editCaption";i:3;s:12:"~editContent";i:4;s:17:"~editKeywordsPack";i:5;s:12:"~editUpdated";i:6;s:11:"_saveCancel";i:7;s:4:"_end";}}a:1:{s:5:"flags";a:4:{s:13:"field_display";s:4:"none";s:6:"filter";s:7:"caption";s:10:"field_name";s:7:"caption";s:6:"target";s:12:"text/caption";}}a:2:{s:5:"flags";a:8:{s:4:"type";s:8:"textarea";s:6:"filter";s:4:"text";s:6:"target";s:12:"text/content";s:10:"field_name";s:7:"content";s:8:"required";i:1;s:12:"format_force";i:1;s:10:"html_force";i:2;s:15:"ecolabore_force";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Contedo";i:2;i:1;}s:2:"en";a:2:{i:1;s:7:"Content";i:2;i:1;}}}}a:1:{s:5:"flags";a:1:{s:6:"filter";s:8:"keywords";}}a:2:{s:5:"flags";a:5:{s:4:"type";s:4:"text";s:6:"filter";s:4:"text";s:6:"target";s:10:"text/title";s:10:"field_name";s:5:"title";s:8:"required";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Ttulo";i:2;i:1;}s:2:"en";a:2:{i:1;s:5:"Title";i:2;i:1;}}}}a:1:{s:5:"flags";a:5:{s:13:"field_display";s:5:"never";s:4:"type";s:4:"none";s:6:"filter";s:9:"timestamp";s:10:"field_name";s:7:"updated";s:6:"target";s:7:"updated";}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:3:"tip";}s:4:"text";a:3:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:13:"Palavra-chave";i:2;i:1;}}s:5:"title";a:1:{s:2:"pt";a:2:{i:1;s:35:"Sobre a definio de palavras-chave";i:2;i:1;}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:585:"#r#nQuando voc precisa explicar um termo de um contedo qualquer, englobe o termo entre duplos colchetes, como em [][]Banana]].#r#n#r#nAo salvar a pgina, este termo se tornar um link apontando para uma pgina de palavra-chave.#r#n#r#nSe a pgina no existir, voc poder edit-la.#r#n#r#nVoc pode inserir diversas referncias para a mesma palavra-chave em qualquer parte do contedo de todo o ambiente.#r#n#r#nSe quiser oferecer aos visitantes uma lista com todas as palavras-chave, crie uma seo do tipo "Glossrio". L ser apresentada a lista de todas as palavras que j tenham sido definidas.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:15:"Remover verbete";i:2;i:1;}s:2:"en";a:2:{i:1;s:12:"Remove entry";i:2;i:1;}}}}a:3:{s:5:"flags";a:2:{s:4:"icon";s:8:"question";s:7:"caption";s:34:"renderLabels_msg_operation_confirm";}s:4:"text";a:1:{s:7:"content";a:2:{s:2:"pt";a:3:{i:1;s:104:"Esta operao ir remover permanentemente este verbete e todo o seu contedo.#r#n#r#nDeseja mesmo continuar?";i:2;i:1;i:4;i:1;}s:2:"en";a:5:{i:1;s:78:"This operation will delete permanently this entry.#r#n#r#nDo you wich to continue?";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}s:8:"children";a:4:{i:0;s:6:"_start";i:1;s:10:"_separator";i:2;s:37:"modHumperstilshen_submitConfirmCancel";i:3;s:4:"_end";}}a:1:{s:4:"html";s:307:"#r#n#r#n#r#n[list{loop{ ]#r#n#r#n#r#n[$html]#r#n#r#n[}}]#r#n#r#n";}a:1:{s:4:"text";a:3:{s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:23:"Editar a pgina inicial";i:2;i:1;}s:2:"en";a:2:{i:1;s:18:"Edit the home page";i:2;i:1;}}s:11:"description";a:0:{}s:7:"content";a:0:{}}}a:2:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:23:"Editar a pgina inicial";i:2;i:1;}s:2:"en";a:2:{i:1;s:18:"Edit the home page";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:23:"Editar a pgina inicial";i:2;i:1;}s:2:"en";a:2:{i:1;s:18:"Edit the home page";i:2;i:1;}}}s:8:"children";a:13:{i:0;s:6:"_start";i:1;s:10:"~editTitle";i:2;s:12:"~editCaption";i:3;s:16:"~editDescription";i:4;s:13:"~editKeywords";i:5;s:12:"~editContent";i:6;s:9:"~editList";i:7;s:17:"~editListSections";i:8;s:16:"~editListRecents";i:9;s:17:"~editKeywordsPack";i:10;s:12:"~editUpdated";i:11;s:11:"_saveCancel";i:12;s:4:"_end";}}a:2:{s:5:"flags";a:5:{s:4:"type";s:10:"text_small";s:6:"filter";s:4:"text";s:6:"target";s:12:"text/caption";s:10:"field_name";s:7:"caption";s:8:"required";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:49:"Legenda (como ser apresentada no menu de sees)";i:2;i:1;}s:2:"en";a:2:{i:1;s:39:"Caption (as it will appear on the menu)";i:2;i:1;}}}}a:2:{s:5:"flags";a:7:{s:4:"type";s:8:"textarea";s:6:"filter";s:4:"text";s:6:"target";s:12:"text/content";s:10:"field_name";s:7:"content";s:13:"format_enable";i:1;s:11:"html_enable";i:1;s:16:"ecolabore_enable";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:50:"Texto de apresentao da pgina inicial (opcional)";i:2;i:1;}s:2:"en";a:2:{i:1;s:46:"Presentation text for the home page (optional)";i:2;i:1;}}}}a:2:{s:5:"flags";a:5:{s:4:"type";s:14:"textarea_small";s:6:"filter";s:4:"text";s:6:"target";s:16:"text/description";s:10:"field_name";s:11:"description";s:8:"required";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:27:"Breve descrio do seu site";i:2;i:1;}s:2:"en";a:2:{i:1;s:30:"Short description of your site";i:2;i:1;}}}}a:1:{s:5:"flags";a:5:{s:4:"type";s:4:"text";s:6:"filter";s:4:"text";s:10:"field_name";s:8:"keywords";s:6:"target";s:13:"text/keywords";s:7:"caption";s:21:"labels/field/keywords";}}a:1:{s:5:"flags";a:3:{s:4:"type";s:4:"none";s:6:"filter";s:8:"keywords";s:6:"target";s:8:"keywords";}}a:2:{s:5:"flags";a:1:{s:6:"filter";s:29:"personaliteFields_descriptive";}s:4:"text";a:1:{s:7:"content";a:2:{s:2:"pt";a:2:{i:1;s:58:"Acrescente painis com contedo dinmico pgina inicial:";i:2;i:1;}s:2:"en";a:1:{i:1;s:49:"Add panels with dinamic contents to the main page";}}}}a:2:{s:5:"flags";a:4:{s:6:"filter";s:8:"checkbox";s:10:"field_name";s:12:"list_recents";s:6:"target";s:17:"local/listRecents";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:21:"Exibir posts recentes";i:2;i:1;}s:2:"en";a:1:{i:1;s:20:"Display recent posts";}}}}a:2:{s:5:"flags";a:4:{s:6:"filter";s:8:"checkbox";s:10:"field_name";s:18:"list_main_sections";s:6:"target";s:18:"local/listSections";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:24:"Exibir sees principais";i:2;i:1;}s:2:"en";a:1:{i:1;s:21:"Display main sections";}}}}a:2:{s:5:"flags";a:5:{s:4:"type";s:4:"text";s:6:"filter";s:4:"text";s:6:"target";s:10:"text/title";s:10:"field_name";s:10:"page_title";s:7:"caption";s:18:"labels/field/title";}s:4:"text";a:1:{s:7:"content";a:2:{s:2:"pt";a:2:{i:1;s:242:"Edite aqui o ttulo da pgina inicial.#r#n#r#nO ttulo no obrigatrio. Ao invs disto, voc poder preferir uma figura em seu lugar.#r#n#r#nNeste caso, no se esquea de fornecer uma descrio para a figura correspondente ao ttulo do documento.#r#n";i:2;i:1;}s:2:"en";a:5:{i:1;s:241:"Edit here the title for the home page#r#n#r#nO ttulo no obrigatrio. Ao invs disto, voc poder preferir uma figura em seu lugar.#r#n#r#nNeste caso, no se esquea de fornecer uma descrio para a figura correspondente ao ttulo do documento.#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:1:{s:5:"flags";a:5:{s:13:"field_display";s:5:"never";s:4:"type";s:4:"none";s:6:"filter";s:9:"timestamp";s:10:"field_name";s:7:"updated";s:6:"target";s:7:"updated";}}a:1:{s:4:"text";a:2:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:22:"Sobre a pgina inicial";i:2;i:1;}}s:7:"content";a:1:{s:2:"pt";a:5:{i:1;s:425:"#r#nVoc est na pgina inicial.#r#n#r#n[if($document.user_is_admin){]#r#n#r#nEsta a pgina apresentada aos visitantes quando eles chegam a este ambiente.#r#n#r#n[if($document.editor_is_enabled){]#r#n#r#nVoc pode adicionar figuras, listas, tabelas e outros elementos clicando nos botes na barra direita.#r#n#r#n[}else{]#r#n#r#nPara editar seu contedo, acione o cone do sistema e, no menu "Contexto" escolha "Editar a pgina inicial".#r#n#r#n[}}]#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:2:{s:5:"local";a:1:{s:14:"instructor_img";s:33:"instructor/quality/instructor.jpg";}s:4:"text";a:1:{s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:203:"#r#nEsta a pgina inicial deste ambiente.#r#n#r#nVoc pode editar seu contedo e adicionar figuras, tabelas e outros elementos.#r#n#r#nQuando quiser seguir para a prxima tarefa do instrutor, acione "Avanar".#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:24:"Dica para pgina inicial";i:2;i:1;}}s:7:"content";a:1:{s:2:"pt";a:5:{i:1;s:444:"#r#n[if($document.user_is_admin){]#r#n#r#nEsta a pgina apresentada aos visitantes quando eles chegam a este ambiente.#r#n#r#nApresente sua organizao adicionando figuras, listas, tabelas e outros elementos ao seu contedo.#r#n#r#n[}else{]#r#n#r#nEsta a pgina inicial deste ambiente.#r#n#r#nSeja bem-vind[gender:o|a].#r#n#r#nSe voc um administrador, conecte-se para iniciar seu trabalho.#r#n#r#nSe no cadastrado, cadastre-se e crie seu prprio ambiente.#r#n#r#n[}]#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"Sees principais";i:2;i:1;}s:2:"en";a:2:{i:1;s:13:"Main sections";i:2;i:1;}}}s:5:"local";a:16:{s:8:"position";s:6:"center";s:5:"wd-sm";s:2:"12";s:5:"wd-lg";s:2:"12";s:8:"relative";s:9:"relative-";s:7:"padding";s:6:"0.5rem";s:10:"margin-top";s:4:"2rem";s:13:"margin-bottom";s:6:"0.5rem";s:4:"list";s:7:"default";s:7:"details";s:24:"img_mini_circle#r#ncaption";s:9:"list-type";s:4:"grid";s:10:"list-align";s:6:"center";s:7:"columns";s:1:"6";s:13:"wd-lg-columns";s:1:"4";s:16:"vertical-spacing";s:3:"050";s:18:"horizontal-spacing";s:3:"050";s:14:"vertical-align";s:6:"bottom";}}a:1:{s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:15:"Sobre este site";i:2;i:1;}s:2:"en";a:2:{i:1;s:15:"About this site";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:15:"Sobre este site";i:2;i:1;}s:2:"en";a:2:{i:1;s:15:"About this site";i:2;i:1;}}s:7:"content";a:2:{s:2:"pt";a:5:{i:1;s:323:"#r#nEste site pertence ao projeto [text $system.caption], e foi construdo utilizando as ferramentas do gerenciador de contedos "Portal Ecolabore".#r#n#r#nSaiba mais sobre o [text $system.caption].#r#n#r#nConhea e seja bem-vind[gender:o|a] ao Portal Ecolabore.#r#n#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}s:2:"en";a:5:{i:1;s:260:"#r#nThis site is a part of [text $system.caption] project, and was created using the "Portal Ecolabore" CMS tools.#r#n#r#nKnow more about [text $system.caption].#r#n#r#nWelcome to the Ecolabore Portal.#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:15:"Administradores";i:2;i:1;}s:2:"en";a:1:{i:1;s:14:"Administrators";}}}}a:2:{s:5:"flags";a:1:{s:19:"modFormulary_preset";s:4:"view";}s:8:"children";a:8:{i:0;s:10:"_startView";i:1;s:10:"~viewTitle";i:2;s:12:"~viewCaption";i:3;s:16:"~viewDescription";i:4;s:9:"~viewMail";i:5;s:10:"~viewPhone";i:6;s:12:"~viewAddress";i:7;s:8:"_endView";}}a:2:{s:5:"flags";a:3:{s:6:"filter";s:25:"personaliteFields_address";s:10:"field_name";s:7:"address";s:4:"view";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Endereo";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Address";}}}}a:2:{s:5:"flags";a:2:{s:6:"filter";s:4:"view";s:6:"target";s:12:"text/caption";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Organizao";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Organization";}}}}a:2:{s:5:"flags";a:2:{s:6:"filter";s:4:"view";s:6:"target";s:16:"text/description";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Descrio";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"Description";}}}}a:2:{s:5:"flags";a:4:{s:4:"type";s:4:"view";s:6:"filter";s:22:"personaliteFields_mail";s:10:"field_name";s:4:"mail";s:4:"view";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Email";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Email";}}}}a:2:{s:5:"flags";a:3:{s:6:"filter";s:23:"personaliteFields_phone";s:10:"field_name";s:5:"phone";s:4:"view";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Telefone";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Phone";}}}}a:2:{s:5:"flags";a:2:{s:6:"filter";s:4:"view";s:6:"target";s:10:"text/title";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:12:"Nome do site";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Site name";}}}}a:1:{s:4:"text";a:1:{s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:22:"Publicado recentemente";i:2;i:1;}s:2:"en";a:2:{i:1;s:12:"Recent posts";i:2;i:1;}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:23:"Sobre os itens recentes";i:2;i:1;}}s:7:"content";a:1:{s:2:"pt";a:5:{i:1;s:182:"#r#nAqui so listadas as publicaes mais recentes.#r#n#r#nEsta lista inclui todos os posts de todos os tipos de blogs, incluindo galeria de figuras, podcasts, calendrio de eventos etc.#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:32:"Dica para as ltimas publicaes";i:2;i:1;}}s:7:"content";a:1:{s:2:"pt";a:5:{i:1;s:236:"#r#nCrie um painel dinmico para listar as ltimas publicaes do seu site na pgina inicial.#r#n#r#ncopie o cdigo seguinte e cole no contedo da pgina inicial, onde deseja que o painel seja exibido:#r#n#r#n[code]#r#n[dinamic:-recents]#r#n[/code]#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:2:{s:5:"flags";a:3:{s:6:"filter";s:18:"domainRecents_link";s:10:"field_name";s:7:"recents";s:10:"posteriori";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:40:"Adicionar lista "Publicaes recentes"";i:2;i:1;}s:2:"en";a:2:{i:1;s:26:"Add to "Recent posts" list";i:2;i:1;}}}}a:1:{s:4:"html";s:610:"#r#n#r#n#r#n#r#n[scope(`home`){]#r#n[text $title]#r#n[$url]#r#n[text $description]#r#n[}]#r#n[$document.lang]#r#n[$pubDate]#r#n[list{loop{]#r#n#r#n[text $title]#r#n[$url]#r#n[$url]#r#n[$pubDate]#r#n[if($description){]#r#n[text $description]#r#n[}]#r#n#r#n[}}]#r#n#r#n";}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Pesquisar";i:2;i:1;}s:2:"en";a:2:{i:1;s:6:"Search";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:9:"Pesquisar";i:2;i:1;}s:2:"en";a:2:{i:1;s:6:"Search";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:3:"tip";}s:4:"text";a:3:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:9:"Pesquisar";i:2;i:1;}}s:5:"title";a:1:{s:2:"pt";a:2:{i:1;s:19:"Sobre o pesquisador";i:2;i:1;}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:478:"#r#nNesta pgina possvel realizar pesquisas em palavras-chave.#r#n#r#nAs pesquisas podero incluir palavras encontradas nos ttulos e outros campos relevantes.#r#n#r#nO pesquisador no realiza pesquisas em todo o contedo das pginas. Utilize portais de busca para isto.#r#n#r#nVoc pode criar uma pgina personalizada para o pesquisador, criando uma seo do tipo "Pesquisar".#r#n#r#nTodas as buscas realizadas neste ambiente sero automaticamente direcionadas para a seo criada por voc.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:1:{s:4:"text";a:1:{s:5:"title";a:2:{s:2:"pt";a:3:{i:1;s:46:"Nenhum resultado encontrado para "[$keywords]"";i:2;i:1;i:6;i:1;}s:2:"en";a:3:{i:1;s:34:"Any result found for "[$keywords]"";i:2;i:1;i:6;i:1;}}}}a:1:{s:8:"children";a:5:{i:0;s:6:"_start";i:1;s:12:"~searchInput";i:2;s:14:"~searchTagOnly";i:3;s:13:"~searchSubmit";i:4;s:4:"_end";}}a:2:{s:5:"flags";a:4:{s:4:"type";s:10:"text_small";s:6:"filter";s:4:"free";s:10:"field_name";s:5:"input";s:6:"target";s:3:"key";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:12:"Sua pesquisa";i:2;i:1;}s:2:"en";a:2:{i:1;s:11:"Your search";i:2;i:1;}}}}a:2:{s:5:"flags";a:2:{s:6:"filter";s:6:"submit";s:10:"field_name";s:6:"submit";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:2:"Ir";i:2;i:1;}s:2:"en";a:2:{i:1;s:2:"Go";i:2;i:1;}}}}a:2:{s:5:"flags";a:3:{s:6:"filter";s:8:"checkbox";s:10:"field_name";s:9:"tags_only";s:6:"target";s:9:"tags_only";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:22:"Pesquisar somente tags";i:2;i:1;}s:2:"en";a:2:{i:1;s:16:"Search tags only";i:2;i:1;}}}}a:1:{s:4:"html";s:228:"#r#n#r#n[list{loop{]#r#n#r#n[$url]#r#n[$date]#r#n[$priority]#r#n#r#n[}}]#r#n ";}a:1:{s:5:"local";a:195:{s:3:"//1";s:14:"// == Fonts ==";s:14:"text-font-name";s:14:"century-gothic";s:14:"link-font-name";s:15:"$text-font-name";s:15:"label-font-name";s:15:"$text-font-name";s:16:"legend-font-name";s:15:"$text-font-name";s:20:"blockquote-font-name";s:15:"$text-font-name";s:18:"footnote-font-name";s:15:"$text-font-name";s:15:"input-font-name";s:15:"$text-font-name";s:19:"monospace-font-name";s:8:"consolas";s:16:"header-font-name";s:15:"$text-font-name";s:17:"caption-font-name";s:17:"$header-font-name";s:16:"button-font-name";s:17:"$header-font-name";s:13:"bar-font-name";s:17:"$button-font-name";s:4:"//20";s:0:"";s:14:"text-font-size";s:3:"1em";s:14:"link-font-size";s:15:"$text-font-size";s:15:"label-font-size";s:15:"$text-font-size";s:16:"legend-font-size";s:15:"$text-font-size";s:20:"blockquote-font-size";s:15:"$text-font-size";s:18:"footnote-font-size";s:15:"$text-font-size";s:15:"input-font-size";s:15:"$text-font-size";s:19:"monospace-font-size";s:15:"$text-font-size";s:16:"header-font-size";s:3:"2em";s:17:"caption-font-size";s:15:"$text-font-size";s:16:"button-font-size";s:15:"$text-font-size";s:13:"bar-font-size";s:17:"$button-font-size";s:12:"h1-font-size";s:5:"2.5em";s:12:"h2-font-size";s:3:"2em";s:12:"h3-font-size";s:6:"1.75em";s:12:"h4-font-size";s:5:"1.5em";s:12:"h5-font-size";s:6:"1.25em";s:12:"h6-font-size";s:3:"1em";s:15:"badge-font-size";s:4:".9em";s:4:"//25";s:0:"";s:16:"text-font-weight";s:6:"normal";s:16:"link-font-weight";s:4:"bold";s:17:"label-font-weight";s:17:"$text-font-weight";s:18:"legend-font-weight";s:17:"$text-font-weight";s:22:"blockquote-font-weight";s:17:"$text-font-weight";s:20:"footnote-font-weight";s:17:"$text-font-weight";s:17:"input-font-weight";s:17:"$text-font-weight";s:21:"monospace-font-weight";s:17:"$text-font-weight";s:18:"header-font-weight";s:4:"bold";s:19:"caption-font-weight";s:19:"$header-font-weight";s:18:"button-font-weight";s:19:"$header-font-weight";s:15:"bar-font-weight";s:19:"$button-font-weight";s:4:"//30";s:0:"";s:16:"text-line-height";s:3:"1em";s:16:"link-line-height";s:17:"$text-line-height";s:17:"label-line-height";s:17:"$text-line-height";s:18:"legend-line-height";s:17:"$text-line-height";s:22:"blockquote-line-height";s:17:"$text-line-height";s:20:"footnote-line-height";s:17:"$text-line-height";s:17:"input-line-height";s:17:"$text-line-height";s:21:"monospace-line-height";s:17:"$text-line-height";s:18:"header-line-height";s:17:"$text-line-height";s:19:"caption-line-height";s:19:"$header-line-height";s:18:"button-line-height";s:3:"1em";s:15:"bar-line-height";s:19:"$button-line-height";s:4:"//35";s:0:"";s:18:"header-text-shadow";s:4:"none";s:19:"caption-text-shadow";s:19:"$header-text-shadow";s:18:"button-text-shadow";s:28:"1px 1px 0 rgba(0, 0, 0, 0.7)";s:18:"active-text-shadow";s:19:"$button-text-shadow";s:15:"bar-text-shadow";s:4:"none";s:4:"//40";s:0:"";s:4:"//41";s:11:"== Theme ==";s:7:"padding";s:4:"1rem";s:13:"border-radius";s:6:"0.1rem";s:10:"box-shadow";s:38:".5rem .5rem .5rem 0 rgba(0, 0, 0, 0.5)";s:4:"//50";s:0:"";s:11:"smoke-width";s:5:".5rem";s:17:"system-bar-height";s:4:"3rem";s:10:"margin-top";s:6:"0.5rem";s:12:"margin-right";s:4:"1rem";s:13:"margin-bottom";s:1:"0";s:11:"margin-left";s:4:"1rem";s:12:"media-sm-max";s:5:"410px";s:12:"media-md-min";s:5:"411px";s:12:"media-md-max";s:5:"780px";s:12:"media-lg-min";s:5:"781px";s:12:"media-lg-max";s:6:"1300px";s:12:"media-xl-min";s:6:"1301px";s:5:"//100";s:0:"";s:5:"//101";s:15:"// == Scheme ==";s:19:"document-text-color";s:4:"#c000";s:25:"document-background-color";s:4:"#cfff";s:21:"document-border-color";s:4:"#c444";s:21:"document-header-color";s:20:"$document-text-color";s:19:"document-mark-color";s:4:"#c800";s:19:"document-link-color";s:20:"$document-text-color";s:21:"document-active-color";s:20:"$document-mark-color";s:22:"document-caption-color";s:22:"$document-header-color";s:19:"document-box-shadow";s:4:"none";s:5:"//110";s:0:"";s:16:"panel-text-color";s:20:"$document-text-color";s:22:"panel-background-color";s:26:"$document-background-color";s:18:"panel-border-color";s:17:"$panel-text-color";s:18:"panel-header-color";s:22:"$document-header-color";s:16:"panel-mark-color";s:20:"$document-mark-color";s:16:"panel-link-color";s:17:"$panel-text-color";s:18:"panel-active-color";s:17:"$panel-mark-color";s:19:"panel-caption-color";s:19:"$panel-header-color";s:19:"panel-border-radius";s:14:"$border-radius";s:13:"panel-padding";s:8:"$padding";s:16:"panel-box-shadow";s:20:"$document-box-shadow";s:5:"//120";s:0:"";s:20:"spotlight-text-color";s:20:"$document-text-color";s:26:"spotlight-background-color";s:26:"$document-background-color";s:22:"spotlight-border-color";s:21:"$spotlight-text-color";s:22:"spotlight-header-color";s:21:"$spotlight-text-color";s:20:"spotlight-mark-color";s:20:"$document-mark-color";s:20:"spotlight-link-color";s:21:"$spotlight-text-color";s:22:"spotlight-active-color";s:21:"$spotlight-mark-color";s:23:"spotlight-caption-color";s:23:"$spotlight-header-color";s:23:"spotlight-border-radius";s:14:"$border-radius";s:17:"spotlight-padding";s:8:"$padding";s:20:"spotlight-box-shadow";s:20:"$document-box-shadow";s:5:"//130";s:0:"";s:15:"card-text-color";s:20:"$document-text-color";s:21:"card-background-color";s:26:"$document-background-color";s:17:"card-border-color";s:22:"$document-border-color";s:17:"card-header-color";s:22:"$document-header-color";s:15:"card-mark-color";s:20:"$document-mark-color";s:15:"card-link-color";s:16:"$card-text-color";s:17:"card-active-color";s:16:"$card-mark-color";s:18:"card-caption-color";s:18:"$card-header-color";s:18:"card-border-radius";s:14:"$border-radius";s:12:"card-padding";s:8:"$padding";s:15:"card-box-shadow";s:20:"$document-box-shadow";s:5:"//140";s:0:"";s:20:"formulary-text-color";s:20:"$document-text-color";s:26:"formulary-background-color";s:26:"$document-background-color";s:22:"formulary-border-color";s:22:"$document-border-color";s:22:"formulary-header-color";s:22:"$document-header-color";s:20:"formulary-mark-color";s:20:"$document-mark-color";s:20:"formulary-link-color";s:21:"$formulary-text-color";s:22:"formulary-active-color";s:21:"$formulary-mark-color";s:23:"formulary-caption-color";s:23:"$formulary-header-color";s:23:"formulary-border-radius";s:14:"$border-radius";s:17:"formulary-padding";s:8:"$padding";s:20:"formulary-box-shadow";s:20:"$document-box-shadow";s:5:"//150";s:0:"";s:14:"nav-text-color";s:20:"$document-text-color";s:20:"nav-background-color";s:26:"$document-background-color";s:16:"nav-border-color";s:15:"$nav-text-color";s:16:"nav-header-color";s:15:"$nav-text-color";s:14:"nav-mark-color";s:20:"$document-mark-color";s:14:"nav-link-color";s:15:"$nav-text-color";s:16:"nav-active-color";s:15:"$nav-mark-color";s:17:"nav-caption-color";s:17:"$nav-header-color";s:17:"nav-border-radius";s:1:"0";s:11:"nav-padding";s:1:"0";s:14:"nav-box-shadow";s:20:"$document-box-shadow";s:5:"//160";s:0:"";s:17:"system-text-color";s:4:"#cfff";s:23:"system-background-color";s:7:"#c406e8e";s:19:"system-border-color";s:18:"$system-text-color";s:19:"system-header-color";s:4:"#ce80";s:17:"system-mark-color";s:4:"#ce80";s:17:"system-link-color";s:18:"$system-text-color";s:19:"system-active-color";s:18:"$system-mark-color";s:20:"system-caption-color";s:20:"$system-header-color";s:20:"system-border-radius";s:14:"$border-radius";s:14:"system-padding";s:8:"$padding";s:17:"system-box-shadow";s:20:"$document-box-shadow";s:17:"system-bar-shadow";s:4:"none";s:20:"system-header-shadow";s:4:"none";s:5:"//170";s:0:"";s:16:"input-text-color";s:4:"#c000";s:22:"input-background-color";s:4:"#ceee";s:19:"input-border-radius";s:14:"$border-radius";s:16:"input-box-shadow";s:20:"$document-box-shadow";s:16:"focus-text-color";s:17:"$input-text-color";s:22:"focus-background-color";s:4:"#cfff";s:16:"focus-box-shadow";s:71:"0 .5em 1em 0 rgba(0, 0, 0, 0.2), 0 0.375em 1.25em 0 rgba(0, 0, 0, 0.19)";s:5:"//180";s:0:"";s:17:"button-text-color";s:4:"#cfff";s:23:"button-background-color";s:7:"#c406e8e";s:14:"button-padding";s:8:"$padding";s:20:"button-border-radius";s:14:"$border-radius";s:17:"button-box-shadow";s:20:"$document-box-shadow";s:17:"active-text-color";s:18:"$button-text-color";s:23:"active-background-color";s:7:"#c393A44";s:17:"active-box-shadow";s:17:"$focus-box-shadow";s:5:"//185";s:0:"";s:16:"badge-text-color";s:4:"#cfff";s:22:"badge-background-color";s:18:"rgba(0, 0, 0, 0.5)";s:19:"badge-border-radius";s:3:"50%";s:5:"//190";s:0:"";s:11:"table-strip";s:18:"rgba(0, 0, 0, 0.2)";s:5:"//200";s:0:"";s:5:"//201";s:69:"// You may append more definitions and comments after the next title:";s:5:"//202";s:0:"";s:5:"//203";s:25:"// == User definitions ==";}}a:2:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:12:"dialog_basic";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Administrao";i:2;i:1;}s:2:"en";a:1:{i:1;s:14:"Administration";}}s:5:"title";a:2:{s:2:"pt";a:3:{i:1;s:13:"Administrao";i:2;i:1;i:6;i:1;}s:2:"en";a:3:{i:1;s:14:"Administration";i:2;i:1;i:6;i:1;}}}}a:1:{s:4:"text";a:3:{s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:12:"Editar conta";i:2;i:1;}s:2:"en";a:2:{i:1;s:12:"Edit account";i:2;i:1;}}s:11:"description";a:0:{}s:7:"content";a:0:{}}}a:2:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:12:"Editar conta";i:2;i:1;}s:2:"en";a:2:{i:1;s:12:"Edit account";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:12:"Editar conta";i:2;i:1;}s:2:"en";a:2:{i:1;s:12:"Edit account";i:2;i:1;}}}s:8:"children";a:9:{i:0;s:6:"_start";i:1;s:10:"~editTitle";i:2;s:12:"~editCaption";i:3;s:9:"~editName";i:4;s:16:"~editDescription";i:5;s:10:"_separator";i:6;s:20:"~specialFieldsOnEdit";i:7;s:11:"_saveCancel";i:8;s:4:"_end";}}a:2:{s:5:"flags";a:6:{s:4:"type";s:10:"text_small";s:6:"filter";s:7:"caption";s:10:"field_name";s:7:"caption";s:6:"target";s:12:"text/caption";s:8:"required";i:1;s:9:"error_msg";s:27:"section_editCaptionRequired";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:35:"Legenda (como ser exibida no menu)";i:2;i:1;}s:2:"en";a:2:{i:1;s:39:"Caption (as it will appear on the menu)";i:2;i:1;}}}}a:2:{s:5:"flags";a:2:{s:4:"icon";s:5:"error";s:7:"caption";s:31:"renderLabels_msg_required_field";}s:4:"text";a:1:{s:7:"content";a:2:{s:2:"pt";a:3:{i:1;s:99:"Esta seo precisa de uma legenda.#r#n#r#nSem legenda, no possvel apresent-la no menu de sees.#r#n";i:2;i:1;i:4;i:1;}s:2:"en";a:5:{i:1;s:95:"This section needs a caption.#r#n#r#nWithout caption, it can not be displayed in the sections menu.";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:2:{s:5:"flags";a:8:{s:9:"condition";s:8:"!wysiwyg";s:4:"type";s:8:"textarea";s:6:"filter";s:4:"text";s:10:"field_name";s:7:"content";s:6:"target";s:12:"text/content";s:12:"format_force";i:1;s:10:"html_force";i:2;s:15:"ecolabore_force";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Contedo";i:2;i:1;}s:2:"en";a:2:{i:1;s:7:"Content";i:2;i:1;}}}}a:1:{s:5:"flags";a:5:{s:4:"type";s:14:"textarea_small";s:6:"filter";s:4:"text";s:10:"field_name";s:11:"description";s:6:"target";s:16:"text/description";s:7:"caption";s:24:"labels/field/description";}}a:1:{s:5:"flags";a:6:{s:4:"type";s:10:"text_small";s:6:"filter";s:11:"domain_name";s:10:"field_name";s:4:"name";s:6:"target";s:4:"name";s:8:"required";i:1;s:7:"caption";s:19:"labels/field_folder";}}a:1:{s:5:"flags";a:6:{s:4:"type";s:4:"text";s:6:"filter";s:4:"text";s:10:"field_name";s:5:"title";s:6:"target";s:10:"text/title";s:8:"required";i:1;s:7:"caption";s:18:"labels/field/title";}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"Mover para baixo";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Move down";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:15:"Mover para cima";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Move up";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Remover conta";i:2;i:1;}s:2:"en";a:2:{i:1;s:14:"Remove account";i:2;i:1;}}}}a:3:{s:5:"flags";a:3:{s:6:"action";s:15:"_section-remove";s:4:"icon";s:8:"question";s:7:"caption";s:34:"renderLabels_msg_operation_confirm";}s:4:"text";a:1:{s:7:"content";a:2:{s:2:"pt";a:3:{i:1;s:119:"Esta operao ir remover permanentemente esta conta e todas as transaes vinculadas a ela.#r#n#r#nDeseja mesmo continuar?";i:2;i:1;i:4;i:1;}s:2:"en";a:5:{i:1;s:108:"This operation will remove permanently this account and all linked transactions.#r#n#r#nDo you wich to continue?";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}s:8:"children";a:4:{i:0;s:6:"_start";i:1;s:10:"_separator";i:2;s:37:"modHumperstilshen_submitConfirmCancel";i:3;s:4:"_end";}}a:1:{s:5:"flags";a:2:{s:6:"filter";s:30:"financialAccount_specialFields";s:5:"sufix";s:20:"_specialFieldsOnEdit";}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"Nova conta";i:2;i:1;}s:2:"en";a:2:{i:1;s:11:"New account";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:16:"Criar nova conta";i:2;i:1;}s:2:"en";a:2:{i:1;s:18:"Create new account";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"Nova conta";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"New account";}}}}a:2:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"Nova seo";i:2;i:1;}s:2:"en";a:2:{i:1;s:11:"New section";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:10:"Nova seo";i:2;i:1;}s:2:"en";a:2:{i:1;s:11:"New section";i:2;i:1;}}}s:8:"children";a:10:{i:0;s:6:"_start";i:1;s:10:"~editTitle";i:2;s:18:"~editCaptionHidden";i:3;s:15:"~editNameHidden";i:4;s:16:"~editDescription";i:5;s:10:"_separator";i:6;s:22:"~specialFieldsOnCreate";i:7;s:25:"~specialFieldsAfterCreate";i:8;s:11:"_saveCancel";i:9;s:4:"_end";}}a:1:{s:5:"flags";a:3:{s:13:"field_display";s:5:"never";s:6:"filter";s:7:"caption";s:6:"target";s:12:"text/caption";}}a:1:{s:5:"flags";a:5:{s:4:"type";s:14:"textarea_small";s:6:"filter";s:4:"text";s:10:"field_name";s:11:"description";s:6:"target";s:16:"text/description";s:7:"caption";s:24:"labels/field/description";}}a:1:{s:5:"flags";a:4:{s:13:"field_display";s:5:"never";s:6:"filter";s:11:"domain_name";s:10:"field_name";s:4:"name";s:6:"target";s:4:"name";}}a:1:{s:5:"flags";a:6:{s:4:"type";s:4:"text";s:6:"filter";s:4:"text";s:10:"field_name";s:5:"title";s:6:"target";s:10:"text/title";s:8:"required";i:1;s:7:"caption";s:18:"labels/field/title";}}a:1:{s:5:"flags";a:3:{s:6:"filter";s:30:"financialAccount_specialFields";s:5:"sufix";s:25:"_specialFieldsAfterCreate";s:10:"posteriori";i:1;}}a:1:{s:5:"flags";a:2:{s:6:"filter";s:30:"financialAccount_specialFields";s:5:"sufix";s:22:"_specialFieldsOnCreate";}}a:2:{s:5:"flags";a:4:{s:6:"filter";s:8:"checkbox";s:10:"field_name";s:11:"pay_machine";s:6:"target";s:17:"flags/pay/machine";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:59:"Esta conta recebe pagamento atravs de maquininha de carto";i:2;i:1;}s:2:"en";a:1:{i:1;s:50:"This account receives payment through card machine";}}}}a:2:{s:5:"flags";a:4:{s:6:"filter";s:8:"checkbox";s:10:"field_name";s:11:"pay_deposit";s:6:"target";s:17:"flags/pay/deposit";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:62:"Permitir depsito em conta aguardando o comprovante do cliente";i:2;i:1;}s:2:"en";a:1:{i:1;s:54:"Allow deposit into account awaiting customer#ss receipt";}}}}a:2:{s:5:"flags";a:4:{s:6:"filter";s:8:"checkbox";s:10:"field_name";s:8:"pay_slip";s:6:"target";s:14:"flags/pay/slip";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:118:"Esta conta permite a emisso de boleto, porm, a emisso dever ser realizada manualmente atravs do servio bancrio.";i:2;i:1;}s:2:"en";a:1:{i:1;s:112:"This account allows the issue of a ticket, however, the issue must be done manually through the banking service.";}}}}a:1:{s:4:"text";a:3:{s:5:"title";a:1:{s:2:"pt";a:2:{i:1;s:14:"Conta bancria";i:2;i:1;}}s:7:"caption";a:1:{s:2:"pt";a:3:{i:1;s:38:"Sobre a conta "[text$document.caption]";i:2;i:1;i:6;i:1;}}s:7:"content";a:1:{s:2:"pt";a:5:{i:1;s:490:"#r#nEsta conta representa uma conta bancria sem integrao direta.#r#n#r#nIsto quer dizer que os valores apresentados so estimados de acordo com as transaes registradas.#r#n#r#nMovimentaes bancrias nesta conta que no forem registradas neste sistema podero fazer com que os valores apresentados aqui no correspondam ao valor verdadeiro na conta.#r#n#r#nSempre que possvel, registre aqui as transaes realizadas fora do sistema e atualize o valor real da conta para evitar grandes defazagens.#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:1:{s:8:"children";a:3:{i:0;s:15:"~editPayDeposit";i:1;s:12:"~editPaySlip";i:2;s:19:"~editPayCardMachine";}}a:1:{s:8:"children";a:3:{i:0;s:15:"~editPayDeposit";i:1;s:12:"~editPaySlip";i:2;s:19:"~editPayCardMachine";}}a:2:{s:5:"flags";a:1:{s:6:"preset";s:14:"~contentPreset";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Banco";i:2;i:1;}s:2:"en";a:2:{i:1;s:4:"Bank";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:19:"Nova conta bancria";i:2;i:1;}s:2:"en";a:2:{i:1;s:16:"New bank account";i:2;i:1;}}s:11:"description";a:1:{s:2:"pt";a:2:{i:1;s:84:"Gerencia transaes bsicas tais como depsitos, transferncias e emisso de boletos";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:21:"financialAccount_type";s:4:"bank";}s:4:"text";a:1:{s:5:"title";a:1:{s:2:"pt";a:2:{i:1;s:14:"Conta bancria";i:2;i:1;}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:3:{i:1;s:27:"Depsito em [text $account]";i:2;i:1;i:6;i:1;}s:2:"en";a:2:{i:1;s:26:"Deposit in [text $account]";i:6;i:1;}}s:5:"title";a:2:{s:2:"pt";a:3:{i:1;s:27:"Depsito em [text $account]";i:2;i:1;i:6;i:1;}s:2:"en";a:3:{i:1;s:26:"Deposit in [text $account]";i:2;i:1;i:6;i:1;}}}}a:2:{s:5:"flags";a:4:{s:6:"filter";s:8:"checkbox";s:10:"field_name";s:8:"pay_cash";s:6:"target";s:14:"flags/pay/cash";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:54:"Permitir o pagamento em dinheiro na entrega do produto";i:2;i:1;}s:2:"en";a:1:{i:1;s:39:"Accept cash payment on product delivery";}}}}a:1:{s:4:"text";a:3:{s:5:"title";a:1:{s:2:"pt";a:2:{i:1;s:5:"Caixa";i:2;i:1;}}s:7:"caption";a:1:{s:2:"pt";a:3:{i:1;s:38:"Sobre a conta "[text$document.caption]";i:2;i:1;i:6;i:1;}}s:7:"content";a:1:{s:2:"pt";a:5:{i:1;s:505:"#r#nEsta uma conta do tipo "Caixa".#r#n#r#nUm caixa gerencia dinheiro vivo.#r#n#r#nO gerenciamento desta conta requer muito cuidado, porque as transaes feitas em dinheiro podero no ser registradas no sistema.#r#n#r#nIsso facilmente poder gerar uma defasagem entre o valor estimado em caixa e o valor de fato existente.#r#n#r#nRecomendamos que voc mantenha pouco dinheiro em caixa, transferindo periodicamente os valores recolhidos para outras contas onde o sistema possa manter um acompanhamento mais preciso.#r#n#r#n#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:1:{s:8:"children";a:1:{i:0;s:12:"~editPayCash";}}a:1:{s:8:"children";a:1:{i:0;s:12:"~editPayCash";}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:21:"Pagamento em dinheiro";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Cash payment";}}s:5:"title";a:2:{s:2:"pt";a:3:{i:1;s:21:"Pagamento em dinheiro";i:2;i:1;i:6;i:1;}s:2:"en";a:3:{i:1;s:13:"Money payment";i:2;i:1;i:6;i:1;}}}}a:2:{s:5:"flags";a:1:{s:6:"preset";s:14:"~contentPreset";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Dinheiro";i:2;i:1;}s:2:"en";a:2:{i:1;s:4:"Cash";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:10:"Novo caixa";i:2;i:1;}s:2:"en";a:2:{i:1;s:16:"New cash manager";i:2;i:1;}}s:11:"description";a:1:{s:2:"pt";a:2:{i:1;s:122:"Oferece ferramentas para gerenciar dinheiro vivo, tal como o gerenciamento de pagamentos em dinheiro na entrega do produto";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:21:"financialAccount_type";s:4:"cash";}s:4:"text";a:1:{s:5:"title";a:1:{s:2:"pt";a:2:{i:1;s:17:"Dinheiro em caixa";i:2;i:1;}}}}a:2:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:7:"default";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Cobranas";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Charges";}}s:5:"title";a:2:{s:2:"pt";a:3:{i:1;s:9:"Cobranas";i:2;i:1;i:6;i:1;}s:2:"en";a:3:{i:1;s:7:"Charges";i:2;i:1;i:6;i:1;}}}}a:1:{s:8:"children";a:9:{i:0;s:6:"_start";i:1;s:24:"domainCreate_editCaption";i:2;s:22:"domainCreate_editTitle";i:3;s:28:"domainCreate_editDescription";i:4;s:24:"domainCreate_editAddress";i:5;s:22:"domainCreate_editPhone";i:6;s:21:"domainCreate_editMail";i:7;s:5:"_save";i:8;s:4:"_end";}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:19:"Solicitar pagamento";i:2;i:1;}s:2:"en";a:1:{i:1;s:14:"Request charge";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Descrio";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"Description";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"Vencimento";i:2;i:1;}s:2:"en";a:1:{i:1;s:3:"Due";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Cliente";i:2;i:1;}s:2:"en";a:1:{i:1;s:6:"Client";}}}}a:2:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:24:"Editar pasta de receitas";i:2;i:1;}s:2:"en";a:2:{i:1;s:20:"Edit incoming folder";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:24:"Editar pasta de receitas";i:2;i:1;}s:2:"en";a:2:{i:1;s:20:"Edit incoming folder";i:2;i:1;}}}s:8:"children";a:5:{i:0;s:6:"_start";i:1;s:10:"~editTitle";i:2;s:18:"~editCaptionHidden";i:3;s:11:"_saveCancel";i:4;s:4:"_end";}}a:2:{s:5:"flags";a:5:{s:4:"type";s:10:"text_small";s:13:"field_display";s:5:"never";s:6:"filter";s:7:"caption";s:10:"field_name";s:7:"caption";s:6:"target";s:12:"text/caption";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:35:"Legenda (como ser exibida no menu)";i:2;i:1;}s:2:"en";a:2:{i:1;s:39:"Caption (as it will appear on the menu)";i:2;i:1;}}}}a:1:{s:5:"flags";a:6:{s:4:"type";s:4:"text";s:6:"filter";s:4:"text";s:10:"field_name";s:5:"title";s:6:"target";s:10:"text/title";s:7:"caption";s:18:"labels/field/title";s:8:"required";i:1;}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Grupos";i:2;i:1;}s:2:"en";a:2:{i:1;s:6:"Groups";i:2;i:1;}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Receitas";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Incomes";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:8:"Receitas";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Incomes";}}}}a:2:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:24:"Editar pasta de despesas";i:2;i:1;}s:2:"en";a:2:{i:1;s:20:"Edit outgoing folder";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:24:"Editar pasta de despesas";i:2;i:1;}s:2:"en";a:2:{i:1;s:20:"Edit outgoing folder";i:2;i:1;}}}s:8:"children";a:5:{i:0;s:6:"_start";i:1;s:10:"~editTitle";i:2;s:18:"~editCaptionHidden";i:3;s:11:"_saveCancel";i:4;s:4:"_end";}}a:2:{s:5:"flags";a:5:{s:4:"type";s:10:"text_small";s:13:"field_display";s:5:"never";s:6:"filter";s:7:"caption";s:10:"field_name";s:7:"caption";s:6:"target";s:12:"text/caption";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:35:"Legenda (como ser exibida no menu)";i:2;i:1;}s:2:"en";a:2:{i:1;s:39:"Caption (as it will appear on the menu)";i:2;i:1;}}}}a:1:{s:5:"flags";a:6:{s:4:"type";s:4:"text";s:6:"filter";s:4:"text";s:10:"field_name";s:5:"title";s:6:"target";s:10:"text/title";s:7:"caption";s:18:"labels/field/title";s:8:"required";i:1;}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Grupos";i:2;i:1;}s:2:"en";a:2:{i:1;s:6:"Groups";i:2;i:1;}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Despesas";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Outgoes";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:8:"Despesas";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Outgoes";}}}}a:2:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:24:"Editar pasta de projetos";i:2;i:1;}s:2:"en";a:2:{i:1;s:20:"Edit projects folder";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:24:"Editar pasta de projetos";i:2;i:1;}s:2:"en";a:2:{i:1;s:20:"Edit projects folder";i:2;i:1;}}}s:8:"children";a:5:{i:0;s:6:"_start";i:1;s:10:"~editTitle";i:2;s:18:"~editCaptionHidden";i:3;s:11:"_saveCancel";i:4;s:4:"_end";}}a:2:{s:5:"flags";a:5:{s:4:"type";s:10:"text_small";s:13:"field_display";s:5:"never";s:6:"filter";s:7:"caption";s:10:"field_name";s:7:"caption";s:6:"target";s:12:"text/caption";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:35:"Legenda (como ser exibida no menu)";i:2;i:1;}s:2:"en";a:2:{i:1;s:39:"Caption (as it will appear on the menu)";i:2;i:1;}}}}a:1:{s:5:"flags";a:6:{s:4:"type";s:4:"text";s:6:"filter";s:4:"text";s:10:"field_name";s:5:"title";s:6:"target";s:10:"text/title";s:7:"caption";s:18:"labels/field/title";s:8:"required";i:1;}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Projetos";i:2;i:1;}s:2:"en";a:2:{i:1;s:8:"Projects";i:2;i:1;}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Projetos";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Projects";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:8:"Projetos";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Projects";}}}}a:2:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:24:"Editar pasta de recursos";i:2;i:1;}s:2:"en";a:2:{i:1;s:21:"Edit resources folder";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:24:"Editar pasta de recursos";i:2;i:1;}s:2:"en";a:2:{i:1;s:21:"Edit resources folder";i:2;i:1;}}}s:8:"children";a:5:{i:0;s:6:"_start";i:1;s:10:"~editTitle";i:2;s:18:"~editCaptionHidden";i:3;s:11:"_saveCancel";i:4;s:4:"_end";}}a:2:{s:5:"flags";a:5:{s:4:"type";s:10:"text_small";s:13:"field_display";s:5:"never";s:6:"filter";s:7:"caption";s:10:"field_name";s:7:"caption";s:6:"target";s:12:"text/caption";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:35:"Legenda (como ser exibida no menu)";i:2;i:1;}s:2:"en";a:2:{i:1;s:39:"Caption (as it will appear on the menu)";i:2;i:1;}}}}a:1:{s:5:"flags";a:6:{s:4:"type";s:4:"text";s:6:"filter";s:4:"text";s:10:"field_name";s:5:"title";s:6:"target";s:10:"text/title";s:7:"caption";s:18:"labels/field/title";s:8:"required";i:1;}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Contas";i:2;i:1;}s:2:"en";a:2:{i:1;s:8:"Accounts";i:2;i:1;}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Recursos";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Resources";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:8:"Recursos";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Resources";}}}}a:1:{s:4:"text";a:3:{s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:10:"Editar aba";i:2;i:1;}s:2:"en";a:2:{i:1;s:8:"Edit tab";i:2;i:1;}}s:11:"description";a:0:{}s:7:"content";a:0:{}}}a:2:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"Editar aba";i:2;i:1;}s:2:"en";a:2:{i:1;s:8:"Edit tab";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:10:"Editar aba";i:2;i:1;}s:2:"en";a:2:{i:1;s:8:"Edit tab";i:2;i:1;}}}s:8:"children";a:12:{i:0;s:6:"_start";i:1;s:10:"~editTitle";i:2;s:12:"~editCaption";i:3;s:9:"~editName";i:4;s:16:"~editDescription";i:5;s:8:"~editImg";i:6;s:20:"~specialFieldsOnEdit";i:7;s:11:"~editAccess";i:8;s:10:"~editGroup";i:9;s:12:"~editUpdated";i:10;s:11:"_saveCancel";i:11;s:4:"_end";}}a:3:{s:5:"flags";a:6:{s:4:"type";s:6:"select";s:6:"filter";s:6:"select";s:10:"field_name";s:6:"access";s:6:"target";s:6:"access";s:13:"default_value";i:0;s:4:"cast";s:3:"int";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:15:"Permitir acesso";i:2;i:1;}s:2:"en";a:2:{i:1;s:12:"Allow access";i:2;i:1;}}}s:8:"children";a:4:{i:0;s:14:"~editAccessAll";i:1;s:21:"~editAccessSubscribed";i:2;s:17:"~editAccessMember";i:3;s:16:"~editAccessAdmin";}}a:2:{s:5:"flags";a:1:{s:5:"value";s:1:"4";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:23:"Somente administradores";i:2;i:1;}s:2:"en";a:2:{i:1;s:19:"Administrators only";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:1:"0";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Todos";i:2;i:1;}s:2:"en";a:2:{i:1;s:3:"All";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:1:"3";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:27:"Somente membros deste grupo";i:2;i:1;}s:2:"en";a:2:{i:1;s:26:"Members of this group only";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:1:"2";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:20:"Usurios cadastrados";i:2;i:1;}s:2:"en";a:2:{i:1;s:16:"Subscribed users";i:2;i:1;}}}}a:2:{s:5:"flags";a:6:{s:4:"type";s:10:"text_small";s:6:"filter";s:7:"caption";s:10:"field_name";s:7:"caption";s:6:"target";s:12:"text/caption";s:8:"required";i:1;s:9:"error_msg";s:27:"section_editCaptionRequired";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:35:"Legenda (como ser exibida no menu)";i:2;i:1;}s:2:"en";a:2:{i:1;s:39:"Caption (as it will appear on the menu)";i:2;i:1;}}}}a:2:{s:5:"flags";a:2:{s:4:"icon";s:5:"error";s:7:"caption";s:31:"renderLabels_msg_required_field";}s:4:"text";a:1:{s:7:"content";a:2:{s:2:"pt";a:3:{i:1;s:99:"Esta seo precisa de uma legenda.#r#n#r#nSem legenda, no possvel apresent-la no menu de sees.#r#n";i:2;i:1;i:4;i:1;}s:2:"en";a:5:{i:1;s:95:"This section needs a caption.#r#n#r#nWithout caption, it can not be displayed in the sections menu.";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:2:{s:5:"flags";a:8:{s:9:"condition";s:8:"!wysiwyg";s:4:"type";s:8:"textarea";s:6:"filter";s:4:"text";s:10:"field_name";s:7:"content";s:6:"target";s:12:"text/content";s:12:"format_force";i:1;s:10:"html_force";i:2;s:15:"ecolabore_force";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Contedo";i:2;i:1;}s:2:"en";a:2:{i:1;s:7:"Content";i:2;i:1;}}}}a:1:{s:5:"flags";a:5:{s:4:"type";s:14:"textarea_small";s:6:"filter";s:4:"text";s:10:"field_name";s:11:"description";s:6:"target";s:16:"text/description";s:7:"caption";s:24:"labels/field/description";}}a:2:{s:5:"flags";a:2:{s:6:"filter";s:19:"section_selectGroup";s:10:"field_name";s:5:"group";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Grupo";i:2;i:1;}s:2:"en";a:2:{i:1;s:5:"Group";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"(Nenhum)";i:2;i:1;}s:2:"en";a:2:{i:1;s:6:"(None)";i:2;i:1;}}}}a:2:{s:5:"flags";a:2:{s:6:"filter";s:21:"personaliteExtras_img";s:10:"field_name";s:3:"img";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Imagem";i:2;i:1;}s:2:"en";a:2:{i:1;s:5:"Image";i:2;i:1;}}}}a:1:{s:5:"flags";a:5:{s:4:"type";s:4:"text";s:6:"filter";s:4:"text";s:10:"field_name";s:8:"keywords";s:6:"target";s:13:"text/keywords";s:7:"caption";s:21:"labels/field/keywords";}}a:1:{s:5:"flags";a:1:{s:6:"filter";s:8:"keywords";}}a:1:{s:5:"flags";a:6:{s:4:"type";s:10:"text_small";s:6:"filter";s:11:"domain_name";s:10:"field_name";s:4:"name";s:6:"target";s:4:"name";s:8:"required";i:1;s:7:"caption";s:18:"section_editFolder";}}a:1:{s:5:"flags";a:6:{s:4:"type";s:4:"text";s:6:"filter";s:4:"text";s:10:"field_name";s:5:"title";s:6:"target";s:10:"text/title";s:8:"required";i:1;s:7:"caption";s:18:"labels/field/title";}}a:1:{s:5:"flags";a:5:{s:13:"field_display";s:5:"never";s:4:"type";s:4:"none";s:6:"filter";s:9:"timestamp";s:10:"field_name";s:7:"updated";s:6:"target";s:7:"updated";}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:20:"Mover para a direita";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Move right";}}}}a:2:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Mover para...";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Move to...";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:11:"Mover seo";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Move section";}}}s:8:"children";a:4:{i:0;s:6:"_start";i:1;s:11:"~moveToList";i:2;s:11:"_saveCancel";i:3;s:4:"_end";}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:14:"Menu de rodap";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"Footer menu";}}}}a:2:{s:5:"flags";a:2:{s:6:"filter";s:14:"section_moveto";s:10:"field_name";s:8:"position";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:24:"Escolha uma nova posio";i:2;i:1;}s:2:"en";a:1:{i:1;s:21:"Choose a new position";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:14:"Menu principal";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Main menu";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:21:"Mover para a esquerda";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Move left";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Remover seo";i:2;i:1;}s:2:"en";a:2:{i:1;s:14:"Remove section";i:2;i:1;}}}}a:3:{s:5:"flags";a:3:{s:6:"action";s:15:"_section-remove";s:4:"icon";s:8:"question";s:7:"caption";s:34:"renderLabels_msg_operation_confirm";}s:4:"text";a:1:{s:7:"content";a:2:{s:2:"pt";a:3:{i:1;s:102:"Esta operao ir remover permanentemente esta seo e todo o seu contedo.#r#n#r#nDeseja mesmo continuar?";i:2;i:1;i:4;i:1;}s:2:"en";a:5:{i:1;s:100:"This operation will remove permanently this section and all hes content.#r#n#r#nDo you wich to continue?";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}s:8:"children";a:4:{i:0;s:6:"_start";i:1;s:10:"_separator";i:2;s:37:"modHumperstilshen_submitConfirmCancel";i:3;s:4:"_end";}}a:1:{s:5:"flags";a:2:{s:6:"filter";s:18:"home_specialFields";s:5:"sufix";s:20:"_specialFieldsOnEdit";}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Nova aba";i:2;i:1;}s:2:"en";a:2:{i:1;s:7:"New tab";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:14:"Criar nova aba";i:2;i:1;}s:2:"en";a:2:{i:1;s:14:"Create new tab";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Nova aba";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"New tab";}}}}a:2:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"Nova seo";i:2;i:1;}s:2:"en";a:2:{i:1;s:11:"New section";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:10:"Nova seo";i:2;i:1;}s:2:"en";a:2:{i:1;s:11:"New section";i:2;i:1;}}}s:8:"children";a:10:{i:0;s:6:"_start";i:1;s:10:"~editTitle";i:2;s:18:"~editCaptionHidden";i:3;s:15:"~editNameHidden";i:4;s:16:"~editDescription";i:5;s:22:"~specialFieldsOnCreate";i:6;s:17:"~editKeywordsPack";i:7;s:25:"~specialFieldsAfterCreate";i:8;s:11:"_saveCancel";i:9;s:4:"_end";}}a:1:{s:5:"flags";a:3:{s:13:"field_display";s:5:"never";s:6:"filter";s:7:"caption";s:6:"target";s:12:"text/caption";}}a:1:{s:5:"flags";a:5:{s:4:"type";s:14:"textarea_small";s:6:"filter";s:4:"text";s:10:"field_name";s:11:"description";s:6:"target";s:16:"text/description";s:7:"caption";s:24:"labels/field/description";}}a:1:{s:5:"flags";a:1:{s:6:"filter";s:8:"keywords";}}a:1:{s:5:"flags";a:4:{s:13:"field_display";s:5:"never";s:6:"filter";s:11:"domain_name";s:10:"field_name";s:4:"name";s:6:"target";s:4:"name";}}a:1:{s:5:"flags";a:6:{s:4:"type";s:4:"text";s:6:"filter";s:4:"text";s:10:"field_name";s:5:"title";s:6:"target";s:10:"text/title";s:8:"required";i:1;s:7:"caption";s:18:"labels/field/title";}}a:1:{s:4:"text";a:1:{s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:737:"#r#nTemos aqui uma lista com os diferentes tipos de seo que podem ser criadas.#r#n#r#nCada tipo de seo oferece funcionalidades especiais, mas importante observar a seo do tipo "Pasta", pois dentro dela possvel criar subsees de qualquer tipo. Inclusive subsees do tipo "Pasta".#r#n#r#nPortanto, antes de adicionar sees ao seu ambiente, pense na disposio desejada para as ferramentas.#r#n#r#nNovas sees so acrescentadas sempre ao final do menu, mas voc pode alterar a ordem na qual elas sero listadas. Basta abrir a seo que precisa mudar de lugar e escolher, no menu de contexto, "Mover para cima" ou "Mover para baixo".#r#n#r#nClaro que em um menu horizontal elas sero movidas para a esquerda ou para a direita respectivamente.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:1:{s:5:"flags";a:3:{s:6:"filter";s:18:"home_specialFields";s:5:"sufix";s:25:"_specialFieldsAfterCreate";s:10:"posteriori";i:1;}}a:1:{s:5:"flags";a:2:{s:6:"filter";s:18:"home_specialFields";s:5:"sufix";s:22:"_specialFieldsOnCreate";}}a:1:{s:8:"children";a:0:{}}a:1:{s:8:"children";a:0:{}}a:2:{s:5:"flags";a:1:{s:6:"preset";s:14:"~contentPreset";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Conversas";i:2;i:1;}s:2:"en";a:2:{i:1;s:4:"Chat";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:9:"Conversas";i:2;i:1;}s:2:"en";a:2:{i:1;s:4:"Chat";i:2;i:1;}}s:11:"description";a:1:{s:2:"pt";a:2:{i:1;s:44:"Acessa as conversas das quais voc faz parte";i:2;i:1;}}}}a:4:{s:6:"marker";i:3;s:6:"access";i:4;s:5:"flags";a:1:{s:9:"home_type";s:4:"chat";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Conversas";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"Chat";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:9:"Conversas";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"Chat";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:35:"Remover da minha lista de conversas";i:2;i:1;}s:2:"en";a:1:{i:1;s:24:"Remove from my chat list";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:15:"Limpar conversa";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Clear chat";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:35:"Remover da minha lista de conversas";i:2;i:1;}s:2:"en";a:1:{i:1;s:24:"Remove from my chat list";}}}}a:1:{s:8:"children";a:4:{i:0;s:6:"_start";i:1;s:12:"~formComment";i:2;s:7:"_submit";i:3;s:4:"_end";}}a:2:{s:5:"flags";a:8:{s:4:"type";s:14:"textarea_small";s:6:"filter";s:4:"text";s:10:"field_name";s:7:"message";s:6:"target";s:12:"text/content";s:8:"required";i:1;s:12:"format_force";i:1;s:10:"html_force";i:1;s:15:"ecolabore_force";i:0;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"Comentrio";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Comment";}}}}a:1:{s:8:"children";a:1:{i:0;s:16:"home_editContent";}}a:1:{s:8:"children";a:1:{i:0;s:16:"home_editContent";}}a:2:{s:5:"flags";a:1:{s:6:"preset";s:14:"~contentPreset";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Publicaes";i:2;i:1;}s:2:"en";a:2:{i:1;s:12:"Publications";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:11:"Publicaes";i:2;i:1;}s:2:"en";a:2:{i:1;s:12:"Publications";i:2;i:1;}}s:11:"description";a:1:{s:2:"pt";a:2:{i:1;s:54:"Lista todas as suas postagens nos blogs da comunidade.";i:2;i:1;}}}}a:4:{s:6:"access";i:0;s:6:"marker";i:2;s:5:"flags";a:1:{s:9:"home_type";s:12:"publications";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Publicaes";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Publications";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:11:"Publicaes";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Publications";}}}}a:2:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:7:"default";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Servios";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Services";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:8:"Servios";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Services";}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"Google Webmasters";i:2;i:1;}s:2:"en";a:2:{i:1;s:17:"Google Webmasters";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:41:"Verificar autoridade no Google Webmasters";i:2;i:1;}s:2:"en";a:2:{i:1;s:37:"Verify authority on Google Webmasters";i:2;i:1;}}}}a:1:{s:8:"children";a:4:{i:0;s:6:"_start";i:1;s:11:"~createFile";i:2;s:7:"_submit";i:3;s:4:"_end";}}a:2:{s:5:"flags";a:2:{s:4:"type";s:4:"file";s:10:"field_name";s:17:"verification_file";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:22:"Arquivo de verificao";i:2;i:1;}s:2:"en";a:2:{i:1;s:17:"Verification file";i:2;i:1;}}}}a:1:{s:8:"children";a:5:{i:0;s:6:"_start";i:1;s:13:"~viewFileName";i:2;s:16:"~viewFileContent";i:3;s:7:"_remove";i:4;s:4:"_end";}}a:2:{s:5:"flags";a:2:{s:6:"filter";s:4:"view";s:6:"target";s:18:"local/file_content";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:19:"Contedo do arquivo";i:2;i:1;}s:2:"en";a:2:{i:1;s:12:"File content";i:2;i:1;}}}}a:2:{s:5:"flags";a:2:{s:6:"filter";s:4:"view";s:6:"target";s:15:"local/file_name";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:30:"Nome do arquivo de verificao";i:2;i:1;}s:2:"en";a:2:{i:1;s:22:"Verification file name";i:2;i:1;}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:3:"RSS";i:2;i:1;}s:2:"en";a:1:{i:1;s:3:"RSS";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:31:"Gerao automtica de feeds RSS";i:2;i:1;}s:2:"en";a:1:{i:1;s:30:"RSS Feeds automatic generation";}}}}a:1:{s:8:"children";a:5:{i:0;s:6:"_start";i:1;s:14:"~editRssEnable";i:2;s:11:"~editRssMax";i:3;s:7:"_submit";i:4;s:4:"_end";}}a:2:{s:5:"flags";a:6:{s:4:"type";s:8:"checkbox";s:6:"filter";s:8:"checkbox";s:10:"field_name";s:6:"enable";s:6:"target";s:20:"flags/modRss_disable";s:6:"invert";i:1;s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:27:"Ativar gerao de feeds RSS";i:2;i:1;}s:2:"en";a:2:{i:1;s:27:"Enable RSS feeds generation";i:2;i:1;}}}}a:2:{s:5:"flags";a:8:{s:4:"type";s:9:"text_tiny";s:6:"filter";s:7:"integer";s:10:"field_name";s:3:"max";s:6:"target";s:16:"flags/modRss_max";s:13:"default_value";i:20;s:9:"min_input";i:1;s:9:"max_input";i:20;s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Itens no feed";i:2;i:1;}s:2:"en";a:2:{i:1;s:10:"Feed items";i:2;i:1;}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:3:"SMS";i:2;i:1;}s:2:"en";a:1:{i:1;s:3:"SMS";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:26:"Envio de mensagens por SMS";i:2;i:1;}s:2:"en";a:1:{i:1;s:22:"Message sending by SMS";}}}}a:1:{s:4:"text";a:1:{s:7:"content";a:2:{s:2:"pt";a:3:{i:1;s:33:"Este servio est desabilitado.#r#n";i:2;i:1;i:4;i:1;}s:2:"en";a:2:{i:1;s:25:"This service is disabled.";i:4;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"content";a:2:{s:2:"pt";a:3:{i:1;s:31:"Este servio est habilitado.#r#n";i:2;i:1;i:4;i:1;}s:2:"en";a:2:{i:1;s:24:"This service is enabled.";i:4;i:1;}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"Configurar";i:2;i:1;}s:2:"en";a:2:{i:1;s:9:"Configure";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:38:"Configurar conta padro para envio SMS";i:2;i:1;}s:2:"en";a:2:{i:1;s:37:"Configure SMS default sending account";i:2;i:1;}}}}a:1:{s:8:"children";a:6:{i:0;s:6:"_start";i:1;s:18:"~editServiceEnable";i:2;s:9:"~editUser";i:3;s:9:"~editPass";i:4;s:5:"_save";i:5;s:4:"_end";}}a:2:{s:5:"flags";a:5:{s:4:"type";s:10:"text_small";s:6:"filter";s:20:"admin_constants_flag";s:6:"target";s:25:"INTEGRATION_PAPO_SMS_PASS";s:10:"field_name";s:25:"INTEGRATION_PAPO_SMS_PASS";s:10:"value_cast";s:6:"string";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Senha";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Password";}}}}a:2:{s:5:"flags";a:6:{s:4:"type";s:8:"checkbox";s:6:"filter";s:20:"admin_constants_flag";s:6:"target";s:27:"INTEGRATION_PAPO_SMS_ENABLE";s:10:"field_name";s:27:"INTEGRATION_PAPO_SMS_ENABLE";s:10:"value_cast";s:4:"bool";s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:25:"Ativar envio SMS via Papo";i:2;i:1;}s:2:"en";a:1:{i:1;s:26:"Enable SMS sending by Papo";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:28:"Ativar envio de SMS via Papo";i:2;i:1;}s:2:"en";a:1:{i:1;s:26:"Enable SMS sending by Papo";}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:436:"Ativa ou desativa o envio de SMS pelo servio Papo#r#n#r#nPara enviar SMS via Papo, necessrio que voc possua uma conta ativa neste servio.#r#n#r#nO servio Papo tarifado.#r#n#r#nCadastre-se e consulte preos e condies no site:#r#n#r#n[https://www.paposms.com/]#r#n#r#nO envio de SMS necessrio para o funcionamento de alguns servios do [text $system.caption], como a verificao de nmeros de telefone ou alertar os usurios sobre pendncias.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:2:{s:5:"flags";a:5:{s:4:"type";s:10:"text_small";s:6:"filter";s:20:"admin_constants_flag";s:6:"target";s:25:"INTEGRATION_PAPO_SMS_USER";s:10:"field_name";s:25:"INTEGRATION_PAPO_SMS_USER";s:10:"value_cast";s:6:"string";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Usurio";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"User";}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Testar";i:2;i:1;}s:2:"en";a:2:{i:1;s:4:"Test";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:24:"Testar envio de mensagem";i:2;i:1;}s:2:"en";a:2:{i:1;s:19:"Send a test message";i:2;i:1;}}}}a:1:{s:8:"children";a:6:{i:0;s:6:"_start";i:1;s:18:"~editServiceEnable";i:2;s:9:"~editUser";i:3;s:9:"~editPass";i:4;s:5:"_save";i:5;s:4:"_end";}}a:2:{s:5:"flags";a:5:{s:4:"type";s:10:"text_small";s:6:"filter";s:20:"admin_constants_flag";s:6:"target";s:25:"INTEGRATION_PAPO_SMS_PASS";s:10:"field_name";s:25:"INTEGRATION_PAPO_SMS_PASS";s:10:"value_cast";s:6:"string";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Senha";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Password";}}}}a:2:{s:5:"flags";a:6:{s:4:"type";s:8:"checkbox";s:6:"filter";s:20:"admin_constants_flag";s:6:"target";s:27:"INTEGRATION_PAPO_SMS_ENABLE";s:10:"field_name";s:27:"INTEGRATION_PAPO_SMS_ENABLE";s:10:"value_cast";s:4:"bool";s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:25:"Ativar envio SMS via Papo";i:2;i:1;}s:2:"en";a:1:{i:1;s:26:"Enable SMS sending by Papo";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:28:"Ativar envio de SMS via Papo";i:2;i:1;}s:2:"en";a:1:{i:1;s:26:"Enable SMS sending by Papo";}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:436:"Ativa ou desativa o envio de SMS pelo servio Papo#r#n#r#nPara enviar SMS via Papo, necessrio que voc possua uma conta ativa neste servio.#r#n#r#nO servio Papo tarifado.#r#n#r#nCadastre-se e consulte preos e condies no site:#r#n#r#n[https://www.paposms.com/]#r#n#r#nO envio de SMS necessrio para o funcionamento de alguns servios do [text $system.caption], como a verificao de nmeros de telefone ou alertar os usurios sobre pendncias.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:2:{s:5:"flags";a:5:{s:4:"type";s:10:"text_small";s:6:"filter";s:20:"admin_constants_flag";s:6:"target";s:25:"INTEGRATION_PAPO_SMS_USER";s:10:"field_name";s:25:"INTEGRATION_PAPO_SMS_USER";s:10:"value_cast";s:6:"string";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Usurio";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"User";}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:4:"SMTP";i:2;i:1;}s:2:"en";a:2:{i:1;s:4:"SMTP";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:26:"Envio de mensagen via SMTP";i:2;i:1;}s:2:"en";a:2:{i:1;s:20:"Mail sending by SMTP";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:7:"default";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:18:"Servio desativado";i:2;i:1;}s:2:"en";a:2:{i:1;s:16:"Disabled service";i:2;i:1;}}s:7:"content";a:2:{s:2:"pt";a:4:{i:1;s:156:"#r#nO servio de envio de mensagens por SMTP est desativado neste servidor.#r#n#r#nPara mais informaes, contate os administradores do [text $system.caption].#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}s:2:"en";a:4:{i:1;s:131:"#r#nThe SMTP service is disabled in this server.#r#n#r#nFor more information, please contact the [text $system.caption] administrators.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:5:"crash";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:19:"Autenticao negada";i:2;i:1;}s:2:"en";a:2:{i:1;s:21:"Authentication denied";i:2;i:1;}}s:7:"content";a:2:{s:2:"pt";a:4:{i:1;s:121:"O [text $system.caption] no pde conectar-se ao servidor "[$server]".#r#n#r#nO usurio "[$user]" no pde ser autenticado.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}s:2:"en";a:4:{i:1;s:113:"The Ecolabore Portal could not connect to server "[$server]".#r#n#r#nThe user "[$user]" could not be authenticated.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:5:"crash";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:18:"Problemas no envio";i:2;i:1;}s:2:"en";a:2:{i:1;s:16:"Sending problems";i:2;i:1;}}s:7:"content";a:2:{s:2:"pt";a:4:{i:1;s:60:"#r#nUm problema ocorreu ao enviar uma mensagem para "[$to]".#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}s:2:"en";a:3:{i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:5:"crash";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:20:"Servio indisponvel";i:2;i:1;}s:2:"en";a:2:{i:1;s:19:"Unavailable service";i:2;i:1;}}s:7:"content";a:2:{s:2:"pt";a:4:{i:1;s:114:"O [text $system.caption] no pde conectar-se ao servidor "[$server]".#r#n#r#nPor favor, tente novamente mais tarde.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}s:2:"en";a:4:{i:1;s:97:"The [text $system.caption] could not connect to server "[$server]".#r#n#r#nPlease, try again later.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:5:"error";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:18:"Problemas no envio";i:2;i:1;}s:2:"en";a:2:{i:1;s:16:"Sending problems";i:2;i:1;}}s:7:"content";a:2:{s:2:"pt";a:4:{i:1;s:69:"#r#nUm ou mais destinatrios desta mensagem foram recusados:#r#n#r#n[$to]#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}s:2:"en";a:3:{i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"Configurar";i:2;i:1;}s:2:"en";a:2:{i:1;s:9:"Configure";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:39:"Configurar conta padro para envio SMTP";i:2;i:1;}s:2:"en";a:2:{i:1;s:38:"Configure SMTP default sending account";i:2;i:1;}}}}a:1:{s:8:"children";a:10:{i:0;s:6:"_start";i:1;s:22:"~integrationSmtpEnable";i:2;s:20:"~integrationSmtpHost";i:3;s:20:"~integrationSmtpPort";i:4;s:20:"~integrationSmtpUser";i:5;s:24:"~integrationSmtpPassword";i:6;s:20:"~integrationSmtpFrom";i:7;s:19:"~integrationSmtpTTL";i:8;s:7:"_submit";i:9;s:4:"_end";}}a:2:{s:5:"flags";a:6:{s:4:"type";s:8:"checkbox";s:6:"filter";s:20:"admin_constants_flag";s:6:"target";s:23:"INTEGRATION_SMTP_ENABLE";s:10:"field_name";s:23:"INTEGRATION_SMTP_ENABLE";s:10:"value_cast";s:4:"bool";s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:21:"Ativar envio via SMTP";i:2;i:1;}s:2:"en";a:1:{i:1;s:19:"Enable SMTP sending";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:21:"Ativar envio via SMTP";i:2;i:1;}s:2:"en";a:1:{i:1;s:19:"Enable SMTP sending";}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:326:"Ativa ou desativa o envio de emails via SMTP.#r#n#r#nPara enviar emails via SMTP, necessrio que voc possua uma conta de emails ativa.#r#n#r#nO envio de emails necessrio para o funcionamento de alguns servios do [text $system.caption], como a verificao de endereos de emails vlidos ou a recuperao de senha dos usurios.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:2:{s:5:"flags";a:5:{s:4:"type";s:10:"text_small";s:6:"filter";s:20:"admin_constants_flag";s:6:"target";s:21:"INTEGRATION_SMTP_FROM";s:10:"field_name";s:21:"INTEGRATION_SMTP_FROM";s:10:"value_cast";s:6:"string";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Remetente";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"From";}}}}a:2:{s:5:"flags";a:5:{s:4:"type";s:10:"text_small";s:6:"filter";s:20:"admin_constants_flag";s:6:"target";s:21:"INTEGRATION_SMTP_HOST";s:10:"field_name";s:21:"INTEGRATION_SMTP_HOST";s:10:"value_cast";s:6:"string";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Servidor";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"Host";}}}}a:2:{s:5:"flags";a:5:{s:4:"type";s:10:"text_small";s:6:"filter";s:20:"admin_constants_flag";s:6:"target";s:25:"INTEGRATION_SMTP_PASSWORD";s:10:"field_name";s:25:"INTEGRATION_SMTP_PASSWORD";s:10:"value_cast";s:6:"string";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Senha";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Password";}}}}a:2:{s:5:"flags";a:5:{s:4:"type";s:10:"text_small";s:6:"filter";s:20:"admin_constants_flag";s:6:"target";s:21:"INTEGRATION_SMTP_PORT";s:10:"field_name";s:21:"INTEGRATION_SMTP_PORT";s:10:"value_cast";s:6:"string";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Porta";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"Port";}}}}a:2:{s:5:"flags";a:5:{s:4:"type";s:9:"text_tiny";s:6:"filter";s:20:"admin_constants_flag";s:6:"target";s:20:"INTEGRATION_SMTP_TTL";s:10:"field_name";s:20:"INTEGRATION_SMTP_TTL";s:10:"value_cast";s:6:"string";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:23:"Tempo limite (segundos)";i:2;i:1;}s:2:"en";a:1:{i:1;s:20:"Time limit (seconds)";}}}}a:2:{s:5:"flags";a:5:{s:4:"type";s:10:"text_small";s:6:"filter";s:20:"admin_constants_flag";s:6:"target";s:21:"INTEGRATION_SMTP_USER";s:10:"field_name";s:21:"INTEGRATION_SMTP_USER";s:10:"value_cast";s:6:"string";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Usurio";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"User";}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Testar";i:2;i:1;}s:2:"en";a:2:{i:1;s:4:"Test";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:24:"Testar envio de mensagem";i:2;i:1;}s:2:"en";a:2:{i:1;s:19:"Send a test message";i:2;i:1;}}}}a:1:{s:8:"children";a:9:{i:0;s:6:"_start";i:1;s:7:"~editTo";i:2;s:7:"~editCc";i:3;s:8:"~editBcc";i:4;s:12:"~editSubject";i:5;s:9:"~editText";i:6;s:9:"~editHtml";i:7;s:7:"_submit";i:8;s:4:"_end";}}a:2:{s:5:"flags";a:5:{s:4:"type";s:4:"text";s:6:"filter";s:4:"free";s:10:"field_name";s:3:"bcc";s:6:"target";s:3:"bcc";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:12:"Cpia oculta";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Blind copy";}}}}a:2:{s:5:"flags";a:5:{s:4:"type";s:4:"text";s:6:"filter";s:4:"free";s:10:"field_name";s:2:"cc";s:6:"target";s:2:"cc";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Cpia carbono";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"Carbon copy";}}}}a:2:{s:5:"flags";a:5:{s:4:"type";s:8:"textarea";s:6:"filter";s:4:"free";s:10:"field_name";s:4:"html";s:6:"target";s:4:"html";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"Mensagem em HTML";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"HTML message";}}}}a:2:{s:5:"flags";a:5:{s:4:"type";s:4:"text";s:6:"filter";s:4:"free";s:10:"field_name";s:7:"subject";s:6:"target";s:7:"subject";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Assunto";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Subject";}}}}a:2:{s:5:"flags";a:5:{s:4:"type";s:8:"textarea";s:6:"filter";s:4:"free";s:10:"field_name";s:4:"text";s:6:"target";s:4:"text";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"Mensagem em texto";i:2;i:1;}s:2:"en";a:1:{i:1;s:18:"Plain text message";}}}}a:2:{s:5:"flags";a:5:{s:4:"type";s:4:"text";s:6:"filter";s:4:"free";s:10:"field_name";s:2:"to";s:6:"target";s:2:"to";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:4:"Para";i:2;i:1;}s:2:"en";a:1:{i:1;s:2:"To";}}}}a:1:{s:8:"children";a:4:{i:0;s:6:"_start";i:1;s:8:"~viewLog";i:2;s:5:"_back";i:3;s:4:"_end";}}a:2:{s:5:"flags";a:4:{s:4:"type";s:8:"textarea";s:6:"filter";s:4:"free";s:10:"field_name";s:3:"log";s:6:"target";s:3:"log";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"Comunicao SMTP";i:2;i:1;}s:2:"en";a:1:{i:1;s:18:"SMTP communication";}}}}a:3:{s:5:"flags";a:1:{s:9:"multipart";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:24:"Configuraes para udio";i:2;i:1;}s:2:"en";a:1:{i:1;s:24:"Configurations for audio";}}}s:8:"children";a:6:{i:0;s:6:"_start";i:1;s:9:"~tabAudio";i:2;s:11:"~tabCaption";i:3;s:30:"personaliteModules_tabPosition";i:4;s:9:"~tabStyle";i:5;s:4:"_end";}}a:2:{s:5:"flags";a:2:{s:6:"filter";s:8:"modAudio";s:10:"field_name";s:5:"audio";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"udio (*.mp3)";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Audio (*.mp3)";}}}}a:2:{s:5:"flags";a:4:{s:4:"type";s:14:"textarea_small";s:6:"filter";s:4:"text";s:10:"field_name";s:11:"description";s:6:"target";s:16:"text/description";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Descrio";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"Description";}}}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"udio";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Audio";}}}s:8:"children";a:2:{i:0;s:10:"~editAudio";i:1;s:16:"~editDescription";}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Legenda";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Caption";}}}s:8:"children";a:3:{i:0;s:26:"personaliteModules_caption";i:1;s:33:"personaliteModules_captionDisplay";i:2;s:32:"personaliteModules_captionLegend";}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Estilo";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Style";}}}s:8:"children";a:4:{i:0;s:28:"personaliteModules_boxScheme";i:1;s:29:"personaliteModules_boxPadding";i:2;s:28:"personaliteModules_boxShadow";i:3;s:29:"personaliteModules_boxRounded";}}a:2:{s:4:"text";a:2:{s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:14:"Inserir banner";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Insert banner";}}s:11:"description";a:2:{s:2:"pt";a:2:{i:1;s:62:"Acione a ncora no canto desta caixa para adicionar uma figura";i:2;i:1;}s:2:"en";a:1:{i:1;s:58:"Click the anchor in the corner of this box to add an image";}}}s:5:"local";a:12:{s:12:"mod-position";s:6:"center";s:5:"wd-sm";s:2:"12";s:5:"wd-lg";s:2:"12";s:10:"box-scheme";s:4:"card";s:11:"box-padding";s:6:".25rem";s:11:"box-rounded";s:1:"0";s:10:"box-shadow";s:12:"border-doted";s:4:"list";s:7:"details";s:9:"list-type";s:6:"inline";s:10:"list-align";s:6:"center";s:7:"details";s:20:"title_3#r#ndescription";s:24:"details-horizontal-align";s:6:"center";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Editar banner";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"Edit banner";}}}s:8:"children";a:8:{i:0;s:6:"_start";i:1;s:13:"modImg_tabImg";i:2;s:17:"modImg_tabCaption";i:3;s:30:"personaliteModules_tabPosition";i:4;s:15:"modImg_tabStyle";i:5;s:17:"modImg_tabFilters";i:6;s:29:"personaliteModules_tabEffects";i:7;s:4:"_end";}}a:2:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:7:"control";s:14:"modLayout_name";s:18:"dialog_tabsObjects";}s:4:"text";a:1:{s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:21:"Editar caixa de texto";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Edit text box";}}}}a:2:{s:4:"text";a:2:{s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:14:"Caixa de texto";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Text box";}}s:11:"description";a:2:{s:2:"pt";a:2:{i:1;s:52:"Acione a ncora no canto desta caixa para configurar";i:2;i:1;}s:2:"en";a:1:{i:1;s:55:"Click the anchor in the corner of this box to configure";}}}s:5:"local";a:12:{s:12:"mod-position";s:6:"inline";s:5:"wd-sm";s:1:"6";s:5:"wd-lg";s:1:"6";s:12:"box-position";s:6:"inline";s:10:"box-scheme";s:4:"card";s:11:"box-padding";s:6:".25rem";s:11:"box-rounded";s:1:"0";s:10:"box-shadow";s:12:"border-doted";s:4:"list";s:7:"default";s:9:"list-type";s:6:"inline";s:10:"list-align";s:6:"center";s:7:"details";s:7:"title_3";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:21:"Editar caixa de texto";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Edit text box";}}}s:8:"children";a:6:{i:0;s:6:"_start";i:1;s:11:"~tabContent";i:2;s:11:"~tabCaption";i:3;s:30:"personaliteModules_tabPosition";i:4;s:27:"personaliteModules_tabStyle";i:5;s:4:"_end";}}a:2:{s:5:"flags";a:7:{s:4:"type";s:8:"textarea";s:6:"filter";s:4:"text";s:10:"field_name";s:7:"content";s:6:"target";s:12:"text/content";s:12:"format_force";i:1;s:10:"html_force";i:2;s:15:"ecolabore_force";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Contedo";i:2;i:1;}s:2:"en";a:2:{i:1;s:7:"Content";i:2;i:1;}}}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Legenda";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Caption";}}}s:8:"children";a:2:{i:0;s:26:"personaliteModules_caption";i:1;s:33:"personaliteModules_captionDisplay";}}a:3:{s:5:"flags";a:2:{s:6:"filter";s:9:"formulary";s:6:"target";s:5:"table";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Contedo";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Content";}}}s:8:"children";a:1:{i:0;s:12:"~editContent";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:29:"Personalizar menu breadcrumbs";i:2;i:1;}s:2:"en";a:1:{i:1;s:23:"Custom breadcrumbs menu";}}}s:8:"children";a:8:{i:0;s:6:"_start";i:1;s:29:"personaliteModules_tabCaption";i:2;s:30:"personaliteModules_tabPosition";i:3;s:27:"personaliteModules_tabStyle";i:4;s:26:"personaliteModules_tabList";i:5;s:29:"personaliteModules_tabDetails";i:6;s:29:"personaliteModules_tabEffects";i:7;s:4:"_end";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:19:"Personalizar carto";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"Custom card";}}}s:8:"children";a:3:{i:0;s:6:"_start";i:1;s:27:"personaliteModules_tabStyle";i:2;s:4:"_end";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:32:"Personalizar carrinho de compras";i:2;i:1;}s:2:"en";a:1:{i:1;s:20:"Custom shopping cart";}}}s:8:"children";a:6:{i:0;s:6:"_start";i:1;s:29:"personaliteModules_tabCaption";i:2;s:30:"personaliteModules_tabPosition";i:3;s:27:"personaliteModules_tabStyle";i:4;s:29:"personaliteModules_tabEffects";i:5;s:4:"_end";}}a:1:{s:4:"html";s:279:"[list{]#r#n
      #r#n#r#n
      #r#nR$[$product_price]#r#n#r#n#r#n
      #r#n
      #r#n[}]";}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:33:"Personalizar lista de comentrios";i:2;i:1;}s:2:"en";a:1:{i:1;s:20:"Custom comments list";}}}s:8:"children";a:8:{i:0;s:6:"_start";i:1;s:29:"personaliteModules_tabCaption";i:2;s:30:"personaliteModules_tabPosition";i:3;s:27:"personaliteModules_tabStyle";i:4;s:26:"personaliteModules_tabList";i:5;s:29:"personaliteModules_tabDetails";i:6;s:29:"personaliteModules_tabEffects";i:7;s:4:"_end";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:32:"Personalizar formulrio comentar";i:2;i:1;}s:2:"en";a:1:{i:1;s:24:"Custom comment formulary";}}}s:8:"children";a:6:{i:0;s:6:"_start";i:1;s:29:"personaliteModules_tabCaption";i:2;s:30:"personaliteModules_tabPosition";i:3;s:27:"personaliteModules_tabStyle";i:4;s:31:"personaliteModules_tabFormulary";i:5;s:4:"_end";}}a:1:{s:8:"children";a:4:{i:0;s:6:"_start";i:1;s:12:"~formComment";i:2;s:7:"_submit";i:3;s:4:"_end";}}a:1:{s:8:"children";a:7:{i:0;s:6:"_start";i:1;s:9:"~formName";i:2;s:9:"~formMail";i:3;s:11:"~formGender";i:4;s:12:"~formComment";i:5;s:7:"_submit";i:6;s:4:"_end";}}a:2:{s:5:"flags";a:8:{s:4:"type";s:14:"textarea_small";s:6:"filter";s:4:"text";s:10:"field_name";s:7:"message";s:6:"target";s:12:"text/content";s:8:"required";i:1;s:12:"format_force";i:1;s:10:"html_force";i:1;s:15:"ecolabore_force";i:0;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"Comentrio";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Comment";}}}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:34:"Personalizar container do contedo";i:2;i:1;}s:2:"en";a:1:{i:1;s:24:"Custom content container";}}}s:8:"children";a:6:{i:0;s:6:"_start";i:1;s:29:"personaliteModules_tabCaption";i:2;s:30:"personaliteModules_tabPosition";i:3;s:27:"personaliteModules_tabStyle";i:4;s:29:"personaliteModules_tabDetails";i:5;s:4:"_end";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:29:"Personalizar exibio do post";i:2;i:1;}s:2:"en";a:1:{i:1;s:19:"Custom post display";}}}s:8:"children";a:3:{i:0;s:6:"_start";i:1;s:29:"personaliteModules_tabDetails";i:2;s:4:"_end";}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:3:{i:1;s:36:"Conversar com [text $friend_caption]";i:2;i:1;i:6;i:1;}s:2:"en";a:2:{i:1;s:32:"Chat with [text $friend_caption]";i:6;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:3:{i:1;s:30:"Sobre "[text $document.title]"";i:2;i:1;i:6;i:1;}s:2:"en";a:2:{i:1;s:30:"About "[text $document.title]"";i:6;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"O que isto?";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"What is it?";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Contexto";i:2;i:1;}s:2:"en";a:2:{i:1;s:7:"Context";i:2;i:1;}}}}a:3:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:7:"control";s:14:"modLayout_name";s:18:"dialog_tabsObjects";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:2:{s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:28:"Personalizar painel dinmico";i:2;i:1;}s:2:"en";a:1:{i:1;s:21:"Custom dinamic pannel";}}s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:28:"Personalizar painel dinmico";i:2;i:1;}s:2:"en";a:1:{i:1;s:21:"Custom dinamic pannel";}}}}a:2:{s:4:"text";a:2:{s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:15:"Painel dinmico";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Dinamic panel";}}s:11:"description";a:2:{s:2:"pt";a:2:{i:1;s:61:"Acione a ncora no canto desta caixa para configurar o painel";i:2;i:1;}s:2:"en";a:1:{i:1;s:65:"Click the anchor in the corner of this box to configure the panel";}}}s:5:"local";a:12:{s:12:"mod-position";s:6:"inline";s:5:"wd-sm";s:1:"6";s:5:"wd-lg";s:1:"6";s:12:"box-position";s:6:"inline";s:10:"box-scheme";s:4:"card";s:11:"box-padding";s:6:".25rem";s:11:"box-rounded";s:1:"0";s:10:"box-shadow";s:12:"border-doted";s:4:"list";s:7:"default";s:9:"list-type";s:6:"inline";s:10:"list-align";s:6:"center";s:7:"details";s:7:"title_3";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:28:"Personalizar painel dinmico";i:2;i:1;}s:2:"en";a:1:{i:1;s:21:"Custom dinamic pannel";}}}s:8:"children";a:9:{i:0;s:6:"_start";i:1;s:29:"personaliteModules_tabCaption";i:2;s:30:"personaliteModules_tabPosition";i:3;s:27:"personaliteModules_tabStyle";i:4;s:26:"personaliteModules_tabList";i:5;s:8:"~tabSort";i:6;s:29:"personaliteModules_tabDetails";i:7;s:29:"personaliteModules_tabEffects";i:8;s:4:"_end";}}a:3:{s:5:"flags";a:3:{s:6:"filter";s:6:"select";s:6:"target";s:20:"local/list_direction";s:10:"field_name";s:14:"list_direction";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Direo";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Direction";}}}s:8:"children";a:2:{i:0;s:17:"~listDirectionAsc";i:1;s:18:"~listDirectionDesc";}}a:2:{s:5:"flags";a:1:{s:5:"value";s:3:"asc";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"Ascendente";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Ascendant";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:4:"desc";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Descendente";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Descendant";}}}}a:3:{s:5:"flags";a:3:{s:6:"filter";s:6:"select";s:6:"target";s:17:"local/list_filter";s:10:"field_name";s:11:"list_filter";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"Filtrar elementos";i:2;i:1;}s:2:"en";a:1:{i:1;s:15:"Filter elements";}}}s:8:"children";a:3:{i:0;s:15:"~listFilterNone";i:1;s:21:"~listFilterNextEvents";i:2;s:20:"~listFilterSpotlight";}}a:2:{s:5:"flags";a:1:{s:5:"value";s:11:"next_events";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"Prximos eventos";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"Next events";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:0:"";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"(No filtrar)";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"(No filter)";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:9:"spotlight";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"Itens em destaque";i:2;i:1;}s:2:"en";a:1:{i:1;s:14:"Featured items";}}}}a:2:{s:5:"flags";a:4:{s:6:"filter";s:7:"integer";s:6:"target";s:14:"local/list_max";s:10:"field_name";s:8:"list_max";s:13:"default_value";i:5;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:22:"Quantidade (0 = todos)";i:2;i:1;}s:2:"en";a:1:{i:1;s:18:"Quantity (0 = all)";}}}}a:3:{s:5:"flags";a:4:{s:6:"filter";s:7:"integer";s:6:"target";s:17:"local/list_offset";s:10:"field_name";s:11:"list_offset";s:13:"default_value";i:0;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:18:"Correo de offset";i:2;i:1;}s:2:"en";a:1:{i:1;s:17:"Offset correction";}}}s:8:"children";a:9:{i:0;s:14:"~sortByCreated";i:1;s:14:"~sortByUpdated";i:2;s:11:"~sortByName";i:3;s:12:"~sortByIndex";i:4;s:13:"~sortShuffled";i:5;s:18:"~sortByLastComment";i:6;s:17:"~sortByEventStart";i:7;s:11:"~sortByHits";i:8;s:12:"~sortByValue";}}a:3:{s:5:"flags";a:3:{s:6:"filter";s:6:"select";s:6:"target";s:17:"local/list_update";s:10:"field_name";s:11:"list_update";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Atualizao";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Updating";}}}s:8:"children";a:6:{i:0;s:15:"~listUpdateAuto";i:1;s:15:"~listUpdateHits";i:2;s:15:"~listUpdateHour";i:3;s:14:"~listUpdateDay";i:4;s:15:"~listUpdateWeek";i:5;s:16:"~listUpdateMonth";}}a:2:{s:5:"flags";a:1:{s:5:"value";s:4:"auto";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"Automtica";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Automatic";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:3:"day";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"A cada dia";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"On each day";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:4:"hits";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"A cada visita";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"On each visit";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:4:"hour";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"A cada hora";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"On each hour";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:5:"month";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"A cada ms";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"On each month";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:4:"week";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"A cada semana";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"On each month";}}}}a:3:{s:5:"flags";a:3:{s:6:"filter";s:6:"select";s:6:"target";s:15:"local/list_sort";s:10:"field_name";s:9:"list_sort";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Ordenar por";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Sort by";}}}s:8:"children";a:9:{i:0;s:14:"~sortByCreated";i:1;s:14:"~sortByUpdated";i:2;s:11:"~sortByName";i:3;s:12:"~sortByIndex";i:4;s:13:"~sortShuffled";i:5;s:18:"~sortByLastComment";i:6;s:17:"~sortByEventStart";i:7;s:11:"~sortByHits";i:8;s:12:"~sortByValue";}}a:2:{s:5:"flags";a:1:{s:5:"value";s:7:"created";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:15:"Data de criao";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Creation date";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:11:"event_start";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"Incio do evento";i:2;i:1;}s:2:"en";a:1:{i:1;s:14:"Event starting";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:4:"hits";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:23:"Nmero de visualizaes";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Hits of views";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:5:"index";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"ndice manual";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Manual index";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:19:"comment_last_update";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"ltimo comentrio";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Last comment";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:4:"name";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:4:"Nome";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"Name";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:7:"updated";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:19:"Data de atualizao";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Updating date";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:5:"value";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Preo";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Pricing";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:7:"shuffle";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Aleatrio";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Shuffled";}}}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Ordenao";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Ordering";}}}s:8:"children";a:6:{i:0;s:5:"~sort";i:1;s:14:"~listDirection";i:2;s:8:"~listMax";i:3;s:11:"~listUpdate";i:4;s:11:"~listOffset";i:5;s:11:"~listFilter";}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:24:"Desativar edio on-line";i:2;i:1;}s:2:"en";a:1:{i:1;s:23:"Disable on-line edition";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:21:"Ativar edio on-line";i:2;i:1;}s:2:"en";a:1:{i:1;s:22:"Enable on-line edition";}}}}a:1:{s:4:"html";s:1074:"[cut:headerlinks]#r#n#r#n[/cut]#r#n[script]#r#nEcolaboreEditor = new EcolaboreEditorClass ();#r#n#r#ndocument.addEventListener ("keydown", EcolaboreEditor.eventKeyDown);#r#ndocument.addEventListener ("keyup", EcolaboreEditor.eventKeyUp);#r#n#r#nhumperstilshen.refresh = function ()#r#n{ // refresh#r#nEcolaboreEditor.eventSubmit();#r#n} // refresh#r#n[/script]#r#n
      #r#n
      #r#n[cut:editor_icon]#r#n#r#n#r#n[text:navigation_editor_flag_green]#r#n#r#n#r#n[/cut]#r#n[style]#r#n.editor-empty-field { display:inline-block; width:1em; height:1em; background-image:url("[shared:icons/editor/pen.png]"); background-repeat:no-repeat; background-size:1em 1em; }#r#n.editor-empty-field[]title]:after { display:inline-block; position:relative; padding-left:1em; content:"(" attr(title) ")"; opacity:.7; }#r#n[/style]#r#n";}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Documento";i:2;i:1;}s:2:"en";a:2:{i:1;s:8:"Document";i:2;i:1;}}}s:5:"local";a:9:{s:15:"caption-display";i:1;s:12:"mod-semantic";s:3:"nav";s:12:"mod-position";s:4:"left";s:10:"margin-top";s:4:"auto";s:12:"margin-right";s:4:"auto";s:13:"margin-bottom";s:4:"auto";s:11:"margin-left";s:4:"auto";s:4:"list";s:20:"menu_simple_vertical";s:7:"details";s:7:"caption";}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"Salvar alteraes";i:2;i:1;}s:2:"en";a:2:{i:1;s:12:"Save changes";i:2;i:1;}}}}a:3:{s:4:"html";s:609:"#r#n[style]#r#n#clayout_panel_main { right:2rem; }#r#n.ecl-editor-button { width:2em; height:2rem; }#r#n.editor-empty-field { display:inline-block; width:1em; height:1em; background-image:url("[shared:icons/editor/pen.svg]"); background-repeat:no-repeat; background-size:1em 1em; }#r#n/* .editor-empty-field[data-placeholder]:after { content:"(" attr(data-placeholder) ")"; opacity:.8; } */#r#n[/style]#r#n#r#n
      #r#n[text]#r#n[list{ loop{]#r#n#r#n[text]#r#n#r#n[}}]#r#n
      #r#n#r#n#r#n";s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Inserir";i:2;i:1;}s:2:"en";a:1:{i:1;s:6:"Insert";}}}s:8:"children";a:16:{i:0;s:9:"~editorH2";i:1;s:9:"~editorH3";i:2;s:9:"~editorH4";i:3;s:8:"~editorP";i:4;s:9:"~editorLO";i:5;s:9:"~editorLA";i:6;s:9:"~editorLU";i:7;s:9:"~editorHR";i:8;s:8:"~editorA";i:9;s:10:"~editorImg";i:10;s:10:"~editorBox";i:11;s:12:"~editorTable";i:12;s:12:"~editorVideo";i:13;s:12:"~editorAudio";i:14;s:11:"~editorFile";i:15;s:11:"~editorHtml";}}a:2:{s:5:"local";a:3:{s:11:"personalite";s:4:"link";s:6:"target";s:3:"new";s:4:"icon";s:12:"insert_a.svg";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Hyperlink";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Hyperlink";}}}}a:2:{s:5:"local";a:2:{s:11:"personalite";s:6:"object";s:6:"target";s:5:"audio";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"udio";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Audio";}}}}a:2:{s:5:"local";a:2:{s:11:"personalite";s:6:"extras";s:6:"target";s:3:"box";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"Caixa de destaque";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Spotlight box";}}}}a:2:{s:5:"local";a:2:{s:11:"personalite";s:6:"object";s:6:"target";s:4:"file";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Arquivo";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Arquivo";}}}}a:2:{s:5:"local";a:2:{s:3:"url";s:49:"javascript:EcolaboreEditor.insertParagraph (#sh1#s)";s:4:"icon";s:13:"insert_h1.svg";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Ttulo 1";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Header 1";}}}}a:2:{s:5:"local";a:2:{s:3:"url";s:49:"javascript:EcolaboreEditor.insertParagraph (#sh2#s)";s:4:"icon";s:13:"insert_h2.svg";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Ttulo 2";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Header 2";}}}}a:2:{s:5:"local";a:2:{s:3:"url";s:49:"javascript:EcolaboreEditor.insertParagraph (#sh3#s)";s:4:"icon";s:13:"insert_h3.svg";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Ttulo 3";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Header 3";}}}}a:2:{s:5:"local";a:2:{s:3:"url";s:49:"javascript:EcolaboreEditor.insertParagraph (#sh4#s)";s:4:"icon";s:13:"insert_h4.svg";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Ttulo 4";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Header 4";}}}}a:2:{s:5:"local";a:2:{s:3:"url";s:49:"javascript:EcolaboreEditor.insertParagraph (#sh5#s)";s:4:"icon";s:13:"insert_h5.svg";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Ttulo 5";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Header 5";}}}}a:2:{s:5:"local";a:2:{s:3:"url";s:49:"javascript:EcolaboreEditor.insertParagraph (#sh6#s)";s:4:"icon";s:13:"insert_h6.svg";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Ttulo 6";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Header 6";}}}}a:2:{s:5:"local";a:2:{s:3:"url";s:44:"javascript:EcolaboreEditor.insertSeparator()";s:4:"icon";s:13:"insert_hr.svg";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Separador";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Separator";}}}}a:2:{s:5:"local";a:2:{s:11:"personalite";s:6:"extras";s:6:"target";s:4:"html";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Cdigo HTML";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"HTML code";}}}}a:2:{s:5:"local";a:2:{s:11:"personalite";s:6:"object";s:6:"target";s:3:"img";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Figura";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Image";}}}}a:2:{s:5:"local";a:2:{s:3:"url";s:43:"javascript:EcolaboreEditor.insertList (#s@#s)";s:4:"icon";s:13:"insert_la.svg";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"Lista alfabtica";i:2;i:1;}s:2:"en";a:1:{i:1;s:15:"Alphabetic list";}}}}a:2:{s:5:"local";a:2:{s:3:"url";s:43:"javascript:EcolaboreEditor.insertList (#s#c#s)";s:4:"icon";s:13:"insert_lo.svg";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:14:"Lista numerada";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Numbered list";}}}}a:2:{s:5:"local";a:2:{s:3:"url";s:43:"javascript:EcolaboreEditor.insertList (#s*#s)";s:4:"icon";s:13:"insert_lu.svg";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:20:"Lista com marcadores";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Bulleted list";}}}}a:2:{s:5:"local";a:2:{s:3:"url";s:48:"javascript:EcolaboreEditor.insertParagraph (#sp#s)";s:4:"icon";s:12:"insert_p.svg";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Pargrafo";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Paragraph";}}}}a:2:{s:5:"local";a:2:{s:11:"personalite";s:5:"table";s:6:"target";s:5:"table";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Tabela";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Table";}}}}a:2:{s:5:"local";a:2:{s:11:"personalite";s:6:"object";s:6:"target";s:5:"video";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Vdeo";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Video";}}}}a:3:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Inserir";i:2;i:1;}s:2:"en";a:2:{i:1;s:6:"Insert";i:2;i:1;}}}s:5:"local";a:9:{s:15:"caption-display";i:1;s:12:"mod-semantic";s:3:"nav";s:12:"mod-position";s:4:"left";s:10:"margin-top";s:4:"auto";s:12:"margin-right";s:4:"auto";s:13:"margin-bottom";s:4:"auto";s:11:"margin-left";s:4:"auto";s:4:"list";s:20:"menu_simple_vertical";s:7:"details";s:7:"caption";}s:8:"children";a:16:{i:0;s:9:"~editorH2";i:1;s:9:"~editorH3";i:2;s:9:"~editorH4";i:3;s:8:"~editorP";i:4;s:9:"~editorLO";i:5;s:9:"~editorLA";i:6;s:9:"~editorLU";i:7;s:9:"~editorHR";i:8;s:8:"~editorA";i:9;s:10:"~editorImg";i:10;s:10:"~editorBox";i:11;s:12:"~editorTable";i:12;s:12:"~editorVideo";i:13;s:12:"~editorAudio";i:14;s:11:"~editorFile";i:15;s:11:"~editorHtml";}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"udio";i:2;i:1;}s:2:"en";a:2:{i:1;s:5:"Audio";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:14:"Caixa de texto";i:2;i:1;}s:2:"en";a:2:{i:1;s:8:"Text box";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Arquivo";i:2;i:1;}s:2:"en";a:2:{i:1;s:4:"File";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Insero HTML";i:2;i:1;}s:2:"en";a:2:{i:1;s:14:"HTML insertion";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Figura";i:2;i:1;}s:2:"en";a:2:{i:1;s:5:"Image";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"Objetos inseridos";i:2;i:1;}s:2:"en";a:2:{i:1;s:16:"Inserted objects";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"Figura do banner";i:2;i:1;}s:2:"en";a:2:{i:1;s:15:"Image of banner";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"da pgina";i:2;i:1;}s:2:"en";a:2:{i:1;s:7:"of page";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"do post";i:2;i:1;}s:2:"en";a:2:{i:1;s:7:"of post";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"da seo";i:2;i:1;}s:2:"en";a:2:{i:1;s:10:"of section";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Tabela";i:2;i:1;}s:2:"en";a:2:{i:1;s:5:"Table";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Vdeo";i:2;i:1;}s:2:"en";a:2:{i:1;s:5:"Video";i:2;i:1;}}}}a:3:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:7:"control";s:14:"modLayout_name";s:18:"dialog_tabsObjects";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:1:{s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:26:"Configuraes para arquivo";i:2;i:1;}s:2:"en";a:1:{i:1;s:23:"Configurations for file";}}}}a:2:{s:4:"text";a:2:{s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:15:"Inserir arquivo";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"Insert file";}}s:11:"description";a:2:{s:2:"pt";a:2:{i:1;s:62:"Acione a ncora no canto desta caixa para adicionar um arquivo";i:2;i:1;}s:2:"en";a:1:{i:1;s:56:"Click the anchor in the corner of this box to add a file";}}}s:5:"local";a:8:{s:12:"mod-position";s:6:"inline";s:12:"box-position";s:6:"inline";s:10:"box-scheme";s:6:"system";s:11:"box-padding";s:6:".25rem";s:11:"box-rounded";s:1:"0";s:10:"box-shadow";s:12:"border-doted";s:4:"list";s:7:"details";s:7:"details";s:7:"title_3";}}a:3:{s:5:"flags";a:1:{s:9:"multipart";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:26:"Configuraes para arquivo";i:2;i:1;}s:2:"en";a:1:{i:1;s:23:"Configurations for file";}}}s:8:"children";a:6:{i:0;s:6:"_start";i:1;s:8:"~tabFile";i:2;s:11:"~tabCaption";i:3;s:30:"personaliteModules_tabPosition";i:4;s:9:"~tabStyle";i:5;s:4:"_end";}}a:2:{s:5:"flags";a:4:{s:4:"type";s:14:"textarea_small";s:6:"filter";s:4:"text";s:10:"field_name";s:11:"description";s:6:"target";s:16:"text/description";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Descrio";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"Description";}}}}a:2:{s:5:"flags";a:2:{s:6:"filter";s:7:"modFile";s:10:"field_name";s:4:"file";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Arquivo (*.*)";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"File (*.*)";}}}}a:1:{s:5:"local";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Arquivo";i:2;i:1;}s:2:"en";a:2:{i:1;s:4:"File";i:2;i:1;}}s:4:"list";s:7:"details";s:7:"details";s:10:"media_file";}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Legenda";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Caption";}}}s:8:"children";a:3:{i:0;s:26:"personaliteModules_caption";i:1;s:33:"personaliteModules_captionDisplay";i:2;s:32:"personaliteModules_captionLegend";}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Arquivo";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"File";}}}s:8:"children";a:2:{i:0;s:9:"~editFile";i:1;s:16:"~editDescription";}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Estilo";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Style";}}}s:8:"children";a:4:{i:0;s:28:"personaliteModules_boxScheme";i:1;s:29:"personaliteModules_boxPadding";i:2;s:28:"personaliteModules_boxShadow";i:3;s:29:"personaliteModules_boxRounded";}}a:2:{s:5:"flags";a:2:{s:6:"filter";s:8:"file_big";s:10:"field_name";s:4:"file";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Arquivo (*.*)";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"File (*.*)";}}}}a:2:{s:4:"text";a:1:{s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:29:"Inserir informaes de rodap";i:2;i:1;}s:2:"en";a:1:{i:1;s:18:"Insert footer info";}}}s:5:"local";a:12:{s:12:"mod-position";s:6:"center";s:5:"wd-sm";s:2:"12";s:5:"wd-lg";s:2:"12";s:10:"box-scheme";s:4:"card";s:11:"box-padding";s:6:".25rem";s:11:"box-rounded";s:1:"0";s:10:"box-shadow";s:12:"border-doted";s:4:"list";s:7:"default";s:9:"list-type";s:6:"inline";s:10:"list-align";s:6:"center";s:7:"details";s:7:"title_3";s:24:"details-horizontal-align";s:6:"center";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:34:"Personalizar informaes de rodap";i:2;i:1;}s:2:"en";a:1:{i:1;s:18:"Custom footer info";}}}s:8:"children";a:6:{i:0;s:6:"_start";i:1;s:11:"~tabContent";i:2;s:29:"personaliteModules_tabCaption";i:3;s:30:"personaliteModules_tabPosition";i:4;s:27:"personaliteModules_tabStyle";i:5;s:4:"_end";}}a:2:{s:5:"flags";a:7:{s:4:"type";s:8:"textarea";s:6:"filter";s:4:"text";s:10:"field_name";s:7:"content";s:6:"target";s:12:"text/content";s:12:"format_force";i:1;s:10:"html_force";i:2;s:15:"ecolabore_force";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Contedo";i:2;i:1;}s:2:"en";a:2:{i:1;s:7:"Content";i:2;i:1;}}}}a:3:{s:5:"flags";a:2:{s:6:"filter";s:9:"formulary";s:6:"target";s:5:"table";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Contedo";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Content";}}}s:8:"children";a:1:{i:0;s:12:"~editContent";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:23:"Personalizar formulrio";i:2;i:1;}s:2:"en";a:1:{i:1;s:16:"Custom formulary";}}}s:8:"children";a:6:{i:0;s:6:"_start";i:1;s:29:"personaliteModules_tabCaption";i:2;s:30:"personaliteModules_tabPosition";i:3;s:27:"personaliteModules_tabStyle";i:4;s:31:"personaliteModules_tabFormulary";i:5;s:4:"_end";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:30:"Personalizar exibio de dados";i:2;i:1;}s:2:"en";a:1:{i:1;s:16:"Custom data view";}}}s:8:"children";a:6:{i:0;s:6:"_start";i:1;s:29:"personaliteModules_tabCaption";i:2;s:30:"personaliteModules_tabPosition";i:3;s:27:"personaliteModules_tabStyle";i:4;s:31:"personaliteModules_tabFormulary";i:5;s:4:"_end";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:29:"Personalizar grade de cartes";i:2;i:1;}s:2:"en";a:1:{i:1;s:17:"Custom cards grid";}}}s:8:"children";a:5:{i:0;s:6:"_start";i:1;s:30:"personaliteModules_tabPosition";i:2;s:27:"personaliteModules_tabStyle";i:3;s:26:"personaliteModules_tabList";i:4;s:4:"_end";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:32:"Personalizar contador de visitas";i:2;i:1;}s:2:"en";a:1:{i:1;s:19:"Custom hits counter";}}}s:8:"children";a:7:{i:0;s:6:"_start";i:1;s:29:"personaliteModules_tabCaption";i:2;s:30:"personaliteModules_tabPosition";i:3;s:27:"personaliteModules_tabStyle";i:4;s:29:"personaliteModules_tabDetails";i:5;s:29:"personaliteModules_tabEffects";i:6;s:4:"_end";}}a:3:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:7:"control";s:14:"modLayout_name";s:18:"dialog_tabsObjects";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:1:{s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:13:"Insero HTML";i:2;i:1;}s:2:"en";a:1:{i:1;s:14:"HTML insertion";}}}}a:2:{s:4:"text";a:2:{s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:12:"Inserir HTML";i:2;i:1;}s:2:"en";a:2:{i:1;s:11:"Insert HTML";i:2;i:1;}}s:11:"description";a:2:{s:2:"pt";a:1:{i:1;s:63:"Acione a ncora no canto desta caixa para adicionar cdigo HTML";}s:2:"en";a:1:{i:1;s:59:"Click the anchor in the corner of this box to add HTML code";}}}s:5:"local";a:10:{s:12:"mod-position";s:6:"inline";s:5:"wd-sm";s:1:"6";s:5:"wd-lg";s:1:"6";s:12:"box-position";s:6:"inline";s:10:"box-scheme";s:6:"system";s:11:"box-padding";s:6:".25rem";s:11:"box-rounded";s:1:"0";s:10:"box-shadow";s:12:"border-doted";s:4:"list";s:7:"details";s:7:"details";s:7:"title_3";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Insero HTML";i:2;i:1;}s:2:"en";a:1:{i:1;s:14:"HTML insertion";}}}s:8:"children";a:6:{i:0;s:6:"_start";i:1;s:8:"~tabHtml";i:2;s:11:"~tabCaption";i:3;s:30:"personaliteModules_tabPosition";i:4;s:27:"personaliteModules_tabStyle";i:5;s:4:"_end";}}a:2:{s:5:"flags";a:4:{s:4:"type";s:8:"textarea";s:6:"filter";s:4:"free";s:10:"field_name";s:4:"html";s:6:"target";s:10:"local/html";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:4:"HTML";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"HTML";}}}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Legenda";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Caption";}}}s:8:"children";a:3:{i:0;s:26:"personaliteModules_caption";i:1;s:33:"personaliteModules_captionDisplay";i:2;s:32:"personaliteModules_captionInline";}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:4:"HTML";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"HTML";}}}s:8:"children";a:1:{i:0;s:9:"~editHtml";}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:39:"Duende Humperstilshen chama sua ateno";i:2;i:1;}s:2:"en";a:2:{i:1;s:41:"Dwarf Humperstilshen calls your attemtion";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:37:"Duende Humperstilshen est aborrecido";i:2;i:1;}s:2:"en";a:2:{i:1;s:29:"Dwarf Humperstilshen is bored";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:21:"Duende Humperstilshen";i:2;i:1;}s:2:"en";a:2:{i:1;s:20:"Dwarf Humperstilshen";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:46:"Duende Humperstilshen encontrou um probleminha";i:2;i:1;}s:2:"en";a:2:{i:1;s:44:"Dwarf Humperstilshen founds a little problem";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:37:"Duende Humperstilshen est satisfeito";i:2;i:1;}s:2:"en";a:2:{i:1;s:33:"Dwarf Humperstilshen is satisfied";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:42:"Duende Humperstilshen est lhe perguntando";i:2;i:1;}s:2:"en";a:2:{i:1;s:34:"Dwarf Humperstilshen is asking you";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:33:"Duende Humperstilshen d uma dica";i:2;i:1;}s:2:"en";a:2:{i:1;s:32:"Dwarf Humperstilshen gives a tip";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:43:"Duende Humperstilshen lhe d as boas vindas";i:2;i:1;}s:2:"en";a:2:{i:1;s:33:"Dwarf Humperstilshen welcomes you";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:38:"Duende Humperstilshen est trabalhando";i:2;i:1;}s:2:"en";a:2:{i:1;s:31:"Dwarf Humperstilshen is working";i:2;i:1;}}}}a:2:{s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:20:"Manter-se conectado?";i:2;i:1;}s:2:"en";a:2:{i:1;s:15:"Keep connected?";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:20:"Manter-se conectado?";i:2;i:1;}s:2:"en";a:2:{i:1;s:15:"Keep connected?";i:2;i:1;}}s:7:"content";a:1:{s:2:"pt";a:5:{i:1;s:178:"#r#nSua sesso est prestes a expirar!#r#n#r#n#r#n#r#nPara manter-se conectado, acione o boto a seguir:#r#n#r#n#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}s:8:"children";a:4:{i:0;s:10:"_startView";i:1;s:10:"_separator";i:2;s:19:"~sessionCheckSubmit";i:3;s:8:"_endView";}}a:2:{s:5:"flags";a:1:{s:6:"filter";s:6:"submit";}s:8:"children";a:2:{i:0;s:26:"~sessionCheckSubmitConfirm";i:1;s:13:"~submitCancel";}}a:3:{s:5:"flags";a:2:{s:6:"filter";s:6:"submit";s:10:"field_name";s:4:"save";}s:5:"local";a:1:{s:7:"onclick";s:31:"humperstilshen.sessionRefresh()";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:19:"Manter-me conectado";i:2;i:1;}s:2:"en";a:1:{i:1;s:14:"Keep connected";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:29:"Exibir mensagem do assistente";i:2;i:1;}s:2:"en";a:2:{i:1;s:22:"Show assistant message";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:25:"Exibir dica do assistente";i:2;i:1;}s:2:"en";a:2:{i:1;s:18:"Show assistant tip";i:2;i:1;}}}}a:2:{s:5:"flags";a:4:{s:6:"filter";s:6:"submit";s:10:"field_name";s:5:"close";s:5:"reset";i:1;s:7:"caption";s:20:"labels/action/cancel";}s:5:"local";a:1:{s:7:"onclick";s:28:"humperstilshen.dialogClose()";}}a:1:{s:5:"flags";a:3:{s:6:"filter";s:6:"submit";s:10:"field_name";s:4:"save";s:7:"caption";s:21:"labels/action/confirm";}}a:2:{s:5:"flags";a:1:{s:6:"filter";s:6:"submit";}s:8:"children";a:2:{i:0;s:14:"~submitConfirm";i:1;s:13:"~submitCancel";}}a:3:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:7:"control";s:14:"modLayout_name";s:18:"dialog_tabsObjects";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:1:{s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:13:"Editar imagem";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Edit image";}}}}a:2:{s:4:"text";a:2:{s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:14:"Inserir figura";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Insert image";}}s:11:"description";a:2:{s:2:"pt";a:2:{i:1;s:62:"Acione a ncora no canto desta caixa para adicionar uma figura";i:2;i:1;}s:2:"en";a:1:{i:1;s:58:"Click the anchor in the corner of this box to add an image";}}}s:5:"local";a:10:{s:12:"mod-position";s:6:"inline";s:5:"wd-sm";s:1:"6";s:5:"wd-lg";s:1:"3";s:12:"box-position";s:6:"inline";s:10:"box-scheme";s:6:"system";s:11:"box-padding";s:6:".25rem";s:11:"box-rounded";s:1:"0";s:10:"box-shadow";s:12:"border-doted";s:4:"list";s:7:"details";s:7:"details";s:7:"title_3";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Editar imagem";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Edit image";}}}s:8:"children";a:8:{i:0;s:6:"_start";i:1;s:7:"~tabImg";i:2;s:11:"~tabCaption";i:3;s:30:"personaliteModules_tabPosition";i:4;s:9:"~tabStyle";i:5;s:11:"~tabFilters";i:6;s:29:"personaliteModules_tabEffects";i:7;s:4:"_end";}}a:2:{s:5:"flags";a:4:{s:4:"type";s:14:"textarea_small";s:6:"filter";s:4:"text";s:10:"field_name";s:11:"description";s:6:"target";s:16:"text/description";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Descrio";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"Description";}}}}a:3:{s:5:"flags";a:2:{s:6:"filter";s:6:"modImg";s:10:"field_name";s:3:"img";}s:5:"local";a:1:{s:6:"accept";s:7:"image/*";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:28:"Imagem (*.gif, *.jpg, *.png)";i:2;i:1;}s:2:"en";a:1:{i:1;s:27:"Image (*.gif, *.jpg, *.png)";}}}}a:2:{s:5:"flags";a:9:{s:4:"type";s:5:"range";s:6:"filter";s:7:"integer";s:10:"field_name";s:21:"img_filter_brightness";s:6:"target";s:27:"local/img-filter-brightness";s:9:"min_input";i:0;s:9:"max_input";i:200;s:4:"step";i:5;s:13:"default_value";i:100;s:19:"clear_default_value";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Brilho";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Brightness";}}}}a:2:{s:5:"flags";a:9:{s:4:"type";s:5:"range";s:6:"filter";s:7:"integer";s:10:"field_name";s:19:"img_filter_contrast";s:6:"target";s:25:"local/img-filter-contrast";s:9:"min_input";i:0;s:9:"max_input";i:200;s:4:"step";i:5;s:13:"default_value";i:100;s:19:"clear_default_value";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Contraste";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Contrast";}}}}a:2:{s:5:"flags";a:9:{s:4:"type";s:5:"range";s:6:"filter";s:7:"integer";s:10:"field_name";s:21:"img_filter_hui_rotate";s:6:"target";s:27:"local/img-filter-hue-rotate";s:9:"min_input";i:0;s:9:"max_input";i:360;s:4:"step";i:3;s:13:"default_value";i:0;s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:14:"Rotao de cor";i:2;i:1;}s:2:"en";a:1:{i:1;s:14:"Color rotation";}}}}a:2:{s:5:"flags";a:9:{s:4:"type";s:5:"range";s:6:"filter";s:7:"integer";s:10:"field_name";s:19:"img_filter_saturate";s:6:"target";s:25:"local/img-filter-saturate";s:9:"min_input";i:0;s:9:"max_input";i:200;s:4:"step";i:5;s:13:"default_value";i:100;s:19:"clear_default_value";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Saturao";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Saturate";}}}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Legenda";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Caption";}}}s:8:"children";a:3:{i:0;s:26:"personaliteModules_caption";i:1;s:33:"personaliteModules_captionDisplay";i:2;s:32:"personaliteModules_captionLegend";}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Filtros";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Filters";}}}s:8:"children";a:4:{i:0;s:20:"~imgFilterBrightness";i:1;s:18:"~imgFilterContrast";i:2;s:18:"~imgFilterSaturate";i:3;s:19:"~imgFilterHueRotate";}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Imagem";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Image";}}}s:8:"children";a:2:{i:0;s:8:"~editImg";i:1;s:16:"~editDescription";}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Estilo";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Style";}}}s:8:"children";a:4:{i:0;s:28:"personaliteModules_boxScheme";i:1;s:29:"personaliteModules_boxPadding";i:2;s:28:"personaliteModules_boxShadow";i:3;s:29:"personaliteModules_boxRounded";}}a:1:{s:4:"html";s:1992:"[cut:headerlinks]#r#n#r#n[/cut]#r#n[script]#r#n#r#ninstructor = new instructorClass("[$mod.name]");#r#ninstructor.captionPlay = "[text:action_play]";#r#ninstructor.captionPause = "[text:action_pause]";#r#ninstructor.captionRepeat = "[text:action_repeat]";#r#n[/script]#r#n[list{loop{]#r#n[script]#r#nmessage = instructor.messageAdd ("[$name]");#r#n[if($audio){]#r#nmessage.audioAdd ("[$audio]");#r#n[} if($instructor_autoplay){]#r#nmessage.autoplay = true;#r#n[}if($instructor_onload){]#r#nhumperstilshen.onLoad = function(){#r#ninstructor.open ("[$name]");#r#n}#r#n[}elseif($instructor_onalert){]#r#nhumperstilshen.onAlert = function(){#r#ninstructor.open ("[$name]");#r#n}#r#n[}elseif($instructor_onmenuopen){]#r#nhumperstilshen.onMenuOpen = function(){#r#ninstructor.open ("[$name]");#r#n}#r#n[}]#r#n[/script]#r#n[cut:instructor_icon]#r#n#r#n#r#n#r#n#r#n[/cut]#r#n#r#n#r#n#r#n#r#n[}}]#r#n";}a:2:{s:5:"local";a:1:{s:14:"instructor_img";s:33:"instructor/quality/instructor.jpg";}s:4:"text";a:1:{s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:124:"#r#nNo h instrues para a realizao desta tarefa.#r#n#r#nAo concluir, acione "Avanar" para seguirmos para a prxima tarefa.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:2:{s:5:"local";a:2:{s:5:"audio";s:40:"modInstructor/quality/00helloConnect.mp3";s:14:"instructor_img";s:33:"instructor/quality/instructor.jpg";}s:4:"text";a:1:{s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:161:"#r#nOl,#r#n#r#nNa ltima vez que nos encontramos, estvamos organizando o ambiente da qualidade.#r#n#r#nAcione "Continuar" para seguirmos ao ponto onde havamos parado.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:14:{i:0;s:21:"modInstructor_quality";i:1;s:12:"sectionAbout";i:2;s:13:"sectionBranch";i:3;s:14:"sectionMembers";i:4;s:12:"sectionAdmin";i:5;s:12:"sectionChart";i:6;s:19:"sectionChart_sector";i:7;s:19:"sectionChart_office";i:8;s:19:"sectionChart_member";i:9;s:10:"sectionDoc";i:10;s:18:"sectionDoc_version";i:11;s:17:"sectionDoc_folder";i:12;s:14:"sectionDoc_doc";i:13;s:12:"sectionAudit";}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Interface";i:2;i:1;}s:2:"en";a:2:{i:1;s:9:"Interface";i:2;i:1;}}}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:28:"Personalizar menu de idiomas";i:2;i:1;}s:2:"en";a:1:{i:1;s:21:"Custom languages menu";}}}s:8:"children";a:8:{i:0;s:6:"_start";i:1;s:29:"personaliteModules_tabCaption";i:2;s:30:"personaliteModules_tabPosition";i:3;s:27:"personaliteModules_tabStyle";i:4;s:26:"personaliteModules_tabList";i:5;s:29:"personaliteModules_tabDetails";i:6;s:29:"personaliteModules_tabEffects";i:7;s:4:"_end";}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:15:"Ocultar ncoras";i:2;i:1;}s:2:"en";a:2:{i:1;s:12:"Hide anchors";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:23:"Exibir todas as ncoras";i:2;i:1;}s:2:"en";a:2:{i:1;s:16:"Show all anchors";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:21:"Layout para impresso";i:2;i:1;}s:2:"en";a:2:{i:1;s:16:"Printable layout";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:30:"Personalizar lista desta seo";i:2;i:1;}s:2:"en";a:1:{i:1;s:27:"Custom list of this section";}}}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:30:"Personalizar lista desta seo";i:2;i:1;}s:2:"en";a:1:{i:1;s:27:"Custom list of this section";}}}s:8:"children";a:9:{i:0;s:6:"_start";i:1;s:29:"personaliteModules_tabCaption";i:2;s:30:"personaliteModules_tabPosition";i:3;s:27:"personaliteModules_tabStyle";i:4;s:26:"personaliteModules_tabList";i:5;s:8:"~tabSort";i:6;s:29:"personaliteModules_tabDetails";i:7;s:29:"personaliteModules_tabEffects";i:8;s:4:"_end";}}a:3:{s:5:"flags";a:3:{s:6:"filter";s:6:"select";s:6:"target";s:20:"local/list_direction";s:10:"field_name";s:14:"list_direction";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Direo";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Direction";}}}s:8:"children";a:2:{i:0;s:17:"~listDirectionAsc";i:1;s:18:"~listDirectionDesc";}}a:2:{s:5:"flags";a:1:{s:5:"value";s:3:"asc";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"Ascendente";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Ascendant";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:4:"desc";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Descendente";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Descendant";}}}}a:2:{s:5:"flags";a:4:{s:6:"filter";s:7:"integer";s:6:"target";s:14:"local/list_max";s:10:"field_name";s:8:"list_max";s:13:"default_value";i:0;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:28:"Itens por pgina (0 = todos)";i:2;i:1;}s:2:"en";a:1:{i:1;s:24:"Itens per page (0 = all)";}}}}a:3:{s:5:"flags";a:3:{s:6:"filter";s:6:"select";s:6:"target";s:15:"local/list_sort";s:10:"field_name";s:9:"list_sort";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Ordenar por";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Sort by";}}}s:8:"children";a:8:{i:0;s:14:"~sortByCreated";i:1;s:14:"~sortByUpdated";i:2;s:11:"~sortByName";i:3;s:12:"~sortByIndex";i:4;s:18:"~sortByLastComment";i:5;s:17:"~sortByEventStart";i:6;s:11:"~sortByHits";i:7;s:12:"~sortByValue";}}a:2:{s:5:"flags";a:1:{s:5:"value";s:7:"created";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:15:"Data de criao";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Creation date";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:11:"event_start";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"Incio do evento";i:2;i:1;}s:2:"en";a:1:{i:1;s:14:"Event starting";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:4:"hits";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:23:"Nmero de visualizaes";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Hits of views";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:5:"index";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"ndice manual";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Manual index";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:19:"comment_last_update";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"ltimo comentrio";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Last comment";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:4:"name";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:4:"Nome";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"Name";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:7:"updated";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:19:"Data de atualizao";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Updating date";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:5:"value";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Preo";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Pricing";}}}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Ordenao";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Sorting";}}}s:8:"children";a:3:{i:0;s:5:"~sort";i:1;s:14:"~listDirection";i:2;s:8:"~listMax";}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:5:"crash";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"Falha na conexo";i:2;i:1;}s:2:"en";a:1:{i:1;s:18:"Connection failure";}}s:7:"content";a:1:{s:2:"pt";a:3:{i:1;s:123:"#r#nNo foi possvel estabelecer uma conexo com seu navegador.#r#n#r#nVerifique se Cookies esto habilitados em seu navegador.#r#n";i:2;i:1;i:4;i:1;}}}}a:2:{s:5:"flags";a:1:{s:16:"audiodescription";s:14:"modLogin_error";}s:4:"text";a:1:{s:7:"content";a:2:{s:2:"pt";a:5:{i:1;s:90:"No foi possvel conectar com o nome e a senha informadas.#r#n#r#n[mod:login]#r#n[mod:welcome]#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}s:2:"en";a:5:{i:1;s:86:"Unable to connect with the informed name and password.#r#n#r#n[mod:login]#r#n[mod:welcome]#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:1:{i:1;s:9:"Visitante";}s:2:"en";a:2:{i:1;s:7:"Visitor";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:10:"field_name";s:5:"login";}s:8:"children";a:5:{i:0;s:6:"_start";i:1;s:10:"~loginName";i:2;s:14:"~loginPassword";i:3;s:12:"~loginSubmit";i:4;s:4:"_end";}}a:1:{s:5:"flags";a:3:{s:4:"type";s:10:"text_small";s:10:"field_name";s:4:"name";s:7:"caption";s:28:"labels/field/user_identifier";}}a:1:{s:5:"flags";a:3:{s:4:"type";s:13:"text_password";s:10:"field_name";s:8:"password";s:7:"caption";s:26:"labels/field/user_password";}}a:2:{s:5:"flags";a:3:{s:4:"type";s:6:"submit";s:6:"filter";s:6:"submit";s:10:"field_name";s:6:"submit";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Conectar-se";i:2;i:1;}s:2:"en";a:2:{i:1;s:7:"Connect";i:2;i:1;}}}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:30:"Personalizar menu de navegao";i:2;i:1;}s:2:"en";a:1:{i:1;s:22:"Custom navigation menu";}}}s:8:"children";a:9:{i:0;s:6:"_start";i:1;s:29:"personaliteModules_tabCaption";i:2;s:11:"~tabSpecial";i:3;s:30:"personaliteModules_tabPosition";i:4;s:27:"personaliteModules_tabStyle";i:5;s:26:"personaliteModules_tabList";i:6;s:29:"personaliteModules_tabDetails";i:7;s:29:"personaliteModules_tabEffects";i:8;s:4:"_end";}}a:2:{s:5:"flags";a:5:{s:4:"type";s:8:"checkbox";s:6:"filter";s:8:"checkbox";s:10:"field_name";s:12:"home_display";s:6:"target";s:18:"local/home_display";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:31:"Exibir link para pgina inicial";i:2;i:1;}s:2:"en";a:1:{i:1;s:30:"Display link for the home page";}}}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Especial";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Special";}}}s:8:"children";a:1:{i:0;s:19:"~specialHomeDisplay";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:27:"Personalizar menu de rodap";i:2;i:1;}s:2:"en";a:1:{i:1;s:18:"Custom footer menu";}}}s:8:"children";a:8:{i:0;s:6:"_start";i:1;s:29:"personaliteModules_tabCaption";i:2;s:30:"personaliteModules_tabPosition";i:3;s:27:"personaliteModules_tabStyle";i:4;s:26:"personaliteModules_tabList";i:5;s:29:"personaliteModules_tabDetails";i:6;s:29:"personaliteModules_tabEffects";i:7;s:4:"_end";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:27:"Personalizar menu principal";i:2;i:1;}s:2:"en";a:1:{i:1;s:16:"Custom main menu";}}}s:8:"children";a:8:{i:0;s:6:"_start";i:1;s:29:"personaliteModules_tabCaption";i:2;s:30:"personaliteModules_tabPosition";i:3;s:27:"personaliteModules_tabStyle";i:4;s:26:"personaliteModules_tabList";i:5;s:29:"personaliteModules_tabDetails";i:6;s:29:"personaliteModules_tabEffects";i:7;s:4:"_end";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:30:"Personalizar menu de paginao";i:2;i:1;}s:2:"en";a:1:{i:1;s:22:"Custom pagination menu";}}}s:8:"children";a:8:{i:0;s:6:"_start";i:1;s:29:"personaliteModules_tabCaption";i:2;s:30:"personaliteModules_tabPosition";i:3;s:27:"personaliteModules_tabStyle";i:4;s:26:"personaliteModules_tabList";i:5;s:29:"personaliteModules_tabDetails";i:6;s:29:"personaliteModules_tabEffects";i:7;s:4:"_end";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:30:"Personalizar caixa de pesquisa";i:2;i:1;}s:2:"en";a:1:{i:1;s:17:"Custom search box";}}}s:8:"children";a:5:{i:0;s:6:"_start";i:1;s:29:"personaliteModules_tabCaption";i:2;s:30:"personaliteModules_tabPosition";i:3;s:27:"personaliteModules_tabStyle";i:4;s:4:"_end";}}a:1:{s:8:"children";a:4:{i:0;s:6:"_start";i:1;s:24:"domainSearch_searchInput";i:2;s:25:"domainSearch_searchSubmit";i:3;s:4:"_end";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:32:"Personalizar opes de ordenao";i:2;i:1;}s:2:"en";a:1:{i:1;s:22:"Custom sorting options";}}}s:8:"children";a:6:{i:0;s:6:"_start";i:1;s:12:"~editOptions";i:2;s:29:"personaliteModules_tabCaption";i:3;s:30:"personaliteModules_tabPosition";i:4;s:27:"personaliteModules_tabStyle";i:5;s:4:"_end";}}a:4:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:7:"control";s:14:"modLayout_name";s:16:"modTable_content";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:1:{s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:13:"Editar tabela";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Edit table";}}}s:4:"html";s:4277:"#r#n[style]#r#n#cpanel_left { position:absolute; width:15em; top:4rem; right:auto; bottom:4em; left:0.5em; vertical-align:middle; }#r#n#cpanel_main { position:absolute; top:4rem; right:0.5em; bottom:4em; left:16em; overflow:auto; }#r#n#cpanel_bottom { position:absolute; top:auto; right:0.5em; bottom:0.5em; left:0.5em; height:3em; text-align:center; vertical-align:middle; }#r#n#cselect_tab { width:100%; }#r#n[/style]#r#n[script]#r#n#r#n// changes dialog tab#r#ntabOld = 2;#r#n#r#nfunction changeTab(){#r#nvar tabIndex = 2 + document.controls.select_tab.selectedIndex;#r#ndocument.getElementById(#stab_content_#s+tabOld).style.display = #snone#s;#r#ndocument.getElementById(#stab_content_#s+tabIndex).style.display = #sblock#s;#r#ntabOld = tabIndex;#r#n}#r#n#r#n// submit configurations#r#nfunction dialogOk(){#r#ndocument.controls.submit();#r#n}#r#n#r#n// Restore default configurations#r#nfunction dialogRestore(){#r#ndocument.controls.save.value = #srestore#s;#r#ndocument.controls.submit();#r#n}#r#n#r#n// closes dialog window#r#nfunction dialogClose(){#r#nwindow.close();#r#n}#r#n#r#ndocument.controls.select_tab.focus();#r#n[/script]#r#n#r#n#r#n
      #r#n[mod:title{ list{]#r#n[text $title]#r#n[}}]#r#n
      #r#n#r#n#r#n[mod:formulary{ list{]#r#n
      #r#n[next]#r#n#r#n#r#n
      #r#n
      #r#n#r#n#r#n
      #r#n#r#n#r#n#r#n
      #r#n#r#n[cut:tab_option]#r#n#r#n[/cut]#r#n#r#n
      #r#n[text]#r#n[script]#r#n#r#nfunction tableClass ()#r#n{ // tableClass#r#n#r#nthis.addCell = function (r, c)#r#n{ // addCell#r#nvar tr = document.getElementById (#srow_#s+r);#r#nvar td = document.createElement (#std#s);#r#nvar textarea = document.createElement (#stextarea#s);#r#n#r#ntextarea.setAttribute (#sid#s, #s[$name]_#s + r + #s_#s + c);#r#ntextarea.setAttribute (#sname#s, #s[$name]_#s + r + #s_#s + c);#r#ntd.appendChild (textarea);#r#ntr.appendChild (td);#r#n} // addCell#r#n#r#nthis.addCol = function ()#r#n{ // addCol#r#nvar maxCols = document.getElementById (#s[$name]_maxCols#s);#r#nvar maxRows = document.getElementById (#s[$name]_maxRows#s);#r#nvar c = maxCols.value;#r#nmaxCols.value ++;#r#n#r#nfor (var r = 0; r < maxRows.value; r++)#r#n{ // each row#r#nthis.addCell (r, c);#r#n} // each row#r#n} // addCol#r#n#r#nthis.addRow = function ()#r#n{ // addRow#r#nvar maxCols = document.getElementById (#s[$name]_maxCols#s);#r#nvar maxRows = document.getElementById (#s[$name]_maxRows#s);#r#nvar r = maxRows.value;#r#nmaxRows.value ++;#r#n#r#nvar tr = document.createElement (#str#s);#r#ntr.setAttribute (#sid#s, #srow_#s+r);#r#nvar table = document.getElementById (#s[$name]_table#s);#r#ntable.appendChild (tr);#r#n#r#nfor (var c = 0; c < maxCols.value; c++)#r#n{ // each row#r#nthis.addCell (r, c);#r#n} // each row#r#n} // addRow#r#n#r#n} // tableClass#r#n#r#nvar table = new tableClass();#r#n#r#n[/script]#r#nAdicionar coluna • #r#nAdicionar linha#r#n#r#n[script]#r#n#r#n// points to the html table#r#nvar tableName = #s[$name]#s;#r#n[/script]#r#n[list{ loop{]#r#n#r#n[list{ loop{]#r#n#r#n[}}]#r#n#r#n[}}]#r#n
      #r#n#r#n
      #r#n
      #r#n#r#n#r#n[next]#r#n[loop{#r#nif(!$last){#r#ncut:tab_option]#r#n#r#n[/cut]#r#n#r#n#r#n#r#n#r#n[}else{]#r#n[list{ loop{ ]#r#n#r#n[}}#r#n} // if#r#n}}]#r#n#r#n
      #r#n#r#n#r#n
      #r#n#r#n
      #r#n

      #r#n#r#n#r#n
      #r#n#r#n#r#n#r#n[}]#r#n";}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Editar tabela";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Edit table";}}}s:8:"children";a:7:{i:0;s:6:"_start";i:1;s:11:"~tabContent";i:2;s:11:"~tabCaption";i:3;s:30:"personaliteModules_tabPosition";i:4;s:27:"personaliteModules_tabStyle";i:5;s:13:"~tabApearance";i:6;s:4:"_end";}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:4:"list";s:6:"target";s:10:"local/list";s:10:"field_name";s:9:"list_type";s:13:"default_value";s:12:"table_simple";s:9:"list_type";s:5:"table";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"Modelo de tabela";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"Table model";}}}}a:1:{s:5:"local";a:1:{s:4:"list";s:12:"table_simple";}}a:2:{s:4:"text";a:2:{s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:14:"Inserir tabela";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Insert table";}}s:11:"description";a:2:{s:2:"pt";a:2:{i:1;s:62:"Acione a ncora no canto desta caixa para adicionar uma tabela";i:2;i:1;}s:2:"en";a:1:{i:1;s:57:"Click the anchor in the corner of this box to add a table";}}}s:5:"local";a:13:{s:12:"mod-position";s:6:"inline";s:5:"wd-sm";s:1:"6";s:5:"wd-lg";s:1:"6";s:12:"box-position";s:6:"inline";s:10:"box-scheme";s:4:"card";s:11:"box-padding";s:6:".25rem";s:11:"box-rounded";s:1:"0";s:10:"box-shadow";s:12:"border-doted";s:4:"list";s:7:"default";s:9:"list-type";s:6:"inline";s:10:"list-align";s:6:"center";s:7:"details";s:7:"title_3";s:24:"details-vertical-spacing";s:3:"100";}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Aparncia";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Apearance";}}}s:8:"children";a:1:{i:0;s:5:"~list";}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Legenda";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Caption";}}}s:8:"children";a:3:{i:0;s:30:"personaliteModules_captionEdit";i:1;s:33:"personaliteModules_captionDisplay";i:2;s:34:"personaliteModules_captionIsLegend";}}a:2:{s:5:"flags";a:3:{s:6:"filter";s:8:"modTable";s:10:"field_name";s:5:"table";s:6:"target";s:5:"table";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Contedo";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Content";}}}}a:4:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:7:"control";s:14:"modLayout_name";s:20:"modTable_new_content";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:1:{s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:14:"Inserir tabela";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Insert table";}}}s:4:"html";s:15:"[mod:formulary]";}a:1:{s:8:"children";a:6:{i:0;s:6:"_start";i:1;s:9:"~editCols";i:2;s:9:"~editRows";i:3;s:9:"~editList";i:4;s:11:"_saveCancel";i:5;s:4:"_end";}}a:2:{s:5:"flags";a:5:{s:4:"type";s:9:"text_tiny";s:6:"filter";s:7:"integer";s:6:"target";s:4:"cols";s:10:"field_name";s:4:"cols";s:13:"default_value";i:2;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Colunas";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"Cols";}}}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:4:"list";s:6:"target";s:10:"local/list";s:10:"field_name";s:9:"list_type";s:13:"default_value";s:12:"table_simple";s:9:"list_type";s:5:"table";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"Modelo de tabela";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"Table model";}}}}a:2:{s:5:"flags";a:5:{s:4:"type";s:9:"text_tiny";s:6:"filter";s:7:"integer";s:6:"target";s:4:"rows";s:10:"field_name";s:4:"rows";s:13:"default_value";i:2;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Linhas";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"Rows";}}}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:32:"Personalizar container do ttulo";i:2;i:1;}s:2:"en";a:1:{i:1;s:22:"Custom title container";}}}s:8:"children";a:5:{i:0;s:6:"_start";i:1;s:29:"personaliteModules_tabCaption";i:2;s:30:"personaliteModules_tabPosition";i:3;s:27:"personaliteModules_tabStyle";i:4;s:4:"_end";}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Ferramentas";i:2;i:1;}s:2:"en";a:2:{i:1;s:7:"Toolbox";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:3:{i:1;s:39:"Administrao do [text $system.caption]";i:2;i:1;i:6;i:1;}s:2:"en";a:3:{i:1;s:37:"[text $system.caption] administration";i:2;i:1;i:6;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Desconectar";i:2;i:1;}s:2:"en";a:2:{i:1;s:10:"Disconnect";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:3:{i:1;s:30:"Perfil de [text $user.caption]";i:2;i:1;i:6;i:1;}s:2:"en";a:3:{i:1;s:30:"[text $user.caption]#ss profile";i:2;i:1;i:6;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:4:{i:1;s:18:"Usuri[gender:o|a]";i:2;i:1;i:5;i:2;i:6;i:1;}s:2:"en";a:3:{i:1;s:4:"User";i:2;i:1;i:5;i:2;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Avisos";i:2;i:1;}s:2:"en";a:2:{i:1;s:6:"Alerts";i:2;i:1;}}}}a:3:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:4:{i:1;s:12:"Frase do dia";i:2;i:1;i:5;i:2;i:6;i:1;}s:2:"en";a:3:{i:1;s:16:"Quote of the day";i:2;i:1;i:5;i:2;}}}s:5:"local";a:2:{s:4:"list";s:7:"details";s:7:"details";s:7:"content";}s:6:"blocks";a:1:{s:19:"lists/quoteoftheday";a:1:{s:4:"html";s:78:"#r#n

      "[text $content]"

      #r#n

      ([text $author])

      #r#n";}}}a:1:{s:6:"quotes";a:289:{i:0;a:2:{i:0;s:178:"O sucesso nasce do querer, da determinao e persistncia em se chegar a um objetivo. Mesmo no atingindo o alvo, quem busca e vence obstculos, no mnimo far coisas admirveis.";i:1;s:15:"Jos de Alencar";}i:1;a:2:{i:0;s:36:"A persistncia o caminho do xito.";i:1;s:15:"Charles Chaplin";}i:2;a:2:{i:0;s:243:"Agir, eis a inteligncia verdadeira. Serei o que quiser. Mas tenho que querer o que for. O xito est em ter xito, e no em ter condies de xito. Condies de palcio tem qualquer terra larga, mas onde estar o palcio se no o fizerem ali?";i:1;s:15:"Fernando Pessoa";}i:3;a:2:{i:0;s:256:"Determinao, coragem e auto-confiana so fatores decisivos para o sucesso. Se estamos possudos por uma inabalvel determinao, conseguiremos super-los. Independentemente das circunstncias, devemos ser sempre humildes, recatados e despidos de orgulho.";i:1;s:10:"Dalai Lama";}i:4;a:2:{i:0;s:96:"A vitalidade demonstrada no apenas pela persistncia, mas pela capacidade de comear de novo.";i:1;s:19:"F. Scott Fitzgerald";}i:5;a:2:{i:0;s:93:"O homem no teria alcanado o possvel se, repetidas vezes, no tivesse tentado o impossvel.";i:1;s:9:"Max Weber";}i:6;a:2:{i:0;s:75:"S se pode alcanar um grande xito quando nos mantemos fiis a ns mesmos.";i:1;s:19:"Friedrich Nietzsche";}i:7;a:2:{i:0;s:121:"Todo mundo capaz de sentir os sofrimentos de um amigo. Ver com agrado os seus xitos exige uma natureza muito delicada.";i:1;s:11:"Oscar Wilde";}i:8;a:2:{i:0;s:169:"Lute com determinao, abrace a vida com paixo, perca com classe e vena com ousadia, porque o mundo pertence a quem se atreve e a vida muito para ser insignificante.";i:1;s:14:"Augusto Branco";}i:9;a:2:{i:0;s:137:"As nicas grandes companhias que conseguiro ter xito so aquelas que consideram os seus produtos obsoletos antes que os outros o faam.";i:1;s:10:"Bill Gates";}i:10;a:2:{i:0;s:92:"Talento dom, graa. E sucesso nada tem haver com sorte, mas com determinao e trabalho.";i:1;s:14:"Augusto Branco";}i:11;a:2:{i:0;s:89:"Para ter um negcio de sucesso, algum, algum dia, teve que tomar uma atitude de coragem.";i:1;s:13:"Peter Drucker";}i:12;a:2:{i:0;s:62:"Estar decidido, acima de qualquer coisa, o segredo do xito.";i:1;s:10:"Henry Ford";}i:13;a:2:{i:0;s:70:"Para obter xito no mundo temos de parecer loucos mas sermos espertos.";i:1;s:20:"Baro de Montesquieu";}i:14;a:2:{i:0;s:30:"A disciplina a me do xito.";i:1;s:7:"squilo";}i:15;a:2:{i:0;s:123:"A disciplina a alma de um exrcito; torna grandes os pequenos contingentes, proporciona xito aos fracos, e estima todos.";i:1;s:17:"George Washington";}i:16;a:2:{i:0;s:109:"O segredo do xito na vida de um homem est em preparar-se para aproveitar a ocasio quando ela se apresenta.";i:1;s:17:"Benjamin Disraeli";}i:17;a:2:{i:0;s:103:"O xito comea no exato momento em que o homem decide o que quer e comea a trabalhar para consegui-lo.";i:1;s:23:"Roberto Flvio C. Silva";}i:18;a:2:{i:0;s:94:"Persistncia a irm gmea da excelncia. Uma a me da qualidade, a outra a me do tempo.";i:1;s:14:"Marabel Morgan";}i:19;a:2:{i:0;s:104:"Suba o primeiro degrau com f. No necessrio que voc veja toda a escada. Apenas d o primeiro passo.";i:1;s:18:"Martin Luther King";}i:20;a:2:{i:0;s:57:"As pessoas no carecem de fora, carecem de determinao.";i:1;s:11:"Victor Hugo";}i:21;a:2:{i:0;s:61:"S existe um xito: a capacidade de levar a vida que se quer.";i:1;s:17:"Cristopher Morley";}i:22;a:2:{i:0;s:69:"Tudo deveria se tornar o mais simples possvel, mas no simplificado.";i:1;s:15:"Albert Einstein";}i:23;a:2:{i:0;s:106:"Comece fazendo o que necessrio, depois o que possvel, e de repente voc estar fazendo o impossvel.";i:1;s:22:"So Francisco de Assis";}i:24;a:2:{i:0;s:83:"O erro acontece de vrios modos, enquanto ser correto possvel apenas de um modo.";i:1;s:11:"Aristteles";}i:25;a:2:{i:0;s:35:"No possvel ser bom pela metade.";i:1;s:12:"Leon Tolsti";}i:26;a:2:{i:0;s:97:"Tudo o que um sonho precisa para ser realizado algum que acredite que ele possa ser realizado.";i:1;s:19:"Roberto Shinyashiki";}i:27;a:2:{i:0;s:53:"A impacincia um grande obstculo para o bom xito.";i:1;s:18:"Napoleo Bonaparte";}i:28;a:2:{i:0;s:48:"O xito fcil de obter. O difcil merec-lo.";i:1;s:12:"Albert Camus";}i:29;a:2:{i:0;s:63:"No procure ser um homem com xito, e sim um homem com valores.";i:1;s:15:"Albert Einstein";}i:30;a:2:{i:0;s:92:"O xito na vida no significa apenas ser bem sucedido, mas tambm sobrepor-se aos fracassos.";i:1;s:13:"Maxwell Maltz";}i:31;a:2:{i:0;s:223:"As pessoas que resolviam as coisas em geral tinham muita persistncia e um pouco de sorte. Se a gente persistisse o bastante, a sorte em geral chegava. Mas a maioria das pessoas no podia esperar a sorte, por isso desistia.";i:1;s:16:"Charles Bukowski";}i:32;a:2:{i:0;s:112:"A nossa maior glria no reside no fato de nunca cairmos, mas sim em levantarmo-nos sempre depois de cada queda.";i:1;s:16:"Oliver Goldsmith";}i:33;a:2:{i:0;s:68:"Transportai um punhado de terra todos os dias e fareis uma montanha.";i:1;s:8:"Confcio";}i:34;a:2:{i:0;s:134:"Seja como os pssaros que, ao pousarem um instante sobre ramos muito leves, sentem-nos ceder, mas cantam! Eles sabem que possuem asas.";i:1;s:11:"Victor Hugo";}i:35;a:2:{i:0;s:73:"A fora no provm da capacidade fsica. Provm de uma vontade indomvel.";i:1;s:14:"Mahatma Gandhi";}i:36;a:2:{i:0;s:60:"O nmero dos que nos invejam confirma as nossas capacidades.";i:1;s:11:"Oscar Wilde";}i:37;a:2:{i:0;s:115:"Quem sabe concentrar-se numa coisa e insistir nela como nico objetivo, obtm a capacidade de fazer qualquer coisa.";i:1;s:14:"Mahatma Gandhi";}i:38;a:2:{i:0;s:31:" capaz quem pensa que capaz.";i:1;s:4:"Buda";}i:39;a:2:{i:0;s:106:"Acredite em si prprio e chegar um dia em que os outros no tero outra escolha seno acreditar com voc.";i:1;s:14:"Cynthia Kersey";}i:40;a:2:{i:0;s:71:"Quer voc acredite que consiga fazer uma coisa ou no, voc est certo.";i:1;s:10:"Henry Ford";}i:41;a:2:{i:0;s:180:"Todos os dias Deus nos d um momento em que possvel mudar tudo que nos deixa infelizes. O instante mgico o momento em que um sim ou um no pode mudar toda a nossa existncia.";i:1;s:12:"Paulo Coelho";}i:42;a:2:{i:0;s:92:"Sempre que possvel, seja claro. Mas que sua clareza no seja o motivo para ferir os outros.";i:1;s:12:"Paulo Coelho";}i:43;a:2:{i:0;s:176:"Jamais desista das pessoas que ama. Jamais desista de ser feliz. Lute sempre pelos seus sonhos. Seja profundamente apaixonado pela vida. Pois a vida um espetculo imperdvel.";i:1;s:12:"Augusto Cury";}i:44;a:2:{i:0;s:96:"Maravilhas nunca faltaram ao mundo; o que sempre falta a capacidade de senti-las e admir-las.";i:1;s:14:"Mario Quintana";}i:45;a:2:{i:0;s:52:"Inteligncia a capacidade de se adaptar mudana.";i:1;s:15:"Stephen Hawking";}i:46;a:2:{i:0;s:105:"Motivao a arte de fazer as pessoas fazerem o que voc quer que elas faam porque elas o querem fazer.";i:1;s:17:"Dwight Eisenhower";}i:47;a:2:{i:0;s:70:"Tato a capacidade de se descrever os outros tal como eles se julgam.";i:1;s:15:"Abraham Lincoln";}i:48;a:2:{i:0;s:105:"A sabedoria dos homens proporcional no sua experincia mas sua capacidade de adquirir experincia.";i:1;s:19:"George Bernard Shaw";}i:49;a:2:{i:0;s:160:"A marca de uma inteligncia de primeira ordem a capacidade de ter duas ideias opostas presentes no esprito ao mesmo tempo e nem por isso deixar de funcionar.";i:1;s:19:"F. Scott Fitzgerald";}i:50;a:2:{i:0;s:73:"A genialidade a capacidade de realizar aquilo que existe no pensamento.";i:1;s:19:"F. Scott Fitzgerald";}i:51;a:2:{i:0;s:94:"Usa a capacidade que tens. A floresta ficaria mais silenciosa se s o melhor pssaro cantasse.";i:1;s:14:"Henry Van Dyke";}i:52;a:2:{i:0;s:64:"O amor a capacidade de perceber o semelhante no dessemelhante.";i:1;s:15:"Theodore Adorno";}i:53;a:2:{i:0;s:56:"Imagine uma nova histria para sua vida e acredite nela.";i:1;s:12:"Paulo Coelho";}i:54;a:2:{i:0;s:200:"Desconfie do destino e acredite em voc. Gaste mais horas realizando que sonhando, fazendo que planejando, vivendo que esperando porque, embora quem quase morre esteja vivo, quem quase vive j morreu.";i:1;s:14:"Sarah Westphal";}i:55;a:2:{i:0;s:105:"Alguns pensam que para se ser amigo basta quer-lo, como se para se estar so bastasse desejar a sade...";i:1;s:11:"Aristteles";}i:56;a:2:{i:0;s:60:"Querer vencer significa j ter percorrido metade do caminho.";i:1;s:10:"Paderewsky";}i:57;a:2:{i:0;s:62:"Felicidade no ter o que voc quer, querer o que voc tem.";i:1;s:15:"Spencer Johnson";}i:58;a:2:{i:0;s:96:"Voc tem que acordar cada manh com determinao se voc pretende ir para a cama com satisfao.";i:1;s:14:"George Lorimer";}i:59;a:2:{i:0;s:110:"Se A o sucesso, ento A igual a X mais Y mais Z. O trabalho X; Y o lazer; e Z manter a boca fechada.";i:1;s:15:"Albert Einstein";}i:60;a:2:{i:0;s:61:"O sucesso ir de fracasso em fracasso sem perder entusiasmo.";i:1;s:17:"Winston Churchill";}i:61;a:2:{i:0;s:219:"Viver ser outro. Nem sentir possvel se hoje se sente como ontem se sentiu: sentir hoje o mesmo que ontem no sentir - lembrar hoje o que se sentiu ontem, ser hoje o cadver vivo do que ontem foi a vida perdida.";i:1;s:15:"Fernando Pessoa";}i:62;a:2:{i:0;s:65:"A nica forma de chegar ao impossvel acreditar que possvel.";i:1;s:28:"Alice no Pas das Maravilhas";}i:63;a:2:{i:0;s:93:"No se pode ensinar nada a um homem; s possivel ajud-lo a encontrar a coisa dentro de si.";i:1;s:15:"Galileu Galilei";}i:64;a:2:{i:0;s:51:"S possvel ensinar uma criana a amar, amando-a.";i:1;s:13:"Johann Goethe";}i:65;a:2:{i:0;s:78:"Por sabedoria entendo a arte de tornar a vida mais agradvel e feliz possvel.";i:1;s:19:"Arthur Schopenhauer";}i:66;a:2:{i:0;s:78:"A um homem bom no possvel que ocorra nenhum mal, nem em vida nem em morte.";i:1;s:8:"Scrates";}i:67;a:2:{i:0;s:137:"O homem que empenha todo o seu trabalho e imaginao em oferecer por um dlar o mais possvel em vez de menos, est condenado ao sucesso.";i:1;s:10:"Henry Ford";}i:68;a:2:{i:0;s:196:"Sem amor por si mesmo, o amor pelos outros tambm no possvel. O dio por si mesmo exatamente idntico ao flagrante egosmo e, no final, conduz ao mesmo isolamento cruel e ao mesmo desespero.";i:1;s:13:"Hermann Hesse";}i:69;a:2:{i:0;s:83:" intil dizer estamos a fazer o possvel. Precisamos de fazer o que necessrio.";i:1;s:17:"Winston Churchill";}i:70;a:2:{i:0;s:100:" possvel mudar nossas vidas e a atitude daqueles que nos cercam simplesmente mudando a ns mesmos.";i:1;s:15:"Rudolf Dreikurs";}i:71;a:2:{i:0;s:58:"Para que resulte o possvel deve ser tentado o impossvel.";i:1;s:13:"Hermann Hesse";}i:72;a:2:{i:0;s:126:"Sem passar da porta de casa, possvel saber o que acontece no mundo... Quanto mais longe se busca o saber, menos se aprende.";i:1;s:7:"Lao-Ts";}i:73;a:2:{i:0;s:110:"Basta ajuizar bem para bem fazer, e julgar o melhor que nos seja possvel para fazermos tambm o nosso melhor.";i:1;s:14:"Ren Descartes";}i:74;a:2:{i:0;s:85:"Contra os ataques possvel nos defendermos: contra o elogio no se pode fazer nada.";i:1;s:13:"Sigmund Freud";}i:75;a:2:{i:0;s:70:"O que mais desespera no o impossvel. Mas o possvel no alcanado.";i:1;s:13:"Robert Mallet";}i:76;a:2:{i:0;s:65:"-nos possvel viver sozinhos, desde que seja espera de algum.";i:1;s:15:"Gilbert Cesbron";}i:77;a:2:{i:0;s:127:"Com leis ruins e funcionrios bons ainda possvel governar. Mas com funcionrios ruins as melhores leis no servem para nada.";i:1;s:17:"Otto von Bismarck";}i:78;a:2:{i:0;s:137:"Ama-se a vitria difcil, porque a derrota lhe preenchia quase todo o espao possvel. E foi com o que restava que se venceu em todo ele.";i:1;s:17:"Verglio Ferreira";}i:79;a:2:{i:0;s:105:"O sucesso um professor perverso. Ele seduz as pessoas inteligentes e as faz pensar que jamais vo cair.";i:1;s:10:"Bill Gates";}i:80;a:2:{i:0;s:239:"Os nossos pais amam-nos porque somos seus filhos, um fato inaltervel. Nos momentos de sucesso isso pode parecer irrelevante, mas nas ocasies de fracasso, oferecem um consolo e uma segurana que no se encontram em qualquer outro lugar.";i:1;s:16:"Bertrand Russell";}i:81;a:2:{i:0;s:59:"O termmetro do sucesso apenas a inveja dos descontentes.";i:1;s:13:"Salvador Dal";}i:82;a:2:{i:0;s:47:"O sucesso uma consequncia e no um objetivo.";i:1;s:16:"Gustave Flaubert";}i:83;a:2:{i:0;s:88:"Para ter sucesso neste mundo no basta ser estpido, preciso tambm ter boas maneiras.";i:1;s:8:"Voltaire";}i:84;a:2:{i:0;s:49:"O segredo do sucesso a constncia do propsito.";i:1;s:17:"Benjamin Disraeli";}i:85;a:2:{i:0;s:109:"Uma paixo forte por qualquer objetivo assegurar o sucesso, porque o desejo pelo objetivo mostrar os meios.";i:1;s:15:"William Hazlitt";}i:86;a:2:{i:0;s:101:"O sucesso torna as pessoas modestas, amigveis e tolerantes; o fracasso que as faz speras e ruins.";i:1;s:19:"W. Somerset Maugham";}i:87;a:2:{i:0;s:59:"Saber quando se deve esperar o grande segredo do sucesso.";i:1;s:14:"Xavier Maistre";}i:88;a:2:{i:0;s:56:"Levei vinte anos para fazer sucesso da noite para o dia.";i:1;s:12:"Eddie Cantor";}i:89;a:2:{i:0;s:88:"Tudo o que preciso na vida ignorncia e confiana; depois, o sucesso est garantido.";i:1;s:10:"Mark Twain";}i:90;a:2:{i:0;s:82:"Eu preferiria ser um fracasso em algo que amo do que um sucesso em algo que odeio.";i:1;s:12:"George Burns";}i:91;a:2:{i:0;s:103:"Que sua colheita seja abundante e eterna e o sorriso da felicidade e do sucesso enfeite os seus lbios.";i:1;s:14:"Lauro Trevisan";}i:92;a:2:{i:0;s:78:"A chave do sucesso da Sony e para tudo nos negcios ... no seguir os outros.";i:1;s:12:"Masura Ibuki";}i:93;a:2:{i:0;s:48:"O sucesso uma viagem, no um ponto de destino.";i:1;s:13:"Bem Sweetland";}i:94;a:2:{i:0;s:39:"O sucesso e o amor preferem o corajoso.";i:1;s:6:"Ovdio";}i:95;a:2:{i:0;s:66:"Recompense o sucesso e o fracasso igualmente - puna a inatividade.";i:1;s:12:"David Kelley";}i:96;a:2:{i:0;s:61:"Perseguir, sem cessar, uma meta: Este o segredo do sucesso.";i:1;s:12:"Anna Pavlova";}i:97;a:2:{i:0;s:83:"Voc nunca alcana o sucesso verdadeiro a menos que voc goste do que est fazendo.";i:1;s:13:"Dale Carnegie";}i:98;a:2:{i:0;s:116:"Eu sei o preo do sucesso: dedicao, trabalho duro, e uma incessante devoo s coisas que voc quer ver acontecer.";i:1;s:18:"Frank Lloyd Wright";}i:99;a:2:{i:0;s:86:"Um dos segredos do sucesso se recusar a deixar que reveses temporrios nos derrotem.";i:1;s:8:"Mary Kay";}i:100;a:2:{i:0;s:51:"O sucesso construdo de 99 por cento de fracasso.";i:1;s:14:"Soichiro Honda";}i:101;a:2:{i:0;s:58:"O sucesso encoraja-os: eles podem porque pensam que podem.";i:1;s:8:"Virglio";}i:102;a:2:{i:0;s:101:"Mesmo desacreditado e ignorado por todos, no posso desistir, pois para mim, vencer nunca desistir.";i:1;s:15:"Albert Einstein";}i:103;a:2:{i:0;s:75:"Coragem a resistncia ao medo, domnio do medo, e no a ausncia do medo.";i:1;s:10:"Mark Twain";}i:104;a:2:{i:0;s:90:"Um cavalo nunca corre to rpido quanto corre quando tem outros para acompanhar e superar.";i:1;s:6:"Ovdio";}i:105;a:2:{i:0;s:94:"O amor uma flor delicada, mas preciso ter coragem de ir colh-la beira de um precipcio.";i:1;s:8:"Stendhal";}i:106;a:2:{i:0;s:90:"Ser profundamente amado por algum nos d fora; amar algum profundamente nos d coragem.";i:1;s:7:"Lao-Ts";}i:107;a:2:{i:0;s:77:"A coragem a primeira das qualidades humanas porque garante todas as outras.";i:1;s:11:"Aristteles";}i:108;a:2:{i:0;s:55:"Saber o que correto e no o fazer falta de coragem.";i:1;s:8:"Confcio";}i:109;a:2:{i:0;s:102:"Quem perde seus bens perde muito; quem perde um amigo perde mais; mas quem perde a coragem perde tudo.";i:1;s:19:"Miguel de Cervantes";}i:110;a:2:{i:0;s:106:"Os homens semeiam na terra o que colhero na vida espiritual: os frutos da sua coragem ou da sua fraqueza.";i:1;s:12:"Allan Kardec";}i:111;a:2:{i:0;s:92:"Todos os homens tm medo. Quem no tem medo no normal; isso nada tem a ver com a coragem.";i:1;s:16:"Jean-Paul Sartre";}i:112;a:2:{i:0;s:119:"Voc ganha fora, coragem e confiana atravs de cada experincia em que voc realmente para e encara o medo de frente.";i:1;s:17:"Eleanor Roosevelt";}i:113;a:2:{i:0;s:78:" preciso impor a si mesmo algumas metas para se ter a coragem de alcan-las.";i:1;s:16:"Benito Mussolini";}i:114;a:2:{i:0;s:67:"A maior prova de coragem suportar as derrotas sem perder o nimo.";i:1;s:16:"Robert Ingersoll";}i:115;a:2:{i:0;s:47:"A coragem conduz s estrelas, e o medo morte.";i:1;s:6:"Sneca";}i:116;a:2:{i:0;s:59:"A bravura provm do sangue, a coragem provm do pensamento.";i:1;s:18:"Napoleo Bonaparte";}i:117;a:2:{i:0;s:90:"Frequentemente necessrio mais coragem para ousar fazer certo do que temer fazer errado.";i:1;s:15:"Abraham Lincoln";}i:118;a:2:{i:0;s:93:"Eu no tenho nenhuma coragem, mas procedo como se a tivesse, o que talvez venha dar no mesmo.";i:1;s:16:"Gustave Flaubert";}i:119;a:2:{i:0;s:275:"Um homem pode ser to grande quanto ele queira ser. Se voc acredita em si mesmo e tem coragem, determinao, dedicao, iniciativa competitiva e se voc est disposto a sacrificar as pequenas coisas da vida e pagar o preo pelas coisas que valem a pena, isso pode ser feito.";i:1;s:14:"Vince Lombardi";}i:120;a:2:{i:0;s:83:"A coragem significa um forte desejo de viver sob a forma de disposio para morrer.";i:1;s:16:"G. K. Chesterton";}i:121;a:2:{i:0;s:59:"Muitos talentos se perdem por falta de um pouco de coragem.";i:1;s:12:"Sydney Smith";}i:122;a:2:{i:0;s:77:"Quem tem coragem para enfrentar os perigos vence-os antes que eles o ameacem.";i:1;s:11:"Pblio Siro";}i:123;a:2:{i:0;s:76:"Pouco nos importa o xito. Trata-se de sermos grandes e no de o parecermos.";i:1;s:14:"Romain Rolland";}i:124;a:2:{i:0;s:118:"No um notvel talento o que se exige para assegurar o xito em qualquer empreendimento, mas sim um firme propsito.";i:1;s:15:"Thomas Atkinson";}i:125;a:2:{i:0;s:113:"No existe comparao entre aquilo que perdido por no se obter xito e aquilo que perdido por no se tentar.";i:1;s:13:"Francis Bacon";}i:126;a:2:{i:0;s:45:"A vida maravilhosa se no se tem medo dela.";i:1;s:15:"Charles Chaplin";}i:127;a:2:{i:0;s:81:"H noites que eu no posso dormir de remorso por tudo o que eu deixei de cometer.";i:1;s:14:"Mario Quintana";}i:128;a:2:{i:0;s:203:"Daqui a vinte anos voc estar mais arrependido pelas coisas que no fez do que pelas que fez. Ento solte suas amarras. Afaste-se do porto seguro. Agarre o vento em suas velas. Explore. Sonhe. Descubra.";i:1;s:19:"H. Jackson Brown Jr";}i:129;a:2:{i:0;s:184:"Concedei-nos Senhor, serenidade necessria para aceitar as coisas que no podemos modificar, coragem para modificar aquelas que podemos, e sabedoria para distinguirmos umas das outras.";i:1;s:16:"Reinhold Niebuhr";}i:130;a:2:{i:0;s:48:"O medo tem alguma utilidade, mas a covardia no.";i:1;s:14:"Mahatma Gandhi";}i:131;a:2:{i:0;s:111:"Combater e morrer, pela morte derrotar a morte, mas temer e morrer fazer-lhe homenagem com um sopro servil.";i:1;s:19:"William Shakespeare";}i:132;a:2:{i:0;s:129:"Tente a sua sorte! A vida feita de oportunidades. O homem que vai mais longe quase sempre aquele que tem coragem de arriscar.";i:1;s:13:"Dale Carnegie";}i:133;a:2:{i:0;s:131:" a esta fora que mantm sempre a opinio justa e legtima sobre o que necessrio temer e no temer, que chamo e defino coragem.";i:1;s:6:"Plato";}i:134;a:2:{i:0;s:62:"Acredite que voc pode, assim voc j est no meio do caminho.";i:1;s:18:"Theodore Roosevelt";}i:135;a:2:{i:0;s:67:"Acredite, existem pessoas que no procuram beleza, mas sim corao.";i:1;s:6:"Cazuza";}i:136;a:2:{i:0;s:50:"Est bem que voc acredite em Deus. Mas vai armado";i:1;s:16:"Millr Fernandes";}i:137;a:2:{i:0;s:97:"A felicidade no se resume na ausncia de problemas, mas sim na sua capacidade de lidar com eles.";i:1;s:15:"Albert Einstein";}i:138;a:2:{i:0;s:143:"Todo mundo um gnio. Mas, se voc julgar um peixe por sua capacidade de subir em rvores, vai perder sua vida acreditando que ele estpido.";i:1;s:15:"Albert Einstein";}i:139;a:2:{i:0;s:106:"Quando voc tem a capacidade de no falar, no ligar e no se importar, est aprendendo o que ser forte.";i:1;s:12:"Renato Russo";}i:140;a:2:{i:0;s:133:"Quando eu perder a capacidade de indignar-me ante a hipocrisia e as injustias deste mundo, enterre-me: por certo que j estou morto.";i:1;s:14:"Augusto Branco";}i:141;a:2:{i:0;s:94:"A soma de barulho que uma pessoa pode suportar est na razo inversa de sua capacidade mental.";i:1;s:19:"Arthur Schopenhauer";}i:142;a:2:{i:0;s:104:"Ele tem mulheres mais bonitas e o que tenho de melhor ele nem tem muita capacidade mental pra valorizar.";i:1;s:15:"Martha Medeiros";}i:143;a:2:{i:0;s:152:"Nossa fora maior no est na capacidade de pensar, mas em algo mais poderoso: o poder de controlar e direcionar nossos pensamentos para onde quisermos.";i:1;s:13:"Napoleon Hill";}i:144;a:2:{i:0;s:118:"A liberdade a capacidade do homem de assumir seu prprio desenvolvimento. nossa capacidade de moldar a ns mesmos.";i:1;s:9:"Rollo May";}i:145;a:2:{i:0;s:75:"O insucesso apenas uma oportunidade para recomear com mais inteligncia.";i:1;s:10:"Henry Ford";}i:146;a:2:{i:0;s:65:"O futuro pertence queles que acreditam na beleza de seus sonhos.";i:1;s:17:"Eleanor Roosevelt";}i:147;a:2:{i:0;s:51:"Querer a verdade confessar-se incapaz de a criar.";i:1;s:19:"Friedrich Nietzsche";}i:148;a:2:{i:0;s:199:" preciso querer ser feliz e contribuir para isso. Se ficarmos na posio do espectador impassvel, deixando para a felicidade apenas a entrada livre e as portas abertas, ser a tristeza que entrar.";i:1;s:22:"mile-Auguste Chartier";}i:149;a:2:{i:0;s:75:"Uma coisa querer aprender. Outra querer garantias de que no vai errar.";i:1;s:26:"Geraldo Eustquio de Souza";}i:150;a:2:{i:0;s:52:"A vida vai ficando cada vez mais dura perto do topo.";i:1;s:19:"Friedrich Nietzsche";}i:151;a:2:{i:0;s:78:"O descontentamento o primeiro passo na evoluo de um homem ou de uma nao.";i:1;s:11:"Oscar Wilde";}i:152;a:2:{i:0;s:57:" necessrio ter o caos c dentro para gerar uma estrela.";i:1;s:19:"Friedrich Nietzsche";}i:153;a:2:{i:0;s:124:"Se vives de acordo com as leis da natureza, nunca sers pobre; se vives de acordo com as opinies alheias, nunca sers rico.";i:1;s:6:"Sneca";}i:154;a:2:{i:0;s:103:"Eu acredito demais na sorte. E tenho constatado que, quanto mais duro eu trabalho, mais sorte eu tenho.";i:1;s:11:"Coleman Cox";}i:155;a:2:{i:0;s:90:"Cada hora de tempo perdida na mocidade uma possibilidade a menos nos sucessos do futuro.";i:1;s:18:"Napoleo Bonaparte";}i:156;a:2:{i:0;s:83:"Quanto mais um homem se aproxima de suas metas, tanto mais crescem as dificuldades.";i:1;s:13:"Johann Goethe";}i:157;a:2:{i:0;s:79:"O importante para uma pessoa no so os seus sucessos mas sim quanto os deseja.";i:1;s:13:"Khalil Gibran";}i:158;a:2:{i:0;s:102:"No devemos ter medo das novas idias! Elas podem significar a diferena entre o triunfo e o fracasso.";i:1;s:13:"Napoleon Hill";}i:159;a:2:{i:0;s:65:"Sonhe, Lute, Conquiste, Tudo possvel, Voc nasceu para Vencer.";i:1;s:12:"Andy Orlando";}i:160;a:2:{i:0;s:60:"Amar querer estar perto, se longe; e mais perto, se perto.";i:1;s:18:"Vinicius de Moraes";}i:161;a:2:{i:0;s:39:"Tudo aliado do homem que sabe querer.";i:1;s:16:"Machado de Assis";}i:162;a:2:{i:0;s:275:"Seja voc quem for, seja qual for a posio social que voc tenha na vida, a mais alta ou a mais baixa, tenha sempre como meta muita fora, muita determinao e sempre faa tudo com muito amor e com muita f em Deus, que um dia voc chega l. De alguma maneira voc chega l.";i:1;s:12:"Ayrton Senna";}i:163;a:2:{i:0;s:137:"A causa da derrota no est nos obstculos ou no rigor das circunstncias, est na falta de determinao e desistncia da prpria pessoa.";i:1;s:4:"Buda";}i:164;a:2:{i:0;s:31:"Mudar difcil mas possvel.";i:1;s:12:"Paulo Freire";}i:165;a:2:{i:0;s:162:"Muitas pessoas pensam que a felicidade somente ser possvel depois de alcanar algo, mas a verdade que deixar para ser feliz amanh uma forma de ser infeliz.";i:1;s:19:"Roberto Shinyashiki";}i:166;a:2:{i:0;s:169:"Torne o resto da sua vida to significativo quanto possvel. Consiste apenas em agir levando os outros em considerao. Assim, encontrar paz e felicidade para si mesmo.";i:1;s:10:"Dalai Lama";}i:167;a:2:{i:0;s:127:"No possvel destruir o passado para reconstruir o presente, mas possvel reconstruir o presente para reescrever o passado.";i:1;s:12:"Augusto Cury";}i:168;a:2:{i:0;s:275:"No precisamos de mais dinheiro, no precisamos de mais sucesso ou fama, no precisamos do corpo perfeito, nem mesmo do parceiro perfeito. Agora mesmo, neste momento exato, dispomos da mente, que todo o equipamento bsico de que precisamos para alcanar a plena felicidade.";i:1;s:10:"Dalai Lama";}i:169;a:2:{i:0;s:191:"Para se ter sucesso, necessrio amar de verdade o que se faz. Caso contrrio, levando em conta apenas o lado racional, voc simplesmente desiste. o que acontece com a maioria das pessoas.";i:1;s:10:"Steve Jobs";}i:170;a:2:{i:0;s:82:"O nico modo de escapar da corrupo causada pelo sucesso continuar trabalhando.";i:1;s:15:"Albert Einstein";}i:171;a:2:{i:0;s:56:"O segredo do sucesso saber algo que ningum mais sabe.";i:1;s:11:"Aristteles";}i:172;a:2:{i:0;s:86:"O mais importante ingrediente na frmula do sucesso saber como lidar com as pessoas.";i:1;s:18:"Theodore Roosevelt";}i:173;a:2:{i:0;s:106:"Um homem um sucesso se pula da cama de manh e vai dormir noite, e, nesse meio tempo, faz o que gosta.";i:1;s:9:"Bob Dylan";}i:174;a:2:{i:0;s:81:"O sucesso no a chave para a felicidade. A felicidade a chave para o sucesso.";i:1;s:17:"Albert Schweitzer";}i:175;a:2:{i:0;s:75:"Lembra-te de que falando ou silenciando, sempre possvel fazer algum bem.";i:1;s:12:"Chico Xavier";}i:176;a:2:{i:0;s:220:"Mesmo que tenham cometidos erros gravssimos no passado, possvel que essas pessoas se recuperem e evoluam de modo surpreendente, bastando que encontrem ambiente favorvel e, no sorriso das pessoas, uma segunda chance.";i:1;s:14:"Augusto Branco";}i:177;a:2:{i:0;s:254:"Tente uma, duas, trs vezes e se possvel tente a quarta, a quinta e quantas vezes for necessrio. S no desista nas primeiras tentativas, a persistncia amiga da conquista. Se voc quer chegar a onde a maioria no chega, faa o que a maioria no faz.";i:1;s:10:"Bill Gates";}i:178;a:2:{i:0;s:99:"Lutei para escapar da infncia o mais cedo possvel. E assim que consegui, voltei correndo pra ela.";i:1;s:12:"Orson Welles";}i:179;a:2:{i:0;s:44:"No saber o que torna nossa vida possvel.";i:1;s:8:"Lya Luft";}i:180;a:2:{i:0;s:54:"Seja gentil quando for possvel.... Sempre possvel.";i:1;s:10:"Dalai Lama";}i:181;a:2:{i:0;s:187:"A escolha possvel, em certo sentido, porm o que no possvel no escolher. Eu posso sempre escolher, mas devo estar ciente de que, se no escolher, assim mesmo estarei escolhendo.";i:1;s:16:"Jean-Paul Sartre";}i:182;a:2:{i:0;s:193:"Sbio o ser humano que tem coragem de ir diante do espelho da sua alma para reconhecer seus erros e fracassos e utiliz-los para plantar as mais belas sementes no terreno de sua inteligncia.";i:1;s:12:"Augusto Cury";}i:183;a:2:{i:0;s:185:"Quando algum encontra seu caminho precisa ter coragem suficiente para dar passos errados. As decepes, as derrotas, o desnimo so ferramentas que Deus utiliza para mostrar a estrada.";i:1;s:12:"Paulo Coelho";}i:184;a:2:{i:0;s:97:"O mundo est nas mos daqueles que tm a coragem de sonhar e correr o risco de viver seus sonhos.";i:1;s:12:"Paulo Coelho";}i:185;a:2:{i:0;s:227:"Desenvolver fora, coragem e paz interior demanda tempo. No espere resultados rpidos e imediatos sob o pretexto de que decidiu mudar. Cada ao que voc executa permite que essa deciso se torne efetiva dentro de seu corao.";i:1;s:10:"Dalai Lama";}i:186;a:2:{i:0;s:91:"O homem que tem coragem de desperdiar uma hora do seu tempo no descobriu o valor da vida.";i:1;s:14:"Charles Darwin";}i:187;a:2:{i:0;s:144:"A esperana tem duas filhas lindas, a indignao e a coragem; a indignao nos ensina a no aceitar as coisas como esto; a coragem, a mud-las.";i:1;s:15:"Santo Agostinho";}i:188;a:2:{i:0;s:229:"Em minhas preces de todo dia, sempre peo coragem e pacincia. Coragem para continuar superando as dificuldades do caminho naqueles que no me compreendem. E pacincia para no me entregar ao desnimo diante das minhas fraquezas!";i:1;s:12:"Chico Xavier";}i:189;a:2:{i:0;s:185:"Assumir nossos erros exige muita coragem em um mundo que parece feito de pessoas que sempre ganham todas... Assumir nossa ignorncia exige muita humildade nesse mundo de quem sabe tudo.";i:1;s:19:"Roberto Shinyashiki";}i:190;a:2:{i:0;s:91:"A verdadeira coragem ir atrs de seu sonho mesmo quando todos dizem que ele impossvel.";i:1;s:13:"Cora Coralina";}i:191;a:2:{i:0;s:113:"Assumir a responsabilidade por nossos atos, com coragem e disposio, nos coloca a favor da vida e ela nos apia.";i:1;s:16:"Zbia Gasparetto";}i:192;a:2:{i:0;s:72:"Devemos gerar coragem igual ao tamanho das dificuldades que enfrentamos.";i:1;s:10:"Dalai Lama";}i:193;a:2:{i:0;s:90:"A coragem a primeira das qualidades humanas, porque a qualidade que garante as demais.";i:1;s:17:"Winston Churchill";}i:194;a:2:{i:0;s:96:" preciso coragem para levantar-se e falar, mas tambm preciso coragem para sentar-se e ouvir.";i:1;s:17:"Winston Churchill";}i:195;a:2:{i:0;s:98:"Todo mundo gostaria de se mudar para um lugar mgico. Mas so poucos os que tm coragem de tentar.";i:1;s:11:"Rubem Alves";}i:196;a:2:{i:0;s:153:"Aprendi que a coragem no a ausncia do medo, mas o triunfo sobre ele. O homem corajoso no aquele que no sente medo, mas o que conquista esse medo.";i:1;s:14:"Nelson Mandela";}i:197;a:2:{i:0;s:52:"Tem direito de criticar o que tem coragem de ajudar.";i:1;s:15:"Abraham Lincoln";}i:198;a:2:{i:0;s:175:"Tenha coragem para as grandes adversidades da vida e pacincia para as pequenas, e quando tiver cumprido laboriosamente sua tarefa diria v dormir em paz. Deus est acordado.";i:1;s:11:"Victor Hugo";}i:199;a:2:{i:0;s:264:"No negue, aparea. Seja forte. Porque preciso coragem para se arriscar num futuro incerto. No posso esperar. Tenho tudo pronto dentro de mim e uma alma que s sabe viver presentes. Sem esperas, sem amarras, sem receios, sem cobertas, sem sentido, sem passados.";i:1;s:19:"Caio Fernando Abreu";}i:200;a:2:{i:0;s:70:"Guarde seus medos para si mesmo; com os outros, compartilhe a coragem.";i:1;s:16:"Robert Stevenson";}i:201;a:2:{i:0;s:79:"A vida para quem topa qualquer parada. No para quem para em qualquer topada.";i:1;s:10:"Bob Marley";}i:202;a:2:{i:0;s:116:"Constru amigos, enfrentei derrotas, venci obstculos, bati na porta da vida e disse-lhe: No tenho medo de viv-la.";i:1;s:12:"Augusto Cury";}i:203;a:2:{i:0;s:150:"Os dois testes mais duros no caminho espiritual so a pacincia para esperar o momento certo e a coragem de no nos decepcionar com o que encontramos.";i:1;s:12:"Paulo Coelho";}i:204;a:2:{i:0;s:232:"No deixe o barulho da opinio dos outros abafar sua voz interior. E mais importante, tenha a coragem de seguir seu corao e sua intuio. Eles de alguma forma j sabem o que voc realmente quer se tornar. Tudo o mais secundrio.";i:1;s:10:"Steve Jobs";}i:205;a:2:{i:0;s:73:"Um covarde incapaz de demonstrar amor. Isso privilgio dos corajosos.";i:1;s:14:"Mahatma Gandhi";}i:206;a:2:{i:0;s:106:"Evite desencorajar-se: mantenha ocupaes e faa do otimismo a maneira de viver. Isso restaura a f em si.";i:1;s:12:"Lucille Ball";}i:207;a:2:{i:0;s:228:"Para cultivar a sabedoria, preciso fora interior. Sem crescimento interno, difcil conquistar a autoconfiana e a coragem necessrias. Sem elas, nossa vida se complica. O impossvel torna-se possvel com a fora de vontade.";i:1;s:10:"Dalai Lama";}i:208;a:2:{i:0;s:94:"Viver enfrentar desafios. Quem nunca enfrentou desafios, apenas passou pela vida, no viveu.";i:1;s:14:"Augusto Branco";}i:209;a:2:{i:0;s:137:"Que as outras pessoas e o medo nunca te venam. Seja apenas tu a derrotar a ti mesmo, pela graa de teres superado todos os teus limites!";i:1;s:14:"Augusto Branco";}i:210;a:2:{i:0;s:220:"O Condor uma ave que desde seu nascimento est destinado a alcanar as maiores altitudes, mas jamais conseguir isso se enquanto ainda jovem e frgil no tiver a coragem para lanar-se ao espao e alar o primeiro vo.";i:1;s:14:"Augusto Branco";}i:211;a:2:{i:0;s:138:"Ame, acredite, pense, grite, sonhe, conquiste, lute, batalhe, tenha fora, tenha foco, tenha f. Sorria e agradea a Deus por mais um dia.";i:1;s:13:"Bruna Martins";}i:212;a:2:{i:0;s:175:"Amar algum viver o exerccio de no querer fazer do outro o que a gente gostaria que ele fosse. A experincia de amar e ser amado acima de tudo a experincia do respeito.";i:1;s:19:"Padre Fbio de Melo";}i:213;a:2:{i:0;s:89:"O segredo da felicidade no fazer sempre o que se quer, mas querer sempre o que se faz.";i:1;s:12:"Leon Tolsti";}i:214;a:2:{i:0;s:133:"A vida me emociona o tempo todo mas se eu ficar chorando, quem vai pagar minhas contas e me querer cheia de olheiras? Ento eu corro.";i:1;s:13:"Tati Bernardi";}i:215;a:2:{i:0;s:38:" preciso, antes de mais nada, querer.";i:1;s:10:"Amyr Klink";}i:216;a:2:{i:0;s:110:"No existe nada de mais esterilizante do que a perfeio de no se querer nada alm do que est nossa volta.";i:1;s:19:"Caio Fernando Abreu";}i:217;a:2:{i:0;s:116:"Talvez no cheguei aonde planejei ir. Mas cheguei sem querer aonde meu corao queria chegar, sem que eu o soubesse.";i:1;s:11:"Rubem Alves";}i:218;a:2:{i:0;s:137:"Mesmo sem querer a vida te ensina: que voc se importar com as pessoas no motivo suficiente para que elas tambm se importem com voc.";i:1;s:14:"Pequena Sereia";}i:219;a:2:{i:0;s:65:"Assim que voc para de querer alguma coisa, voc consegue aquilo.";i:1;s:11:"Andy Warhol";}i:220;a:2:{i:0;s:97:"A ambio louvvel quando acompanhada pelo desejo e pela capacidade de fazer felizes os outros.";i:1;s:12:"Paul Holbach";}i:221;a:2:{i:0;s:88:"A disciplina a chama refinadora atravs da qual o talento se transforma em capacidade.";i:1;s:9:"Roy Smith";}i:222;a:2:{i:0;s:47:"A pureza a capacidade de contemplar a mcula.";i:1;s:11:"Simone Weil";}i:223;a:2:{i:0;s:191:"A vergonha a preciosssima capacidade do homem de relacionar os seus comportamentos com as exigncias daquela suprema conscincia que nos foi deixada de herana pela histria da humanidade.";i:1;s:28:"Mikhail Saltykov-Stcherdrine";}i:224;a:2:{i:0;s:188:"A criatividade de uma nao est ligada capacidade de pensar e teorizar, o que requer uma boa educao e, da, partir para o inventar e, depois, ir at as ltimas conseqncias no fazer.";i:1;s:23:"Cludio de Moura Castro";}i:225;a:2:{i:0;s:109:"Por mais que voc batalhe e vena com esforo, se voc no conseguiu com honestidade voc no conseguiu nada.";i:1;s:17:"Claudiney Ribeiro";}i:226;a:2:{i:0;s:50:"A disciplina a parte mais importante do sucesso.";i:1;s:13:"Truman Capote";}i:227;a:2:{i:0;s:140:"O sucesso resulta de cem pequenas coisas feitas de forma um pouco melhor. O insucesso, de cem pequenas coisas feitas de forma um pouco pior.";i:1;s:15:"Henry Kissinger";}i:228;a:2:{i:0;s:32:"A disciplina a me do sucesso.";i:1;s:7:"squilo";}i:229;a:2:{i:0;s:93:"Sucesso encontrar aquilo que se intenciona ser e depois fazer o que necessrio para isso.";i:1;s:8:"Epicteto";}i:230;a:2:{i:0;s:191:"Ningum nunca conseguiu alcanar sucesso simplesmente fazendo o que lhe solicitado. a quantidade e a excelncia do que est alm do solicitado que determina a grandeza da distino final.";i:1;s:21:"Charles Kendall Adams";}i:231;a:2:{i:0;s:92:"O sucesso na vida vem no de ter as cartas certas, mas de jogar com as erradas corretamente.";i:1;s:11:"Joshua Dool";}i:232;a:2:{i:0;s:83:"O sucesso a soma de pequenos esforos - repetidos dia sim, e no outro dia tambm.";i:1;s:14:"Robert Collier";}i:233;a:2:{i:0;s:100:"Despertar interesse e inflamar o entusiasmo o caminho certo para ensinar facilmente e com sucesso.";i:1;s:13:"Tryon Edwards";}i:234;a:2:{i:0;s:45:"Sempre mire no objetivo e esquea do sucesso.";i:1;s:11:"Helen Hayes";}i:235;a:2:{i:0;s:66:"Eu no podia esperar pelo sucesso, ento eu fui em frente sem ele.";i:1;s:16:"Jonathan Winters";}i:236;a:2:{i:0;s:113:"A maioria das pessoas pensa no sucesso e no fracasso como opostos, mas eles so ambos produtos do mesmo processo.";i:1;s:14:"Roger Von Oech";}i:237;a:2:{i:0;s:114:"Uma chave importante para o sucesso a auto-confiana. Uma chave importante para a auto-confiana a preparao.";i:1;s:11:"Arthur Ashe";}i:238;a:2:{i:0;s:79:"A alegria que se tem em pensar e aprender faz-nos pensar e aprender ainda mais.";i:1;s:11:"Aristteles";}i:239;a:2:{i:0;s:61:"No corrigir nossas falhas o mesmo que cometer novos erros.";i:1;s:8:"Confcio";}i:240;a:2:{i:0;s:63:"Mantenha-se forte diante do fracasso e livre diante do sucesso.";i:1;s:12:"Jean Cocteau";}i:241;a:2:{i:0;s:58:"O sucesso da vida significa unicamente insistncia e ao.";i:1;s:19:"Ralph Waldo Emerson";}i:242;a:2:{i:0;s:136:"O primeiro passo em direo ao sucesso dado quando voc se recusa a ser prisioneiro do ambiente no qual voc inicialmente se encontra.";i:1;s:10:"Mark Caine";}i:243;a:2:{i:0;s:131:"Realizao parece estar conectada com ao. Homens e mulheres de sucesso mantm-se em movimento. Eles cometem erros, mas no param.";i:1;s:13:"Conrad Hilton";}i:244;a:2:{i:0;s:62:"O sucesso frequentemente est a apenas uma idia de distncia.";i:1;s:10:"Frank Tyge";}i:245;a:2:{i:0;s:39:"As falhas so o combustvel do sucesso.";i:1;s:8:"Ishikawa";}i:246;a:2:{i:0;s:129:"O sucesso uma jornada, no um destino. A ao geralmente mais importante que o resultado. Nem todo mundo pode ser o Nmero 1.";i:1;s:11:"Arthur Ashe";}i:247;a:2:{i:0;s:231:"Sucesso significa realizar seus prprios sonhos, cantar sua prpria cano, danar sua prpria dana, criar do seu corao e apreciar a jornada, confiando que no importa o que acontea, tudo ficar bem. Criar sua prpria aventura!";i:1;s:15:"Elana Lindquist";}i:248;a:2:{i:0;s:79:"A diferena entre o impossvel e o possvel est na determinao de uma pessoa.";i:1;s:13:"Tommy Lasorda";}i:249;a:2:{i:0;s:59:"Toma coragem: o pice da desventura no durar muito tempo.";i:1;s:7:"squilo";}i:250;a:2:{i:0;s:42:"A grande coragem, para mim, a prudncia.";i:1;s:9:"Eurpedes";}i:251;a:2:{i:0;s:46:"A nica coragem falarmos na primeira pessoa.";i:1;s:13:"Arthur Adamov";}i:252;a:2:{i:0;s:77:"A coragem consiste em escolher o mal menor, por mais que ele ainda possa ser.";i:1;s:8:"Stendhal";}i:253;a:2:{i:0;s:55:"A coragem a escada por onde sobem as outras virtudes.";i:1;s:10:"Clara Luce";}i:254;a:2:{i:0;s:35:" preciso coragem para ter talento.";i:1;s:13:"Georg Brandes";}i:255;a:2:{i:0;s:102:"Temos a capacidade e a responsabilidade de escolher se nossas aes seguem um caminho virtuoso ou no.";i:1;s:10:"Dalai Lama";}i:256;a:2:{i:0;s:254:"Prepare-se para sua capacidade de amar, para sua melhor beleza, para fazer cada vez melhor o que voc sabe, seja quindim, amor, coleo de selos, estudos transcendentais, harpa, pipoca, pensamento de Kant, numismtica, sorriso, sinuca ou cirurgia ocular.";i:1;s:15:"Artur da Tvola";}i:257;a:2:{i:0;s:197:"Em uma poca de mudanas drsticas, so os que tm capacidade de aprender que herdam o futuro. Quanto aos que j aprenderam, estes descobrem-se equipados para viver em um mundo que no existe mais.";i:1;s:11:"Eric Hoffer";}i:258;a:2:{i:0;s:144:"Quero viver enquanto estiver acesa, em mim, a capacidade de me comover diante da beleza. Essa capacidade de sentir alegria a essncia da vida.";i:1;s:11:"Rubem Alves";}i:259;a:2:{i:0;s:92:"O sucesso parece ser, em grande parte, uma questo de persistir quando os outros desistiram.";i:1;s:15:"William Feather";}i:260;a:2:{i:0;s:94:"Se tantas pessoas dizem que voc capaz, ento acredite, lute e conquiste pois voc consegue.";i:1;s:31:"Odenir Alves de Oliveira Jnior";}i:261;a:2:{i:0;s:48:"Querer ser do seu tempo j estar ultrapassado.";i:1;s:14:"Eugne Ionesco";}i:262;a:2:{i:0;s:111:"Suportar sem se submeter, aceitar sem se humilhar, entregar-se sem renunciar a si mesmo e possvel dignidade.";i:1;s:8:"Lya Luft";}i:263;a:2:{i:0;s:207:"Uma vida sem pensamento totalmente possvel, mas ela fracassa em fazer desabrochar sua prpria essncia ela no apenas sem sentido; ela no totalmente viva. Homens que no pensam so como sonmbulos.";i:1;s:13:"Hannah Arendt";}i:264;a:2:{i:0;s:105:"Aprendi que possvel seguir em frente, no importa quanto parea impossvel. Com o tempo a dor diminui.";i:1;s:12:"Querido John";}i:265;a:2:{i:0;s:184:"Num tempo em que voc no pode dizer tudo o que quer, continue trabalhando, faa o possvel para que, no dia em que haja condies reais de voc dizer o que quer, saiba faz-lo melhor.";i:1;s:14:"Bertolt Brecht";}i:266;a:2:{i:0;s:129:"No possvel dar um passo adiante com os olhos fitos no passado, mas olhando ao horizonte, e com os ps bem firmes no presente!";i:1;s:14:"Augusto Branco";}i:267;a:2:{i:0;s:131:"Algum precisou acreditar que era possvel alcanar as estrelas para que o homem parasse de andar em carroas e chegasse ao espao.";i:1;s:14:"Augusto Branco";}i:268;a:2:{i:0;s:28:"Tudo possvel ao que crer.";i:1;s:12:"Jesus Cristo";}i:269;a:2:{i:0;s:152:"Porque, na vida real, o amor precisa ser possvel. Mesmo que no haja uma retribuio imediata, o amor s consegue sobreviver quando existe a esperana.";i:1;s:12:"Paulo Coelho";}i:270;a:2:{i:0;s:89:"Voc s conhece uma pessoa depois de uma briga. S ento possvel julgar o seu carter.";i:1;s:10:"Anne Frank";}i:271;a:2:{i:0;s:92:"Decida o que quer. Acredite que pode t-lo. Acredite que o merece e acredite que possvel!";i:1;s:15:"Livro O Segredo";}i:272;a:2:{i:0;s:180:"O segredo do sucesso aprender como usar a dor e o prazer, em vez de deixar que usem voc. Se fizer isso, estar no controle de sua vida. Se no fizer, a vida que controla voc.";i:1;s:15:"Anthony Robbins";}i:273;a:2:{i:0;s:42:"O sucesso sempre foi a criao da ousadia.";i:1;s:8:"Voltaire";}i:274;a:2:{i:0;s:62:"Obstinao o caminho mais curto para voc atingir o sucesso!";i:1;s:15:"Charles Chaplin";}i:275;a:2:{i:0;s:154:"O sucesso depende da energia do ato, da energia da crena de que se triunfar e da crena de que se est na verdade, que assim se verifica por si prpria.";i:1;s:13:"William James";}i:276;a:2:{i:0;s:61:"O sucesso no vale nada se no temos algum para partilh-lo.";i:1;s:15:"Anthony Robbins";}i:277;a:2:{i:0;s:128:"O sucesso acompanha quem assume a responsabilidade por si prprio, quem faz a prpria vida - quem no espera, mas faz acontecer.";i:1;s:14:"Augusto Branco";}i:278;a:2:{i:0;s:85:"Projetos conjuntos tm mais chance de sucesso quando se beneficiam de ambos os lados.";i:1;s:9:"Eurpedes";}i:279;a:2:{i:0;s:58:"S no Dicionrio que o trabalho vem depois do sucesso...";i:1;s:15:"Albert Einstein";}i:280;a:2:{i:0;s:86:"A verdadeira felicidade e sucesso consiste em gastar nossas energias com um propsito.";i:1;s:14:"William Cowper";}i:281;a:2:{i:0;s:147:"Muitos podero obter sucesso na vida, mas a verdadeira felicidade s ser conhecida por aqueles que possuem Graa, Determinao, Paixo e Esprito!";i:1;s:14:"Augusto Branco";}i:282;a:2:{i:0;s:181:"Chame o sucesso para fazer parte de sua vida. Acredite no seu potencial criador, seja inovador, treine sua mente para vencer, estipule metas e, principalmente, lute por seus ideais.";i:1;s:12:"Flvio Souza";}i:283;a:2:{i:0;s:196:"Faa sua histria, acredite nela, tenha f e coragem para fazer de seus sonhos a realidade, busque o prximo, pois os sonhos e as histrias precisam de uma eternidade de seres para deixarmos real.";i:1;s:15:"Alexandra Guiso";}i:284;a:2:{i:0;s:135:"Quero ter duendes a meu redor, porque sou corajoso. A coragem que afugenta os fantasmas cria seus prprios duendes: a coragem quer rir.";i:1;s:19:"Friedrich Nietzsche";}i:285;a:2:{i:0;s:101:"A verdadeira coragem consiste apenas em no nos importarmos com a opinio dos outros. Mas como custa!";i:1;s:14:"Mario Quintana";}i:286;a:2:{i:0;s:223:"A coragem da vida uma magnfica mistura de triunfo e tragdia. O homem faz o que deve fazer apesar das consequncias pessoais - apesar dos obstculos, dos perigos e das presses - esse o fundamento de toda a moralidade.";i:1;s:15:"John F. Kennedy";}i:287;a:2:{i:0;s:155:"Os ideais que iluminaram meu caminho, e que, de tempos em tempos me do nova coragem para enfrentar a vida com alegria so a bondade, a beleza e a verdade";i:1;s:15:"Albert Einstein";}i:288;a:2:{i:0;s:94:"Quem for feliz, torne tambm feliz os outros. Quem tem coragem e f nunca perecer na misria.";i:1;s:10:"Anne Frank";}}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:12:"Bem-vindo(a)";i:2;i:1;}s:2:"en";a:2:{i:1;s:7:"Welcome";i:2;i:1;}}}s:5:"local";a:9:{s:15:"caption-display";i:0;s:12:"mod-position";s:4:"left";s:10:"margin-top";s:4:"auto";s:12:"margin-right";s:4:"auto";s:13:"margin-bottom";s:4:"auto";s:11:"margin-left";s:4:"auto";s:4:"list";s:7:"default";s:9:"list-type";s:6:"inline";s:7:"details";s:14:"button_caption";}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:15:"Redefinir senha";i:2;i:1;}s:2:"en";a:1:{i:1;s:15:"Change password";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:14:"Dados pessoais";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Personal data";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"Meu perfil";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"My profile";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:3:{i:1;s:31:"Turbinado pelo Portal Ecolabore";i:2;i:1;i:6;i:1;}s:2:"en";a:3:{i:1;s:27:"Powered by Ecolabore Portal";i:2;i:1;i:6;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:3:{i:1;s:23:"Voltar pgina inicial";i:2;i:1;i:5;i:2;}s:2:"en";a:2:{i:1;s:17:"Back to home page";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:3:{i:1;s:15:"Sobre este site";i:2;i:1;i:5;i:2;}s:2:"en";a:2:{i:1;s:15:"About this site";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:4:{i:1;s:28:"Sobre [text $system.caption]";i:2;i:1;i:5;i:2;i:6;i:1;}s:2:"en";a:3:{i:1;s:28:"About [text $system.caption]";i:2;i:1;i:6;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:3:{i:1;s:19:"Esqueci minha senha";i:2;i:1;i:5;i:2;}s:2:"en";a:2:{i:1;s:21:"Forgot your password?";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:3:{i:1;s:23:"Poltica de privacidade";i:2;i:1;i:5;i:2;}s:2:"en";a:2:{i:1;s:14:"Privacy policy";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:3:{i:1;s:8:"Usurios";i:2;i:1;i:5;i:2;}s:2:"en";a:2:{i:1;s:5:"Users";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:3:{i:1;s:14:"Reportar abuso";i:2;i:1;i:5;i:2;}s:2:"en";a:2:{i:1;s:12:"Abuse report";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:3:{i:1;s:17:"Termos de servio";i:2;i:1;i:5;i:2;}s:2:"en";a:2:{i:1;s:13:"Service terms";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:3:{i:1;s:11:"Cadastre-se";i:2;i:1;i:5;i:2;}s:2:"en";a:2:{i:1;s:9:"Subscribe";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:12:"Bem-vindo(a)";i:2;i:1;}s:2:"en";a:2:{i:1;s:7:"Welcome";i:2;i:1;}}}}a:3:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:7:"control";s:14:"modLayout_name";s:18:"dialog_tabsObjects";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:1:{s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:24:"Configuraes para vdeo";i:2;i:1;}s:2:"en";a:1:{i:1;s:24:"Configurations for video";}}}}a:2:{s:4:"text";a:2:{s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:13:"Inserir vdeo";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Insert video";}}s:11:"description";a:2:{s:2:"pt";a:2:{i:1;s:60:"Acione a ncora no canto desta caixa para adicionar um vdeo";i:2;i:1;}s:2:"en";a:1:{i:1;s:57:"Click the anchor in the corner of this box to add a video";}}}s:5:"local";a:13:{s:12:"mod-position";s:6:"inline";s:5:"wd-sm";s:1:"6";s:5:"wd-lg";s:1:"6";s:12:"box-position";s:6:"inline";s:10:"box-scheme";s:4:"card";s:11:"box-padding";s:6:".25rem";s:11:"box-rounded";s:1:"0";s:10:"box-shadow";s:12:"border-doted";s:4:"list";s:7:"default";s:9:"list-type";s:6:"inline";s:10:"list-align";s:6:"center";s:7:"details";s:7:"title_3";s:24:"details-vertical-spacing";s:3:"100";}}a:3:{s:5:"flags";a:1:{s:9:"multipart";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:24:"Configuraes para vdeo";i:2;i:1;}s:2:"en";a:1:{i:1;s:24:"Configurations for video";}}}s:8:"children";a:6:{i:0;s:6:"_start";i:1;s:9:"~tabVideo";i:2;s:11:"~tabCaption";i:3;s:30:"personaliteModules_tabPosition";i:4;s:9:"~tabStyle";i:5;s:4:"_end";}}a:2:{s:5:"flags";a:4:{s:4:"type";s:14:"textarea_small";s:6:"filter";s:4:"text";s:10:"field_name";s:11:"description";s:6:"target";s:16:"text/description";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Descrio";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"Description";}}}}a:2:{s:5:"flags";a:2:{s:6:"filter";s:8:"modVideo";s:10:"field_name";s:5:"video";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Vdeo (*.mp4)";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Video (*.mp4)";}}}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Legenda";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Caption";}}}s:8:"children";a:3:{i:0;s:26:"personaliteModules_caption";i:1;s:33:"personaliteModules_captionDisplay";i:2;s:32:"personaliteModules_captionLegend";}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Estilo";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Style";}}}s:8:"children";a:4:{i:0;s:28:"personaliteModules_boxScheme";i:1;s:29:"personaliteModules_boxPadding";i:2;s:28:"personaliteModules_boxShadow";i:3;s:29:"personaliteModules_boxRounded";}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Vdeo";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Video";}}}s:8:"children";a:2:{i:0;s:10:"~editVideo";i:1;s:16:"~editDescription";}}a:4:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:6:"dialog";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:1:{s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:12:"Enviar vdeo";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Submit video";}}}s:8:"children";a:5:{i:0;s:6:"_start";i:1;s:12:"~uploadVideo";i:2;s:10:"_separator";i:3;s:7:"_cancel";i:4;s:4:"_end";}}a:3:{s:5:"flags";a:2:{s:6:"filter";s:8:"file_big";s:10:"field_name";s:5:"video";}s:5:"local";a:1:{s:6:"accept";s:7:"video/*";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Vdeo";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Video (*.mp4)";}}}}a:3:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:6:"dialog";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:20:"Central de aparncia";i:2;i:1;}s:2:"en";a:1:{i:1;s:16:"Apearance center";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:20:"Central de aparncia";i:2;i:1;}s:2:"en";a:1:{i:1;s:16:"Apearance center";}}}}a:3:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:7:"control";s:14:"modLayout_name";s:27:"personaliteApearance_layout";}s:5:"local";a:1:{s:6:"scheme";s:76:"document document-text-color document-background-color document-border-color";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:22:"Personalizar aparncia";i:2;i:1;}s:2:"en";a:1:{i:1;s:16:"Custom apearance";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:22:"Personalizar aparncia";i:2;i:1;}s:2:"en";a:1:{i:1;s:16:"Custom apearance";}}}}a:2:{s:5:"notes";s:121:"#r#nproperties = [#r#ncurrentValue 0#r#ncurrentDefault 1#r#ncurrentFrom 2#r#ncurrentClass 3#r#ncurrentProperty 4#r#ncurrentName 5 #r#n]#r#n";s:4:"html";s:1824:"#r#n[cut:script select_color]#r#n#r#n// opens select color dialog#r#ndialogColorName = "";#r#ndialogColorTarget = "";#r#n#r#nfunction dialogColorOpen (name, target){#r#ndialogColorTarget = target;#r#ndialogColorName = name;#r#nvar left = (screen.width) ? (screen.width-250)/2 : 250;#r#nvar top = (screen.height) ? (screen.height-550)/2 : 25;#r#ndialogColorWindow = window.open (#s[$url]#s, #s#s, #slocation=no, menubar=no, personalbar=no, resizable=no, scrollbars=no, status=no, toolbar=no, width=250, height=550, top=#s+top+#s, left=#s+left);#r#n}#r#n#r#n// transfer current color to dialog window#r#nfunction dialogColorLoad(){#r#nvar value = document.getElementById(dialogColorName).value;#r#nif (value == "")#r#nvalue = document.getElementById(dialogColorName).dataset.current;#r#n#r#nreturn value;#r#n}#r#n#r#n// closes select color dialog#r#nfunction dialogColorClose(color){#r#ndocument.getElementById(dialogColorName).value = color;#r#ndialogStyleRefresh();#r#ndialogColorWindow.close();#r#n}#r#n#r#n[/cut]#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n[script]#r#nproperties.[$target] = []"[$value]", "[$default]", "[$from]", "[$class]", "[$property]", "[$name]"];#r#n[/script]#r#n[if $help{ ``; nl; help(`form`); }]#r#n#r#n";}a:2:{s:5:"notes";s:121:"#r#nproperties = [#r#ncurrentValue 0#r#ncurrentDefault 1#r#ncurrentFrom 2#r#ncurrentClass 3#r#ncurrentProperty 4#r#ncurrentName 5 #r#n]#r#n";s:4:"html";s:3447:"#r#n[cut:script select_font]#r#n#r#n// opens select font dialog#r#ndialogFontWindow = false;#r#ndialogFontName = "";#r#ndialogFontTarget = "";#r#n#r#nfunction dialogFontOpen (name, target){#r#ndialogFontTarget = target;#r#ndialogFontName = name;#r#nvar left = (screen.width) ? (screen.width-250)/2 : 250;#r#nvar top = (screen.height) ? (screen.height-550)/2 : 25;#r#ndialogFontWindow = window.open ("[$url]", "", "location=no, menubar=no, personalbar=no, resizable=no, scrollbars=no, status=no, toolbar=no, width=250, height=550, top="+top+", left="+left);#r#n}#r#n#r#n// transfer current font to dialog window#r#nfunction dialogFontLoad(){#r#nvar values = {}#r#nvalues.fontName = document.getElementById(dialogFontName + "_font_name").value;#r#nvalues.fontWeight = document.getElementById(dialogFontName + "_font_weight").value;#r#nvalues.fontSize = document.getElementById(dialogFontName + "_font_size").value;#r#nvalues.lineHeight = document.getElementById(dialogFontName + "_line_height").value;#r#nreturn values;#r#n}#r#n#r#n// closes select font dialog#r#nfunction dialogFontClose (values){#r#ndocument.getElementById(dialogFontName + "_font_name").value = values.fontName;#r#ndocument.getElementById(dialogFontName + "_font_family").value = values.fontFamily;#r#ndocument.getElementById(dialogFontName + "_font_weight").value = values.fontWeight;#r#ndocument.getElementById(dialogFontName + "_font_size").value = values.fontSize;#r#ndocument.getElementById(dialogFontName + "_line_height").value = values.lineHeight;#r#n#r#ndialogFontWindow.close();#r#ndialogStyleRefresh();#r#n}#r#n[/cut]#r#n#r#n[text]#r#n#r#n[text]#r#n#r#n#r#n#r#n#r#n#r#n#r#n[if($new-font-face){#r#ncut(`style`); $font-face-value; nl; /cut;#r#n}]#r#n[script]#r#n[if $font-family-enabled {]#r#nproperties.[$target]_font_name = []"[$font-name-value]", "[$font-name-default]", "[$font-name-from]", "", "", "[$name]_font_name"];#r#nproperties.[$target]_font_family = []"[$font-family-value]", "[$font-family-default]", "[$font-family-from]", "[$class]-font-family", "fontFamily", "[$name]_font_family"];#r#n[}]#r#n[if $font-weight-enabled {]#r#nproperties.[$target]_font_weight = []"[$font-weight-value]", "[$font-weight-default]", "[$font-weight-from]", "[$class]-font-weight", "fontWeight", "[$name]_font_weight"];#r#n[}]#r#n[if $font-size-enabled {]#r#nproperties.[$target]_font_size = []"[$font-size-value]", "[$font-size-default]", "[$font-size-from]", "[$class]-font-size", "fontSize", "[$name]_font_size"];#r#n[}]#r#n[if $line-height-enabled {]#r#nproperties.[$target]_line_height = []"[$line-height-value]", "[$line-height-default]", "[$line-height-from]", "[$class]-line-height", "lineHeight", "[$name]_line_height"];#r#n[}]#r#n[/script]#r#n[if $help{ ``; nl; help(`form`); }]#r#n#r#n";}a:2:{s:5:"notes";s:117:"#r#ncolors = [#r#ncurrentValue 0#r#ncurrentDefault 1#r#ncurrentFrom 2#r#ncurrentClass 3#r#ncurrentProperty 4#r#ncurrentName 5 #r#n]#r#n";s:4:"html";s:676:"#r#n#r#n#r#n#r#n#r#n[script]#r#nproperties.[$target] = []"[$value]", "[$default]", "[$from]", "[$class]", "[$property]", "[$name]"];#r#n[/script]#r#n[if $help{ ``; nl; help(`form`); }]#r#n#r#n";}a:4:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:7:"control";s:14:"modLayout_name";s:27:"personaliteApearance_layout";}s:5:"local";a:1:{s:6:"scheme";s:125:"document document-background-color document-text-color document-border-color text-font-family text-font-size text-line-height";}s:4:"html";s:5035:"[script]#r#n#r#n// changes dialog tab#r#ntabOld = 2;#r#n#r#nfunction changeTab(tabIndex){#r#ndocument.getElementById ("tab_content_" + tabOld).style.display = "none";#r#ndocument.getElementById ("tab_button_" + tabOld).className = "button nav-background-color nav-text-color button-border-radius button-font-family button-font-weight button-font-size button-line-height";#r#ndocument.getElementById ("tab_content_" + tabIndex).style.display = "block";#r#ndocument.getElementById ("tab_button_" + tabIndex).className = "button active active-text-color active-background-color button-border-radius button-font-family button-font-weight button-font-size button-line-height";#r#ntabOld = tabIndex;#r#ndialogStyleRefresh ();#r#n}#r#n#r#n// submit configurations#r#nfunction dialogOk(){#r#ndocument.controls.submit();#r#n}#r#n#r#n// Restore default configurations#r#nfunction dialogRestore(){#r#ndocument.controls.save.value = #srestore#s;#r#ndocument.controls.submit();#r#n}#r#n#r#n// closes dialog window#r#nfunction dialogClose(){#r#nwindow.close();#r#n}#r#n#r#n// set correct classes to the system bar#r#ndocument.getElementById ("layout_system_bar").className = "system system-text-color system-background-color bar-height bar-font-family bar-font-weight bar-font-size bar-line-height";#r#ndocument.getElementById ("layout_system_icons").className = "system-text-color bar-height";#r#n#r#n// Updates document apearance#r#nproperties = {};#r#n#r#nfunction dialogStyleRefresh (){#r#nfor (var currentTarget in properties)#r#n{ // each property#r#ncurrentProperty = properties[]currentTarget];#r#ntarget = currentTarget;#r#nvalue = document.getElementById (currentProperty[]5]).value;#r#ncurrentProperty[]0] = value;#r#nwhile (value == "")#r#n{ // find value#r#nvalue = properties[]target][]0];#r#nif (value == "")#r#nvalue = properties[]target][]1];#r#nif (value == "")#r#n{#r#ntarget = properties[]target][]2];#r#nif (target == "")#r#nbreak;#r#nif (!properties[]target])#r#nbreak;#r#n}#r#n} // find color#r#n#r#nvar classList = document.getElementsByClassName (currentProperty[]3]);#r#nvar cssProperty = currentProperty[]4];#r#n#r#nfor (var index = 0; index < classList.length; index++)#r#n{ // loop each html element#r#nclassList[]index].style[]cssProperty] = value;#r#n} // loop each html element#r#n#r#nvar id = currentProperty[]5] + "_link";#r#nvar link = document.getElementById (id);#r#nif (link)#r#nlink.style.backgroundColor = value;#r#n#r#ndocument.getElementById (currentProperty[]5]) .dataset.current = value;#r#n} // each property#r#n}#r#n[/script]#r#n[mod:fontfaces]#r#n#r#n[mod(`formulary`){ list{]#r#n
      #r#n#r#n#r#n#r#n#r#n#r#n[next]#r#n#r#n[cut:tab_option]#r#n [text] #r#n[/cut]#r#n#r#n#r#n
      #r#n
      #r#n

      [text]

      #r#n[text $content]#r#n#r#n[list{ loop{ field; }} ]#r#n
      #r#n
      #r#n
      #r#n#r#n#r#n[next; loop{ if(!$last){]#r#n[cut:tab_option]#r#n [text] #r#n[/cut]#r#n#r#n#r#n#r#n#r#n[}else{]#r#n#r#n[list { loop{]#r#n#r#n[}}]#r#n#r#n
      #r#n[}}]#r#n#r#n#r#n
      #r#n
      #r#n#r#n#r#n#r#n
      #r#n
      #r#n#r#n#r#n[}}]#r#n[cut:footerscript]#r#ndialogStyleRefresh ();#r#n[/cut]#r#n";s:6:"blocks";a:3:{s:21:"fields/color_testable";s:32:"personaliteApearance_fieldsColor";s:20:"fields/font_testable";s:31:"personaliteApearance_fieldsFont";s:22:"fields/select_testable";s:33:"personaliteApearance_fieldsSelect";}}a:5:{s:5:"flags";a:4:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:7:"control";s:14:"modLayout_name";s:34:"personaliteApearance_color_content";s:19:"modLayout_cacheable";i:43200;}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:1:{s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:12:"Escolher cor";i:2;i:1;}s:2:"en";a:2:{i:1;s:12:"Select color";i:2;i:1;}}}s:4:"html";s:42258:"[style]#r#n .colors>div{#r#n width: 25px; #r#n height: 25px;#r#n }#r#n#r#n[/style]#r#n[script]#r#n#r#n// converts decimal to hexadecimal between 0 and 255#r#ndecHexValues = []#s0#s, #s1#s, #s2#s, #s3#s, #s4#s, #s5#s, #s6#s, #s7#s, #s8#s, #s9#s, #sa#s, #sb#s, #sc#s, #sd#s, #se#s, #sf#s];#r#n#r#nfunction decHex(n){#r#nnHi = parseInt(n / 16);#r#nnLow = n - (nHi * 16);#r#nnFound = decHexValues[]nHi] + decHexValues[]nLow];#r#nreturn nFound;#r#n}#r#n#r#n// changes dialog mode (hex, dec, alpha)#r#ndialogColorMode = 1;#r#n#r#nfunction colorChangeMode(){#r#nif (document.controls.mode[]0].checked){#r#ndocument.controls.r.value = decHex(document.controls.r.value);#r#ndocument.controls.g.value = decHex(document.controls.g.value);#r#ndocument.controls.b.value = decHex(document.controls.b.value);#r#n}else if (dialogColorMode == 0){#r#ndocument.controls.r.value = parseInt(#s0x#s+document.controls.r.value);#r#ndocument.controls.g.value = parseInt(#s0x#s+document.controls.g.value);#r#ndocument.controls.b.value = parseInt(#s0x#s+document.controls.b.value);#r#n}#r#n if (document.controls.mode[]2].checked){#r#ndocument.getElementById(#sa_hide#s).style.display = #sblock#s;#r#n}else if (dialogColorMode == 2){#r#ndocument.getElementById(#sa_hide#s).style.display = #snone#s;#r#n}#r#n#r#nif (document.controls.mode[]0].checked){#r#ndialogColorMode = 0;#r#n}else if (document.controls.mode[]2].checked){#r#ndialogColorMode = 2;#r#n}else{#r#ndialogColorMode = 1;#r#n}#r#ndialogColorDisplay (document.controls.r.value, document.controls.g.value, document.controls.b.value);#r#n}#r#n#r#n// receive current color on start and determines mode (hex/dec/alpha)#r#nfunction dialogColorStart(){#r#ncolor = window.opener.dialogColorLoad();#r#nr = 255;#r#ng = 255;#r#nb= 255;#r#nif (!color){#r#n}else if (color.charAt(0) == #s#c#s && color.length == 7){#r#ndocument.controls.mode[]0].checked = true;#r#ndialogColorMode = 0;#r#nr = color.charAt(1)+color.charAt(2);#r#ng = color.charAt(3)+color.charAt(4);#r#nb = color.charAt(5)+color.charAt(6);#r#n}else if (color.charAt(0) == #s#c#s && color.length == 4){#r#ndocument.controls.mode[]0].checked = true;#r#ndialogColorMode = 0;#r#nr = color.charAt(1)+color.charAt(1);#r#ng = color.charAt(2)+color.charAt(2);#r#nb = color.charAt(3)+color.charAt(3);#r#n}else{#r#nregExp = /^rgba?#e(#es?(#ed+)#e,#es?(#ed+)#e,#es?(#ed+)#e,?#es?([]0-9.]*)/#r#nfound = regExp.exec(color);#r#nif (found[]3]){#r#nr = found[]1];#r#ng = found[]2];#r#nb = found[]3];#r#nif (found[]4]){#r#na = found[]4];#r#na = 10 - parseInt(a * 10);#r#ndocument.controls.a.selectedIndex = a;#r#ndocument.controls.mode[]2].checked = true;#r#ndialogColorMode = 2;#r#ndocument.getElementById(#sa_hide#s).style.display = #sblock#s;#r#n}#r#n}#r#n}#r#ndocument.controls.r.value = r;#r#ndocument.controls.g.value = g;#r#ndocument.controls.b.value = b;#r#ndialogColorDisplay (r, g, b);#r#n}#r#n#r#n// when user choose a color from palette#r#nfunction paleta (r, g, b) {#r#nif (!document.controls.mode[]0].checked){#r#nr = parseInt(#s0x#s+r);#r#ng = parseInt(#s0x#s+g);#r#nb =parseInt(#s0x#s+b);#r#n}#r#ndocument.controls.r.value = r;#r#ndocument.controls.g.value = g;#r#ndocument.controls.b.value = b;#r#ndialogColorDisplay(r, g, b);#r#n}#r#n#r#n// refresh color of the display#r#nfunction dialogColorDisplay(r, g, b){#r#nif (document.controls.mode[]0].checked){#r#ncolor = #s#c#s+r+g+b;#r#n}else if (document.controls.mode[]1].checked){#r#ncolor = #srgb(#s+r+#s, #s+g+#s, #s+b+#s)#s;#r#n}else{#r#ncolor = #srgba(#s+r+#s, #s+g+#s, #s+b+#s, #s+document.controls.a.value+#s)#s;#r#n}#r#ndocument.controls.color.value = color;#r#ndisplay_color = document.getElementById(#sdisplay_color#s);#r#ndisplay_color.style.backgroundColor = color;#r#ndisplay_color_alt = document.getElementById(#sdisplay_color_alt#s);#r#ndisplay_color_alt.alt = color;#r#n}#r#n#r#n// filter user entries and refresh display#r#ndialogColorHex = /^[]0-9a-zA-Z]$/;#r#ndialogColorHexDouble = /^[]0-9a-zA-Z]{2}$/;#r#nfunction change_color() {#r#nif (document.controls.mode[]0].checked){#r#ndocument.controls.r.value = document.controls.r.value.toLowerCase();#r#ndocument.controls.g.value = document.controls.g.value.toLowerCase();#r#ndocument.controls.b.value = document.controls.b.value.toLowerCase();#r#nif (dialogColorHex.exec(document.controls.r.value)){#r#nr = document.controls.r.value+document.controls.r.value;#r#n}else if (dialogColorHexDouble.exec(document.controls.r.value)){#r#nr = document.controls.r.value;#r#n}else{#r#nr = #s00#s;#r#ndocument.controls.r.value = 0;#r#n}#r#nif (dialogColorHex.exec(document.controls.g.value)){#r#ng = document.controls.g.value+document.controls.g.value;#r#n}else if (dialogColorHexDouble.exec(document.controls.g.value)){#r#ng = document.controls.g.value;#r#n}else{#r#ng = #s00#s;#r#ndocument.controls.g.value = 0;#r#n}#r#nif (dialogColorHex.exec(document.controls.b.value)){#r#nb = document.controls.b.value+document.controls.b.value;#r#n}else if (dialogColorHexDouble.exec(document.controls.b.value)){#r#nb = document.controls.b.value;#r#n}else{#r#nb = #s00#s;#r#ndocument.controls.b.value = 0;#r#n}#r#n}else{#r#nvar r = parseInt(document.controls.r.value);#r#nvar g = parseInt(document.controls.g.value);#r#nvar b = parseInt(document.controls.b.value);#r#nif (isNaN(r) || r < 0){r = 0;#r#n}else if (r > 255){r = 255;#r#n}#r#nif (isNaN(g) || g < 0){g = 0;#r#n}else if (g > 255){g = 255;#r#n}#r#nif (isNaN(b) || b < 0){b = 0;#r#n}else if (b > 255){b = 255;#r#n}#r#ndocument.controls.r.value = r;#r#ndocument.controls.g.value = g;#r#ndocument.controls.b.value = b;#r#n}#r#n#r#ndialogColorDisplay(r, g, b);#r#n}#r#n#r#n// close width ok button#r#nfunction dialogColorOk() {#r#nwindow.opener.dialogColorClose(document.controls.color.value);#r#n}#r#n#r#n// cancel - closes dialog window#r#nfunction dialogColorCancel() {#r#nwindow.close ();#r#n}#r#n[/script]#r#n
      #r#n#r#n
      #r#n#r#n#r#n#r#n#r#n
      #r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n
      #r#n
      #r#n
      #r#n
      #r#n
      #r#n#r#n#r#n#r#n
      #r#n#r#n#r#n#r#n
      #r#n#r#n#r#n#r#n
      #r#n#r#n#r#n#r#n
      #r#n
      #r#n#r#n#r#n#r#n#r#n#r#n
      #r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n
      #r#n
      #r#n[script]#r#ndocument.onload = dialogColorStart();#r#n#r#ndocument.controls.r.focus();#r#n[/script]#r#n";s:6:"blocks";a:6:{s:18:"labels/color/green";a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Verde";i:2;i:1;}s:2:"en";a:2:{i:1;s:5:"Green";i:2;i:1;}}}}s:16:"labels/color/red";a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Vermelho";i:2;i:1;}s:2:"en";a:2:{i:1;s:3:"Red";i:2;i:1;}}}}s:17:"labels/color/blue";a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:4:"Azul";i:2;i:1;}s:2:"en";a:2:{i:1;s:4:"Blue";i:2;i:1;}}}}s:16:"labels/color/hex";a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Hexadecimal";i:2;i:1;}s:2:"en";a:2:{i:1;s:11:"Hexadecimal";i:2;i:1;}}}}s:16:"labels/color/dec";a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Decimal";i:2;i:1;}s:2:"en";a:2:{i:1;s:7:"Decimal";i:2;i:1;}}}}s:18:"labels/color/alpha";a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Alpha";i:2;i:1;}s:2:"en";a:2:{i:1;s:5:"Alpha";i:2;i:1;}}}}}}a:4:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:7:"control";s:14:"modLayout_name";s:32:"personaliteApearance_font_layout";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:1:{s:5:"title";a:2:{s:2:"pt";a:1:{i:1;s:14:"Escolher fonte";}s:2:"en";a:1:{i:1;s:11:"Choose font";}}}s:4:"html";s:5323:"#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n
      #r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n
      #r#n#r#n
      #r#n
      #r#nABCDEFGHIJKLMNOPQRSTUVWXYZ
      #r#nabcdefghijklmnopqrstuvwxyz
      #r#n1234567890#r#n
      #r#n
      #r#n
      #r#n#r#n#r#n#r#n
      #r#n[style]#r#n.preview-box { width:100%; overflow:hidden; height:6rem; }#r#n[/style]#r#n[script]#r#n#r#nselectFontFamily = document.getElementById ("select-font-family");#r#nselectFontWeight = document.getElementById ("select-font-weight");#r#nselectFontSize = document.getElementById ("select-font-size");#r#nselectLineHeight = document.getElementById ("select-line-height");#r#n#r#nfunction loadValues(){#r#nvar values = window.opener.dialogFontLoad ();#r#n#r#nif (values.fontName == "disabled")#r#nselectFontFamily.disabled = true;#r#nelse{#r#nselectFontFamily.selectedIndex = 0;#r#nfor(var i = 0; i < selectFontFamily.length; i++){#r#nif (selectFontFamily.options[]i].value == values.fontName){#r#nselectFontFamily.selectedIndex = i;#r#nbreak;#r#n}#r#n}#r#n}#r#n#r#nif (values.fontWeight == "disabled")#r#nselectFontWeight.disabled = true;#r#nelse{#r#nselectFontWeight.selectedIndex = 0;#r#nfor(var i = 0; i < selectFontWeight.length; i++){#r#nif (selectFontWeight.options[]i].value == values.fontWeight){#r#nselectFontWeight.selectedIndex = i;#r#nbreak;#r#n}#r#n}#r#n}#r#n#r#nif (values.fontSize == "disabled")#r#nselectFontSize.disabled = true;#r#nelse{#r#nselectFontSize.selectedIndex = 0;#r#nfor(var i = 0; i < selectFontSize.length; i++){#r#nif (selectFontSize.options[]i].value == values.fontSize){#r#nselectFontSize.selectedIndex = i;#r#nbreak;#r#n}#r#n}#r#n}#r#n#r#nif (values.lineHeight == "disabled")#r#nselectLineHeight.disabled = true;#r#nelse{#r#nselectLineHeight.selectedIndex = 0;#r#nfor(var i = 0; i < selectLineHeight.length; i++){#r#nif (selectLineHeight.options[]i].value == values.lineHeight){#r#nselectLineHeight.selectedIndex = i;#r#nbreak;#r#n}#r#n}#r#n}#r#npreviewRefresh();#r#n}#r#n#r#nfunction previewRefresh(){#r#n#r#nvar preview = document.getElementById ("preview-text");#r#n#r#nif (!selectFontFamily.disabled)#r#npreview.style.fontFamily = selectFontFamily.options[]selectFontFamily.selectedIndex].dataset.stack;#r#nif (!selectFontWeight.disabled)#r#npreview.style.fontWeight = selectFontWeight.value;#r#nif (!selectFontSize.disabled)#r#npreview.style.fontSize = selectFontSize.value;#r#nif (!selectLineHeight.disabled)#r#npreview.style.lineHeight = selectLineHeight.value;#r#n}#r#n#r#nfunction actionOk(){#r#nvar values = {};#r#n#r#nif (selectFontFamily.disabled)#r#n{#r#nvalues.fontName ="disabled";#r#nvalues.fontFamily = "";#r#n}#r#nelse #r#n{#r#nvalues.fontName = selectFontFamily.value;#r#nvalues.fontFamily = selectFontFamily.options[]selectFontFamily.selectedIndex].dataset.stack;#r#n}#r#n#r#nif (selectFontWeight.disabled)#r#nvalues.fontWeight = "disabled";#r#nelse#r#nvalues.fontWeight = selectFontWeight.value;#r#n#r#nif (selectFontSize.disabled)#r#nvalues.fontSize = "disabled";#r#nelse#r#nvalues.fontSize = selectFontSize.value;#r#n#r#nif (selectLineHeight.disabled)#r#nvalues.lineHeight = "disabled";#r#nelse#r#nvalues.lineHeight = selectLineHeight.value;#r#n#r#nwindow.opener.dialogFontClose (values);#r#n}#r#n#r#nloadValues();#r#n#r#n[/script]#r#n#r#n";}a:2:{s:5:"flags";a:1:{s:5:"value";s:0:"";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:20:"Passe partout padro";i:2;i:1;}s:2:"en";a:1:{i:1;s:21:"Default passe partout";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:0:"";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:21:"Arredondamento padro";i:2;i:1;}s:2:"en";a:1:{i:1;s:16:"Default rounding";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:1:"0";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"Sem passe partout";i:2;i:1;}s:2:"en";a:1:{i:1;s:16:"No passe partout";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:1:"0";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:18:"Sem arredondamento";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"No rounding";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:6:"0.1rem";}s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"en";a:1:{i:1;s:6:"0.1rem";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:6:"0.2rem";}s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"en";a:1:{i:1;s:6:"0.2rem";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:6:"0.3rem";}s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"en";a:1:{i:1;s:6:"0.3rem";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:6:"0.4rem";}s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"en";a:1:{i:1;s:6:"0.4rem";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:6:"0.5rem";}s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"en";a:1:{i:1;s:6:"0.5rem";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:6:"0.6rem";}s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"en";a:1:{i:1;s:6:"0.6rem";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:6:"0.8rem";}s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"en";a:1:{i:1;s:6:"0.8rem";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:4:"1rem";}s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"en";a:1:{i:1;s:4:"1rem";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:7:"1.25rem";}s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"en";a:1:{i:1;s:7:"1.25rem";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:6:"1.5rem";}s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"en";a:1:{i:1;s:6:"1.5rem";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:7:"1.75rem";}s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"en";a:1:{i:1;s:7:"1.75rem";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:4:"2rem";}s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"en";a:1:{i:1;s:4:"2rem";}}}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:23:"active-background-color";s:6:"target";s:29:"local/active-background-color";s:7:"default";s:32:"defaults/active-background-color";s:8:"property";s:15:"backgroundColor";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Fundo ativo";i:2;i:1;}s:2:"en";a:1:{i:1;s:17:"Active background";}}}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:17:"active-text-color";s:6:"target";s:23:"local/active-text-color";s:7:"default";s:26:"defaults/active-text-color";s:8:"property";s:5:"color";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Texto ativo";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"Active text";}}}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:23:"button-background-color";s:6:"target";s:29:"local/button-background-color";s:7:"default";s:32:"defaults/button-background-color";s:8:"property";s:15:"backgroundColor";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:14:"Fundo do boto";i:2;i:1;}s:2:"en";a:1:{i:1;s:17:"Button background";}}}}a:3:{s:5:"flags";a:7:{s:6:"filter";s:27:"personaliteApearance_select";s:10:"field_name";s:20:"button-border-radius";s:6:"target";s:26:"local/button-border-radius";s:7:"default";s:29:"defaults/button-border-radius";s:8:"property";s:12:"borderRadius";s:13:"default_value";s:0:"";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"Arredondar cantos";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Round corners";}}}s:8:"children";a:10:{i:0;s:19:"~000defaultRounding";i:1;s:14:"~000noRounding";i:2;s:4:"~010";i:3;s:4:"~020";i:4;s:4:"~030";i:5;s:4:"~040";i:6;s:4:"~050";i:7;s:4:"~060";i:8;s:4:"~080";i:9;s:4:"~100";}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:17:"button-text-color";s:6:"target";s:23:"local/button-text-color";s:7:"default";s:26:"defaults/button-text-color";s:8:"property";s:5:"color";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:14:"Texto do boto";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"Button text";}}}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:17:"card-active-color";s:6:"target";s:23:"local/card-active-color";s:7:"default";s:26:"defaults/card-active-color";s:8:"property";s:5:"color";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:12:"Links ativos";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Active links";}}}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:21:"card-background-color";s:6:"target";s:27:"local/card-background-color";s:7:"default";s:30:"defaults/card-background-color";s:8:"property";s:15:"backgroundColor";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Fundo";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Background";}}}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:17:"card-border-color";s:6:"target";s:23:"local/card-border-color";s:7:"default";s:26:"defaults/card-border-color";s:8:"property";s:11:"borderColor";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Bordas";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Borders";}}}}a:3:{s:5:"flags";a:7:{s:6:"filter";s:27:"personaliteApearance_select";s:10:"field_name";s:18:"card-border-radius";s:6:"target";s:24:"local/card-border-radius";s:7:"default";s:27:"defaults/card-border-radius";s:8:"property";s:12:"borderRadius";s:13:"default_value";s:0:"";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"Arredondar cantos";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Round corners";}}}s:8:"children";a:14:{i:0;s:19:"~000defaultRounding";i:1;s:14:"~000noRounding";i:2;s:4:"~010";i:3;s:4:"~020";i:4;s:4:"~030";i:5;s:4:"~040";i:6;s:4:"~050";i:7;s:4:"~060";i:8;s:4:"~080";i:9;s:4:"~100";i:10;s:4:"~125";i:11;s:4:"~150";i:12;s:4:"~175";i:13;s:4:"~200";}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:18:"card-caption-color";s:6:"target";s:24:"local/card-caption-color";s:7:"default";s:27:"defaults/card-caption-color";s:8:"property";s:5:"color";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Legendas";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Captions";}}}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:17:"card-header-color";s:6:"target";s:23:"local/card-header-color";s:7:"default";s:26:"defaults/card-header-color";s:8:"property";s:5:"color";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Ttulos";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Headers";}}}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:15:"card-link-color";s:6:"target";s:21:"local/card-link-color";s:7:"default";s:24:"defaults/card-link-color";s:8:"property";s:5:"color";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Links";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Links";}}}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:15:"card-mark-color";s:6:"target";s:21:"local/card-mark-color";s:7:"default";s:24:"defaults/card-mark-color";s:8:"property";s:5:"color";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Texto marcado";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"Marked text";}}}}a:3:{s:5:"flags";a:7:{s:6:"filter";s:27:"personaliteApearance_select";s:10:"field_name";s:12:"card-padding";s:6:"target";s:18:"local/card-padding";s:7:"default";s:21:"defaults/card-padding";s:8:"property";s:7:"padding";s:13:"default_value";s:0:"";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Passe partout";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Passe partout";}}}s:8:"children";a:14:{i:0;s:18:"~000defaultPadding";i:1;s:13:"~000noPadding";i:2;s:4:"~010";i:3;s:4:"~020";i:4;s:4:"~030";i:5;s:4:"~040";i:6;s:4:"~050";i:7;s:4:"~060";i:8;s:4:"~080";i:9;s:4:"~100";i:10;s:4:"~125";i:11;s:4:"~150";i:12;s:4:"~175";i:13;s:4:"~200";}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:15:"card-text-color";s:6:"target";s:21:"local/card-text-color";s:7:"default";s:24:"defaults/card-text-color";s:8:"property";s:5:"color";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Texto";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"Text";}}}}a:3:{s:5:"flags";a:7:{s:6:"filter";s:27:"personaliteApearance_select";s:10:"field_name";s:13:"border-radius";s:6:"target";s:19:"local/border-radius";s:7:"default";s:22:"defaults/border-radius";s:8:"property";s:12:"borderRadius";s:13:"default_value";s:0:"";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:21:"Arredondamento padro";i:2;i:1;}s:2:"en";a:1:{i:1;s:16:"Default rounding";}}}s:8:"children";a:9:{i:0;s:14:"~000noRounding";i:1;s:4:"~010";i:2;s:4:"~020";i:3;s:4:"~030";i:4;s:4:"~040";i:5;s:4:"~050";i:6;s:4:"~060";i:7;s:4:"~080";i:8;s:4:"~100";}}a:3:{s:5:"flags";a:5:{s:6:"filter";s:27:"personaliteApearance_select";s:10:"field_name";s:7:"padding";s:6:"target";s:13:"local/padding";s:7:"default";s:16:"defaults/padding";s:8:"property";s:7:"padding";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:20:"Passe partout padro";i:2;i:1;}s:2:"en";a:1:{i:1;s:21:"Default passe partout";}}}s:8:"children";a:13:{i:0;s:13:"~000noPadding";i:1;s:4:"~010";i:2;s:4:"~020";i:3;s:4:"~030";i:4;s:4:"~040";i:5;s:4:"~050";i:6;s:4:"~060";i:7;s:4:"~080";i:8;s:4:"~100";i:9;s:4:"~125";i:10;s:4:"~150";i:11;s:4:"~175";i:12;s:4:"~200";}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:21:"document-active-color";s:6:"target";s:27:"local/document-active-color";s:7:"default";s:30:"defaults/document-active-color";s:8:"property";s:5:"color";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:12:"Links ativos";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Active links";}}}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:25:"document-background-color";s:6:"target";s:31:"local/document-background-color";s:7:"default";s:34:"defaults/document-background-color";s:8:"property";s:15:"backgroundColor";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Fundo";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Background";}}}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:21:"document-border-color";s:6:"target";s:27:"local/document-border-color";s:7:"default";s:30:"defaults/document-border-color";s:8:"property";s:11:"borderColor";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Bordas";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Borders";}}}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:22:"document-caption-color";s:6:"target";s:28:"local/document-caption-color";s:7:"default";s:31:"defaults/document-caption-color";s:8:"property";s:5:"color";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Legendas";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Captions";}}}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:21:"document-header-color";s:6:"target";s:27:"local/document-header-color";s:7:"default";s:30:"defaults/document-header-color";s:8:"property";s:5:"color";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Ttulos";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Headers";}}}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:19:"document-link-color";s:6:"target";s:25:"local/document-link-color";s:7:"default";s:28:"defaults/document-link-color";s:8:"property";s:5:"color";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Links";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Links";}}}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:19:"document-mark-color";s:6:"target";s:25:"local/document-mark-color";s:7:"default";s:28:"defaults/document-mark-color";s:8:"property";s:5:"color";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Texto marcado";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"Marked text";}}}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:19:"document-text-color";s:6:"target";s:25:"local/document-text-color";s:7:"default";s:28:"defaults/document-text-color";s:8:"property";s:5:"color";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Texto";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"Text";}}}}a:1:{s:8:"children";a:11:{i:0;s:6:"_start";i:1;s:12:"~tabDocument";i:2;s:9:"~tabFonts";i:3;s:9:"~tabPanel";i:4;s:13:"~tabSpotlight";i:5;s:8:"~tabCard";i:6;s:13:"~tabFormulary";i:7;s:7:"~tabNav";i:8;s:10:"~tabSystem";i:9;s:10:"~tabButton";i:10;s:4:"_end";}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:22:"focus-background-color";s:6:"target";s:28:"local/focus-background-color";s:7:"default";s:31:"defaults/focus-background-color";s:8:"property";s:15:"backgroundColor";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Fundo em foco";i:2;i:1;}s:2:"en";a:1:{i:1;s:16:"Focus background";}}}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:16:"focus-text-color";s:6:"target";s:22:"local/focus-text-color";s:7:"default";s:25:"defaults/focus-text-color";s:8:"property";s:5:"color";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Texto em foco";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Focus text";}}}}a:2:{s:5:"flags";a:8:{s:6:"filter";s:25:"personaliteApearance_font";s:10:"field_name";s:3:"bar";s:6:"target";s:3:"bar";s:16:"font-name-enable";i:1;s:18:"font-family-enable";i:1;s:18:"font-weight-enable";i:1;s:16:"font-size-enable";i:1;s:18:"line-height-enable";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:12:"Nome do site";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Site name";}}}}a:2:{s:5:"flags";a:7:{s:6:"filter";s:25:"personaliteApearance_font";s:10:"field_name";s:10:"blockquote";s:6:"target";s:10:"blockquote";s:16:"font-name-enable";i:1;s:18:"font-family-enable";i:1;s:16:"font-size-enable";i:1;s:18:"line-height-enable";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"Blocos de citao";i:2;i:1;}s:2:"en";a:1:{i:1;s:16:"Quotation blocks";}}}}a:2:{s:5:"flags";a:1:{s:4:"type";s:11:"descriptive";}s:4:"text";a:1:{s:7:"content";a:1:{s:2:"pt";a:5:{i:1;s:214:"#r#n
      #r#n"No que eu tenha medo de morrer. que eu no quero estar l na hora que isso acontecer." (Woody Allen)#r#n
      #r#n";i:2;i:1;i:4;i:0;i:5;i:2;i:6;i:1;}}}}a:2:{s:5:"flags";a:8:{s:6:"filter";s:25:"personaliteApearance_font";s:10:"field_name";s:6:"button";s:6:"target";s:6:"button";s:16:"font-name-enable";i:1;s:18:"font-family-enable";i:1;s:18:"font-weight-enable";i:1;s:16:"font-size-enable";i:1;s:18:"line-height-enable";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Botes";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Buttons";}}}}a:2:{s:5:"flags";a:8:{s:6:"filter";s:25:"personaliteApearance_font";s:10:"field_name";s:7:"caption";s:6:"target";s:7:"caption";s:16:"font-name-enable";i:1;s:18:"font-family-enable";i:1;s:18:"font-weight-enable";i:1;s:16:"font-size-enable";i:1;s:18:"line-height-enable";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:18:"Legenda de mdulos";i:2;i:1;}s:2:"en";a:1:{i:1;s:15:"Module captions";}}}}a:2:{s:5:"flags";a:7:{s:6:"filter";s:25:"personaliteApearance_font";s:10:"field_name";s:8:"footnote";s:6:"target";s:8:"footnote";s:16:"font-name-enable";i:1;s:18:"font-family-enable";i:1;s:16:"font-size-enable";i:1;s:18:"line-height-enable";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:15:"Notas de rodap";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Footnotes";}}}}a:2:{s:5:"flags";a:1:{s:4:"type";s:11:"descriptive";}s:4:"text";a:1:{s:7:"content";a:1:{s:2:"pt";a:5:{i:1;s:122:"#r#n

      #r#nUm exemplo de nota de rodap.#r#n

      #r#n";i:2;i:1;i:4;i:0;i:5;i:2;i:6;i:1;}}}}a:2:{s:5:"flags";a:7:{s:6:"filter";s:25:"personaliteApearance_font";s:10:"field_name";s:6:"header";s:6:"target";s:6:"header";s:16:"font-name-enable";i:1;s:18:"font-family-enable";i:1;s:18:"font-weight-enable";i:1;s:18:"line-height-enable";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Ttulos";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Headers";}}}}a:2:{s:5:"flags";a:8:{s:6:"filter";s:25:"personaliteApearance_font";s:10:"field_name";s:5:"input";s:6:"target";s:5:"input";s:16:"font-name-enable";i:1;s:18:"font-family-enable";i:1;s:18:"font-weight-enable";i:1;s:16:"font-size-enable";i:1;s:18:"line-height-enable";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:19:"Campo de formulrio";i:2;i:1;}s:2:"en";a:1:{i:1;s:15:"Formulary input";}}}}a:2:{s:5:"flags";a:8:{s:6:"filter";s:25:"personaliteApearance_font";s:10:"field_name";s:5:"label";s:6:"target";s:5:"label";s:16:"font-name-enable";i:1;s:18:"font-family-enable";i:1;s:18:"font-weight-enable";i:1;s:16:"font-size-enable";i:1;s:18:"line-height-enable";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:24:"Etiquetas de formulrios";i:2;i:1;}s:2:"en";a:1:{i:1;s:16:"Formulary labels";}}}}a:2:{s:5:"flags";a:8:{s:6:"filter";s:25:"personaliteApearance_font";s:10:"field_name";s:6:"legend";s:6:"target";s:6:"legend";s:16:"font-name-enable";i:1;s:18:"font-family-enable";i:1;s:18:"font-weight-enable";i:1;s:16:"font-size-enable";i:1;s:18:"line-height-enable";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:18:"Legenda de objetos";i:2;i:1;}s:2:"en";a:1:{i:1;s:14:"Object legends";}}}}a:2:{s:5:"flags";a:6:{s:6:"filter";s:25:"personaliteApearance_font";s:10:"field_name";s:4:"link";s:6:"target";s:4:"link";s:16:"font-name-enable";i:1;s:18:"font-family-enable";i:1;s:18:"font-weight-enable";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Links";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Links";}}}}a:2:{s:5:"flags";a:8:{s:6:"filter";s:25:"personaliteApearance_font";s:10:"field_name";s:9:"monospace";s:6:"target";s:9:"monospace";s:16:"font-name-enable";i:1;s:18:"font-family-enable";i:1;s:18:"font-weight-enable";i:1;s:16:"font-size-enable";i:1;s:18:"line-height-enable";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:32:"Exemplo de cdigo (monoespaado)";i:2;i:1;}s:2:"en";a:1:{i:1;s:24:"Code sample (monospaced)";}}}}a:2:{s:5:"flags";a:1:{s:4:"type";s:11:"descriptive";}s:4:"text";a:1:{s:7:"content";a:1:{s:2:"pt";a:5:{i:1;s:206:"#r#n
      #r#nUm exemplo de texto preformatado.#r#n  Normalmente com fonte monoespaada.#r#n    Mantm os espaos originais do texto.#r#n
      #r#n";i:2;i:1;i:4;i:0;i:5;i:2;i:6;i:1;}}}}a:2:{s:5:"flags";a:7:{s:6:"filter";s:25:"personaliteApearance_font";s:10:"field_name";s:4:"text";s:6:"target";s:4:"text";s:16:"font-name-enable";i:1;s:18:"font-family-enable";i:1;s:16:"font-size-enable";i:1;s:18:"line-height-enable";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Texto";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"Text";}}}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:22:"formulary-active-color";s:6:"target";s:28:"local/formulary-active-color";s:7:"default";s:31:"defaults/formulary-active-color";s:8:"property";s:5:"color";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:12:"Links ativos";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Active links";}}}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:26:"formulary-background-color";s:6:"target";s:32:"local/formulary-background-color";s:7:"default";s:35:"defaults/formulary-background-color";s:8:"property";s:15:"backgroundColor";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Fundo";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Background";}}}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:22:"formulary-border-color";s:6:"target";s:28:"local/formulary-border-color";s:7:"default";s:31:"defaults/formulary-border-color";s:8:"property";s:11:"borderColor";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Bordas";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Borders";}}}}a:3:{s:5:"flags";a:7:{s:6:"filter";s:27:"personaliteApearance_select";s:10:"field_name";s:23:"formulary-border-radius";s:6:"target";s:29:"local/formulary-border-radius";s:7:"default";s:32:"defaults/formulary-border-radius";s:8:"property";s:12:"borderRadius";s:13:"default_value";s:0:"";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"Arredondar cantos";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Round corners";}}}s:8:"children";a:14:{i:0;s:19:"~000defaultRounding";i:1;s:14:"~000noRounding";i:2;s:4:"~010";i:3;s:4:"~020";i:4;s:4:"~030";i:5;s:4:"~040";i:6;s:4:"~050";i:7;s:4:"~060";i:8;s:4:"~080";i:9;s:4:"~100";i:10;s:4:"~125";i:11;s:4:"~150";i:12;s:4:"~175";i:13;s:4:"~200";}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:23:"formulary-caption-color";s:6:"target";s:29:"local/formulary-caption-color";s:7:"default";s:32:"defaults/formulary-caption-color";s:8:"property";s:5:"color";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Legendas";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Captions";}}}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:22:"formulary-header-color";s:6:"target";s:28:"local/formulary-header-color";s:7:"default";s:31:"defaults/formulary-header-color";s:8:"property";s:5:"color";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Ttulos";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Headers";}}}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:20:"formulary-link-color";s:6:"target";s:26:"local/formulary-link-color";s:7:"default";s:29:"defaults/formulary-link-color";s:8:"property";s:5:"color";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Links";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Links";}}}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:20:"formulary-mark-color";s:6:"target";s:26:"local/formulary-mark-color";s:7:"default";s:29:"defaults/formulary-mark-color";s:8:"property";s:5:"color";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Texto marcado";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"Marked text";}}}}a:3:{s:5:"flags";a:7:{s:6:"filter";s:27:"personaliteApearance_select";s:10:"field_name";s:17:"formulary-padding";s:6:"target";s:23:"local/formulary-padding";s:7:"default";s:26:"defaults/formulary-padding";s:8:"property";s:7:"padding";s:13:"default_value";s:0:"";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Passe partout";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Passe partout";}}}s:8:"children";a:14:{i:0;s:18:"~000defaultPadding";i:1;s:13:"~000noPadding";i:2;s:4:"~010";i:3;s:4:"~020";i:4;s:4:"~030";i:5;s:4:"~040";i:6;s:4:"~050";i:7;s:4:"~060";i:8;s:4:"~080";i:9;s:4:"~100";i:10;s:4:"~125";i:11;s:4:"~150";i:12;s:4:"~175";i:13;s:4:"~200";}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:20:"formulary-text-color";s:6:"target";s:26:"local/formulary-text-color";s:7:"default";s:29:"defaults/formulary-text-color";s:8:"property";s:5:"color";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Texto";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"Text";}}}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:22:"input-background-color";s:6:"target";s:28:"local/input-background-color";s:7:"default";s:31:"defaults/input-background-color";s:8:"property";s:15:"backgroundColor";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"Fundo de entrada";i:2;i:1;}s:2:"en";a:1:{i:1;s:16:"Input background";}}}}a:3:{s:5:"flags";a:7:{s:6:"filter";s:27:"personaliteApearance_select";s:10:"field_name";s:19:"input-border-radius";s:6:"target";s:25:"local/input-border-radius";s:7:"default";s:28:"defaults/input-border-radius";s:8:"property";s:12:"borderRadius";s:13:"default_value";s:0:"";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"Arredondar cantos";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Round corners";}}}s:8:"children";a:10:{i:0;s:19:"~000defaultRounding";i:1;s:14:"~000noRounding";i:2;s:4:"~010";i:3;s:4:"~020";i:4;s:4:"~030";i:5;s:4:"~040";i:6;s:4:"~050";i:7;s:4:"~060";i:8;s:4:"~080";i:9;s:4:"~100";}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:16:"input-text-color";s:6:"target";s:22:"local/input-text-color";s:7:"default";s:25:"defaults/input-text-color";s:8:"property";s:5:"color";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"Texto de entrada";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Input text";}}}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:16:"nav-active-color";s:6:"target";s:22:"local/nav-active-color";s:7:"default";s:25:"defaults/nav-active-color";s:8:"property";s:5:"color";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:12:"Links ativos";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Active links";}}}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:20:"nav-background-color";s:6:"target";s:26:"local/nav-background-color";s:7:"default";s:29:"defaults/nav-background-color";s:8:"property";s:15:"backgroundColor";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Fundo";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Background";}}}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:16:"nav-border-color";s:6:"target";s:22:"local/nav-border-color";s:7:"default";s:25:"defaults/nav-border-color";s:8:"property";s:11:"borderColor";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Bordas";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Borders";}}}}a:3:{s:5:"flags";a:7:{s:6:"filter";s:27:"personaliteApearance_select";s:10:"field_name";s:17:"nav-border-radius";s:6:"target";s:23:"local/nav-border-radius";s:7:"default";s:26:"defaults/nav-border-radius";s:8:"property";s:12:"borderRadius";s:13:"default_value";s:0:"";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"Arredondar cantos";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Round corners";}}}s:8:"children";a:14:{i:0;s:19:"~000defaultRounding";i:1;s:14:"~000noRounding";i:2;s:4:"~010";i:3;s:4:"~020";i:4;s:4:"~030";i:5;s:4:"~040";i:6;s:4:"~050";i:7;s:4:"~060";i:8;s:4:"~080";i:9;s:4:"~100";i:10;s:4:"~125";i:11;s:4:"~150";i:12;s:4:"~175";i:13;s:4:"~200";}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:17:"nav-caption-color";s:6:"target";s:23:"local/nav-caption-color";s:7:"default";s:26:"defaults/nav-caption-color";s:8:"property";s:5:"color";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Legendas";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Captions";}}}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:16:"nav-header-color";s:6:"target";s:22:"local/nav-header-color";s:7:"default";s:25:"defaults/nav-header-color";s:8:"property";s:5:"color";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Ttulos";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Headers";}}}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:14:"nav-link-color";s:6:"target";s:20:"local/nav-link-color";s:7:"default";s:23:"defaults/nav-link-color";s:8:"property";s:5:"color";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Links";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Links";}}}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:14:"nav-mark-color";s:6:"target";s:20:"local/nav-mark-color";s:7:"default";s:23:"defaults/nav-mark-color";s:8:"property";s:5:"color";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Texto marcado";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"Marked text";}}}}a:3:{s:5:"flags";a:7:{s:6:"filter";s:27:"personaliteApearance_select";s:10:"field_name";s:11:"nav-padding";s:6:"target";s:17:"local/nav-padding";s:7:"default";s:20:"defaults/nav-padding";s:8:"property";s:7:"padding";s:13:"default_value";s:0:"";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Passe partout";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Passe partout";}}}s:8:"children";a:14:{i:0;s:18:"~000defaultPadding";i:1;s:13:"~000noPadding";i:2;s:4:"~010";i:3;s:4:"~020";i:4;s:4:"~030";i:5;s:4:"~040";i:6;s:4:"~050";i:7;s:4:"~060";i:8;s:4:"~080";i:9;s:4:"~100";i:10;s:4:"~125";i:11;s:4:"~150";i:12;s:4:"~175";i:13;s:4:"~200";}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:14:"nav-text-color";s:6:"target";s:20:"local/nav-text-color";s:7:"default";s:23:"defaults/nav-text-color";s:8:"property";s:5:"color";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Texto";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"Text";}}}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:18:"panel-active-color";s:6:"target";s:24:"local/panel-active-color";s:7:"default";s:27:"defaults/panel-active-color";s:8:"property";s:5:"color";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:12:"Links ativos";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Active links";}}}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:22:"panel-background-color";s:6:"target";s:28:"local/panel-background-color";s:7:"default";s:31:"defaults/panel-background-color";s:8:"property";s:15:"backgroundColor";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Fundo";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Background";}}}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:18:"panel-border-color";s:6:"target";s:24:"local/panel-border-color";s:7:"default";s:27:"defaults/panel-border-color";s:8:"property";s:11:"borderColor";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Bordas";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Borders";}}}}a:3:{s:5:"flags";a:7:{s:6:"filter";s:27:"personaliteApearance_select";s:10:"field_name";s:19:"panel-border-radius";s:6:"target";s:25:"local/panel-border-radius";s:7:"default";s:28:"defaults/panel-border-radius";s:8:"property";s:12:"borderRadius";s:13:"default_value";s:0:"";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"Arredondar cantos";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Round corners";}}}s:8:"children";a:14:{i:0;s:19:"~000defaultRounding";i:1;s:14:"~000noRounding";i:2;s:4:"~010";i:3;s:4:"~020";i:4;s:4:"~030";i:5;s:4:"~040";i:6;s:4:"~050";i:7;s:4:"~060";i:8;s:4:"~080";i:9;s:4:"~100";i:10;s:4:"~125";i:11;s:4:"~150";i:12;s:4:"~175";i:13;s:4:"~200";}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:19:"panel-caption-color";s:6:"target";s:25:"local/panel-caption-color";s:7:"default";s:28:"defaults/panel-caption-color";s:8:"property";s:5:"color";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Legendas";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Captions";}}}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:18:"panel-header-color";s:6:"target";s:24:"local/panel-header-color";s:7:"default";s:27:"defaults/panel-header-color";s:8:"property";s:5:"color";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Ttulos";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Headers";}}}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:16:"panel-link-color";s:6:"target";s:22:"local/panel-link-color";s:7:"default";s:25:"defaults/panel-link-color";s:8:"property";s:5:"color";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Links";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Links";}}}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:16:"panel-mark-color";s:6:"target";s:22:"local/panel-mark-color";s:7:"default";s:25:"defaults/panel-mark-color";s:8:"property";s:5:"color";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Texto marcado";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"Marked text";}}}}a:3:{s:5:"flags";a:7:{s:6:"filter";s:27:"personaliteApearance_select";s:10:"field_name";s:13:"panel-padding";s:6:"target";s:19:"local/panel-padding";s:7:"default";s:22:"defaults/panel-padding";s:8:"property";s:7:"padding";s:13:"default_value";s:0:"";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Passe partout";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Passe partout";}}}s:8:"children";a:14:{i:0;s:18:"~000defaultPadding";i:1;s:13:"~000noPadding";i:2;s:4:"~010";i:3;s:4:"~020";i:4;s:4:"~030";i:5;s:4:"~040";i:6;s:4:"~050";i:7;s:4:"~060";i:8;s:4:"~080";i:9;s:4:"~100";i:10;s:4:"~125";i:11;s:4:"~150";i:12;s:4:"~175";i:13;s:4:"~200";}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:16:"panel-text-color";s:6:"target";s:22:"local/panel-text-color";s:7:"default";s:25:"defaults/panel-text-color";s:8:"property";s:5:"color";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Texto";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"Text";}}}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:22:"spotlight-active-color";s:6:"target";s:28:"local/spotlight-active-color";s:7:"default";s:31:"defaults/spotlight-active-color";s:8:"property";s:5:"color";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:12:"Links ativos";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Active links";}}}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:26:"spotlight-background-color";s:6:"target";s:32:"local/spotlight-background-color";s:7:"default";s:35:"defaults/spotlight-background-color";s:8:"property";s:15:"backgroundColor";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Fundo";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Background";}}}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:22:"spotlight-border-color";s:6:"target";s:28:"local/spotlight-border-color";s:7:"default";s:31:"defaults/spotlight-border-color";s:8:"property";s:11:"borderColor";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Bordas";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Borders";}}}}a:3:{s:5:"flags";a:7:{s:6:"filter";s:27:"personaliteApearance_select";s:10:"field_name";s:23:"spotlight-border-radius";s:6:"target";s:29:"local/spotlight-border-radius";s:7:"default";s:32:"defaults/spotlight-border-radius";s:8:"property";s:12:"borderRadius";s:13:"default_value";s:0:"";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"Arredondar cantos";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Round corners";}}}s:8:"children";a:14:{i:0;s:19:"~000defaultRounding";i:1;s:14:"~000noRounding";i:2;s:4:"~010";i:3;s:4:"~020";i:4;s:4:"~030";i:5;s:4:"~040";i:6;s:4:"~050";i:7;s:4:"~060";i:8;s:4:"~080";i:9;s:4:"~100";i:10;s:4:"~125";i:11;s:4:"~150";i:12;s:4:"~175";i:13;s:4:"~200";}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:23:"spotlight-caption-color";s:6:"target";s:29:"local/spotlight-caption-color";s:7:"default";s:32:"defaults/spotlight-caption-color";s:8:"property";s:5:"color";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Legendas";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Captions";}}}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:22:"spotlight-header-color";s:6:"target";s:28:"local/spotlight-header-color";s:7:"default";s:31:"defaults/spotlight-header-color";s:8:"property";s:5:"color";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Ttulos";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Headers";}}}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:20:"spotlight-link-color";s:6:"target";s:26:"local/spotlight-link-color";s:7:"default";s:29:"defaults/spotlight-link-color";s:8:"property";s:5:"color";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Links";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Links";}}}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:20:"spotlight-mark-color";s:6:"target";s:26:"local/spotlight-mark-color";s:7:"default";s:29:"defaults/spotlight-mark-color";s:8:"property";s:5:"color";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Texto marcado";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"Marked text";}}}}a:3:{s:5:"flags";a:7:{s:6:"filter";s:27:"personaliteApearance_select";s:10:"field_name";s:17:"spotlight-padding";s:6:"target";s:23:"local/spotlight-padding";s:7:"default";s:26:"defaults/spotlight-padding";s:8:"property";s:7:"padding";s:13:"default_value";s:0:"";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Passe partout";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Passe partout";}}}s:8:"children";a:14:{i:0;s:18:"~000defaultPadding";i:1;s:13:"~000noPadding";i:2;s:4:"~010";i:3;s:4:"~020";i:4;s:4:"~030";i:5;s:4:"~040";i:6;s:4:"~050";i:7;s:4:"~060";i:8;s:4:"~080";i:9;s:4:"~100";i:10;s:4:"~125";i:11;s:4:"~150";i:12;s:4:"~175";i:13;s:4:"~200";}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:20:"spotlight-text-color";s:6:"target";s:26:"local/spotlight-text-color";s:7:"default";s:29:"defaults/spotlight-text-color";s:8:"property";s:5:"color";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Texto";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"Text";}}}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:19:"system-active-color";s:6:"target";s:25:"local/system-active-color";s:7:"default";s:28:"defaults/system-active-color";s:8:"property";s:5:"color";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:12:"Links ativos";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Active links";}}}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:23:"system-background-color";s:6:"target";s:29:"local/system-background-color";s:7:"default";s:32:"defaults/system-background-color";s:8:"property";s:15:"backgroundColor";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Fundo";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Background";}}}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:19:"system-border-color";s:6:"target";s:25:"local/system-border-color";s:7:"default";s:28:"defaults/system-border-color";s:8:"property";s:11:"borderColor";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Bordas";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Borders";}}}}a:3:{s:5:"flags";a:7:{s:6:"filter";s:27:"personaliteApearance_select";s:10:"field_name";s:20:"system-border-radius";s:6:"target";s:26:"local/system-border-radius";s:7:"default";s:29:"defaults/system-border-radius";s:8:"property";s:12:"borderRadius";s:13:"default_value";s:0:"";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"Arredondar cantos";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Round corners";}}}s:8:"children";a:14:{i:0;s:19:"~000defaultRounding";i:1;s:14:"~000noRounding";i:2;s:4:"~010";i:3;s:4:"~020";i:4;s:4:"~030";i:5;s:4:"~040";i:6;s:4:"~050";i:7;s:4:"~060";i:8;s:4:"~080";i:9;s:4:"~100";i:10;s:4:"~125";i:11;s:4:"~150";i:12;s:4:"~175";i:13;s:4:"~200";}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:20:"system-caption-color";s:6:"target";s:26:"local/system-caption-color";s:7:"default";s:29:"defaults/system-caption-color";s:8:"property";s:5:"color";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Legendas";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Captions";}}}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:19:"system-header-color";s:6:"target";s:25:"local/system-header-color";s:7:"default";s:28:"defaults/system-header-color";s:8:"property";s:5:"color";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Ttulos";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Headers";}}}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:17:"system-link-color";s:6:"target";s:23:"local/system-link-color";s:7:"default";s:26:"defaults/system-link-color";s:8:"property";s:5:"color";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Links";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Links";}}}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:17:"system-mark-color";s:6:"target";s:23:"local/system-mark-color";s:7:"default";s:26:"defaults/system-mark-color";s:8:"property";s:5:"color";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Texto marcado";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"Marked text";}}}}a:3:{s:5:"flags";a:7:{s:6:"filter";s:27:"personaliteApearance_select";s:10:"field_name";s:14:"system-padding";s:6:"target";s:20:"local/system-padding";s:7:"default";s:23:"defaults/system-padding";s:8:"property";s:7:"padding";s:13:"default_value";s:0:"";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Passe partout";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Passe partout";}}}s:8:"children";a:14:{i:0;s:18:"~000defaultPadding";i:1;s:13:"~000noPadding";i:2;s:4:"~010";i:3;s:4:"~020";i:4;s:4:"~030";i:5;s:4:"~040";i:6;s:4:"~050";i:7;s:4:"~060";i:8;s:4:"~080";i:9;s:4:"~100";i:10;s:4:"~125";i:11;s:4:"~150";i:12;s:4:"~175";i:13;s:4:"~200";}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:26:"personaliteApearance_color";s:10:"field_name";s:17:"system-text-color";s:6:"target";s:23:"local/system-text-color";s:7:"default";s:26:"defaults/system-text-color";s:8:"property";s:5:"color";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Texto";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"Text";}}}}a:4:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:5:"local";a:1:{s:6:"scheme";s:8:"document";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Botes";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Buttons";}}s:7:"content";a:1:{s:2:"pt";a:5:{i:1;s:73:"#r#nEstas so as cores que se aplicam aos botes e campos de formulrios.#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}s:8:"children";a:11:{i:0;s:16:"~buttonTextColor";i:1;s:22:"~buttonBackgroundColor";i:2;s:16:"~activeTextColor";i:3;s:22:"~activeBackgroundColor";i:4;s:19:"~buttonBorderRadius";i:5;s:14:"~buttonPadding";i:6;s:15:"~inputTextColor";i:7;s:21:"~inputBackgroundColor";i:8;s:15:"~focusTextColor";i:9;s:21:"~focusBackgroundColor";i:10;s:18:"~inputBorderRadius";}}a:4:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:5:"local";a:1:{s:6:"scheme";s:4:"card";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Carto";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"Card";}}s:7:"content";a:1:{s:2:"pt";a:5:{i:1;s:354:"#r#nUse o estilo "Carto" para acomodar imagens com bordas ou outros elementos em destaque.#r#n#r#n--------#r#n#r#n[ ]
      Legenda de mdulo
      #r#n#r#n* Texto marcado #r#n* Link#r#n* Link ativo#r#n#r#n--------#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}s:8:"children";a:10:{i:0;s:14:"~cardTextColor";i:1;s:20:"~cardBackgroundColor";i:2;s:16:"~cardBorderColor";i:3;s:16:"~cardHeaderColor";i:4;s:14:"~cardMarkColor";i:5;s:14:"~cardLinkColor";i:6;s:16:"~cardActiveColor";i:7;s:17:"~cardCaptionColor";i:8;s:12:"~cardPadding";i:9;s:17:"~cardBorderRadius";}}a:4:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:5:"local";a:1:{s:6:"scheme";s:8:"document";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Documento";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Document";}}s:7:"content";a:1:{s:2:"pt";a:5:{i:1;s:372:"#r#nEstas so as cores que se aplicam ao corpo do documento.#r#n#r#n[ ]
      [ ]#r#n#r#n[ ]
      Legenda de mdulos
      #r#n#r#n* Texto marcado #r#n* Link#r#n* Link ativo#r#n#r#n--------#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}s:8:"children";a:10:{i:0;s:18:"~documentTextColor";i:1;s:24:"~documentBackgroundColor";i:2;s:20:"~documentBorderColor";i:3;s:20:"~documentHeaderColor";i:4;s:18:"~documentMarkColor";i:5;s:18:"~documentLinkColor";i:6;s:20:"~documentActiveColor";i:7;s:21:"~documentCaptionColor";i:8;s:15:"~defaultPadding";i:9;s:20:"~defaultBorderRadius";}}a:4:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:5:"local";a:1:{s:6:"scheme";s:9:"formulary";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Fontes";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Fonts";}}s:7:"content";a:1:{s:2:"pt";a:5:{i:1;s:140:"#r#nAs fontes so aplicadas a todos os esquemas.#r#n#r#nUm exemplo de Link nesta linha.#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}s:8:"children";a:31:{i:0;s:9:"~fontText";i:1;s:9:"~fontLink";i:2;s:10:"~fontLabel";i:3;s:11:"~fontLegend";i:4;s:18:"~fontLegendExample";i:5;s:15:"~fontBlockquote";i:6;s:22:"~fontBlockquoteExample";i:7;s:13:"~fontFootnote";i:8;s:20:"~fontFootnoteExample";i:9;s:10:"~fontInput";i:10;s:10:"_separator";i:11;s:11:"~fontHeader";i:12;s:11:"~fontH1Size";i:13;s:14:"~fontH1Example";i:14;s:11:"~fontH2Size";i:15;s:14:"~fontH2Example";i:16;s:11:"~fontH3Size";i:17;s:14:"~fontH3Example";i:18;s:11:"~fontH4Size";i:19;s:14:"~fontH4Example";i:20;s:11:"~fontH5Size";i:21;s:14:"~fontH5Example";i:22;s:11:"~fontH6Size";i:23;s:14:"~fontH6Example";i:24;s:12:"~fontCaption";i:25;s:19:"~fontCaptionExample";i:26;s:11:"~fontButton";i:27;s:8:"~fontBar";i:28;s:10:"_separator";i:29;s:14:"~fontMonospace";i:30;s:21:"~fontMonospaceExample";}}a:4:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:5:"local";a:1:{s:6:"scheme";s:9:"formulary";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"Formulrio";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Formulary";}}s:7:"content";a:1:{s:2:"pt";a:5:{i:1;s:374:"#r#nUse o estilo "Formulrio" para caixas de formulrios.#r#n#r#n[ ]
      [ ]#r#n#r#n[ ]
      Legenda de mdulos
      #r#n#r#n* Texto marcado #r#n* Link#r#n* Link ativo#r#n#r#n--------#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}s:8:"children";a:10:{i:0;s:19:"~formularyTextColor";i:1;s:25:"~formularyBackgroundColor";i:2;s:21:"~formularyBorderColor";i:3;s:21:"~formularyHeaderColor";i:4;s:19:"~formularyMarkColor";i:5;s:19:"~formularyLinkColor";i:6;s:21:"~formularyActiveColor";i:7;s:22:"~formularyCaptionColor";i:8;s:17:"~formularyPadding";i:9;s:22:"~formularyBorderRadius";}}a:4:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:5:"local";a:1:{s:6:"scheme";s:3:"nav";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Navegao";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Navigation";}}s:7:"content";a:1:{s:2:"pt";a:5:{i:1;s:341:"#r#nUse o estilo "Navegao" para a barra de navegao.#r#n#r#n[ ][ ]#r#n#r#n[ ]#r#n#r#n* Texto marcado #r#n* Link#r#n* Link ativo#r#n#r#n--------#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}s:8:"children";a:10:{i:0;s:13:"~navTextColor";i:1;s:19:"~navBackgroundColor";i:2;s:15:"~navBorderColor";i:3;s:15:"~navHeaderColor";i:4;s:13:"~navMarkColor";i:5;s:13:"~navLinkColor";i:6;s:15:"~navActiveColor";i:7;s:16:"~navCaptionColor";i:8;s:11:"~navPadding";i:9;s:16:"~navBorderRadius";}}a:4:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:5:"local";a:1:{s:6:"scheme";s:5:"panel";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Painel";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Panel";}}s:7:"content";a:1:{s:2:"pt";a:5:{i:1;s:347:"#r#nUse o estilo "Painel" para os painis laterais.#r#n#r#n[ ]
      [ ]#r#n#r#n[ ]
      Legenda de mdulo
      #r#n#r#n* Texto marcado #r#n* Link#r#n* Link ativo#r#n#r#n--------#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}s:8:"children";a:10:{i:0;s:15:"~panelTextColor";i:1;s:21:"~panelBackgroundColor";i:2;s:17:"~panelBorderColor";i:3;s:17:"~panelHeaderColor";i:4;s:15:"~panelMarkColor";i:5;s:15:"~panelLinkColor";i:6;s:17:"~panelActiveColor";i:7;s:18:"~panelCaptionColor";i:8;s:13:"~panelPadding";i:9;s:18:"~panelBorderRadius";}}a:4:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:5:"local";a:1:{s:6:"scheme";s:9:"spotlight";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Destaque";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Spotlight";}}s:7:"content";a:1:{s:2:"pt";a:5:{i:1;s:410:"#r#nUse o estilo "Destaque" para criar blocos destacados, como avisos e promoes nas pginas.#r#n#r#n[ ]
      [ ]#r#n#r#n[ ]
      Legenda de mdulo
      #r#n#r#n* Texto marcado #r#n* Link#r#n* Link ativo#r#n#r#n--------#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}s:8:"children";a:10:{i:0;s:19:"~spotlightTextColor";i:1;s:25:"~spotlightBackgroundColor";i:2;s:21:"~spotlightBorderColor";i:3;s:21:"~spotlightHeaderColor";i:4;s:19:"~spotlightMarkColor";i:5;s:19:"~spotlightLinkColor";i:6;s:21:"~spotlightActiveColor";i:7;s:22:"~spotlightCaptionColor";i:8;s:17:"~spotlightPadding";i:9;s:22:"~spotlightBorderRadius";}}a:4:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Sistema";i:2;i:1;}s:2:"en";a:1:{i:1;s:6:"System";}}s:7:"content";a:1:{s:2:"pt";a:5:{i:1;s:478:"#r#nO estilo "Sistema" aplicado barra de ttulo do site, no menu do sistema e nas caixas de dilogo.#r#n#r#nMas tambm est disponvel para ser aplicado a qualquer outro mdulo.#r#n#r#n[ ]
      [ ]#r#n#r#n[ ]
      Legenda de mdulo
      #r#n#r#n* Texto marcado #r#n* Link#r#n* Link ativo#r#n#r#n--------#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}s:8:"children";a:10:{i:0;s:16:"~systemTextColor";i:1;s:22:"~systemBackgroundColor";i:2;s:18:"~systemBorderColor";i:3;s:18:"~systemHeaderColor";i:4;s:16:"~systemMarkColor";i:5;s:16:"~systemLinkColor";i:6;s:18:"~systemActiveColor";i:7;s:19:"~systemCaptionColor";i:8;s:14:"~systemPadding";i:9;s:19:"~systemBorderRadius";}}a:3:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:13:"dialog_select";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"Adicionar detalhe";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Add detail";}}}}a:4:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:11:"dialog_tabs";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:1:{s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:20:"Personalizar detalhe";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Custom detail";}}}s:8:"children";a:5:{i:0;s:6:"_start";i:1;s:11:"~tabCaption";i:2;s:8:"~tabHtml";i:3;s:40:"personaliteTemplate_configure_tabFilters";i:4;s:4:"_end";}}a:2:{s:5:"flags";a:5:{s:4:"type";s:4:"text";s:6:"filter";s:4:"text";s:10:"field_name";s:7:"caption";s:6:"target";s:12:"text/caption";s:8:"required";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Legenda";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Caption";}}}}a:2:{s:5:"flags";a:4:{s:4:"type";s:4:"text";s:6:"filter";s:4:"text";s:10:"field_name";s:11:"description";s:6:"target";s:12:"text/content";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Observaes";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Notes";}}}}a:2:{s:5:"flags";a:5:{s:4:"type";s:12:"textarea_big";s:6:"filter";s:4:"free";s:10:"field_name";s:4:"html";s:6:"target";s:4:"html";s:8:"required";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:4:"HTML";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"HTML";}}}}a:2:{s:5:"flags";a:4:{s:4:"type";s:4:"text";s:6:"filter";s:4:"free";s:10:"field_name";s:10:"identifier";s:6:"target";s:10:"identifier";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Identificador";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Identifier";}}}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Identificao";i:2;i:1;}s:2:"en";a:1:{i:1;s:14:"Identification";}}}s:8:"children";a:3:{i:0;s:9:"~editName";i:1;s:12:"~editCaption";i:2;s:16:"~editDescription";}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:4:"HTML";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"HTML";}}}s:8:"children";a:1:{i:0;s:9:"~editHTML";}}a:3:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:6:"dialog";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:20:"Exportar componentes";i:2;i:1;}s:2:"en";a:1:{i:1;s:17:"Export components";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:20:"Exportar componentes";i:2;i:1;}s:2:"en";a:1:{i:1;s:17:"Export components";}}}}a:1:{s:8:"children";a:6:{i:0;s:6:"_start";i:1;s:9:"~editName";i:2;s:12:"~editContent";i:3;s:19:"~editComponentsList";i:4;s:13:"_submitCancel";i:5;s:4:"_end";}}a:2:{s:5:"flags";a:1:{s:6:"filter";s:28:"personaliteExport_components";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:1:{i:1;s:11:"Componentes";}s:2:"en";a:1:{i:1;s:10:"Components";}}}}a:2:{s:5:"flags";a:7:{s:4:"type";s:8:"textarea";s:6:"filter";s:4:"text";s:10:"field_name";s:11:"description";s:6:"target";s:12:"text/content";s:12:"format_force";i:1;s:10:"html_force";i:2;s:15:"ecolabore_force";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Observaes";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Notes";}}}}a:2:{s:5:"flags";a:5:{s:4:"type";s:4:"text";s:6:"filter";s:6:"regexp";s:10:"field_name";s:8:"filename";s:6:"target";s:4:"name";s:6:"regexp";s:26:"/^[a-z][a-z0-9_+-]+#e.zip$/";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:1:{i:1;s:15:"Nome do arquivo";}s:2:"en";a:1:{i:1;s:9:"File name";}}}}a:3:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:11:"dialog_tabs";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:1:{s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:19:"Personalizar objeto";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Custom object";}}}}a:4:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:7:"control";s:14:"modLayout_name";s:31:"personaliteExtras_upload_layout";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:12:"Enviar udio";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Submit audio";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:12:"Enviar udio";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Submit audio";}}}s:8:"children";a:3:{i:0;s:6:"_start";i:1;s:14:"~audioAjaxSend";i:2;s:4:"_end";}}a:3:{s:5:"flags";a:2:{s:6:"filter";s:24:"personaliteExtras_upload";s:10:"field_name";s:5:"audio";}s:5:"local";a:1:{s:6:"accept";s:7:"audio/*";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"udio (*.mp3)";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Audio (*.mp3)";}}}}a:1:{s:4:"html";s:108:"[list{ loop{]#r#n#r#n[}}]#r#n#r#n#r#n";}a:1:{s:4:"html";s:1451:"#r#n#r#n#r#n#r#n#r#n
      #r#n#r#n#r#n[if $help{ ``; nl; help(`form`); }]#r#n#r#n#r#n#r#n
      0%
      #r#n#r#n[cut:script upload_big_file]#r#n#r#nfunction uploadProgress (event)#r#n{ // uploadProgress#r#nif(event.lengthComputable){#r#nvar percent = Math.round(event.loaded * 100 / event.total);#r#ndocument.getElementById("[$name]_progressbar").value = percent;#r#ndocument.getElementById("[$name]_progressvalue").innerHTML = percent + "%";#r#n}#r#n} // uploadProgress#r#n#r#nfunction uploadBigFile ()#r#n{ // uploadBigFile#r#nvar request = new XMLHttpRequest();#r#nrequest.onreadystatechange = function(){#r#nif(request.readyState == 4){#r#nsetTimeout(function(){#r#nwindow.opener.humperstilshen.refresh();#r#nwindow.close();#r#n}, 500);#r#n}#r#n};#r#n#r#nrequest.upload.addEventListener("progress", uploadProgress, false);#r#n#r#nvar formData = new FormData();#r#nformData.append ("file", document.getElementById("[$name]").files[]0]);#r#nrequest.open("POST", "[$url]");#r#nrequest.send(formData);#r#n#r#nreturn false;#r#n} // uploadBigFile#r#n#r#n[/cut]#r#n";}a:1:{s:4:"html";s:160:"
      #r#n#r#n";}a:4:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:7:"control";s:14:"modLayout_name";s:31:"personaliteExtras_upload_layout";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:14:"Enviar arquivo";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"Submit file";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:14:"Enviar arquivo";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"Submit file";}}}s:8:"children";a:3:{i:0;s:6:"_start";i:1;s:13:"~fileAjaxSend";i:2;s:4:"_end";}}a:3:{s:5:"flags";a:2:{s:6:"filter";s:24:"personaliteExtras_upload";s:10:"field_name";s:4:"file";}s:5:"local";a:1:{s:6:"accept";s:1:"*";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Arquivo (*.*)";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"File (*.*)";}}}}a:2:{s:4:"html";s:17:"[mod:formulary]#r#n";s:6:"blocks";a:3:{s:12:"fields/start";s:35:"personaliteExtras_upload_fieldStart";s:15:"fields/file_big";s:37:"personaliteExtras_upload_fieldFileBig";s:10:"fields/end";s:33:"personaliteExtras_upload_fieldEnd";}}a:4:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:7:"control";s:14:"modLayout_name";s:31:"personaliteExtras_upload_layout";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:12:"Enviar vdeo";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Submit video";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:12:"Enviar vdeo";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Submit video";}}}s:8:"children";a:3:{i:0;s:6:"_start";i:1;s:14:"~videoAjaxSend";i:2;s:4:"_end";}}a:3:{s:5:"flags";a:2:{s:6:"filter";s:24:"personaliteExtras_upload";s:10:"field_name";s:5:"video";}s:5:"local";a:1:{s:6:"accept";s:7:"video/*";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Vdeo (*.mp4)";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Video (*.mp4)";}}}}a:1:{s:8:"children";a:4:{i:0;s:6:"_start";i:1;s:10:"_separator";i:2;s:6:"_close";i:3;s:4:"_end";}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:8:"question";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:18:"Compartilhar dados";i:2;i:1;}s:2:"en";a:2:{i:1;s:10:"Share data";i:2;i:1;}}s:7:"content";a:2:{s:2:"pt";a:4:{i:1;s:126:"#r#nOl [text $user.caption],#r#n#r#nEste formulrio solicita seus dados pessoais.#r#n#r#nGostaria de utilizar os dados do seu perfil?#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}s:2:"en";a:4:{i:1;s:124:"#r#nHello [text $user.caption],#r#n#r#nThis form is requesting your personal data.#r#n#r#nDo you wish to use data from your profile?#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:2:{s:5:"flags";a:4:{s:14:"modLayout_base";s:6:"simple";s:14:"modLayout_from";s:7:"control";s:14:"modLayout_name";s:18:"dialogFields_close";s:25:"modHumperstilshen_enabled";i:0;}s:4:"html";s:396:"[script]#r#n[if($document.field_replace){]#r#nwindow.opener.dinamicSelect.replace ("[$document.field_name]", "[text $document.field_caption]", "[$document.field_filter]", "[$document.field_content]");#r#n[}else{]#r#nwindow.opener.dinamicSelect.append ("[$document.field_name]", "[text $document.field_caption]", "[$document.field_filter]", "[$document.field_content]");#r#n[}]#r#nwindow.close();#r#n[/script]#r#n";}a:4:{s:5:"flags";a:4:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:6:"dialog";s:19:"modLayout_cacheable";i:43200;}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:29:"Adicionar campo ao formulrio";i:2;i:1;}s:2:"en";a:1:{i:1;s:22:"Add field to formulary";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:29:"Adicionar campo ao formulrio";i:2;i:1;}s:2:"en";a:1:{i:1;s:22:"Add field to formulary";}}}s:4:"html";s:25:"[mod:list][mod:formulary]";}a:2:{s:5:"flags";a:4:{s:6:"filter";s:4:"text";s:6:"target";s:7:"caption";s:10:"field_name";s:7:"caption";s:8:"required";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"Legenda do campo";i:2;i:1;}s:2:"en";a:2:{i:1;s:13:"Field caption";i:2;i:1;}}}}a:2:{s:5:"flags";a:3:{s:6:"filter";s:8:"checkbox";s:6:"target";s:8:"required";s:10:"field_name";s:8:"required";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:25:"Preenchimento obrigatrio";i:2;i:1;}s:2:"en";a:2:{i:1;s:14:"Required field";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:12:"Apresentao";i:2;i:1;}s:2:"en";a:2:{i:1;s:7:"Display";i:2;i:1;}}}}a:2:{s:5:"flags";a:4:{s:14:"modLayout_base";s:6:"simple";s:14:"modLayout_from";s:7:"control";s:14:"modLayout_name";s:17:"dialogFields_load";s:25:"modHumperstilshen_enabled";i:0;}s:4:"html";s:486:"[script]#r#n#r#n// load configuration on startup#r#ndocument.getElementById (#sfield_name#s).value = window.opener.dinamicSelect.loadName();#r#ndocument.getElementById (#sfield_content#s).value = window.opener.dinamicSelect.loadContent();#r#ndocument.controls.submit();#r#n[/script]#r#n#r#n#r#n#r#n#r#n";}a:1:{s:5:"local";a:5:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"Formulrio";i:2;i:1;}s:2:"en";a:2:{i:1;s:9:"Formulary";i:2;i:1;}}s:4:"list";s:11:"interactive";s:15:"caption-display";i:0;s:18:"caption-line-break";i:1;s:9:"formulary";s:11:"interactive";}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Endereo";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Address";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:8:"Endereo";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Address";}}}}a:1:{s:8:"children";a:8:{i:0;s:6:"_start";i:1;s:29:"personaliteFields_editCaption";i:2;s:9:"~editType";i:3;s:19:"~editUseUserAddress";i:4;s:30:"personaliteFields_editRequired";i:5;s:10:"_separator";i:6;s:11:"_saveCancel";i:7;s:4:"_end";}}a:1:{s:5:"flags";a:3:{s:6:"filter";s:28:"personaliteFields_selectType";s:10:"field_name";s:4:"type";s:13:"search_filter";s:7:"address";}}a:2:{s:5:"flags";a:4:{s:6:"filter";s:8:"checkbox";s:10:"field_name";s:16:"use_user_address";s:6:"target";s:15:"share_user_data";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:54:"Utilizar o endereo do usurio conectado se disponvel";i:2;i:1;}s:2:"en";a:1:{i:1;s:46:"Use the address from connected user if present";}}}}a:2:{s:6:"filter";s:7:"address";s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Endereo";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Address";}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:20:"Caixa de verificao";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Checkbox";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:20:"Caixa de verificao";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Checkbox";}}}}a:1:{s:8:"children";a:6:{i:0;s:6:"_start";i:1;s:29:"personaliteFields_editCaption";i:2;s:9:"~editType";i:3;s:10:"_separator";i:4;s:11:"_saveCancel";i:5;s:4:"_end";}}a:1:{s:5:"flags";a:3:{s:6:"filter";s:28:"personaliteFields_selectType";s:10:"field_name";s:4:"type";s:13:"search_filter";s:8:"checkbox";}}a:1:{s:6:"filter";s:8:"checkbox";}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:3:"No";i:2;i:1;}s:2:"en";a:1:{i:1;s:2:"No";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:3:"Sim";i:2;i:1;}s:2:"en";a:1:{i:1;s:3:"Yes";}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Data de envio";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Sending date";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:13:"Data de envio";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Sending date";}}}}a:1:{s:8:"children";a:5:{i:0;s:6:"_start";i:1;s:29:"personaliteFields_editCaption";i:2;s:10:"_separator";i:3;s:11:"_saveCancel";i:4;s:4:"_end";}}a:3:{s:6:"filter";s:7:"created";s:10:"list_index";i:200;s:7:"caption";a:2:{s:2:"pt";a:1:{i:1;s:4:"Data";}s:2:"en";a:1:{i:1;s:4:"Date";}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:3:{i:1;s:59:"[scope(`date`, $created){ text:date_formated], [$h]h[$i; }]";i:2;i:1;i:6;i:1;}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"Texto descritivo";i:2;i:1;}s:2:"en";a:1:{i:1;s:16:"Descriptive text";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:16:"Texto descritivo";i:2;i:1;}s:2:"en";a:1:{i:1;s:16:"Descriptive text";}}}}a:1:{s:8:"children";a:8:{i:0;s:6:"_start";i:1;s:29:"personaliteFields_editCaption";i:2;s:9:"~editType";i:3;s:12:"~editContent";i:4;s:27:"~editDisplayWhenEditingOnly";i:5;s:10:"_separator";i:6;s:11:"_saveCancel";i:7;s:4:"_end";}}a:2:{s:5:"flags";a:7:{s:6:"filter";s:4:"text";s:6:"target";s:7:"content";s:10:"field_name";s:7:"content";s:8:"required";i:1;s:12:"format_force";i:1;s:10:"html_force";i:2;s:15:"ecolabore_force";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Contedo";i:2;i:1;}s:2:"en";a:2:{i:1;s:7:"Content";i:2;i:1;}}}}a:2:{s:5:"flags";a:3:{s:6:"filter";s:8:"checkbox";s:6:"target";s:20:"display_when_editing";s:10:"field_name";s:20:"display_when_editing";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:43:"Exibir explicao somente em modo de edio";i:2;i:1;}s:2:"en";a:2:{i:1;s:34:"Show description when editing only";i:2;i:1;}}}}a:1:{s:5:"flags";a:3:{s:6:"filter";s:28:"personaliteFields_selectType";s:10:"field_name";s:4:"type";s:13:"search_filter";s:11:"descriptive";}}a:1:{s:6:"filter";s:11:"description";}a:2:{s:5:"flags";a:1:{s:4:"icon";s:5:"error";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:15:"E-mail invlido";i:2;i:1;}s:2:"en";a:2:{i:1;s:14:"Invalid e-mail";i:2;i:1;}}s:7:"content";a:2:{s:2:"pt";a:4:{i:1;s:136:"O contedo "[$value]" no parece ser um endereo de e-mail.#r#n#r#nNo campo "[text $field_caption]", informe um endereo de e-mail vlido.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}s:2:"en";a:4:{i:1;s:131:"#r#nThe content "[$value]" does not look an e-mail address.#r#n#r#nIn the field "[text $field_caption]", insert a valid e-mail address.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:5:"crash";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:20:"Somente um endereo!";i:2;i:1;}s:2:"en";a:2:{i:1;s:17:"Only one address!";i:2;i:1;}}s:7:"content";a:2:{s:2:"pt";a:4:{i:1;s:83:"O campo "[text $field_caption]" somente pode aceitar um nico endereo de e-mail.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}s:2:"en";a:4:{i:1;s:74:"#r#nThe field "[text $field_caption]" will accept only one e-mail address.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"Endereo de email";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Email address";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:17:"Endereo de email";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Email address";}}}}a:1:{s:8:"children";a:8:{i:0;s:6:"_start";i:1;s:29:"personaliteFields_editCaption";i:2;s:9:"~editType";i:3;s:16:"~editUseUserMail";i:4;s:30:"personaliteFields_editRequired";i:5;s:10:"_separator";i:6;s:11:"_saveCancel";i:7;s:4:"_end";}}a:1:{s:5:"flags";a:3:{s:6:"filter";s:28:"personaliteFields_selectType";s:10:"field_name";s:4:"type";s:13:"search_filter";s:4:"mail";}}a:2:{s:5:"flags";a:4:{s:6:"filter";s:8:"checkbox";s:10:"field_name";s:13:"use_user_mail";s:6:"target";s:15:"share_user_data";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:51:"Utilizar o email do usurio conectado se disponvel";i:2;i:1;}s:2:"en";a:1:{i:1;s:43:"Use the mail from connected user if present";}}}}a:2:{s:6:"filter";s:4:"mail";s:7:"caption";a:2:{s:2:"pt";a:1:{i:1;s:5:"Email";}s:2:"en";a:1:{i:1;s:5:"Email";}}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:5:"error";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:23:"Cdigo de rea invlido";i:2;i:1;}s:2:"en";a:2:{i:1;s:17:"Invalid area code";i:2;i:1;}}s:7:"content";a:2:{s:2:"pt";a:4:{i:1;s:170:"O contedo "[$value]" no um cdigo de rea vlido.#r#n#r#nNo campo "[text $field_caption]", informe um cdigo de rea.#r#n#r#nOs cdigos de rea no Brasil possuem 2 dgitos.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}s:2:"en";a:4:{i:1;s:119:"#r#nThe content "[$value]" is not a valid area code.#r#n#r#nIn the field "[text $field_caption]", insert a valid area code.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:5:"error";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:23:"Cdigo de pas invlido";i:2;i:1;}s:2:"en";a:2:{i:1;s:20:"Invalid country code";i:2;i:1;}}s:7:"content";a:2:{s:2:"pt";a:4:{i:1;s:190:"O contedo "[$value]" no um cdigo de pas vlido.#r#n#r#nNo campo "[text $field_caption]", informe um cdigo de pas, iniciando com o smbolo "+".#r#n#r#nPor exemplo, para o Brasil, use "+55".#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}s:2:"en";a:4:{i:1;s:144:"#r#nThe content "[$value]" is not a valid country code.#r#n#r#nIn the field "[text $field_caption]", insert a country code begining with "+" symbol.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:5:"error";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:27:"Nmero de telefone invlido";i:2;i:1;}s:2:"en";a:2:{i:1;s:20:"Invalid phone number";i:2;i:1;}}s:7:"content";a:2:{s:2:"pt";a:4:{i:1;s:187:"O contedo "[$value]" no um nmero de telefone vlido.#r#n#r#nNo campo "[text $field_caption]", informe um nmero de telefone.#r#n#r#nOs nmeros de telefone no Brasil possuem 8 ou 9 dgitos.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}s:2:"en";a:4:{i:1;s:125:"#r#nThe content "[$value]" is not a valid phone number.#r#n#r#nIn the field "[text $field_caption]", insert a valid phone number.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Telefone";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Phone";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:8:"Telefone";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Phone";}}}}a:1:{s:8:"children";a:8:{i:0;s:6:"_start";i:1;s:29:"personaliteFields_editCaption";i:2;s:9:"~editType";i:3;s:17:"~editUseUserPhone";i:4;s:30:"personaliteFields_editRequired";i:5;s:10:"_separator";i:6;s:11:"_saveCancel";i:7;s:4:"_end";}}a:1:{s:5:"flags";a:3:{s:6:"filter";s:28:"personaliteFields_selectType";s:10:"field_name";s:4:"type";s:13:"search_filter";s:5:"phone";}}a:2:{s:5:"flags";a:4:{s:6:"filter";s:8:"checkbox";s:10:"field_name";s:14:"use_user_phone";s:6:"target";s:15:"share_user_data";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:54:"Utilizar o telefone do usurio conectado se disponvel";i:2;i:1;}s:2:"en";a:1:{i:1;s:44:"Use the phone from connected user if present";}}}}a:2:{s:6:"filter";s:5:"phone";s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Telefone";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Phone";}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:15:"Botes de rdio";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Radio buttons";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:15:"Botes de rdio";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Radio buttons";}}}}a:1:{s:8:"children";a:9:{i:0;s:6:"_start";i:1;s:29:"personaliteFields_editCaption";i:2;s:9:"~editType";i:3;s:10:"_separator";i:4;s:31:"dialogFields_select_editExplain";i:5;s:35:"personaliteFields_select_editFields";i:6;s:10:"_separator";i:7;s:11:"_saveCancel";i:8;s:4:"_end";}}a:1:{s:5:"flags";a:3:{s:6:"filter";s:28:"personaliteFields_selectType";s:10:"field_name";s:4:"type";s:13:"search_filter";s:5:"radio";}}a:2:{s:6:"filter";s:5:"radio";s:4:"type";s:5:"radio";}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"Caixa de seleo";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Select box";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:16:"Caixa de seleo";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Select box";}}}}a:1:{s:8:"children";a:9:{i:0;s:6:"_start";i:1;s:29:"personaliteFields_editCaption";i:2;s:9:"~editType";i:3;s:10:"_separator";i:4;s:12:"~editExplain";i:5;s:11:"~editFields";i:6;s:10:"_separator";i:7;s:11:"_saveCancel";i:8;s:4:"_end";}}a:2:{s:5:"flags";a:1:{s:4:"type";s:11:"descriptive";}s:4:"text";a:1:{s:7:"content";a:1:{s:2:"pt";a:3:{i:1;s:67:"Preencha quantas opes desejar. Opes vazias sero descartadas.#r#n";i:2;i:1;i:4;i:1;}}}}a:1:{s:5:"flags";a:2:{s:6:"filter";s:35:"personaliteFields_select_editFields";s:10:"field_name";s:6:"option";}}a:1:{s:5:"flags";a:3:{s:6:"filter";s:28:"personaliteFields_selectType";s:10:"field_name";s:4:"type";s:13:"search_filter";s:6:"select";}}a:2:{s:6:"filter";s:6:"select";s:4:"type";s:6:"select";}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Separador";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Separator";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:9:"Separador";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Separator";}}}}a:1:{s:8:"children";a:6:{i:0;s:6:"_start";i:1;s:29:"personaliteFields_editCaption";i:2;s:9:"~editType";i:3;s:10:"_separator";i:4;s:11:"_saveCancel";i:5;s:4:"_end";}}a:1:{s:5:"flags";a:3:{s:6:"filter";s:28:"personaliteFields_selectType";s:10:"field_name";s:4:"type";s:13:"search_filter";s:9:"separator";}}a:2:{s:6:"filter";s:9:"separator";s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:19:"---- Separador ----";i:2;i:1;}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Status";i:2;i:1;}s:2:"en";a:1:{i:1;s:6:"Status";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:6:"Status";i:2;i:1;}s:2:"en";a:1:{i:1;s:6:"Status";}}}}a:1:{s:8:"children";a:5:{i:0;s:6:"_start";i:1;s:29:"personaliteFields_editCaption";i:2;s:10:"_separator";i:3;s:11:"_saveCancel";i:4;s:4:"_end";}}a:3:{s:6:"filter";s:6:"status";s:10:"list_index";i:0;s:7:"caption";a:2:{s:2:"pt";a:1:{i:1;s:6:"Status";}s:2:"en";a:1:{i:1;s:6:"Status";}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:14:"Caixa de texto";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Text box";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:14:"Caixa de texto";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Text box";}}}}a:1:{s:8:"children";a:7:{i:0;s:6:"_start";i:1;s:29:"personaliteFields_editCaption";i:2;s:9:"~editType";i:3;s:30:"personaliteFields_editRequired";i:4;s:10:"_separator";i:5;s:11:"_saveCancel";i:6;s:4:"_end";}}a:1:{s:5:"flags";a:3:{s:6:"filter";s:28:"personaliteFields_selectType";s:10:"field_name";s:4:"type";s:13:"search_filter";s:4:"text";}}a:1:{s:6:"filter";s:4:"text";}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:24:"rea de texto multilinha";i:2;i:1;}s:2:"en";a:1:{i:1;s:20:"Multi line text area";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:24:"rea de texto multilinha";i:2;i:1;}s:2:"en";a:1:{i:1;s:20:"Multi line text area";}}}}a:1:{s:8:"children";a:7:{i:0;s:6:"_start";i:1;s:29:"personaliteFields_editCaption";i:2;s:9:"~editType";i:3;s:30:"personaliteFields_editRequired";i:4;s:10:"_separator";i:5;s:11:"_saveCancel";i:6;s:4:"_end";}}a:1:{s:5:"flags";a:3:{s:6:"filter";s:28:"personaliteFields_selectType";s:10:"field_name";s:4:"type";s:13:"search_filter";s:8:"textarea";}}a:3:{s:6:"filter";s:8:"textarea";s:4:"type";s:8:"textarea";s:6:"format";s:3:"pre";}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:1:{i:1;s:11:"Componentes";}s:2:"en";a:1:{i:1;s:10:"Components";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Sees";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Sections";}}}}a:3:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:6:"dialog";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:20:"Instalar componentes";i:2;i:1;}s:2:"en";a:1:{i:1;s:18:"Install components";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:20:"Instalar componentes";i:2;i:1;}s:2:"en";a:1:{i:1;s:18:"Install components";}}}}a:1:{s:8:"children";a:4:{i:0;s:6:"_start";i:1;s:10:"~editFiles";i:2;s:13:"_submitCancel";i:3;s:4:"_end";}}a:2:{s:5:"flags";a:2:{s:4:"type";s:4:"file";s:10:"field_name";s:5:"files";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:1:{i:1;s:11:"Componentes";}s:2:"en";a:1:{i:1;s:10:"Components";}}}}a:1:{s:8:"children";a:4:{i:0;s:6:"_start";i:1;s:17:"~selectComponents";i:2;s:13:"_submitCancel";i:3;s:4:"_end";}}a:2:{s:5:"flags";a:2:{s:6:"filter";s:35:"personaliteInstall_selectComponents";s:10:"field_name";s:10:"components";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:1:{i:1;s:11:"Componentes";}s:2:"en";a:1:{i:1;s:10:"Components";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:0:"";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"Automtico";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Automatic";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:1:"0";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"Sem preenchimento";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"No padding";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:7:"0.12rem";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Pequeno";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Small";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:7:"0.25rem";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"0.25 linhas";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"0.25 lines";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:6:"0.5rem";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"0.5 linhas";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"0.5 lines";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:7:"0.75rem";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"0.75 linhas";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"0.75 lines";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:7:"0.83rem";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"0.83 linhas";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"0.83 lines";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:7:"0.91rem";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"0.91 linhas";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"0.91 lines";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:4:"1rem";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"1 linha";i:2;i:1;}s:2:"en";a:1:{i:1;s:6:"1 line";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:6:"1.1rem";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"1.1 linha";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"1.1 line";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:7:"1.25rem";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"1.25 linha";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"1.25 line";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:6:"1.5rem";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"1.5 linha";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"1.5 line";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:4:"2rem";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"2 linhas";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"2 lines";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:6:"2.5rem";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"2.5 linhas";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"2.5 lines";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:4:"3rem";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"3 linhas";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"3 lines";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:6:"bottom";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Inferior";i:2;i:1;}s:2:"en";a:1:{i:1;s:6:"Bottom";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:6:"center";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:12:"Centralizado";i:2;i:1;}s:2:"en";a:1:{i:1;s:6:"Center";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:0:"";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:" esquerda";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"Left";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:5:"right";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:" direita";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Right";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:0:"";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Superior";i:2;i:1;}s:2:"en";a:1:{i:1;s:3:"Top";}}}}a:3:{s:5:"flags";a:6:{s:4:"type";s:6:"select";s:6:"filter";s:6:"select";s:10:"field_name";s:7:"rounded";s:6:"target";s:23:"local/box-border-radius";s:13:"default_value";s:0:"";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:19:"Cantos arredondados";i:2;i:1;}s:2:"en";a:1:{i:1;s:15:"Rounded corners";}}}s:8:"children";a:10:{i:0;s:8:"~000auto";i:1;s:19:"~boxBorderRadiusOff";i:2;s:7:"~025rem";i:3;s:7:"~050rem";i:4;s:7:"~075rem";i:5;s:7:"~100rem";i:6;s:7:"~125rem";i:7;s:7:"~150rem";i:8;s:7:"~200rem";i:9;s:22:"~boxBorderRadiusElipse";}}a:2:{s:5:"flags";a:1:{s:5:"value";s:3:"50%";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Elipse";i:2;i:1;}s:2:"en";a:1:{i:1;s:6:"Elipse";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:1:"0";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:23:"Sem cantos arredondados";i:2;i:1;}s:2:"en";a:1:{i:1;s:18:"No rounded corners";}}}}a:2:{s:5:"flags";a:6:{s:4:"type";s:8:"checkbox";s:6:"filter";s:8:"checkbox";s:10:"field_name";s:11:"box_display";s:6:"target";s:17:"local/box-display";s:10:"true_value";s:6:"inline";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:26:"Legenda na linha do mdulo";i:2;i:1;}s:2:"en";a:1:{i:1;s:22:"Caption in module line";}}}}a:3:{s:5:"flags";a:6:{s:4:"type";s:6:"select";s:6:"filter";s:6:"select";s:10:"field_name";s:4:"size";s:6:"target";s:19:"local/box-font-size";s:13:"default_value";s:0:"";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"Tamanho do texto";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Text size";}}}s:8:"children";a:11:{i:0;s:8:"~000auto";i:1;s:7:"~075rem";i:2;s:7:"~083rem";i:3;s:7:"~091rem";i:4;s:7:"~100rem";i:5;s:7:"~110rem";i:6;s:7:"~125rem";i:7;s:7:"~150rem";i:8;s:7:"~200rem";i:9;s:7:"~250rem";i:10;s:7:"~300rem";}}a:3:{s:5:"flags";a:6:{s:4:"type";s:6:"select";s:6:"filter";s:6:"select";s:10:"field_name";s:7:"padding";s:6:"target";s:17:"local/box-padding";s:13:"default_value";s:0:"";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:12:"Passe-partut";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Passe-partut";}}}s:8:"children";a:12:{i:0;s:8:"~000auto";i:1;s:13:"~000noPadding";i:2;s:7:"~012rem";i:3;s:7:"~025rem";i:4;s:7:"~050rem";i:5;s:7:"~075rem";i:6;s:7:"~100rem";i:7;s:7:"~125rem";i:8;s:7:"~150rem";i:9;s:7:"~200rem";i:10;s:7:"~250rem";i:11;s:7:"~300rem";}}a:3:{s:5:"flags";a:6:{s:4:"type";s:6:"select";s:6:"filter";s:6:"select";s:10:"field_name";s:6:"scheme";s:6:"target";s:16:"local/box-scheme";s:13:"default_value";s:0:"";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"Esquema de cores";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Color scheme";}}}s:8:"children";a:7:{i:0;s:14:"~boxSchemeAuto";i:1;s:15:"~boxSchemePanel";i:2;s:19:"~boxSchemeSpotlight";i:3;s:14:"~boxSchemeCard";i:4;s:19:"~boxSchemeFormulary";i:5;s:16:"~boxSchemeSystem";i:6;s:13:"~boxSchemeNav";}}a:2:{s:5:"flags";a:1:{s:5:"value";s:0:"";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:12:"(Automtico)";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"(Automatic)";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:4:"card";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Carto";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"Card";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"Formulrio";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Formulary";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:3:"nav";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:18:"Barra de navegao";i:2;i:1;}s:2:"en";a:1:{i:1;s:14:"Navigation bar";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:5:"panel";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Painel";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Panel";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:9:"spotlight";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Destaque";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Spotlight";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:6:"system";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Sistema";i:2;i:1;}s:2:"en";a:1:{i:1;s:6:"System";}}}}a:3:{s:5:"flags";a:6:{s:4:"type";s:6:"select";s:6:"filter";s:6:"select";s:10:"field_name";s:6:"shadow";s:6:"target";s:16:"local/box-shadow";s:13:"default_value";s:0:"";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:15:"Sombra da caixa";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Box shadow";}}}s:8:"children";a:4:{i:0;s:14:"~boxShadowAuto";i:1;s:13:"~boxShadowOff";i:2;s:12:"~boxShadowOn";i:3;s:15:"~boxShadowSmoke";}}a:2:{s:5:"flags";a:1:{s:5:"value";s:0:"";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:12:"(Automtico)";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"(Automatic)";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:14:"box-shadow-off";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"Sem sombreamento";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"No shadow";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:13:"box-shadow-on";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"Com sombreamento";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"With shadow";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:9:"img-smoke";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Efeito fumaa";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Smoke effect";}}}}a:2:{s:5:"flags";a:4:{s:4:"type";s:4:"text";s:6:"filter";s:4:"text";s:10:"field_name";s:7:"caption";s:6:"target";s:12:"text/caption";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Legenda";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Caption";}}}}a:2:{s:5:"flags";a:5:{s:4:"type";s:8:"checkbox";s:6:"filter";s:8:"checkbox";s:10:"field_name";s:15:"caption-display";s:6:"target";s:21:"local/caption-display";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:14:"Exibir legenda";i:2;i:1;}s:2:"en";a:1:{i:1;s:15:"Display caption";}}}}a:2:{s:5:"flags";a:5:{s:4:"type";s:8:"checkbox";s:6:"filter";s:8:"checkbox";s:10:"field_name";s:14:"caption_legend";s:6:"target";s:20:"local/caption-legend";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:23:"Legenda abaixo da caixa";i:2;i:1;}s:2:"en";a:1:{i:1;s:21:"Caption below the box";}}}}a:4:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:6:"dialog";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:1:{s:7:"content";a:2:{s:2:"pt";a:3:{i:1;s:45:"Este mdulo no possui opes de configurao";i:2;i:1;i:4;i:1;}s:2:"en";a:2:{i:1;s:32:"This module is not configurable.";i:4;i:1;}}}s:8:"children";a:4:{i:0;s:6:"_start";i:1;s:10:"_separator";i:2;s:6:"_close";i:3;s:4:"_end";}}a:2:{s:5:"flags";a:2:{s:6:"filter";s:18:"personaliteDetails";s:10:"field_name";s:7:"details";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Detalhes";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Details";}}}}a:3:{s:5:"flags";a:6:{s:4:"type";s:6:"select";s:6:"filter";s:6:"select";s:10:"field_name";s:24:"details-horizontal-align";s:6:"target";s:30:"local/details-horizontal-align";s:13:"default_value";s:0:"";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:34:"Alinhamento horizontal do contedo";i:2;i:1;}s:2:"en";a:1:{i:1;s:28:"Content horizontal alignment";}}}s:8:"children";a:3:{i:0;s:10:"~alignLeft";i:1;s:12:"~alignCenter";i:2;s:11:"~alignRight";}}a:3:{s:5:"flags";a:6:{s:4:"type";s:6:"select";s:6:"filter";s:6:"select";s:10:"field_name";s:22:"details-vertical-align";s:6:"target";s:28:"local/details-vertical-align";s:13:"default_value";s:0:"";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:32:"Alinhamento vertical do contedo";i:2;i:1;}s:2:"en";a:1:{i:1;s:26:"Content vertical alignment";}}}s:8:"children";a:3:{i:0;s:9:"~alignTop";i:1;s:12:"~alignCenter";i:2;s:12:"~alignBottom";}}a:4:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:11:"dialog_tabs";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:1:{s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:19:"Personalizar mdulo";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Custom module";}}}s:8:"children";a:8:{i:0;s:6:"_start";i:1;s:11:"~tabCaption";i:2;s:12:"~tabPosition";i:3;s:9:"~tabStyle";i:4;s:8:"~tabList";i:5;s:11:"~tabDetails";i:6;s:11:"~tabEffects";i:7;s:4:"_end";}}a:3:{s:5:"flags";a:6:{s:4:"type";s:6:"select";s:6:"filter";s:6:"select";s:10:"field_name";s:11:"form_layout";s:6:"target";s:17:"local/form-layout";s:13:"default_value";s:4:"grid";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Layout";i:2;i:1;}s:2:"en";a:1:{i:1;s:6:"Layout";}}}s:8:"children";a:4:{i:0;s:21:"~formularyLayoutStack";i:1;s:20:"~formularyLayoutGrid";i:2;s:19:"~formularyLayoutBox";i:3;s:22:"~formularyLayoutInline";}}a:2:{s:5:"flags";a:1:{s:5:"value";s:3:"box";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Caixa";i:2;i:1;}s:2:"en";a:1:{i:1;s:3:"Box";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:4:"grid";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Grade";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"Grid";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:6:"inline";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Em linha";i:2;i:1;}s:2:"en";a:1:{i:1;s:6:"Inline";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:5:"stack";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Pilha";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Stack";}}}}a:2:{s:5:"flags";a:9:{s:4:"type";s:5:"range";s:6:"filter";s:7:"integer";s:10:"field_name";s:20:"img_filter_grayscale";s:6:"target";s:26:"local/img-filter-grayscale";s:9:"min_input";i:0;s:9:"max_input";i:100;s:4:"step";i:5;s:13:"default_value";i:0;s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"Escala de cinzas";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Gray scale";}}}}a:2:{s:5:"flags";a:9:{s:4:"type";s:5:"range";s:6:"filter";s:7:"integer";s:10:"field_name";s:16:"img_filter_sepia";s:6:"target";s:22:"local/img-filter-sepia";s:9:"min_input";i:0;s:9:"max_input";i:100;s:4:"step";i:5;s:13:"default_value";i:0;s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Spia";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Sepia";}}}}a:3:{s:5:"flags";a:6:{s:4:"type";s:6:"select";s:6:"filter";s:6:"select";s:10:"field_name";s:10:"img_format";s:6:"target";s:15:"local/img-shape";s:13:"default_value";s:0:"";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Formato";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Shape";}}}s:8:"children";a:5:{i:0;s:13:"~imgShapeAuto";i:1;s:15:"~imgShapeElipse";i:2;s:18:"~imgShapeThumbnail";i:3;s:15:"~imgShapeSquare";i:4;s:15:"~imgShapeCircle";}}a:2:{s:5:"flags";a:1:{s:5:"value";s:0:"";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:25:"Manter proporo original";i:2;i:1;}s:2:"en";a:1:{i:1;s:24:"Keep original proportion";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:6:"circle";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Crculo";i:2;i:1;}s:2:"en";a:1:{i:1;s:6:"Circle";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:6:"elipse";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Elipse";i:2;i:1;}s:2:"en";a:1:{i:1;s:6:"Elipse";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:6:"square";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Quadrado";i:2;i:1;}s:2:"en";a:1:{i:1;s:6:"Square";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:9:"thumbnail";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Slide";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Slide";}}}}a:2:{s:5:"flags";a:6:{s:4:"type";s:8:"checkbox";s:6:"filter";s:8:"checkbox";s:10:"field_name";s:9:"img-smoke";s:6:"target";s:15:"local/img-smoke";s:10:"true_value";s:9:"img-smoke";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Efeito fumaa";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Smoke effect";}}}}a:3:{s:5:"flags";a:6:{s:4:"type";s:6:"select";s:6:"filter";s:6:"select";s:10:"field_name";s:10:"list-align";s:6:"target";s:16:"local/list-align";s:13:"default_value";s:0:"";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"ltimos itens";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Last items";}}}s:8:"children";a:3:{i:0;s:10:"~alignLeft";i:1;s:12:"~alignCenter";i:2;s:11:"~alignRight";}}a:2:{s:5:"flags";a:1:{s:5:"value";s:1:"1";}s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"en";a:1:{i:1;s:1:"1";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:1:"2";}s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"en";a:1:{i:1;s:1:"2";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:1:"3";}s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"en";a:1:{i:1;s:1:"3";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:1:"4";}s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"en";a:1:{i:1;s:1:"4";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:1:"5";}s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"en";a:1:{i:1;s:1:"5";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:1:"6";}s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"en";a:1:{i:1;s:1:"6";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:0:"";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:12:"(Automtico)";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"(Automatic)";}}}}a:3:{s:5:"flags";a:6:{s:4:"type";s:6:"select";s:6:"filter";s:6:"select";s:10:"field_name";s:19:"columns_extra_large";s:6:"target";s:12:"local/col-xl";s:13:"default_value";s:0:"";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:12:"Colunas (TV)";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Columns (TV)";}}}s:8:"children";a:7:{i:0;s:16:"~listColumnsAuto";i:1;s:13:"~listColumns1";i:2;s:13:"~listColumns2";i:3;s:13:"~listColumns3";i:4;s:13:"~listColumns4";i:5;s:13:"~listColumns5";i:6;s:13:"~listColumns6";}}a:3:{s:5:"flags";a:6:{s:4:"type";s:6:"select";s:6:"filter";s:6:"select";s:10:"field_name";s:13:"columns_large";s:6:"target";s:12:"local/col-lg";s:13:"default_value";s:0:"";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"Colunas (Desktop)";i:2;i:1;}s:2:"en";a:1:{i:1;s:17:"Columns (Desktop)";}}}s:8:"children";a:7:{i:0;s:16:"~listColumnsAuto";i:1;s:13:"~listColumns1";i:2;s:13:"~listColumns2";i:3;s:13:"~listColumns3";i:4;s:13:"~listColumns4";i:5;s:13:"~listColumns5";i:6;s:13:"~listColumns6";}}a:3:{s:5:"flags";a:6:{s:4:"type";s:6:"select";s:6:"filter";s:6:"select";s:10:"field_name";s:14:"columns_medium";s:6:"target";s:12:"local/col-md";s:13:"default_value";s:0:"";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"Colunas (Tablet)";i:2;i:1;}s:2:"en";a:1:{i:1;s:16:"Columns (Tablet)";}}}s:8:"children";a:7:{i:0;s:16:"~listColumnsAuto";i:1;s:13:"~listColumns1";i:2;s:13:"~listColumns2";i:3;s:13:"~listColumns3";i:4;s:13:"~listColumns4";i:5;s:13:"~listColumns5";i:6;s:13:"~listColumns6";}}a:3:{s:5:"flags";a:6:{s:4:"type";s:6:"select";s:6:"filter";s:6:"select";s:10:"field_name";s:13:"columns_small";s:6:"target";s:12:"local/col-sm";s:13:"default_value";s:0:"";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"Colunas (Celular)";i:2;i:1;}s:2:"en";a:1:{i:1;s:16:"Columns (Mobile)";}}}s:8:"children";a:7:{i:0;s:16:"~listColumnsAuto";i:1;s:13:"~listColumns1";i:2;s:13:"~listColumns2";i:3;s:13:"~listColumns3";i:4;s:13:"~listColumns4";i:5;s:13:"~listColumns5";i:6;s:13:"~listColumns6";}}a:2:{s:5:"flags";a:1:{s:5:"value";s:0:"";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"(Sem espaamento)";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"(No spacing)";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:3:"012";}s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"en";a:1:{i:1;s:15:"0.125rem (~2px)";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:3:"025";}s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"en";a:1:{i:1;s:14:"0.25rem (~4px)";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:3:"037";}s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"en";a:1:{i:1;s:15:"0.375rem (~6px)";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:3:"050";}s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"en";a:1:{i:1;s:13:"0.5rem (~8px)";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:3:"075";}s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"en";a:1:{i:1;s:15:"0.75rem (~12px)";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:3:"100";}s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"en";a:1:{i:1;s:12:"1rem (~16px)";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:3:"125";}s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"en";a:1:{i:1;s:7:"1.25rem";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:3:"150";}s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"en";a:1:{i:1;s:6:"1.5rem";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:3:"200";}s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"en";a:1:{i:1;s:12:"2rem (~32px)";}}}}a:3:{s:5:"flags";a:6:{s:4:"type";s:6:"select";s:6:"filter";s:6:"select";s:10:"field_name";s:24:"details_vertical_spacing";s:6:"target";s:21:"local/list-column-gap";s:13:"default_value";s:0:"";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:20:"Espaamento vertical";i:2;i:1;}s:2:"en";a:1:{i:1;s:16:"Vertical spacing";}}}s:8:"children";a:11:{i:0;s:8:"~000auto";i:1;s:11:"~listGap000";i:2;s:11:"~listGap012";i:3;s:11:"~listGap025";i:4;s:11:"~listGap037";i:5;s:11:"~listGap050";i:6;s:11:"~listGap075";i:7;s:11:"~listGap100";i:8;s:11:"~listGap125";i:9;s:11:"~listGap150";i:10;s:11:"~listGap200";}}a:3:{s:5:"flags";a:6:{s:4:"type";s:6:"select";s:6:"filter";s:6:"select";s:10:"field_name";s:26:"details_horizontal_spacing";s:6:"target";s:18:"local/list-row-gap";s:13:"default_value";s:0:"";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:22:"Espaamento horizontal";i:2;i:1;}s:2:"en";a:1:{i:1;s:18:"Horizontal spacing";}}}s:8:"children";a:11:{i:0;s:8:"~000auto";i:1;s:11:"~listGap000";i:2;s:11:"~listGap012";i:3;s:11:"~listGap025";i:4;s:11:"~listGap037";i:5;s:11:"~listGap050";i:6;s:11:"~listGap075";i:7;s:11:"~listGap100";i:8;s:11:"~listGap125";i:9;s:11:"~listGap150";i:10;s:11:"~listGap200";}}a:3:{s:5:"flags";a:6:{s:4:"type";s:6:"select";s:6:"filter";s:6:"select";s:10:"field_name";s:9:"list_type";s:6:"target";s:17:"local/list-layout";s:13:"default_value";s:0:"";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"Dispor elementos";i:2;i:1;}s:2:"en";a:1:{i:1;s:16:"Lay out elements";}}}s:8:"children";a:4:{i:0;s:17:"~listLayoutInline";i:1;s:15:"~listLayoutGrid";i:2;s:18:"~listLayoutColumns";i:3;s:15:"~listLayoutFlex";}}a:2:{s:5:"flags";a:1:{s:5:"value";s:7:"columns";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Colunas";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Columns";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:4:"flex";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:4:"Flex";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"Flex";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:0:"";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Grade";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"Grid";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:6:"inline";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Em linha";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"In line";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:1:"0";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"Sem margem";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"No margin";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:0:"";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Margem padro";i:2;i:1;}s:2:"en";a:1:{i:1;s:14:"Default margin";}}}}a:3:{s:5:"flags";a:6:{s:4:"type";s:6:"select";s:6:"filter";s:6:"select";s:10:"field_name";s:13:"margin_bottom";s:6:"target";s:24:"local/mod-padding-bottom";s:13:"default_value";s:0:"";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:15:"Margem inferior";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Bottom margin";}}}s:8:"children";a:11:{i:0;s:15:"~modPaddingAuto";i:1;s:12:"~modPadding0";i:2;s:7:"~025rem";i:3;s:7:"~050rem";i:4;s:7:"~075rem";i:5;s:7:"~100rem";i:6;s:7:"~125rem";i:7;s:7:"~150rem";i:8;s:7:"~200rem";i:9;s:7:"~250rem";i:10;s:7:"~300rem";}}a:3:{s:5:"flags";a:6:{s:4:"type";s:6:"select";s:6:"filter";s:6:"select";s:10:"field_name";s:11:"margin_left";s:6:"target";s:22:"local/mod-padding-left";s:13:"default_value";s:0:"";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:15:"Margem esquerda";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"Left margin";}}}s:8:"children";a:11:{i:0;s:15:"~modPaddingAuto";i:1;s:12:"~modPadding0";i:2;s:7:"~025rem";i:3;s:7:"~050rem";i:4;s:7:"~075rem";i:5;s:7:"~100rem";i:6;s:7:"~125rem";i:7;s:7:"~150rem";i:8;s:7:"~200rem";i:9;s:7:"~250rem";i:10;s:7:"~300rem";}}a:3:{s:5:"flags";a:6:{s:4:"type";s:6:"select";s:6:"filter";s:6:"select";s:10:"field_name";s:12:"margin_right";s:6:"target";s:23:"local/mod-padding-right";s:13:"default_value";s:0:"";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:14:"Margem direita";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Right margin";}}}s:8:"children";a:11:{i:0;s:15:"~modPaddingAuto";i:1;s:12:"~modPadding0";i:2;s:7:"~025rem";i:3;s:7:"~050rem";i:4;s:7:"~075rem";i:5;s:7:"~100rem";i:6;s:7:"~125rem";i:7;s:7:"~150rem";i:8;s:7:"~200rem";i:9;s:7:"~250rem";i:10;s:7:"~300rem";}}a:3:{s:5:"flags";a:6:{s:4:"type";s:6:"select";s:6:"filter";s:6:"select";s:10:"field_name";s:10:"margin_top";s:6:"target";s:21:"local/mod-padding-top";s:13:"default_value";s:0:"";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:15:"Margem superior";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Top margin";}}}s:8:"children";a:11:{i:0;s:15:"~modPaddingAuto";i:1;s:12:"~modPadding0";i:2;s:7:"~025rem";i:3;s:7:"~050rem";i:4;s:7:"~075rem";i:5;s:7:"~100rem";i:6;s:7:"~125rem";i:7;s:7:"~150rem";i:8;s:7:"~200rem";i:9;s:7:"~250rem";i:10;s:7:"~300rem";}}a:3:{s:5:"flags";a:6:{s:4:"type";s:6:"select";s:6:"filter";s:6:"select";s:10:"field_name";s:8:"position";s:6:"target";s:14:"local/position";s:13:"default_value";s:0:"";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"Disposio";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"Disposition";}}}s:8:"children";a:6:{i:0;s:18:"~modPositionInline";i:1;s:16:"~modPositionLeft";i:2;s:18:"~modPositionCenter";i:3;s:17:"~modPositionRight";i:4;s:21:"~modPositionFloatLeft";i:5;s:22:"~modPositionFloatRight";}}a:2:{s:5:"flags";a:1:{s:5:"value";s:6:"center";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:12:"Centralizado";i:2;i:1;}s:2:"en";a:1:{i:1;s:6:"Center";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:10:"float-left";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:18:"Flutuar esquerda";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Float left";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:11:"float-right";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"Flutuar direita";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"Float right";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:6:"inline";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"Na linha do texto";i:2;i:1;}s:2:"en";a:1:{i:1;s:6:"Inline";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:0:"";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:" esquerda";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"Left";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:5:"right";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:" direita";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Right";}}}}a:3:{s:5:"flags";a:6:{s:4:"type";s:6:"select";s:6:"filter";s:6:"select";s:10:"field_name";s:8:"semantic";s:6:"target";s:18:"local/mod-semantic";s:13:"default_value";s:0:"";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:18:"Marcao semntica";i:2;i:1;}s:2:"en";a:1:{i:1;s:15:"Semantic markup";}}}s:8:"children";a:7:{i:0;s:16:"~modSemanticNone";i:1;s:15:"~modSemanticNav";i:2;s:18:"~modSemanticHeader";i:3;s:19:"~modSemanticArticle";i:4;s:19:"~modSemanticAddress";i:5;s:18:"~modSemanticFooter";i:6;s:17:"~modSemanticAside";}}a:2:{s:5:"flags";a:1:{s:5:"value";s:7:"address";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"Contatos do autor";i:2;i:1;}s:2:"en";a:1:{i:1;s:15:"Author contacts";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:7:"article";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:18:"Contedo principal";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Main content";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:5:"aside";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:19:"Contedo secundrio";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Aside content";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:6:"footer";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Rodap";i:2;i:1;}s:2:"en";a:1:{i:1;s:6:"Footer";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:6:"header";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Cabealho";i:2;i:1;}s:2:"en";a:1:{i:1;s:6:"Header";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:3:"nav";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Navegao";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Navigation";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:0:"";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:1:{i:1;s:9:"(Nenhuma)";}s:2:"en";a:1:{i:1;s:6:"(None)";}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:1:"1";}s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:4:"1/12";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:2:"10";}s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:5:"10/12";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:2:"11";}s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:5:"11/12";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:2:"12";}s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:12:"12/12 (100%)";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:1:"2";}s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:4:"2/12";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:1:"3";}s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:10:"3/12 (25%)";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:1:"4";}s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:4:"4/12";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:1:"5";}s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:4:"5/12";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:1:"6";}s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:10:"6/12 (50%)";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:1:"7";}s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:4:"7/12";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:1:"8";}s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:4:"8/12";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:1:"9";}s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:4:"9/12";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:0:"";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:12:"(Automtico)";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"(Automatic)";}}}}a:3:{s:5:"flags";a:6:{s:4:"type";s:6:"select";s:6:"filter";s:6:"select";s:10:"field_name";s:5:"wd_xl";s:6:"target";s:11:"local/wd-xl";s:13:"default_value";s:0:"";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:12:"Largura (TV)";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Width (TV)";}}}s:8:"children";a:14:{i:0;s:13:"~modWidthAuto";i:1;s:11:"~modWidth12";i:2;s:11:"~modWidth11";i:3;s:11:"~modWidth10";i:4;s:10:"~modWidth9";i:5;s:10:"~modWidth8";i:6;s:10:"~modWidth7";i:7;s:10:"~modWidth6";i:8;s:10:"~modWidth5";i:9;s:10:"~modWidth4";i:10;s:10:"~modWidth3";i:11;s:10:"~modWidth2";i:12;s:10:"~modWidth1";i:13;s:15:"~modWidthhidden";}}a:2:{s:5:"flags";a:1:{s:5:"value";s:6:"hidden";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Ocultar";i:2;i:1;}s:2:"en";a:1:{i:1;s:6:"Hidden";}}}}a:3:{s:5:"flags";a:6:{s:4:"type";s:6:"select";s:6:"filter";s:6:"select";s:10:"field_name";s:5:"wd_lg";s:6:"target";s:11:"local/wd-lg";s:13:"default_value";s:0:"";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"Largura (Desktop)";i:2;i:1;}s:2:"en";a:1:{i:1;s:15:"Width (Desktop)";}}}s:8:"children";a:14:{i:0;s:13:"~modWidthAuto";i:1;s:11:"~modWidth12";i:2;s:11:"~modWidth11";i:3;s:11:"~modWidth10";i:4;s:10:"~modWidth9";i:5;s:10:"~modWidth8";i:6;s:10:"~modWidth7";i:7;s:10:"~modWidth6";i:8;s:10:"~modWidth5";i:9;s:10:"~modWidth4";i:10;s:10:"~modWidth3";i:11;s:10:"~modWidth2";i:12;s:10:"~modWidth1";i:13;s:15:"~modWidthhidden";}}a:3:{s:5:"flags";a:6:{s:4:"type";s:6:"select";s:6:"filter";s:6:"select";s:10:"field_name";s:5:"wd_md";s:6:"target";s:11:"local/wd-md";s:13:"default_value";s:0:"";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"Largura (Tablet)";i:2;i:1;}s:2:"en";a:1:{i:1;s:14:"Width (Tablet)";}}}s:8:"children";a:14:{i:0;s:13:"~modWidthAuto";i:1;s:11:"~modWidth12";i:2;s:11:"~modWidth11";i:3;s:11:"~modWidth10";i:4;s:10:"~modWidth9";i:5;s:10:"~modWidth8";i:6;s:10:"~modWidth7";i:7;s:10:"~modWidth6";i:8;s:10:"~modWidth5";i:9;s:10:"~modWidth4";i:10;s:10:"~modWidth3";i:11;s:10:"~modWidth2";i:12;s:10:"~modWidth1";i:13;s:15:"~modWidthhidden";}}a:3:{s:5:"flags";a:6:{s:4:"type";s:6:"select";s:6:"filter";s:6:"select";s:10:"field_name";s:5:"wd_sm";s:6:"target";s:11:"local/wd-sm";s:13:"default_value";s:0:"";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"Largura (Celular)";i:2;i:1;}s:2:"en";a:1:{i:1;s:14:"Width (Mobile)";}}}s:8:"children";a:14:{i:0;s:13:"~modWidthAuto";i:1;s:11:"~modWidth12";i:2;s:11:"~modWidth11";i:3;s:11:"~modWidth10";i:4;s:10:"~modWidth9";i:5;s:10:"~modWidth8";i:6;s:10:"~modWidth7";i:7;s:10:"~modWidth6";i:8;s:10:"~modWidth5";i:9;s:10:"~modWidth4";i:10;s:10:"~modWidth3";i:11;s:10:"~modWidth2";i:12;s:10:"~modWidth1";i:13;s:15:"~modWidthhidden";}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Legenda";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Caption";}}}s:8:"children";a:4:{i:0;s:8:"~caption";i:1;s:15:"~captionDisplay";i:2;s:11:"~boxDisplay";i:3;s:12:"~modSemantic";}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Detalhes";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Details";}}}s:8:"children";a:1:{i:0;s:8:"~details";}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Efeitos";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Effects";}}}s:8:"children";a:4:{i:0;s:9:"~imgShape";i:1;s:9:"~imgSmoke";i:2;s:15:"~imgFilterSepia";i:3;s:19:"~imgFilterGrayscale";}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"Formulrio";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Formulary";}}}s:8:"children";a:1:{i:0;s:16:"~formularyLayout";}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Lista";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"List";}}}s:8:"children";a:10:{i:0;s:11:"~listLayout";i:1;s:10:"~listAlign";i:2;s:17:"~listColumnsSmall";i:3;s:18:"~listColumnsMedium";i:4;s:17:"~listColumnsLarge";i:5;s:22:"~listColumnsExtraLarge";i:6;s:11:"~listGapRow";i:7;s:14:"~listGapColumn";i:8;s:23:"~detailsHorizontalAlign";i:9;s:21:"~detailsVerticalAlign";}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"Disposio";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"Disposition";}}}s:8:"children";a:9:{i:0;s:12:"~modPosition";i:1;s:14:"~modWidthSmall";i:2;s:15:"~modWidthMedium";i:3;s:14:"~modWidthLarge";i:4;s:19:"~modWidthExtraLarge";i:5;s:14:"~modPaddingTop";i:6;s:16:"~modPaddingRight";i:7;s:17:"~modPaddingBottom";i:8;s:15:"~modPaddingLeft";}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Estilo";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Style";}}}s:8:"children";a:5:{i:0;s:10:"~boxScheme";i:1;s:11:"~boxPadding";i:2;s:12:"~boxFontSize";i:3;s:10:"~boxShadow";i:4;s:16:"~boxBorderRadius";}}a:3:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:11:"dialog_tabs";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:2:{s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:31:"Gerenciar componentes do modelo";i:2;i:1;}s:2:"en";a:1:{i:1;s:26:"Manage template components";}}s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:31:"Gerenciar componentes do modelo";i:2;i:1;}s:2:"en";a:1:{i:1;s:26:"Manage template components";}}}}a:1:{s:8:"children";a:19:{i:0;s:6:"_start";i:1;s:11:"~tabLayouts";i:2;s:11:"~tabModules";i:3;s:9:"~tabLists";i:4;s:11:"~tabDetails";i:5;s:10:"~tabFields";i:6;s:9:"~tabFonts";i:7;s:9:"~tabIcons";i:8;s:10:"~tabLabels";i:9;s:16:"~tabLabelsAction";i:10;s:14:"~tabLabelsDate";i:11;s:15:"~tabLabelsField";i:12;s:14:"~tabLabelsLang";i:13;s:20:"~tabLabelsNavigation";i:14;s:12:"~tabPalettes";i:15;s:11:"~tabScripts";i:16;s:10:"~tabStyles";i:17;s:10:"~tabThemes";i:18;s:4:"_end";}}a:2:{s:5:"flags";a:2:{s:6:"filter";s:27:"personaliteTemplate_manager";s:6:"folder";s:7:"details";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:23:"Detalhes personalizados";i:2;i:1;}s:2:"en";a:1:{i:1;s:14:"Custom details";}}}}a:2:{s:5:"flags";a:2:{s:6:"filter";s:27:"personaliteTemplate_manager";s:6:"folder";s:6:"fields";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:35:"Campos de formulrio personalizados";i:2;i:1;}s:2:"en";a:1:{i:1;s:23:"Custom formulary fields";}}}}a:2:{s:5:"flags";a:2:{s:6:"filter";s:27:"personaliteTemplate_manager";s:6:"folder";s:5:"fonts";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:21:"Fontes personalizadas";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Custom fonts";}}}}a:2:{s:5:"flags";a:2:{s:6:"filter";s:27:"personaliteTemplate_manager";s:6:"folder";s:5:"icons";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:21:"cones personalizados";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Custom icons";}}}}a:2:{s:5:"flags";a:2:{s:6:"filter";s:29:"personaliteFields_descriptive";s:6:"folder";s:6:"labels";}s:4:"text";a:1:{s:7:"content";a:1:{s:2:"pt";a:2:{i:1;s:162:"Para editar as etiquetas de textos em outro idioma, adicione outros idiomas ao seu ambiente e alterne para o idioma desejado antes de iniciar seu trabalho aqui.#r#n";i:2;i:1;}}}}a:2:{s:5:"flags";a:2:{s:6:"filter";s:27:"personaliteTemplate_manager";s:6:"folder";s:13:"labels/action";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:29:"Etiquetas de texto para aes";i:2;i:1;}s:2:"en";a:1:{i:1;s:30:"Custom text labels for actions";}}}}a:2:{s:5:"flags";a:2:{s:6:"filter";s:27:"personaliteTemplate_manager";s:6:"folder";s:11:"labels/date";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:29:"Etiquetas de texto para datas";i:2;i:1;}s:2:"en";a:1:{i:1;s:28:"Custom text labels for dates";}}}}a:2:{s:5:"flags";a:2:{s:6:"filter";s:27:"personaliteTemplate_manager";s:6:"folder";s:12:"labels/field";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:30:"Etiquetas de texto para campos";i:2;i:1;}s:2:"en";a:1:{i:1;s:29:"Custom text labels for fields";}}}}a:2:{s:5:"flags";a:2:{s:6:"filter";s:27:"personaliteTemplate_manager";s:6:"folder";s:11:"labels/lang";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:31:"Etiquetas de texto para idiomas";i:2;i:1;}s:2:"en";a:1:{i:1;s:32:"Custom text labels for languages";}}}}a:2:{s:5:"flags";a:2:{s:6:"filter";s:27:"personaliteTemplate_manager";s:6:"folder";s:17:"labels/navigation";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:33:"Etiquetas de texto para navegao";i:2;i:1;}s:2:"en";a:1:{i:1;s:33:"Custom text labels for navigation";}}}}a:2:{s:5:"flags";a:2:{s:6:"filter";s:27:"personaliteTemplate_manager";s:6:"folder";s:7:"layouts";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:22:"Layouts personalizados";i:2;i:1;}s:2:"en";a:1:{i:1;s:14:"Custom layouts";}}}}a:2:{s:5:"flags";a:2:{s:6:"filter";s:27:"personaliteTemplate_manager";s:6:"folder";s:5:"lists";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:21:"Listas personalizadas";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Custom lists";}}}}a:2:{s:5:"flags";a:2:{s:6:"filter";s:27:"personaliteTemplate_manager";s:6:"folder";s:7:"modules";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:22:"Mdulos personalizados";i:2;i:1;}s:2:"en";a:1:{i:1;s:14:"Custom modules";}}}}a:2:{s:5:"flags";a:2:{s:6:"filter";s:27:"personaliteTemplate_manager";s:6:"folder";s:8:"palettes";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:22:"Paletas personalizadas";i:2;i:1;}s:2:"en";a:1:{i:1;s:15:"Custom palettes";}}}}a:2:{s:5:"flags";a:2:{s:6:"filter";s:27:"personaliteTemplate_manager";s:6:"folder";s:7:"scripts";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:22:"Scripts personalizados";i:2;i:1;}s:2:"en";a:1:{i:1;s:14:"Custom scripts";}}}}a:2:{s:5:"flags";a:2:{s:6:"filter";s:27:"personaliteTemplate_manager";s:6:"folder";s:6:"styles";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:22:"Estilos personalizados";i:2;i:1;}s:2:"en";a:1:{i:1;s:19:"Custom style sheets";}}}}a:2:{s:5:"flags";a:2:{s:6:"filter";s:27:"personaliteTemplate_manager";s:6:"folder";s:6:"themes";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:20:"Temas personalizados";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Custom themes";}}}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Detalhes";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Details";}}}s:8:"children";a:1:{i:0;s:14:"~manageDetails";}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"Formulrio";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Formulary";}}}s:8:"children";a:1:{i:0;s:13:"~manageFields";}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Fontes";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Fonts";}}}s:8:"children";a:1:{i:0;s:12:"~manageFonts";}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"cones";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Icons";}}}s:8:"children";a:1:{i:0;s:12:"~manageIcons";}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:18:"Etiquetas de texto";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"Text labels";}}}s:8:"children";a:1:{i:0;s:13:"~manageLabels";}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:3:{i:1;s:27:"   •   Aes";i:2;i:1;i:5;i:2;}s:2:"en";a:2:{i:1;s:29:"   •   Actions";i:5;i:2;}}}s:8:"children";a:1:{i:0;s:19:"~manageLabelsAction";}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:3:{i:1;s:27:"   •   Datas";i:2;i:1;i:5;i:2;}s:2:"en";a:2:{i:1;s:27:"   •   Dates";i:5;i:2;}}}s:8:"children";a:1:{i:0;s:17:"~manageLabelsDate";}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:3:{i:1;s:28:"   •   Campos";i:2;i:1;i:5;i:2;}s:2:"en";a:2:{i:1;s:28:"   •   Fields";i:5;i:2;}}}s:8:"children";a:1:{i:0;s:18:"~manageLabelsField";}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:3:{i:1;s:29:"   •   Idiomas";i:2;i:1;i:5;i:2;}s:2:"en";a:2:{i:1;s:31:"   •   Languages";i:5;i:2;}}}s:8:"children";a:1:{i:0;s:17:"~manageLabelsLang";}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:3:{i:1;s:31:"   •   Navegao";i:2;i:1;i:5;i:2;}s:2:"en";a:2:{i:1;s:32:"   •   Navigation";i:5;i:2;}}}s:8:"children";a:1:{i:0;s:23:"~manageLabelsNavigation";}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Layouts";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Layouts";}}}s:8:"children";a:1:{i:0;s:14:"~manageLayouts";}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Listas";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Lists";}}}s:8:"children";a:1:{i:0;s:12:"~manageLists";}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Mdulos";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Modules";}}}s:8:"children";a:1:{i:0;s:14:"~manageModules";}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"Paletas de cores";i:2;i:1;}s:2:"en";a:1:{i:1;s:14:"Color palettes";}}}s:8:"children";a:1:{i:0;s:15:"~managePalettes";}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Scripts";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Scripts";}}}s:8:"children";a:1:{i:0;s:14:"~manageScripts";}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"Folhas de estilo";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Style sheets";}}}s:8:"children";a:1:{i:0;s:13:"~manageStyles";}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Temas";i:2;i:1;}s:2:"en";a:1:{i:1;s:6:"Themes";}}}s:8:"children";a:1:{i:0;s:13:"~manageThemes";}}a:4:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:7:"control";s:14:"modLayout_name";s:31:"personaliteTemplate_add_content";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"Adicionar detalhe";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Add detail";}}}s:4:"html";s:963:"#r#n#r#n[mod:list{]#r#n#r#n
      #r#n#r#n#r#n[}]#r#n[style]#r#n/* align window elements */#r#nBODY { text-align:center; }#r#n[/style]#r#n[script]#r#n#r#n#r#nfunction keyListener (event)#r#n{ // key listener#r#nif (event.key == #sEnter#s)#r#nsendChoice();#r#n} // key listener#r#nfunction sendChoice ()#r#n{ // sendChoice#r#nvar select = document.getElementById ("modules");#r#nif (select.selectedIndex >= 0)#r#n{ // valid selection#r#nwindow.location = select.options[]select.selectedIndex].dataset.url;#r#n} // valid selection#r#n} // sendChoice#r#n#r#nselect = document.getElementById ("modules");#r#nif (select.length)#r#n{#r#nselect.selectedIndex = 0;#r#nselect.focus();#r#n}#r#n[/script]#r#n";}a:4:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:11:"dialog_tabs";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:1:{s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:14:"Editar detalhe";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"Edit detail";}}}s:8:"children";a:5:{i:0;s:6:"_start";i:1;s:11:"~tabCaption";i:2;s:8:"~tabHTML";i:3;s:11:"~tabFilters";i:4;s:4:"_end";}}a:4:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:11:"dialog_tabs";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:1:{s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:17:"Editar componente";i:2;i:1;}s:2:"en";a:1:{i:1;s:14:"Edit component";}}}s:8:"children";a:5:{i:0;s:6:"_start";i:1;s:11:"~tabCaption";i:2;s:8:"~tabHTML";i:3;s:8:"~tabVars";i:4;s:4:"_end";}}a:2:{s:5:"flags";a:5:{s:4:"type";s:4:"text";s:6:"filter";s:4:"text";s:10:"field_name";s:7:"caption";s:6:"target";s:12:"text/caption";s:8:"required";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Legenda";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Caption";}}}}a:2:{s:5:"flags";a:4:{s:4:"type";s:12:"textarea_big";s:6:"filter";s:4:"free";s:10:"field_name";s:3:"css";s:6:"target";s:4:"html";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:3:"CSS";i:2;i:1;}s:2:"en";a:1:{i:1;s:3:"CSS";}}}}a:2:{s:5:"flags";a:4:{s:4:"type";s:4:"text";s:6:"filter";s:4:"text";s:10:"field_name";s:11:"description";s:6:"target";s:12:"text/content";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Observaes";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Notes";}}}}a:2:{s:5:"flags";a:2:{s:6:"filter";s:37:"personaliteTemplate_configure_filters";s:10:"field_name";s:7:"filters";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Campos";i:2;i:1;}s:2:"en";a:1:{i:1;s:6:"Fields";}}}}a:2:{s:5:"flags";a:1:{s:6:"filter";s:29:"personaliteFields_descriptive";}s:4:"text";a:1:{s:7:"content";a:2:{s:2:"pt";a:3:{i:1;s:57:"Quando editar o post, incluir estes campos no formulrio:";i:2;i:1;i:4;i:1;}s:2:"en";a:2:{i:1;s:56:"When editing the post, include these fields in the form:";i:4;i:1;}}}}a:2:{s:5:"flags";a:2:{s:6:"filter";s:17:"personalite_flags";s:10:"field_name";s:5:"flags";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Sinalizadores";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Flags";}}}}a:2:{s:5:"flags";a:5:{s:4:"type";s:8:"textarea";s:6:"filter";s:4:"free";s:10:"field_name";s:4:"face";s:6:"target";s:15:"local/font-face";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"@font-face";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"@font-face";}}}}a:2:{s:5:"flags";a:5:{s:4:"type";s:4:"text";s:6:"filter";s:4:"free";s:10:"field_name";s:5:"stack";s:6:"target";s:16:"local/font-stack";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"font-family";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"font-family";}}}}a:2:{s:5:"flags";a:4:{s:4:"type";s:12:"textarea_big";s:6:"filter";s:4:"free";s:10:"field_name";s:4:"html";s:6:"target";s:4:"html";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:4:"HTML";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"HTML";}}}}a:2:{s:5:"flags";a:5:{s:4:"type";s:4:"text";s:6:"filter";s:6:"regexp";s:10:"field_name";s:10:"identifier";s:6:"target";s:10:"identifier";s:6:"regexp";s:17:"/[a-z][a-z0-9-]+/";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Identificador";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Identifier";}}}}a:2:{s:5:"flags";a:4:{s:4:"type";s:12:"textarea_big";s:6:"filter";s:4:"free";s:10:"field_name";s:6:"script";s:6:"target";s:4:"html";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"JavaScript";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"JavaScript";}}}}a:2:{s:5:"flags";a:2:{s:6:"filter";s:16:"personalite_vars";s:10:"field_name";s:5:"local";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Variveis";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Variables";}}}}a:4:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:11:"dialog_tabs";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:1:{s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:26:"Editar Campo de formulrio";i:2;i:1;}s:2:"en";a:1:{i:1;s:15:"Edit form field";}}}s:8:"children";a:4:{i:0;s:6:"_start";i:1;s:11:"~tabCaption";i:2;s:8:"~tabHTML";i:3;s:4:"_end";}}a:4:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:11:"dialog_tabs";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:1:{s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:12:"Editar fonte";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Edit font";}}}s:8:"children";a:4:{i:0;s:6:"_start";i:1;s:11:"~tabCaption";i:2;s:9:"~tabFonts";i:3;s:4:"_end";}}a:4:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:11:"dialog_tabs";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:1:{s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:12:"Editar cone";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Edit icon";}}}s:8:"children";a:4:{i:0;s:6:"_start";i:1;s:11:"~tabCaption";i:2;s:8:"~tabHTML";i:3;s:4:"_end";}}a:4:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:11:"dialog_tabs";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:1:{s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:13:"Editar layout";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"Edit layout";}}}s:8:"children";a:5:{i:0;s:6:"_start";i:1;s:11:"~tabCaption";i:2;s:8:"~tabHTML";i:3;s:8:"~tabVars";i:4;s:4:"_end";}}a:4:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:11:"dialog_tabs";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:1:{s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:12:"Editar lista";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Edit list";}}}s:8:"children";a:4:{i:0;s:6:"_start";i:1;s:11:"~tabCaption";i:2;s:8:"~tabHTML";i:3;s:4:"_end";}}a:4:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:11:"dialog_tabs";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:1:{s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:13:"Editar mdulo";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"Edit module";}}}s:8:"children";a:5:{i:0;s:6:"_start";i:1;s:11:"~tabCaption";i:2;s:8:"~tabHTML";i:3;s:8:"~tabVars";i:4;s:4:"_end";}}a:4:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:11:"dialog_tabs";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:1:{s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:13:"Editar paleta";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Edit palette";}}}s:8:"children";a:4:{i:0;s:6:"_start";i:1;s:11:"~tabCaption";i:2;s:8:"~tabVars";i:3;s:4:"_end";}}a:4:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:11:"dialog_tabs";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:1:{s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:13:"Editar script";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"Edit script";}}}s:8:"children";a:4:{i:0;s:6:"_start";i:1;s:11:"~tabCaption";i:2;s:10:"~tabScript";i:3;s:4:"_end";}}a:4:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:11:"dialog_tabs";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:1:{s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:22:"Editar folha de estilo";i:2;i:1;}s:2:"en";a:1:{i:1;s:16:"Edit style sheet";}}}s:8:"children";a:4:{i:0;s:6:"_start";i:1;s:11:"~tabCaption";i:2;s:7:"~tabCSS";i:3;s:4:"_end";}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Identificao";i:2;i:1;}s:2:"en";a:1:{i:1;s:14:"Identification";}}}s:8:"children";a:3:{i:0;s:12:"~editCaption";i:1;s:9:"~editName";i:2;s:16:"~editDescription";}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:3:"CSS";i:2;i:1;}s:2:"en";a:1:{i:1;s:3:"CSS";}}}s:8:"children";a:1:{i:0;s:8:"~editCSS";}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"Formulrio";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Formulary";}}}s:8:"children";a:2:{i:0;s:23:"~editFiltersDescription";i:1;s:12:"~editFilters";}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Sinalizadores";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Flags";}}}s:8:"children";a:1:{i:0;s:10:"~editFlags";}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Fonte";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"Font";}}}s:8:"children";a:2:{i:0;s:13:"~editFontFace";i:1;s:14:"~editFontStack";}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:4:"HTML";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"HTML";}}}s:8:"children";a:1:{i:0;s:9:"~editHTML";}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Script";i:2;i:1;}s:2:"en";a:1:{i:1;s:6:"Script";}}}s:8:"children";a:1:{i:0;s:11:"~editScript";}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Variveis";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Variables";}}}s:8:"children";a:1:{i:0;s:9:"~editVars";}}a:4:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:11:"dialog_tabs";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:1:{s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:13:"Editar modelo";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Edit template";}}}s:8:"children";a:5:{i:0;s:6:"_start";i:1;s:11:"~tabCaption";i:2;s:8:"~tabHTML";i:3;s:8:"~tabVars";i:4;s:4:"_end";}}a:4:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:11:"dialog_tabs";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:1:{s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:11:"Editar tema";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Edit theme";}}}s:8:"children";a:4:{i:0;s:6:"_start";i:1;s:11:"~tabCaption";i:2;s:8:"~tabVars";i:3;s:4:"_end";}}a:3:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:7:"control";s:14:"modLayout_name";s:23:"personaliteDetails_main";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"Adicionar filtro";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Add filter";}}}}a:4:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:11:"dialog_tabs";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:1:{s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:24:"Editar etiqueta de texto";i:2;i:1;}s:2:"en";a:1:{i:1;s:15:"Edit text label";}}}s:8:"children";a:3:{i:0;s:6:"_start";i:1;s:11:"~tabCaption";i:2;s:4:"_end";}}a:2:{s:5:"flags";a:5:{s:4:"type";s:4:"text";s:6:"filter";s:4:"text";s:10:"field_name";s:7:"caption";s:6:"target";s:12:"text/caption";s:8:"required";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Legenda";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Caption";}}}}a:2:{s:5:"flags";a:4:{s:4:"type";s:4:"text";s:6:"filter";s:4:"free";s:10:"field_name";s:10:"identifier";s:6:"target";s:10:"identifier";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Identificador";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Identifier";}}}}a:3:{s:5:"flags";a:1:{s:6:"filter";s:9:"formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Identificao";i:2;i:1;}s:2:"en";a:1:{i:1;s:14:"Identification";}}}s:8:"children";a:3:{i:0;s:9:"~editName";i:1;s:12:"~editCaption";i:2;s:16:"~editDescription";}}a:1:{s:4:"text";a:3:{s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:12:"Editar seo";i:2;i:1;}s:2:"en";a:2:{i:1;s:12:"Edit section";i:2;i:1;}}s:11:"description";a:0:{}s:7:"content";a:0:{}}}a:2:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:12:"Editar seo";i:2;i:1;}s:2:"en";a:2:{i:1;s:12:"Edit section";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:12:"Editar seo";i:2;i:1;}s:2:"en";a:2:{i:1;s:12:"Edit section";i:2;i:1;}}}s:8:"children";a:12:{i:0;s:6:"_start";i:1;s:10:"~editTitle";i:2;s:12:"~editCaption";i:3;s:9:"~editName";i:4;s:16:"~editDescription";i:5;s:8:"~editImg";i:6;s:20:"~specialFieldsOnEdit";i:7;s:11:"~editAccess";i:8;s:10:"~editGroup";i:9;s:12:"~editUpdated";i:10;s:11:"_saveCancel";i:11;s:4:"_end";}}a:3:{s:5:"flags";a:6:{s:4:"type";s:6:"select";s:6:"filter";s:6:"select";s:10:"field_name";s:6:"access";s:6:"target";s:6:"access";s:13:"default_value";i:0;s:4:"cast";s:3:"int";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:15:"Permitir acesso";i:2;i:1;}s:2:"en";a:2:{i:1;s:12:"Allow access";i:2;i:1;}}}s:8:"children";a:4:{i:0;s:14:"~editAccessAll";i:1;s:21:"~editAccessSubscribed";i:2;s:17:"~editAccessMember";i:3;s:16:"~editAccessAdmin";}}a:2:{s:5:"flags";a:1:{s:5:"value";s:1:"4";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:23:"Somente administradores";i:2;i:1;}s:2:"en";a:2:{i:1;s:19:"Administrators only";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:1:"0";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Todos";i:2;i:1;}s:2:"en";a:2:{i:1;s:3:"All";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:1:"3";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:27:"Somente membros deste grupo";i:2;i:1;}s:2:"en";a:2:{i:1;s:26:"Members of this group only";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:5:"value";s:1:"2";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:20:"Usurios cadastrados";i:2;i:1;}s:2:"en";a:2:{i:1;s:16:"Subscribed users";i:2;i:1;}}}}a:2:{s:5:"flags";a:6:{s:4:"type";s:10:"text_small";s:6:"filter";s:7:"caption";s:10:"field_name";s:7:"caption";s:6:"target";s:12:"text/caption";s:8:"required";i:1;s:9:"error_msg";s:27:"section_editCaptionRequired";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:35:"Legenda (como ser exibida no menu)";i:2;i:1;}s:2:"en";a:2:{i:1;s:39:"Caption (as it will appear on the menu)";i:2;i:1;}}}}a:2:{s:5:"flags";a:2:{s:4:"icon";s:5:"error";s:7:"caption";s:31:"renderLabels_msg_required_field";}s:4:"text";a:1:{s:7:"content";a:2:{s:2:"pt";a:3:{i:1;s:99:"Esta seo precisa de uma legenda.#r#n#r#nSem legenda, no possvel apresent-la no menu de sees.#r#n";i:2;i:1;i:4;i:1;}s:2:"en";a:5:{i:1;s:95:"This section needs a caption.#r#n#r#nWithout caption, it can not be displayed in the sections menu.";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:2:{s:5:"flags";a:8:{s:9:"condition";s:8:"!wysiwyg";s:4:"type";s:8:"textarea";s:6:"filter";s:4:"text";s:10:"field_name";s:7:"content";s:6:"target";s:12:"text/content";s:12:"format_force";i:1;s:10:"html_force";i:2;s:15:"ecolabore_force";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Contedo";i:2;i:1;}s:2:"en";a:2:{i:1;s:7:"Content";i:2;i:1;}}}}a:1:{s:5:"flags";a:5:{s:4:"type";s:14:"textarea_small";s:6:"filter";s:4:"text";s:10:"field_name";s:11:"description";s:6:"target";s:16:"text/description";s:7:"caption";s:24:"labels/field/description";}}a:2:{s:5:"flags";a:2:{s:6:"filter";s:19:"section_selectGroup";s:10:"field_name";s:5:"group";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Grupo";i:2;i:1;}s:2:"en";a:2:{i:1;s:5:"Group";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"(Nenhum)";i:2;i:1;}s:2:"en";a:2:{i:1;s:6:"(None)";i:2;i:1;}}}}a:2:{s:5:"flags";a:2:{s:6:"filter";s:21:"personaliteExtras_img";s:10:"field_name";s:3:"img";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Imagem";i:2;i:1;}s:2:"en";a:2:{i:1;s:5:"Image";i:2;i:1;}}}}a:1:{s:5:"flags";a:5:{s:4:"type";s:4:"text";s:6:"filter";s:4:"text";s:10:"field_name";s:8:"keywords";s:6:"target";s:13:"text/keywords";s:7:"caption";s:21:"labels/field/keywords";}}a:1:{s:5:"flags";a:1:{s:6:"filter";s:8:"keywords";}}a:2:{s:5:"flags";a:5:{s:4:"type";s:10:"text_small";s:6:"filter";s:11:"domain_name";s:10:"field_name";s:4:"name";s:6:"target";s:4:"name";s:8:"required";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Pasta - URI";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Folder - URI";}}}}a:1:{s:5:"flags";a:6:{s:4:"type";s:4:"text";s:6:"filter";s:4:"text";s:10:"field_name";s:5:"title";s:6:"target";s:10:"text/title";s:8:"required";i:1;s:7:"caption";s:18:"labels/field/title";}}a:1:{s:5:"flags";a:5:{s:13:"field_display";s:5:"never";s:4:"type";s:4:"none";s:6:"filter";s:9:"timestamp";s:10:"field_name";s:7:"updated";s:6:"target";s:7:"updated";}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:20:"Mover para a direita";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Move right";}}}}a:2:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Mover para...";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Move to...";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:11:"Mover seo";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Move section";}}}s:8:"children";a:4:{i:0;s:6:"_start";i:1;s:11:"~moveToList";i:2;s:11:"_saveCancel";i:3;s:4:"_end";}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:14:"Menu de rodap";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"Footer menu";}}}}a:2:{s:5:"flags";a:2:{s:6:"filter";s:14:"section_moveto";s:10:"field_name";s:8:"position";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:24:"Escolha uma nova posio";i:2;i:1;}s:2:"en";a:1:{i:1;s:21:"Choose a new position";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:14:"Menu principal";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Main menu";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:21:"Mover para a esquerda";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Move left";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Remover seo";i:2;i:1;}s:2:"en";a:2:{i:1;s:14:"Remove section";i:2;i:1;}}}}a:3:{s:5:"flags";a:3:{s:6:"action";s:15:"_section-remove";s:4:"icon";s:8:"question";s:7:"caption";s:34:"renderLabels_msg_operation_confirm";}s:4:"text";a:1:{s:7:"content";a:2:{s:2:"pt";a:3:{i:1;s:102:"Esta operao ir remover permanentemente esta seo e todo o seu contedo.#r#n#r#nDeseja mesmo continuar?";i:2;i:1;i:4;i:1;}s:2:"en";a:5:{i:1;s:100:"This operation will remove permanently this section and all hes content.#r#n#r#nDo you wich to continue?";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}s:8:"children";a:4:{i:0;s:6:"_start";i:1;s:10:"_separator";i:2;s:37:"modHumperstilshen_submitConfirmCancel";i:3;s:4:"_end";}}a:1:{s:5:"flags";a:2:{s:6:"filter";s:21:"section_specialFields";s:5:"sufix";s:20:"_specialFieldsOnEdit";}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"Nova seo";i:2;i:1;}s:2:"en";a:2:{i:1;s:11:"New section";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:16:"Criar nova seo";i:2;i:1;}s:2:"en";a:2:{i:1;s:18:"Create new section";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Nova subseo";i:2;i:1;}s:2:"en";a:1:{i:1;s:14:"New subsection";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:20:"Nova seo principal";i:2;i:1;}s:2:"en";a:1:{i:1;s:16:"New main section";}}}}a:2:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"Nova seo";i:2;i:1;}s:2:"en";a:2:{i:1;s:11:"New section";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:10:"Nova seo";i:2;i:1;}s:2:"en";a:2:{i:1;s:11:"New section";i:2;i:1;}}}s:8:"children";a:10:{i:0;s:6:"_start";i:1;s:10:"~editTitle";i:2;s:18:"~editCaptionHidden";i:3;s:15:"~editNameHidden";i:4;s:16:"~editDescription";i:5;s:22:"~specialFieldsOnCreate";i:6;s:17:"~editKeywordsPack";i:7;s:25:"~specialFieldsAfterCreate";i:8;s:11:"_saveCancel";i:9;s:4:"_end";}}a:1:{s:5:"flags";a:3:{s:13:"field_display";s:5:"never";s:6:"filter";s:7:"caption";s:6:"target";s:12:"text/caption";}}a:1:{s:5:"flags";a:5:{s:4:"type";s:14:"textarea_small";s:6:"filter";s:4:"text";s:10:"field_name";s:11:"description";s:6:"target";s:16:"text/description";s:7:"caption";s:24:"labels/field/description";}}a:1:{s:5:"flags";a:1:{s:6:"filter";s:8:"keywords";}}a:1:{s:5:"flags";a:4:{s:13:"field_display";s:5:"never";s:6:"filter";s:11:"domain_name";s:10:"field_name";s:4:"name";s:6:"target";s:4:"name";}}a:1:{s:5:"flags";a:6:{s:4:"type";s:4:"text";s:6:"filter";s:4:"text";s:10:"field_name";s:5:"title";s:6:"target";s:10:"text/title";s:8:"required";i:1;s:7:"caption";s:18:"labels/field/title";}}a:1:{s:4:"text";a:1:{s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:737:"#r#nTemos aqui uma lista com os diferentes tipos de seo que podem ser criadas.#r#n#r#nCada tipo de seo oferece funcionalidades especiais, mas importante observar a seo do tipo "Pasta", pois dentro dela possvel criar subsees de qualquer tipo. Inclusive subsees do tipo "Pasta".#r#n#r#nPortanto, antes de adicionar sees ao seu ambiente, pense na disposio desejada para as ferramentas.#r#n#r#nNovas sees so acrescentadas sempre ao final do menu, mas voc pode alterar a ordem na qual elas sero listadas. Basta abrir a seo que precisa mudar de lugar e escolher, no menu de contexto, "Mover para cima" ou "Mover para baixo".#r#n#r#nClaro que em um menu horizontal elas sero movidas para a esquerda ou para a direita respectivamente.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:1:{s:5:"flags";a:3:{s:6:"filter";s:21:"section_specialFields";s:5:"sufix";s:25:"_specialFieldsAfterCreate";s:10:"posteriori";i:1;}}a:1:{s:5:"flags";a:2:{s:6:"filter";s:21:"section_specialFields";s:5:"sufix";s:22:"_specialFieldsOnCreate";}}a:3:{s:5:"flags";a:6:{s:4:"type";s:6:"select";s:6:"filter";s:6:"select";s:10:"field_name";s:15:"comments_access";s:6:"target";s:21:"flags/comments_access";s:13:"default_value";i:6;s:4:"cast";s:3:"int";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"Permitir comentar";i:2;i:1;}s:2:"en";a:2:{i:1;s:13:"Allow comment";i:2;i:1;}}}s:8:"children";a:4:{i:0;s:20:"~editCommentDisabled";i:1;s:21:"section_editAccessAll";i:2;s:28:"section_editAccessSubscribed";i:3;s:24:"section_editAccessMember";}}a:2:{s:5:"flags";a:1:{s:5:"value";i:6;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:12:"No comentar";i:2;i:1;}s:2:"en";a:2:{i:1;s:11:"No comments";i:2;i:1;}}}}a:1:{s:4:"text";a:3:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:4:"Blog";i:2;i:1;}}s:5:"title";a:1:{s:2:"pt";a:3:{i:1;s:30:"Sobre "[text $document.title]"";i:2;i:1;i:6;i:1;}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:584:"#r#nEm uma seo de blog possvel acrescentar contedos na forma de posts.#r#n#r#nVoc pode configurar um blog para que funcione como um noticirio, uma agenda de eventos da instituio, um lbum de fotos, uma seo de publicaes, um podcast e muito mais.#r#n#r#nAo criar uma nova seo, voc encontrar vrias opes de blogs j configurados para diferentes finalidades. Noentanto, possvel realizar as configuraes necessrias para que o blog se adapte s suas necessidades.#r#n#r#nVoc pode, por exemplo, mudar a forma de apresentar os posts na seo ou mudar a forma de ordenar a lista.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:586:"#r#nEm uma seo de blog possvel acrescentar contedos na forma de posts.#r#n#r#nVoc pode configurar um blog para que funcione como um noticirio, uma agenda de eventos da instituio, um lbum de fotos, uma seo de publicaes, um podcast e muito mais.#r#n#r#nAo criar uma nova seo, voc encontrar vrias opes de blogs j configurados para diferentes finalidades. Noentanto, possvel realizar as configuraes necessrias para que o blog se adapte s suas necessidades.#r#n#r#nVoc pode, por exemplo, mudar a forma de apresentar os posts na seo ou mudar a forma de ordenar a lista.#r#n#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:62:"#r#nAgora basta publicar seu contedo adicionando novos posts.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:586:"#r#nEm uma seo de blog possvel acrescentar contedos na forma de posts.#r#n#r#nVoc pode configurar um blog para que funcione como um noticirio, uma agenda de eventos da instituio, um lbum de fotos, uma seo de publicaes, um podcast e muito mais.#r#n#r#nAo criar uma nova seo, voc encontrar vrias opes de blogs j configurados para diferentes finalidades. Noentanto, possvel realizar as configuraes necessrias para que o blog se adapte s suas necessidades.#r#n#r#nVoc pode, por exemplo, mudar a forma de apresentar os posts na seo ou mudar a forma de ordenar a lista.#r#n#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:2:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:28:"Ordenar postagem manualmente";i:2;i:1;}s:2:"en";a:2:{i:1;s:19:"Order posts manualy";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:28:"Ordenar postagem manualmente";i:2;i:1;}s:2:"en";a:2:{i:1;s:19:"Order posts manualy";i:2;i:1;}}}s:8:"children";a:4:{i:0;s:6:"_start";i:1;s:12:"~reindexList";i:2;s:7:"_submit";i:3;s:4:"_end";}}a:2:{s:5:"flags";a:2:{s:4:"type";s:6:"fields";s:6:"filter";s:19:"sectionBlog_reindex";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"Ordenar postagem";i:2;i:1;}s:2:"en";a:2:{i:1;s:11:"Order posts";i:2;i:1;}}}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Ordenar por";i:2;i:1;}s:2:"en";a:2:{i:1;s:7:"Sort by";i:2;i:1;}}}s:4:"html";s:303:"#r#n
      #r#n#r#n#r#n[personalite]#r#n
      #r#n";}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"Ordem alfabtica";i:2;i:1;}s:2:"en";a:2:{i:1;s:18:"Alphabetical order";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:12:"Mais baratos";i:2;i:1;}s:2:"en";a:2:{i:1;s:7:"Cheaper";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:14:"Data do evento";i:2;i:1;}s:2:"en";a:2:{i:1;s:10:"Event date";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"Mais caros";i:2;i:1;}s:2:"en";a:2:{i:1;s:14:"More expensive";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:14:"Mais visitados";i:2;i:1;}s:2:"en";a:2:{i:1;s:11:"More viewed";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"Data de postagem";i:2;i:1;}s:2:"en";a:2:{i:1;s:9:"Post date";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:19:"Melhores avaliaes";i:2;i:1;}s:2:"en";a:2:{i:1;s:12:"Best ratings";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Mais recentes";i:2;i:1;}s:2:"en";a:2:{i:1;s:7:"Recents";i:2;i:1;}}}}a:1:{s:8:"children";a:2:{i:0;s:19:"section_editContent";i:1;s:12:"~editComment";}}a:1:{s:8:"children";a:2:{i:0;s:19:"section_editContent";i:1;s:12:"~editComment";}}a:2:{s:5:"flags";a:1:{s:6:"preset";s:11:"~blogPreset";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:4:"Blog";i:2;i:1;}s:2:"en";a:2:{i:1;s:4:"Blog";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:9:"Novo blog";i:2;i:1;}s:2:"en";a:2:{i:1;s:8:"New blog";i:2;i:1;}}s:11:"description";a:1:{s:2:"pt";a:2:{i:1;s:45:"Poste fotos, textos, udios, arquivos e mais.";i:2;i:1;}}}}a:1:{s:5:"flags";a:1:{s:12:"section_type";s:4:"blog";}}a:2:{s:5:"flags";a:1:{s:6:"preset";s:13:"~eventsPreset";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Eventos";i:2;i:1;}s:2:"en";a:2:{i:1;s:6:"Events";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:26:"Novo calendrio de eventos";i:2;i:1;}s:2:"en";a:2:{i:1;s:19:"New events calendar";i:2;i:1;}}s:11:"description";a:1:{s:2:"pt";a:2:{i:1;s:43:"Registre os prximos eventos da organizao";i:2;i:1;}}}}a:1:{s:5:"flags";a:2:{s:12:"section_type";s:4:"blog";s:14:"modList_preset";s:6:"events";}}a:2:{s:5:"flags";a:1:{s:6:"preset";s:13:"~galeryPreset";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:18:"Galeria de imagens";i:2;i:1;}s:2:"en";a:2:{i:1;s:12:"Image galery";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:23:"Nova galeria de imagens";i:2;i:1;}s:2:"en";a:2:{i:1;s:16:"New image galery";i:2;i:1;}}s:11:"description";a:1:{s:2:"pt";a:2:{i:1;s:39:"Organize imagens em um painel elegante.";i:2;i:1;}}}}a:1:{s:5:"flags";a:2:{s:12:"section_type";s:4:"blog";s:14:"modList_preset";s:6:"galery";}}a:2:{s:5:"flags";a:1:{s:6:"preset";s:11:"~newsPreset";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Notcias";i:2;i:1;}s:2:"en";a:2:{i:1;s:4:"News";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:21:"Novo blog de notcias";i:2;i:1;}s:2:"en";a:2:{i:1;s:13:"New news blog";i:2;i:1;}}s:11:"description";a:1:{s:2:"pt";a:2:{i:1;s:29:"Publique as notcias recentes";i:2;i:1;}}}}a:1:{s:5:"flags";a:2:{s:12:"section_type";s:4:"blog";s:14:"modList_preset";s:4:"news";}}a:2:{s:5:"flags";a:1:{s:6:"preset";s:14:"~podcastPreset";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Podcast";i:2;i:1;}s:2:"en";a:2:{i:1;s:7:"Podcast";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:12:"Novo podcast";i:2;i:1;}s:2:"en";a:2:{i:1;s:11:"New podcast";i:2;i:1;}}s:11:"description";a:1:{s:2:"pt";a:2:{i:1;s:22:"Crie um canal de udio";i:2;i:1;}}}}a:1:{s:5:"flags";a:2:{s:12:"section_type";s:4:"blog";s:14:"modList_preset";s:7:"podcast";}}a:2:{s:5:"flags";a:1:{s:6:"preset";s:15:"~productsPreset";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Produtos";i:2;i:1;}s:2:"en";a:2:{i:1;s:8:"Products";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:21:"Novo book de produtos";i:2;i:1;}s:2:"en";a:2:{i:1;s:17:"New products book";i:2;i:1;}}s:11:"description";a:1:{s:2:"pt";a:2:{i:1;s:105:"Exponha seus produtos com fotos, descrio, preo e tudo o que o seu cliente precisa para uma boa compra.";i:2;i:1;}}}}a:1:{s:5:"flags";a:2:{s:12:"section_type";s:4:"blog";s:14:"modList_preset";s:8:"products";}}a:2:{s:5:"flags";a:1:{s:6:"preset";s:16:"~videocastPreset";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:14:"Canal de vdeo";i:2;i:1;}s:2:"en";a:2:{i:1;s:13:"Video channel";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:19:"Novo canal de video";i:2;i:1;}s:2:"en";a:2:{i:1;s:17:"New video channel";i:2;i:1;}}s:11:"description";a:1:{s:2:"pt";a:2:{i:1;s:29:"Crie um canal com seus vdeos";i:2;i:1;}}}}a:1:{s:5:"flags";a:2:{s:12:"section_type";s:4:"blog";s:14:"modList_preset";s:9:"videocast";}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Novo post";i:2;i:1;}s:2:"en";a:2:{i:1;s:8:"New post";i:2;i:1;}}}}a:2:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Editar post";i:2;i:1;}s:2:"en";a:2:{i:1;s:9:"Edit post";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:11:"Editar post";i:2;i:1;}s:2:"en";a:2:{i:1;s:9:"Edit post";i:2;i:1;}}}s:8:"children";a:11:{i:0;s:6:"_start";i:1;s:10:"~editTitle";i:2;s:12:"~editCaption";i:3;s:9:"~editName";i:4;s:18:"~editSpecialFields";i:5;s:17:"~editKeywordsPack";i:6;s:12:"~editUpdated";i:7;s:21:"domainCategories_link";i:8;s:18:"domainRecents_link";i:9;s:11:"_saveCancel";i:10;s:4:"_end";}}a:2:{s:5:"flags";a:4:{s:4:"type";s:10:"text_small";s:6:"filter";s:7:"caption";s:10:"field_name";s:7:"caption";s:6:"target";s:12:"text/caption";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:35:"Legenda (como ser exibida no menu)";i:2;i:1;}s:2:"en";a:2:{i:1;s:39:"Caption (as it will appear on the menu)";i:2;i:1;}}}}a:2:{s:5:"flags";a:5:{s:4:"type";s:10:"text_small";s:13:"field_display";s:5:"never";s:6:"filter";s:7:"caption";s:10:"field_name";s:7:"caption";s:6:"target";s:12:"text/caption";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:35:"Legenda (como ser exibida no menu)";i:2;i:1;}s:2:"en";a:2:{i:1;s:39:"Caption (as it will appear on the menu)";i:2;i:1;}}}}a:2:{s:5:"flags";a:4:{s:4:"type";s:16:"address_buscacep";s:6:"filter";s:25:"personaliteFields_address";s:10:"field_name";s:7:"address";s:15:"filters_manager";s:14:"contactAddress";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Endereo";i:2;i:1;}s:2:"en";a:2:{i:1;s:7:"Address";i:2;i:1;}}}}a:2:{s:5:"flags";a:5:{s:4:"type";s:10:"text_small";s:6:"filter";s:22:"personaliteFields_mail";s:10:"field_name";s:4:"mail";s:6:"target";s:10:"local/mail";s:15:"filters_manager";s:11:"contactMail";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Email";i:2;i:1;}s:2:"en";a:2:{i:1;s:5:"Email";i:2;i:1;}}}}a:2:{s:5:"flags";a:3:{s:6:"filter";s:5:"phone";s:10:"field_name";s:5:"phone";s:15:"filters_manager";s:12:"contactPhone";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Telefone";i:2;i:1;}s:2:"en";a:2:{i:1;s:5:"Phone";i:2;i:1;}}}}a:2:{s:5:"flags";a:3:{s:6:"filter";s:21:"sectionBlog_post_site";s:10:"field_name";s:4:"site";s:15:"filters_manager";s:11:"contactSite";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:4:"Site";i:2;i:1;}s:2:"en";a:2:{i:1;s:4:"Site";i:2;i:1;}}}}a:2:{s:5:"flags";a:8:{s:4:"type";s:8:"textarea";s:6:"filter";s:4:"text";s:10:"field_name";s:7:"content";s:6:"target";s:12:"text/content";s:12:"format_force";i:1;s:10:"html_force";i:1;s:15:"ecolabore_force";i:1;s:15:"filters_manager";s:7:"content";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Contedo";i:2;i:1;}s:2:"en";a:2:{i:1;s:7:"Content";i:2;i:1;}}}}a:2:{s:5:"flags";a:5:{s:4:"type";s:14:"textarea_small";s:6:"filter";s:4:"text";s:10:"field_name";s:11:"description";s:6:"target";s:16:"text/description";s:15:"filters_manager";s:11:"description";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Descrio";i:2;i:1;}s:2:"en";a:2:{i:1;s:11:"Description";i:2;i:1;}}}}a:2:{s:5:"flags";a:3:{s:6:"filter";s:9:"eventDate";s:10:"field_name";s:5:"event";s:15:"filters_manager";s:9:"eventDate";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:14:"Data do evento";i:2;i:1;}s:2:"en";a:2:{i:1;s:10:"Event date";i:2;i:1;}}}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:4:"free";s:10:"field_name";s:5:"place";s:6:"target";s:17:"local/event_place";s:5:"clear";i:1;s:15:"filters_manager";s:10:"eventPlace";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:15:"Local do evento";i:2;i:1;}s:2:"en";a:2:{i:1;s:11:"Event place";i:2;i:1;}}}}a:2:{s:5:"flags";a:5:{s:4:"type";s:4:"file";s:6:"filter";s:6:"modImg";s:10:"field_name";s:3:"img";s:6:"target";s:12:"extras/img_0";s:15:"filters_manager";s:3:"img";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Imagem";i:2;i:1;}s:2:"en";a:2:{i:1;s:5:"Image";i:2;i:1;}}}}a:2:{s:5:"flags";a:5:{s:4:"type";s:4:"text";s:6:"filter";s:4:"text";s:10:"field_name";s:8:"keywords";s:6:"target";s:13:"text/keywords";s:15:"filters_manager";s:8:"keywords";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:14:"Palavras chave";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Keywords";}}}}a:1:{s:5:"flags";a:1:{s:6:"filter";s:8:"keywords";}}a:2:{s:5:"flags";a:8:{s:4:"type";s:8:"textarea";s:6:"filter";s:4:"text";s:10:"field_name";s:9:"media_box";s:6:"target";s:25:"extras/box_0/text/content";s:12:"format_force";i:1;s:10:"html_force";i:1;s:15:"ecolabore_force";i:1;s:15:"filters_manager";s:8:"mediaBox";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"Destaque do post";i:2;i:1;}s:2:"en";a:1:{i:1;s:15:"Post spotlight ";}}}}a:1:{s:5:"flags";a:4:{s:4:"type";s:10:"text_small";s:6:"filter";s:11:"domain_name";s:10:"field_name";s:4:"name";s:7:"caption";s:16:"section_editName";}}a:1:{s:5:"flags";a:5:{s:13:"field_display";s:5:"never";s:4:"type";s:10:"text_small";s:6:"filter";s:11:"domain_name";s:10:"field_name";s:4:"name";s:7:"caption";s:18:"section_editFolder";}}a:2:{s:5:"flags";a:3:{s:6:"filter";s:24:"sectionBlog_post_product";s:10:"field_name";s:7:"product";s:15:"filters_manager";s:7:"product";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Produto";i:2;i:1;}s:2:"en";a:2:{i:1;s:7:"Product";i:2;i:1;}}}}a:1:{s:5:"flags";a:1:{s:6:"filter";s:30:"sectionBlog_post_specialFields";}}a:2:{s:5:"flags";a:6:{s:4:"type";s:4:"text";s:6:"filter";s:4:"text";s:10:"field_name";s:5:"title";s:6:"target";s:10:"text/title";s:8:"required";i:1;s:9:"error_msg";s:18:"~editTitleRequired";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Ttulo";i:2;i:1;}s:2:"en";a:2:{i:1;s:5:"Title";i:2;i:1;}}}}a:2:{s:5:"flags";a:2:{s:4:"icon";s:5:"error";s:7:"caption";s:31:"renderLabels_msg_required_field";}s:4:"text";a:1:{s:7:"content";a:2:{s:2:"pt";a:3:{i:1;s:89:"O post precisa de um ttulo.#r#n#r#nSem um ttulo, o post no pode ser apresentado no menu.#r#n";i:2;i:1;i:4;i:1;}s:2:"en";a:5:{i:1;s:89:"The post needs a title.#r#n#r#nWithout caption, it can not be displayed in the sections menu.";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:1:{s:5:"flags";a:5:{s:13:"field_display";s:5:"never";s:4:"type";s:4:"none";s:6:"filter";s:9:"timestamp";s:10:"field_name";s:7:"updated";s:6:"target";s:7:"updated";}}a:2:{s:5:"flags";a:2:{s:4:"icon";s:8:"question";s:7:"caption";s:34:"renderLabels_msg_operation_confirm";}s:4:"text";a:1:{s:7:"content";a:2:{s:2:"pt";a:3:{i:1;s:96:"Esta operao ir enviar o post e todo o seu contedo para a lixeira.#r#n#r#nDeseja mesmo continuar?";i:2;i:1;i:4;i:1;}s:2:"en";a:5:{i:1;s:95:"This operation will send the post and all hes content to the trash.#r#n#r#nDo you wich to continue?";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:2:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Novo post";i:2;i:1;}s:2:"en";a:2:{i:1;s:8:"New post";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:9:"Novo post";i:2;i:1;}s:2:"en";a:2:{i:1;s:8:"New post";i:2;i:1;}}}s:8:"children";a:10:{i:0;s:6:"_start";i:1;s:10:"~editTitle";i:2;s:18:"~editCaptionHidden";i:3;s:15:"~editNameHidden";i:4;s:18:"~editSpecialFields";i:5;s:17:"~editKeywordsPack";i:6;s:21:"domainCategories_link";i:7;s:18:"domainRecents_link";i:8;s:11:"_saveCancel";i:9;s:4:"_end";}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:12:"Remover post";i:2;i:1;}s:2:"en";a:2:{i:1;s:11:"Remove post";i:2;i:1;}}}}a:2:{s:5:"local";a:1:{s:4:"type";s:8:"checkbox";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:25:"Produto sempre disponvel";i:2;i:1;}s:2:"en";a:2:{i:1;s:24:"Product always available";i:2;i:1;}}}}a:2:{s:5:"local";a:1:{s:4:"type";s:8:"checkbox";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:18:"Aceitar encomendas";i:2;i:1;}s:2:"en";a:2:{i:1;s:15:"Accept ordering";i:2;i:1;}}}}a:2:{s:5:"local";a:1:{s:4:"type";s:9:"text_tiny";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Preo";i:2;i:1;}s:2:"en";a:2:{i:1;s:5:"Price";i:2;i:1;}}}}a:2:{s:5:"local";a:1:{s:4:"type";s:9:"text_tiny";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"Em estoque";i:2;i:1;}s:2:"en";a:2:{i:1;s:8:"In stock";i:2;i:1;}}}}a:1:{s:4:"text";a:3:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:14:"Tempo excedido";i:2;i:1;}}s:5:"title";a:1:{s:2:"pt";a:3:{i:1;s:14:"Tempo excedido";i:2;i:1;i:6;i:1;}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:308:"#r#nPrezad[gender:o|a] [text $user.caption],#r#n#r#nVoc excedeu seu tempo limite para compras. Por isso, os produtos reservados em seu carrinho retornaram s prateleiras.#r#n#r#nNo se preocupe: continue comprando e, se os produtos que voc deseja ainda estiverem disponveis, adicione-os novamente ao seu carrinho.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:1:{s:8:"children";a:4:{i:0;s:6:"_start";i:1;s:24:"~choosePaymentMethodList";i:2;s:5:"_next";i:3;s:4:"_end";}}a:1:{s:5:"flags";a:1:{s:6:"filter";s:36:"financialAccount_choosePaymentMethod";}}a:1:{s:4:"text";a:1:{s:7:"content";a:2:{s:2:"pt";a:4:{i:1;s:86:"#r#nPara continuar, conecte-se ou acione o link de cadastro logo abaixo do formulrio.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}s:2:"en";a:3:{i:1;s:70:" To continue, please log in or click the register link below the form.";i:4;i:1;i:6;i:1;}}}}a:1:{s:4:"text";a:3:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:24:"Pgina de acompanhamento";i:2;i:1;}}s:5:"title";a:1:{s:2:"pt";a:3:{i:1;s:30:"Sobre "[text $document.title]"";i:2;i:1;i:6;i:1;}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:4:"#r#n#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:3:{s:5:"check";a:2:{s:4:"mode";s:7:"section";s:6:"marker";i:12;}s:6:"parent";a:1:{s:4:"mode";s:5:"index";}s:6:"create";a:2:{s:4:"mode";s:7:"section";s:4:"type";s:4:"cart";}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:4:"Ao";i:2;i:1;}s:2:"en";a:2:{i:1;s:6:"Action";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:4:"Cod.";i:2;i:1;}s:2:"en";a:2:{i:1;s:4:"Code";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Descrio";i:2;i:1;}s:2:"en";a:2:{i:1;s:9:"Descrio";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Unidade";i:2;i:1;}s:2:"en";a:2:{i:1;s:4:"Unit";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:4:"Qtd.";i:2;i:1;}s:2:"en";a:2:{i:1;s:4:"Qty.";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Total";i:2;i:1;}s:2:"en";a:2:{i:1;s:5:"Total";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Valor";i:2;i:1;}s:2:"en";a:2:{i:1;s:5:"Value";i:2;i:1;}}}}a:1:{s:8:"children";a:1:{i:0;s:19:"section_editContent";}}a:1:{s:8:"children";a:1:{i:0;s:19:"section_editContent";}}a:2:{s:5:"flags";a:1:{s:6:"preset";s:14:"~contentPreset";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"Acompanhar pedido";i:2;i:1;}s:2:"en";a:2:{i:1;s:11:"Track order";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:17:"Acompanhar pedido";i:2;i:1;}s:2:"en";a:2:{i:1;s:11:"Track order";i:2;i:1;}}s:11:"description";a:1:{s:2:"pt";a:2:{i:1;s:151:"Antes de cadastrar seus produtos, voc precisa de uma rea onde o cliente possa gerenciar o carrinho de compras e acompanhar o andamento do seu pedido.";i:2;i:1;}}}}a:3:{s:6:"marker";i:12;s:5:"flags";a:1:{s:12:"section_type";s:4:"cart";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"Acompanhar pedido";i:2;i:1;}s:2:"en";a:2:{i:1;s:11:"Track order";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:17:"Acompanhar pedido";i:2;i:1;}s:2:"en";a:2:{i:1;s:11:"Track order";i:2;i:1;}}s:11:"description";a:1:{s:2:"pt";a:2:{i:1;s:40:"Acompanhe aqui o andamento do seu pedido";i:2;i:1;}}}}a:1:{s:4:"text";a:3:{s:5:"title";a:1:{s:2:"pt";a:2:{i:1;s:5:"Pasta";i:2;i:1;}}s:7:"caption";a:1:{s:2:"pt";a:3:{i:1;s:38:"Sobre a seo "[text$document.caption]";i:2;i:1;i:6;i:1;}}s:7:"content";a:1:{s:2:"pt";a:5:{i:1;s:609:"#r#nEsta uma seo do tipo "Pasta".#r#n#r#nVoc pode inserir subsees dentro dela, inclusive subsees do tipo "Pasta". Isto lhe permite estruturar seu ambiente com total liberdade.#r#n#r#nPortanto, antes de criar as sees do seu ambiente, tenha uma idia de como deseja organiz-lo.#r#n#r#nUma seo do tipo "Pasta" pode conter informaes sobre a organizao; uma outra sobre produtos e servios; uma para tarefas administrativas...#r#n#r#nMas no hesite em adicionar ferramentas diretamente no menu principal: criando um formulrio para contato na seo principal, ele estar acessvel em todas as pginas do ambiente.#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:1:{s:8:"children";a:1:{i:0;s:19:"section_editContent";}}a:1:{s:8:"children";a:1:{i:0;s:19:"section_editContent";}}a:2:{s:5:"flags";a:1:{s:6:"preset";s:14:"~contentPreset";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Pasta";i:2;i:1;}s:2:"en";a:2:{i:1;s:6:"Folder";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:10:"Nova pasta";i:2;i:1;}s:2:"en";a:2:{i:1;s:10:"New folder";i:2;i:1;}}s:11:"description";a:1:{s:2:"pt";a:2:{i:1;s:65:"Permite organizar subsees, inclusive subsees do tipo "pasta".";i:2;i:1;}}}}a:2:{s:5:"flags";a:2:{s:12:"section_type";s:6:"folder";s:14:"modList_preset";s:6:"folder";}s:6:"extras";a:1:{s:7:"section";a:1:{s:5:"local";a:2:{s:4:"list";s:14:"list_columns_1";s:7:"details";s:40:"img_mini_floatleft#r#ntitle_3#r#ndescription";}}}}a:2:{s:5:"flags";a:3:{s:6:"filter";s:22:"personaliteFields_mail";s:10:"field_name";s:4:"mail";s:6:"target";s:10:"local/mail";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:1:{i:1;s:5:"Email";}s:2:"en";a:1:{i:1;s:5:"Email";}}}}a:2:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:29:"Escolher campos do formulrio";i:2;i:1;}s:2:"en";a:1:{i:1;s:23:"Choose formulary fields";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:29:"Escolher campos do formulrio";i:2;i:1;}s:2:"en";a:1:{i:1;s:23:"Choose formulary fields";}}}s:8:"children";a:5:{i:0;s:6:"_start";i:1;s:11:"~fieldsList";i:2;s:10:"_separator";i:3;s:11:"_saveCancel";i:4;s:4:"_end";}}a:2:{s:5:"flags";a:2:{s:6:"filter";s:17:"personaliteFields";s:6:"target";s:16:"extras/formulary";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:20:"Campos do formulrio";i:2;i:1;}s:2:"en";a:1:{i:1;s:16:"Formulary fields";}}}}a:1:{s:8:"children";a:4:{i:0;s:6:"_start";i:1;s:16:"~formularyFields";i:2;s:11:"_saveCancel";i:3;s:4:"_end";}}a:1:{s:5:"flags";a:1:{s:6:"filter";s:23:"sectionFormulary_fields";}}a:1:{s:4:"text";a:3:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:10:"Formulrio";i:2;i:1;}}s:5:"title";a:1:{s:2:"pt";a:3:{i:1;s:30:"Sobre "[text $document.title]"";i:2;i:1;i:6;i:1;}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:307:"#r#n possvel personalizar os formulrios livremente adicionando diversos tipos de campos.#r#n#r#nAssim, voc pode utilizar formulrios para diversas finalidades, como permitir que os usurios entrem em contato, solicitem oramento, respondam a uma pesquisa de satisfao, inscrevam-se em eventos e muito mais.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:3:{s:5:"check";a:2:{s:4:"mode";s:7:"section";s:6:"marker";i:5;}s:6:"parent";a:1:{s:4:"mode";s:5:"index";}s:6:"create";a:2:{s:4:"mode";s:7:"section";s:4:"type";s:7:"contact";}}a:2:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Revisar dados";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"Review data";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:13:"Revisar dados";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"Review data";}}}s:8:"children";a:5:{i:0;s:6:"_start";i:1;s:11:"~viewFields";i:2;s:10:"_separator";i:3;s:15:"_previousSubmit";i:4;s:4:"_end";}}a:2:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"Preveno de SPAM";i:2;i:1;}s:2:"en";a:1:{i:1;s:15:"SPAM prevention";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:17:"Preveno de SPAM";i:2;i:1;}s:2:"en";a:1:{i:1;s:15:"SPAM prevention";}}}s:8:"children";a:12:{i:0;s:6:"_start";i:1;s:15:"~securityBasics";i:2;s:21:"~securityBasicsEnable";i:3;s:15:"~securityReview";i:4;s:21:"~securityReviewEnable";i:5;s:16:"~securityContent";i:6;s:24:"~securityContentUrlBlock";i:7;s:15:"~securityAccess";i:8;s:18:"section_editAccess";i:9;s:10:"_separator";i:10;s:11:"_saveCancel";i:11;s:4:"_end";}}a:2:{s:5:"flags";a:1:{s:6:"filter";s:29:"personaliteFields_descriptive";}s:4:"text";a:1:{s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:436:"#r#n=== Acesso pgina do formulrio ===#r#n#r#nSe o seu formulrio deve ser preenchido somente por membros da organizao, ou se voc espera que quem o preencha esteja cadastrado no [text $system.caption], ento voc pode alterar para que a pgina do formulrio esteja acessvel somente a estes usurios.#r#n#r#nPorm, isto no ser til se voc espera receber postagens do pblico que no esteja cadastrado, como em um formulrio de contato.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:2:{s:5:"flags";a:1:{s:6:"filter";s:29:"personaliteFields_descriptive";}s:4:"text";a:1:{s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:391:"#r#n=== Preveno bsica ===#r#n#r#nA prevenso bsica se baseia em recursos do cliente como css, cookies e javascript.#r#n#r#nCaso quem esteja enviando o formulrio no possua estes recursos ativados, o formulrio ser recusado.#r#n#r#nDesabilite esta verificao somente se algum cliente legtimo sabidamente no possa dispor destes recursos e esteja tendo problemas ao enviar formulrios em seu site.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:2:{s:5:"flags";a:5:{s:6:"filter";s:8:"checkbox";s:6:"target";s:33:"flags/form_securityBasicsDisabled";s:10:"field_name";s:6:"basics";s:6:"invert";i:1;s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:27:"Ativar verificaes bsicas";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:6:"filter";s:29:"personaliteFields_descriptive";}s:4:"text";a:1:{s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:307:"#r#n=== Filtrar contedo ===#r#n#r#nAs mensagens indesejadas tm por finalidade difundir endereos de sites com vrus ou produtos de procedncia duvidosa.#r#n#r#nImpedir mensagens com endereos - ou suprim-los do contedo original - pode desencorajar pessoas que manualmente estejam inserindo mensagens deste tipo.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:2:{s:5:"flags";a:4:{s:6:"filter";s:8:"checkbox";s:6:"target";s:19:"flags/form_urlBlock";s:10:"field_name";s:9:"url_block";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:55:"Bloquear formulrios que contenham URLs em seu contedo";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:6:"filter";s:29:"personaliteFields_descriptive";}s:4:"text";a:1:{s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:247:"#r#n=== Revisar dados ===#r#n#r#nSolicitar ao visitante para que revise os dados submetidos uma forma elegante de prevenir SPAMs que possam ter passado pelas verificaes bsicas.#r#n#r#nEsta verificao exige que cookies estejam habilitados no cliente.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:2:{s:5:"flags";a:4:{s:6:"filter";s:8:"checkbox";s:6:"target";s:17:"flags/form_review";s:10:"field_name";s:6:"review";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:28:"Exibir pgina de verificao";i:2;i:1;}}}}a:1:{s:8:"children";a:2:{i:0;s:19:"section_editContent";i:1;s:9:"~editMail";}}a:1:{s:8:"children";a:2:{i:0;s:19:"section_editContent";i:1;s:9:"~editMail";}}a:1:{s:8:"children";a:3:{i:0;s:10:"_startView";i:1;s:11:"~viewFields";i:2;s:8:"_endView";}}a:1:{s:5:"flags";a:1:{s:6:"filter";s:27:"sectionFormulary_fieldsView";}}a:2:{s:5:"flags";a:1:{s:6:"preset";s:14:"~contactPreset";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Contato";i:2;i:1;}s:2:"en";a:2:{i:1;s:7:"Contact";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:23:"Formulrio para contato";i:2;i:1;}s:2:"en";a:2:{i:1;s:17:"Contact formulary";i:2;i:1;}}s:11:"description";a:1:{s:2:"pt";a:2:{i:1;s:68:"Um formulrio preconfigurado para contato. Voc pode personaliz-lo.";i:2;i:1;}}}}a:4:{s:6:"marker";i:4;s:5:"flags";a:1:{s:12:"section_type";s:9:"formulary";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Contato";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Contact";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:16:"Entre em contato";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Contact us";}}}s:6:"extras";a:1:{s:9:"formulary";a:6:{s:6:"text_1";a:4:{s:7:"caption";a:2:{s:2:"pt";a:1:{i:1;s:4:"Nome";}s:2:"en";a:1:{i:1;s:4:"Name";}}s:4:"type";s:4:"text";s:8:"required";i:1;s:10:"list_index";i:1;}s:4:"mail";a:4:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:5:"Email";}}s:4:"type";s:4:"text";s:8:"required";i:1;s:10:"list_index";i:2;}s:7:"created";a:2:{s:7:"caption";a:2:{s:2:"pt";a:1:{i:1;s:4:"Data";}s:2:"en";a:1:{i:1;s:4:"Date";}}s:10:"list_index";i:4;}s:6:"status";a:2:{s:7:"caption";a:2:{s:2:"pt";a:1:{i:1;s:6:"Status";}s:2:"en";a:1:{i:1;s:6:"Status";}}s:10:"list_index";i:0;}s:6:"text_2";a:3:{s:7:"caption";a:2:{s:2:"pt";a:1:{i:1;s:7:"Assunto";}s:2:"en";a:1:{i:1;s:7:"Subject";}}s:4:"type";s:4:"text";s:10:"list_index";i:3;}s:10:"textarea_1";a:4:{s:4:"type";s:8:"textarea";s:6:"format";s:3:"pre";s:7:"caption";a:2:{s:2:"pt";a:1:{i:1;s:8:"Mensagem";}s:2:"en";a:1:{i:1;s:7:"Message";}}s:8:"required";i:1;}}}}a:2:{s:5:"flags";a:1:{s:6:"preset";s:16:"~formularyPreset";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"Formulrio";i:2;i:1;}s:2:"en";a:2:{i:1;s:9:"Formulary";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:15:"Novo formulrio";i:2;i:1;}s:2:"en";a:2:{i:1;s:13:"New formulary";i:2;i:1;}}s:11:"description";a:1:{s:2:"pt";a:2:{i:1;s:171:"Crie formulrios para contato, pesquisas de satisfao, fichas de inscrio, solicitao de oramentos e muito mais. Consulte as fichas preenchidas e veja as estatsticas.";i:2;i:1;}}}}a:1:{s:5:"flags";a:1:{s:12:"section_type";s:9:"formulary";}}a:1:{s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:18:"Formulrio enviado";i:2;i:1;}s:2:"en";a:2:{i:1;s:13:"Form submited";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:16:"Mensagem enviada";i:2;i:1;}s:2:"en";a:2:{i:1;s:13:"Form submited";i:2;i:1;}}s:7:"content";a:2:{s:2:"pt";a:4:{i:1;s:72:"#r#nOl [text $user.caption],#r#n#r#nSeu formulrio foi enviado com sucesso.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}s:2:"en";a:5:{i:1;s:67:"Hello [text $user.caption],#r#n#r#nYour form was successfuly submited#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:1:{s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:21:"Personalizar mensagem";i:2;i:1;}s:2:"en";a:2:{i:1;s:14:"Custom message";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:21:"Personalizar mensagem";i:2;i:1;}s:2:"en";a:2:{i:1;s:14:"Custom message";i:2;i:1;}}s:7:"content";a:0:{}}}a:2:{s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:29:"Editar mensagem personalizada";i:2;i:1;}s:2:"en";a:2:{i:1;s:23:"Edit customized message";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:29:"Editar mensagem personalizada";i:2;i:1;}s:2:"en";a:2:{i:1;s:23:"Edit customized message";i:2;i:1;}}s:7:"content";a:0:{}}s:8:"children";a:12:{i:0;s:6:"_start";i:1;s:24:"domain_setRecognizeFlags";i:2;s:12:"~editCaption";i:3;s:10:"~editTitle";i:4;s:12:"~editContent";i:5;s:24:"~editRecognizeParagraphs";i:6;s:18:"~editRecognizeHtml";i:7;s:23:"~editRecognizeEcolabore";i:8;s:12:"~editUpdated";i:9;s:11:"_saveCancel";i:10;s:17:"_required_message";i:11;s:4:"_end";}}a:2:{s:5:"flags";a:5:{s:4:"type";s:4:"text";s:6:"filter";s:4:"text";s:6:"target";s:12:"text/caption";s:10:"field_name";s:7:"caption";s:8:"required";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:35:"Legenda (como ser exibida no menu)";i:2;i:1;}s:2:"en";a:2:{i:1;s:38:"Caption (as it will apear on the menu)";i:2;i:1;}}}}a:2:{s:5:"flags";a:8:{s:4:"type";s:8:"textarea";s:6:"filter";s:4:"text";s:6:"target";s:12:"text/content";s:10:"field_name";s:7:"content";s:8:"required";i:1;s:13:"format_enable";i:1;s:11:"html_enable";i:1;s:16:"ecolabore_enable";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Contedo";i:2;i:1;}s:2:"en";a:2:{i:1;s:7:"Content";i:2;i:1;}}}}a:1:{s:5:"flags";a:7:{s:9:"condition";s:21:"text_ecolabore_choose";s:4:"type";s:8:"checkbox";s:6:"filter";s:8:"checkbox";s:10:"field_name";s:14:"text_ecolabore";s:6:"target";s:20:"flags/text_ecolabore";s:6:"invert";i:1;s:7:"caption";s:32:"labels/field/recognize_ecolabore";}}a:1:{s:5:"flags";a:6:{s:9:"condition";s:16:"text_html_choose";s:4:"type";s:8:"checkbox";s:6:"filter";s:8:"checkbox";s:10:"field_name";s:9:"text_html";s:6:"target";s:15:"flags/text_html";s:7:"caption";s:27:"labels/field/recognize_html";}}a:1:{s:5:"flags";a:7:{s:9:"condition";s:18:"text_format_choose";s:4:"type";s:8:"checkbox";s:6:"filter";s:8:"checkbox";s:10:"field_name";s:11:"text_format";s:6:"target";s:17:"flags/text_format";s:6:"invert";i:1;s:7:"caption";s:33:"labels/field/recognize_paragraphs";}}a:2:{s:5:"flags";a:5:{s:4:"type";s:4:"text";s:6:"filter";s:4:"text";s:6:"target";s:10:"text/title";s:10:"field_name";s:5:"title";s:8:"required";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Ttulo";i:2;i:1;}s:2:"en";a:2:{i:1;s:5:"Title";i:2;i:1;}}}}a:1:{s:5:"flags";a:5:{s:13:"field_display";s:5:"never";s:4:"type";s:4:"none";s:6:"filter";s:9:"timestamp";s:10:"field_name";s:7:"updated";s:6:"target";s:7:"updated";}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:27:"Restaurar mensagem original";i:2;i:1;}s:2:"en";a:2:{i:1;s:24:"Restore original message";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:27:"Restaurar mensagem original";i:2;i:1;}s:2:"en";a:2:{i:1;s:24:"Restore original message";i:2;i:1;}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:3:{i:1;s:54:"Recebidos [if$num_children{ `(`; $num_children; `)`;}]";i:2;i:1;i:6;i:1;}s:2:"en";a:3:{i:1;s:53:"Received [if$num_children{ `(`; $num_children; `)`;}]";i:2;i:1;i:6;i:1;}}s:5:"title";a:2:{s:2:"pt";a:3:{i:1;s:66:"Formulrios recebidos [if$num_children{ `(`; $num_children; `)`;}]";i:2;i:1;i:6;i:1;}s:2:"en";a:3:{i:1;s:61:"Received records [if$num_children{ `(`; $num_children; `)`;}]";i:2;i:1;i:6;i:1;}}}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:21:"Formulrios recebidos";i:2;i:1;}s:2:"en";a:2:{i:1;s:14:"Received forms";i:2;i:1;}}}s:5:"local";a:3:{s:15:"caption-display";i:0;s:18:"caption-line-break";i:1;s:4:"list";s:5:"table";}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"No lida";i:2;i:1;}s:2:"en";a:2:{i:1;s:8:"Not read";i:2;i:1;}}}}a:2:{s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:3:{i:1;s:18:"Selecionar colunas";i:2;i:1;i:6;i:1;}s:2:"en";a:3:{i:1;s:14:"Select columns";i:2;i:1;i:6;i:1;}}s:5:"title";a:2:{s:2:"pt";a:3:{i:1;s:18:"Selecionar colunas";i:2;i:1;i:6;i:1;}s:2:"en";a:3:{i:1;s:14:"Select columns";i:2;i:1;i:6;i:1;}}s:7:"content";a:1:{s:2:"pt";a:2:{i:1;s:69:"Selecione as colunas que devem ser apresentadas na lista de mensagens";i:2;i:1;}}}s:8:"children";a:5:{i:0;s:6:"_start";i:1;s:18:"~selectColumnsList";i:2;s:10:"_separator";i:3;s:11:"_saveCancel";i:4;s:4:"_end";}}a:2:{s:5:"flags";a:2:{s:6:"filter";s:39:"sectionFormulary_received_selectColumns";s:10:"field_name";s:6:"column";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:1:{i:1;s:14:"Exibir colunas";}s:2:"en";a:1:{i:1;s:15:"Display columns";}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Ficha";i:2;i:1;}s:2:"en";a:2:{i:1;s:6:"Record";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:5:"Ficha";i:2;i:1;}s:2:"en";a:2:{i:1;s:6:"Record";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Remover ficha";i:2;i:1;}s:2:"en";a:2:{i:1;s:13:"Remove record";i:2;i:1;}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Removidos";i:2;i:1;}s:2:"en";a:2:{i:1;s:7:"Removed";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:21:"Formulrios removidos";i:2;i:1;}s:2:"en";a:2:{i:1;s:15:"Removed records";i:2;i:1;}}}}a:3:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:13:"dialog_select";}s:5:"local";a:2:{s:6:"scheme";s:6:"system";s:6:"update";i:1;}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"Adicionar coluna";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Add column";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:16:"Adicionar coluna";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Add column";}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:12:"Estatsticas";i:2;i:1;}s:2:"en";a:2:{i:1;s:10:"Statistics";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:12:"Estatsticas";i:2;i:1;}s:2:"en";a:2:{i:1;s:10:"Statistics";i:2;i:1;}}}}a:3:{s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:12:"Estatsticas";i:2;i:1;}s:2:"en";a:2:{i:1;s:10:"Statistics";i:2;i:1;}}s:5:"units";a:2:{s:2:"pt";a:2:{i:1;s:8:"Absoluto";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Absolute";}}s:7:"percent";a:2:{s:2:"pt";a:1:{i:1;s:8:"Relativo";}s:2:"en";a:1:{i:1;s:8:"Relative";}}}s:5:"local";a:2:{s:15:"caption-display";i:1;s:8:"position";s:7:"-center";}s:4:"html";s:648:"#r#n
      #r#n#r#n#r#n#r#n#r#n[list{ loop{ if($header){]#r#n#r#n#r#n#r#n[list{ loop{]#r#n#r#n#r#n#r#n#r#n#r#n#r#n[}}}else{]#r#n#r#n#r#n#r#n#r#n#r#n[}}}]#r#n
      #r#n[text $units][text $percent]
      [text]
      [text][$units][$percent]%#r#n
      #r#n
      #r#n
      #r#n
      #r#n
      [text][$units][$percent]%#r#n
      #r#n
      #r#n
      #r#n
      #r#n
      #r#n";}a:1:{s:4:"text";a:3:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:9:"Glossrio";i:2;i:1;}}s:5:"title";a:1:{s:2:"pt";a:3:{i:1;s:30:"Sobre "[text $document.title]"";i:2;i:1;i:6;i:1;}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:348:"#r#nO glossrio rene todos os verbetes definidos neste ambiente.#r#n#r#nPara criar um verbete, basta envolver o termo desejado em duplo colchete, como em [][]celestial]].#r#n#r#nAps salvar o documento, acione o termo para abrir a pgina de definio do verbete. Adicione contedo vontade.#r#n#r#nEste novo verbete ser automaticamente listado no glossrio.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:3:{s:5:"check";a:2:{s:4:"mode";s:7:"section";s:6:"marker";i:1;}s:6:"parent";a:1:{s:4:"mode";s:5:"index";}s:6:"create";a:2:{s:4:"mode";s:7:"section";s:4:"type";s:8:"glossary";}}a:1:{s:8:"children";a:1:{i:0;s:19:"section_editContent";}}a:1:{s:8:"children";a:1:{i:0;s:19:"section_editContent";}}a:2:{s:5:"flags";a:1:{s:6:"preset";s:14:"~contentPreset";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Glossrio";i:2;i:1;}s:2:"en";a:2:{i:1;s:8:"Glossary";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:9:"Glossrio";i:2;i:1;}s:2:"en";a:2:{i:1;s:8:"Glossary";i:2;i:1;}}s:11:"description";a:1:{s:2:"pt";a:2:{i:1;s:55:"Lista todas as palavras-chave utilizadas neste ambiente";i:2;i:1;}}}}a:3:{s:6:"marker";i:1;s:5:"flags";a:1:{s:12:"section_type";s:8:"glossary";}s:4:"text";a:4:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Glossrio";i:2;i:1;}s:2:"en";a:2:{i:1;s:8:"Glossary";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:9:"Glossrio";i:2;i:1;}s:2:"en";a:2:{i:1;s:8:"Glossary";i:2;i:1;}}s:11:"description";a:1:{s:2:"pt";a:2:{i:1;s:74:"Encontre aqui a lista completa de palavras-chave utilizadas neste ambiente";i:2;i:1;}}s:7:"content";a:2:{s:2:"pt";a:4:{i:1;s:91:"#r#nNesta seo voc encontra a lista completa de palavras-chave utilizadas neste ambiente.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}s:2:"en";a:5:{i:1;s:67:"#r#nIn this section you can find all keywords used in this ambient.#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:1:{s:4:"text";a:3:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:11:"Informaes";i:2;i:1;}}s:5:"title";a:1:{s:2:"pt";a:3:{i:1;s:30:"Sobre "[text $document.title]"";i:2;i:1;i:6;i:1;}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:168:"#r#nEsta pgina exibe informaes sobre quem produziu o site.#r#n#r#nSe esta pgina estiver presente, ela ser apontada no menu de "Boas-vindas", no item "Sobre este site".#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:3:{s:5:"check";a:2:{s:4:"mode";s:7:"section";s:6:"marker";i:6;}s:6:"parent";a:1:{s:4:"mode";s:5:"index";}s:6:"create";a:2:{s:4:"mode";s:7:"section";s:4:"type";s:4:"info";}}a:1:{s:8:"children";a:1:{i:0;s:19:"section_editContent";}}a:1:{s:8:"children";a:1:{i:0;s:19:"section_editContent";}}a:2:{s:5:"flags";a:1:{s:6:"preset";s:14:"~contentPreset";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Informaes";i:2;i:1;}s:2:"en";a:2:{i:1;s:4:"Info";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:27:"Informaes sobre este site";i:2;i:1;}s:2:"en";a:2:{i:1;s:28:"Informations about this site";i:2;i:1;}}s:11:"description";a:1:{s:2:"pt";a:2:{i:1;s:48:"Exibe informaes sobre quem produziu este site.";i:2;i:1;}}}}a:3:{s:6:"marker";i:6;s:5:"flags";a:1:{s:12:"section_type";s:4:"info";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Informaes";i:2;i:1;}s:2:"en";a:2:{i:1;s:12:"Informations";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:15:"Sobre este site";i:2;i:1;}s:2:"en";a:2:{i:1;s:15:"About this site";i:2;i:1;}}s:11:"description";a:1:{s:2:"pt";a:2:{i:1;s:29:"Saiba quem produziu este site";i:2;i:1;}}}}a:1:{s:4:"text";a:3:{s:5:"title";a:1:{s:2:"pt";a:2:{i:1;s:4:"Menu";i:2;i:1;}}s:7:"caption";a:1:{s:2:"pt";a:3:{i:1;s:38:"Sobre a seo "[text$document.caption]";i:2;i:1;i:6;i:1;}}s:7:"content";a:1:{s:2:"pt";a:5:{i:1;s:153:"#r#nA funo do menu ordenar e exibir subsees em um menu.#r#n#r#nNoentanto, as sees listadas em um menu so acessadas como se fossem sees principais.#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:2:{s:5:"flags";a:1:{s:6:"preset";s:11:"~menuPreset";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:4:"Menu";i:2;i:1;}s:2:"en";a:2:{i:1;s:4:"Menu";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:9:"Novo menu";i:2;i:1;}s:2:"en";a:2:{i:1;s:8:"New menu";i:2;i:1;}}s:11:"description";a:1:{s:2:"pt";a:2:{i:1;s:80:"Permite organizar sees em caixas que so acessadas atravs de uma guia de menu";i:2;i:1;}}}}a:1:{s:5:"flags";a:1:{s:12:"section_type";s:4:"menu";}}a:1:{s:4:"text";a:3:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:23:"Poltica de privacidade";i:2;i:1;}}s:5:"title";a:1:{s:2:"pt";a:3:{i:1;s:30:"Sobre "[text $document.title]"";i:2;i:1;i:6;i:1;}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:428:"#r#nQuando voc define a poltica de privacidade, estes termos sero apresentados durante o processo de cadastro de novos usurios.#r#n#r#nUm link para a poltica de privacidade tambm ser apresentado no menu de boas-vindas, logo abaixo da caixa de login.#r#n#r#nPor isto, a poltica de privacidade no precisam figurar no menu principal, uma vez que ela estar acessvel em todas as pginas do ambiente atravs do menu de boas-vindas.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:2:{s:5:"check";a:2:{s:4:"mode";s:7:"section";s:6:"marker";i:7;}s:6:"create";a:2:{s:4:"mode";s:7:"section";s:4:"type";s:13:"privacypolicy";}}a:1:{s:8:"children";a:1:{i:0;s:19:"section_editContent";}}a:1:{s:8:"children";a:1:{i:0;s:19:"section_editContent";}}a:2:{s:5:"flags";a:1:{s:6:"preset";s:14:"~contentPreset";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:23:"Poltica de privacidade";i:2;i:1;}s:2:"en";a:2:{i:1;s:14:"Privacy policy";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:31:"Definir poltica de privacidade";i:2;i:1;}s:2:"en";a:2:{i:1;s:21:"Define privacy policy";i:2;i:1;}}s:11:"description";a:1:{s:2:"pt";a:2:{i:1;s:126:"Se for definida, a poltica de privacidade tambm ser exibida durante o cadastro de novos usurios e no menu de "Boas vindas"";i:2;i:1;}}}}a:4:{s:6:"access";i:0;s:6:"marker";i:7;s:5:"flags";a:1:{s:12:"section_type";s:13:"privacyPolicy";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:23:"Poltica de privacidade";i:2;i:1;}s:2:"en";a:1:{i:1;s:14:"Privacy policy";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:23:"Poltica de privacidade";i:2;i:1;}s:2:"en";a:1:{i:1;s:14:"Privacy policy";}}s:11:"description";a:1:{s:2:"pt";a:2:{i:1;s:44:"Saiba como administramos seus dados pessoais";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"content";a:2:{s:2:"pt";a:5:{i:1;s:205:"#r#nEsta seo redireciona os visitantes para o endereo:#r#n#r#n* [$document.url]#r#n#r#n=== Estatsticas ===#r#n#r#n[$document.hits] Visualizaes#r#n#r#n[$document.value] Redirecionamentos#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}s:2:"en";a:4:{i:1;s:186:"#r#nThis section redirects the users to address below:#r#n#r#n* [$document.url]#r#n#r#n=== Statistics ===#r#n#r#n[$document.hits] Views#r#n#r#n[$document.value] Redirects#r#n#r#n";i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:2:{s:5:"flags";a:5:{s:4:"type";s:4:"text";s:6:"filter";s:4:"free";s:10:"field_name";s:3:"url";s:6:"target";s:9:"local/url";s:8:"required";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:21:"Redirecionar para URL";i:2;i:1;}s:2:"en";a:1:{i:1;s:15:"Redirect to URL";}}}}a:1:{s:4:"text";a:3:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:26:"Redirecionar para endereo";i:2;i:1;}}s:5:"title";a:1:{s:2:"pt";a:3:{i:1;s:42:"Redirecionar para "[text $document.title]"";i:2;i:1;i:6;i:1;}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:231:"#r#nUsurios que no sejam administradores, ao acionar esta seo, sero redirecionados para o endereo especificado.#r#n#r#nOs administradores podero visualizar quantas vezes este item foi exibido e quantas vezes o link foi acionado.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:1:{s:8:"children";a:1:{i:0;s:8:"~editURL";}}a:1:{s:8:"children";a:1:{i:0;s:8:"~editURL";}}a:2:{s:5:"flags";a:1:{s:6:"preset";s:14:"~contentPreset";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:12:"Link externo";i:2;i:1;}s:2:"en";a:2:{i:1;s:13:"External link";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:30:"Redirecionar para link externo";i:2;i:1;}s:2:"en";a:2:{i:1;s:28:"Redirect to an external link";i:2;i:1;}}s:11:"description";a:1:{s:2:"pt";a:2:{i:1;s:133:"Cria um item no menu que aponta para um endereo externo. Saiba quantas vezes o item foi exibido e quantas vezes o item foi acionado.";i:2;i:1;}}}}a:1:{s:5:"flags";a:1:{s:12:"section_type";s:8:"redirect";}}a:1:{s:4:"text";a:3:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:9:"Pesquisar";i:2;i:1;}}s:5:"title";a:1:{s:2:"pt";a:3:{i:1;s:30:"Sobre "[text $document.title]"";i:2;i:1;i:6;i:1;}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:4:"#r#n#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:3:{s:5:"check";a:2:{s:4:"mode";s:7:"section";s:6:"marker";i:7;}s:6:"parent";a:1:{s:4:"mode";s:5:"index";}s:6:"create";a:2:{s:4:"mode";s:7:"section";s:4:"type";s:6:"search";}}a:1:{s:8:"children";a:1:{i:0;s:19:"section_editContent";}}a:1:{s:8:"children";a:1:{i:0;s:19:"section_editContent";}}a:2:{s:5:"flags";a:1:{s:6:"preset";s:14:"~contentPreset";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Pesquisar";i:2;i:1;}s:2:"en";a:2:{i:1;s:6:"Search";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:9:"Pesquisar";i:2;i:1;}s:2:"en";a:2:{i:1;s:6:"Search";i:2;i:1;}}s:11:"description";a:1:{s:2:"pt";a:2:{i:1;s:70:"Crie uma pgina personalizada para exibir os resultados das pesquisas.";i:2;i:1;}}}}a:3:{s:6:"marker";i:3;s:5:"flags";a:1:{s:12:"section_type";s:6:"search";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Pesquisar";i:2;i:1;}s:2:"en";a:2:{i:1;s:6:"Search";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:9:"Pesquisar";i:2;i:1;}s:2:"en";a:2:{i:1;s:6:"Search";i:2;i:1;}}s:11:"description";a:1:{s:2:"pt";a:2:{i:1;s:35:"Pesquise por palavras-chave e tags.";i:2;i:1;}}}}a:1:{s:4:"text";a:3:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:20:"Todos os subdomnios";i:2;i:1;}}s:5:"title";a:1:{s:2:"pt";a:3:{i:1;s:20:"Todos os subdomnios";i:2;i:1;i:6;i:1;}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:196:"#r#nQuando o [text $system.caption] est configurado para gerenciar mltiplos ambientes, como subpastas ou como subdomnios, esta seo ir apresentar uma lista com todos os ambientes cadastrados.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:2:{s:5:"check";a:2:{s:4:"mode";s:7:"section";s:6:"marker";i:91;}s:6:"create";a:2:{s:4:"mode";s:7:"section";s:4:"type";s:10:"subdomains";}}a:1:{s:5:"local";a:5:{s:4:"list";s:14:"list_columns_1";s:7:"details";s:20:"title_2#r#ndescription";s:5:"wd-sm";s:3:"-10";s:5:"wd-lg";s:2:"-6";s:8:"position";s:7:"-center";}}a:1:{s:8:"children";a:1:{i:0;s:19:"section_editContent";}}a:1:{s:8:"children";a:1:{i:0;s:19:"section_editContent";}}a:2:{s:5:"flags";a:1:{s:6:"preset";s:14:"~contentPreset";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:20:"Todos os subdomnios";i:2;i:1;}s:2:"en";a:2:{i:1;s:14:"All subdomains";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:20:"Todos os subdomnios";i:2;i:1;}s:2:"en";a:2:{i:1;s:14:"All subdomains";i:2;i:1;}}s:11:"description";a:1:{s:2:"pt";a:2:{i:1;s:37:"Lista todos os ambientes cadastrados.";i:2;i:1;}}}}a:4:{s:6:"access";i:0;s:6:"marker";i:91;s:5:"flags";a:1:{s:12:"section_type";s:10:"subdomains";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Subdomnios";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Subdomains";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:20:"Todos os subdomnios";i:2;i:1;}s:2:"en";a:1:{i:1;s:14:"All subdomains";}}s:11:"description";a:1:{s:2:"pt";a:3:{i:1;s:48:"Conhea todos os ambientes que se hospedam aqui.";i:2;i:1;i:6;i:1;}}}}a:1:{s:4:"text";a:3:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:12:"Nossa equipe";i:2;i:1;}}s:5:"title";a:1:{s:2:"pt";a:2:{i:1;s:18:"Sobre nossa equipe";i:2;i:1;}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:134:"#r#nAqui temos a lista dos membros da organizao.#r#n#r#nVoc pode cadastrar novos membros, editar suas fichas ou remover seus cadastros.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:350:"#r#nAqui vamos cadastrar os membros da organizao.#r#n#r#nAs ferramentas administrativas faro uso destas informaes, sempre que for necessrio identificar o ocupante de um cargo, o responsvel por uma auditoria, ao, documento ou evento.#r#n#r#nIsto permite que um membro da organizao acesse em seu perfil todas as atividades das quais for responsvel.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:478:"#r#nEnto cadastre os membros da organizao.#r#n#r#nEles sero listados em ordem alfabtica.#r#n#r#nNo organograma poderemos indicar qual cargo cada membro ocupa. Por enquanto, basta cadastr-los.#r#n#r#nEscolhendo "Cadastrar novo membro" voc poder criar um identificador e uma senha para que o usurio possa ter acesso a certas ferramentas administrativas.#r#n#r#nCaso algum membro j possua um perfil - um identificador e uma senha - para conectar-se ao sistema, escolha "Importar perfil".#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:3:{s:5:"check";a:2:{s:4:"mode";s:7:"section";s:6:"marker";i:27;}s:6:"parent";a:2:{s:4:"mode";s:7:"section";s:6:"marker";i:20;}s:6:"create";a:2:{s:4:"mode";s:7:"section";s:4:"type";s:4:"team";}}a:1:{s:4:"text";a:1:{s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:134:"#r#nAqui temos a lista dos membros da organizao.#r#n#r#nVoc pode cadastrar novos membros, editar suas fichas ou remover seus cadastros.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:140:"#r#nVoc estava cadastrando os membros da organizao.#r#n#r#nContinue a cadastr-los, ou acione "Avanar" para seguirmos para a prxima tarefa.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"Todos os clientes";i:2;i:1;}s:2:"en";a:2:{i:1;s:11:"All clients";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Grupos";i:2;i:1;}s:2:"en";a:2:{i:1;s:6:"Groups";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"Todos os membros";i:2;i:1;}s:2:"en";a:2:{i:1;s:11:"All members";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:18:"Todos os parceiros";i:2;i:1;}s:2:"en";a:2:{i:1;s:12:"All partners";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:15:"Todos os alunos";i:2;i:1;}s:2:"en";a:2:{i:1;s:12:"All students";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:21:"Todos os fornecedores";i:2;i:1;}s:2:"en";a:2:{i:1;s:13:"All suppliers";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:19:"Membros deste setor";i:2;i:1;}s:2:"en";a:2:{i:1;s:22:"Members of this sector";i:2;i:1;}}}}a:1:{s:8:"children";a:1:{i:0;s:19:"section_editContent";}}a:1:{s:8:"children";a:1:{i:0;s:19:"section_editContent";}}a:2:{s:5:"flags";a:1:{s:6:"preset";s:14:"~clientsPreset";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Clientes";i:2;i:1;}s:2:"en";a:2:{i:1;s:7:"Clients";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:8:"Clientes";i:2;i:1;}s:2:"en";a:2:{i:1;s:7:"Clients";i:2;i:1;}}s:11:"description";a:1:{s:2:"pt";a:2:{i:1;s:24:"Mostra todos os clientes";i:2;i:1;}}}}a:4:{s:6:"marker";i:35;s:6:"access";i:4;s:5:"flags";a:1:{s:12:"section_type";s:4:"team";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Clientes";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Clients";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:8:"Clientes";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Clients";}}s:11:"description";a:1:{s:2:"pt";a:2:{i:1;s:20:"Gerencia os clientes";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:6:"preset";s:15:"~partnersPreset";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Parceiros";i:2;i:1;}s:2:"en";a:2:{i:1;s:8:"Partners";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:16:"Nossos parceiros";i:2;i:1;}s:2:"en";a:2:{i:1;s:12:"Our partners";i:2;i:1;}}s:11:"description";a:1:{s:2:"pt";a:2:{i:1;s:25:"Mostra todos os parceiros";i:2;i:1;}}}}a:3:{s:6:"marker";i:31;s:5:"flags";a:1:{s:12:"section_type";s:4:"team";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Parceiros";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Partners";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:16:"Nossos parceiros";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Our partners";}}s:11:"description";a:1:{s:2:"pt";a:2:{i:1;s:24:"Conhea nossos parceiros";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:6:"preset";s:15:"~studentsPreset";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Alunos";i:2;i:1;}s:2:"en";a:2:{i:1;s:8:"Students";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:13:"Nossos alunos";i:2;i:1;}s:2:"en";a:2:{i:1;s:12:"Our students";i:2;i:1;}}s:11:"description";a:1:{s:2:"pt";a:2:{i:1;s:22:"Mostra todos os alunos";i:2;i:1;}}}}a:4:{s:6:"marker";i:32;s:6:"access";i:4;s:5:"flags";a:1:{s:12:"section_type";s:4:"team";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Nossos alunos";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Our students";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:13:"Nossos alunos";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Our students";}}s:11:"description";a:1:{s:2:"pt";a:2:{i:1;s:21:"Conhea nossos alunos";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:6:"preset";s:20:"~subscriptionsPreset";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"Inscritos no site";i:2;i:1;}s:2:"en";a:2:{i:1;s:16:"Subscribed users";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:17:"Inscritos no site";i:2;i:1;}s:2:"en";a:2:{i:1;s:16:"Subscribed users";i:2;i:1;}}s:11:"description";a:1:{s:2:"pt";a:2:{i:1;s:42:"Mostra todos os usurios inscritos no site";i:2;i:1;}}}}a:3:{s:6:"marker";i:33;s:5:"flags";a:1:{s:12:"section_type";s:4:"team";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:18:"Usurios inscritos";i:2;i:1;}s:2:"en";a:1:{i:1;s:16:"Subscribed users";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:18:"Usurios inscritos";i:2;i:1;}s:2:"en";a:1:{i:1;s:16:"Subscribed users";}}s:11:"description";a:1:{s:2:"pt";a:2:{i:1;s:53:"Conhea os usurios que tem colaborado no nosso site.";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:6:"preset";s:16:"~suppliersPreset";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:12:"Fornecedores";i:2;i:1;}s:2:"en";a:2:{i:1;s:9:"Suppliers";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:12:"Fornecedores";i:2;i:1;}s:2:"en";a:2:{i:1;s:9:"Suppliers";i:2;i:1;}}s:11:"description";a:1:{s:2:"pt";a:2:{i:1;s:28:"Mostra todos os fornecedores";i:2;i:1;}}}}a:4:{s:6:"marker";i:34;s:6:"access";i:4;s:5:"flags";a:1:{s:12:"section_type";s:4:"team";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:12:"Fornecedores";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Suppliers";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:12:"Fornecedores";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Suppliers";}}s:11:"description";a:1:{s:2:"pt";a:2:{i:1;s:24:"Gerencia os fornecedores";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:6:"preset";s:11:"~teamPreset";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:12:"Nossa equipe";i:2;i:1;}s:2:"en";a:2:{i:1;s:8:"Our team";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:12:"Nossa equipe";i:2;i:1;}s:2:"en";a:2:{i:1;s:8:"Our team";i:2;i:1;}}s:11:"description";a:1:{s:2:"pt";a:2:{i:1;s:39:"Mostra todos os membros da organizao.";i:2;i:1;}}}}a:4:{s:6:"marker";i:30;s:6:"access";i:4;s:5:"flags";a:1:{s:12:"section_type";s:4:"team";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:12:"Nossa equipe";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Our team";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:12:"Nossa equipe";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Our team";}}s:11:"description";a:1:{s:2:"pt";a:2:{i:1;s:34:"Conhea os membros da organizao.";i:2;i:1;}}}}a:2:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:12:"Editar grupo";i:2;i:1;}s:2:"en";a:2:{i:1;s:10:"Edit group";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:12:"Editar grupo";i:2;i:1;}s:2:"en";a:2:{i:1;s:10:"Edit group";i:2;i:1;}}}s:8:"children";a:7:{i:0;s:6:"_start";i:1;s:10:"~editTitle";i:2;s:12:"~editCaption";i:3;s:9:"~editName";i:4;s:12:"~editContent";i:5;s:11:"_saveCancel";i:6;s:4:"_end";}}a:2:{s:5:"flags";a:6:{s:4:"type";s:10:"text_small";s:6:"filter";s:7:"caption";s:10:"field_name";s:7:"caption";s:6:"target";s:12:"text/caption";s:8:"required";i:1;s:9:"error_msg";s:27:"section_editCaptionRequired";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:35:"Legenda (como ser exibida no menu)";i:2;i:1;}s:2:"en";a:2:{i:1;s:39:"Caption (as it will appear on the menu)";i:2;i:1;}}}}a:2:{s:5:"flags";a:7:{s:4:"type";s:8:"textarea";s:6:"filter";s:4:"text";s:10:"field_name";s:7:"content";s:6:"target";s:12:"text/content";s:12:"format_force";i:1;s:10:"html_force";i:2;s:15:"ecolabore_force";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:18:"Breve apresentao";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Abstract";}}}}a:1:{s:5:"flags";a:7:{s:13:"field_display";s:16:"section_editName";s:4:"type";s:10:"text_small";s:6:"filter";s:11:"domain_name";s:10:"field_name";s:4:"name";s:6:"target";s:4:"name";s:8:"required";i:1;s:7:"caption";s:18:"section_editFolder";}}a:1:{s:5:"flags";a:5:{s:4:"type";s:4:"text";s:6:"filter";s:4:"text";s:10:"field_name";s:5:"title";s:6:"target";s:10:"text/title";s:7:"caption";s:18:"labels/field/title";}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"Novo grupo";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"New group";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:10:"Novo grupo";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"New group";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Remover grupo";i:2;i:1;}s:2:"en";a:2:{i:1;s:12:"Remove group";i:2;i:1;}}}}a:3:{s:5:"flags";a:3:{s:6:"action";s:15:"_section-remove";s:4:"icon";s:8:"question";s:7:"caption";s:34:"renderLabels_msg_operation_confirm";}s:4:"text";a:1:{s:7:"content";a:2:{s:2:"pt";a:3:{i:1;s:138:"Esta operao ir remover permanentemente este grupo.#r#n#r#nAs fichas vinculadas a este grupo no sero removidas.#r#n#r#nDeseja mesmo continuar?";i:2;i:1;i:4;i:1;}s:2:"en";a:5:{i:1;s:100:"This operation will remove permanently this section and all hes content.#r#n#r#nDo you wich to continue?";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}s:8:"children";a:4:{i:0;s:6:"_start";i:1;s:10:"_separator";i:2;s:37:"modHumperstilshen_submitConfirmCancel";i:3;s:4:"_end";}}a:4:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:6:"dialog";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:2:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:7:"Cliente";i:2;i:1;}}s:5:"title";a:1:{s:2:"pt";a:2:{i:1;s:7:"Cliente";i:2;i:1;}}}s:8:"children";a:9:{i:0;s:6:"_start";i:1;s:10:"~viewTitle";i:2;s:12:"~viewCaption";i:3;s:12:"~viewAddress";i:4;s:10:"~viewPhone";i:5;s:9:"~viewMail";i:6;s:10:"_separator";i:7;s:6:"_close";i:8;s:4:"_end";}}a:4:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:6:"dialog";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:2:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:6:"Membro";i:2;i:1;}}s:5:"title";a:1:{s:2:"pt";a:2:{i:1;s:6:"Membro";i:2;i:1;}}}s:8:"children";a:9:{i:0;s:6:"_start";i:1;s:10:"~viewTitle";i:2;s:12:"~viewCaption";i:3;s:12:"~viewAddress";i:4;s:10:"~viewPhone";i:5;s:9:"~viewMail";i:6;s:10:"_separator";i:7;s:6:"_close";i:8;s:4:"_end";}}a:4:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:6:"dialog";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:2:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:8:"Parceiro";i:2;i:1;}}s:5:"title";a:1:{s:2:"pt";a:2:{i:1;s:8:"Parceiro";i:2;i:1;}}}s:8:"children";a:9:{i:0;s:6:"_start";i:1;s:10:"~viewTitle";i:2;s:12:"~viewCaption";i:3;s:12:"~viewAddress";i:4;s:10:"~viewPhone";i:5;s:9:"~viewMail";i:6;s:10:"_separator";i:7;s:6:"_close";i:8;s:4:"_end";}}a:4:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:6:"dialog";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:2:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:5:"Aluno";i:2;i:1;}}s:5:"title";a:1:{s:2:"pt";a:2:{i:1;s:7:"Studant";i:2;i:1;}}}s:8:"children";a:9:{i:0;s:6:"_start";i:1;s:10:"~viewTitle";i:2;s:12:"~viewCaption";i:3;s:12:"~viewAddress";i:4;s:10:"~viewPhone";i:5;s:9:"~viewMail";i:6;s:10:"_separator";i:7;s:6:"_close";i:8;s:4:"_end";}}a:4:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:6:"dialog";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:2:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:9:"Inscrio";i:2;i:1;}}s:5:"title";a:1:{s:2:"pt";a:2:{i:1;s:9:"Inscrio";i:2;i:1;}}}s:8:"children";a:9:{i:0;s:6:"_start";i:1;s:10:"~viewTitle";i:2;s:12:"~viewCaption";i:3;s:12:"~viewAddress";i:4;s:10:"~viewPhone";i:5;s:9:"~viewMail";i:6;s:10:"_separator";i:7;s:6:"_close";i:8;s:4:"_end";}}a:4:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:6:"dialog";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:2:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:10:"Fornecedor";i:2;i:1;}}s:5:"title";a:1:{s:2:"pt";a:2:{i:1;s:10:"Fornecedor";i:2;i:1;}}}s:8:"children";a:9:{i:0;s:6:"_start";i:1;s:10:"~viewTitle";i:2;s:12:"~viewCaption";i:3;s:12:"~viewAddress";i:4;s:10:"~viewPhone";i:5;s:9:"~viewMail";i:6;s:10:"_separator";i:7;s:6:"_close";i:8;s:4:"_end";}}a:2:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Editar membro";i:2;i:1;}s:2:"en";a:2:{i:1;s:11:"Edit member";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:13:"Editar membro";i:2;i:1;}s:2:"en";a:2:{i:1;s:11:"Edit member";i:2;i:1;}}}s:8:"children";a:12:{i:0;s:6:"_start";i:1;s:26:"adminUsers_add_editCaption";i:2;s:18:"userJoin_editTitle";i:3;s:25:"adminUsers_add_editGender";i:4;s:16:"userJoin_editCPF";i:5;s:21:"userJoin_editBornDate";i:6;s:18:"userJoin_editPhone";i:7;s:17:"userJoin_editMail";i:8;s:20:"userJoin_editAddress";i:9;s:10:"~editGroup";i:10;s:17:"_saveCancelRemove";i:11;s:4:"_end";}}a:2:{s:5:"flags";a:1:{s:6:"filter";s:30:"sectionTeam_member_selectGroup";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"Pertence ao grupo";i:2;i:1;}s:2:"en";a:2:{i:1;s:20:"Belongs to the group";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"(Sem grupo)";i:2;i:1;}s:2:"en";a:2:{i:1;s:10:"(No group)";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:449:"#r#nAs informaes que a organizao guarda sobre seus membros inicialmente so uma cpia dos dados provenientes do perfil do usurio.#r#n#r#nPorm, caso o usurio altere seus dados cadastrais, tais alteraes no incidiro automaticamente sobre esta ficha.#r#n#r#nAntes que o usurio propague informaes falsas do seu perfil para a organizao, voc ser avisad[gender:o|a] sobre as alteraes e lhe ser perguntad[gender:o|a] se deseja ou no aceit-las.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:4:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:6:"dialog";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:15:"Importar perfil";i:2;i:1;}s:2:"en";a:2:{i:1;s:14:"Import profile";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:15:"Importar perfil";i:2;i:1;}s:2:"en";a:2:{i:1;s:14:"Import profile";i:2;i:1;}}}s:8:"children";a:5:{i:0;s:6:"_start";i:1;s:11:"~importList";i:2;s:10:"~editGroup";i:3;s:11:"_saveCancel";i:4;s:4:"_end";}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:3:"tip";}s:4:"text";a:3:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:31:"Informaes sobre a organizao";i:2;i:1;}}s:5:"title";a:1:{s:2:"pt";a:3:{i:1;s:30:"Sobre "[text $document.title]"";i:2;i:1;i:6;i:1;}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:395:"#r#nEsta seo acomoda informaes sobre a organizao.#r#n#r#nEstas informaes so importantes para os visitantes, mas tambm outras ferramentas administrativas podero fazer uso destas informaes.#r#n#r#nO organograma, a pasta de documentao, a agenda de compromissos e outras ferramentas faro uso do cadastro de espaos fsicos, membros e parceiros.#r#n#r#nNavegue pelas subsees para mais detalhes.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:278:"#r#nTemos aqui uma lista de todos os usurios cadastrados no sistema. Selecione um usurio para fazer parte da equipe da sua organizao.#r#n#r#nCaso o usurio que voc deseja importar no esteja cadastrado, feche este dilogo acionando "Cancelar" e escolha "Adicionar novo membro".#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:2:{s:5:"flags";a:1:{s:6:"filter";s:29:"sectionTeam_member_importList";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:15:"Importar perfil";i:2;i:1;}s:2:"en";a:2:{i:1;s:14:"Import profile";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:5:"error";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:24:"Falha ao importar perfil";i:2;i:1;}s:2:"en";a:2:{i:1;s:25:"Profile importing failure";i:2;i:1;}}s:7:"content";a:1:{s:2:"pt";a:5:{i:1;s:95:"#r#nUma falha ocorreu ao tentar importar um perfil.#r#n#r#nPor favor, selecione um perfil na lista.#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:4:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:6:"dialog";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:25:"Retorno de membro inativo";i:2;i:1;}s:2:"en";a:2:{i:1;s:22:"Inactive member return";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:25:"Retorno de membro inativo";i:2;i:1;}s:2:"en";a:2:{i:1;s:22:"Inactive member return";i:2;i:1;}}}s:8:"children";a:4:{i:0;s:6:"_start";i:1;s:13:"~inactiveList";i:2;s:11:"_saveCancel";i:3;s:4:"_end";}}a:1:{s:4:"text";a:1:{s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:410:"#r#nAqui temos a lista de todos os membros que foram afastados da organizao.#r#n#r#nSelecionando um membro, ele se tornar ativo e poder novamente conectar-se ao sistema.#r#n#r#nPorm, observe que ao ser desligado, estes membros foram removidos do organograma e portanto no ocupam mais nenhum cargo na organizao.#r#n#r#nSe necessrio, v ao organograma e adicione os membros reintegrados aos seus respectivos cargos.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:2:{s:5:"flags";a:1:{s:6:"filter";s:31:"sectionTeam_member_inactiveList";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:15:"Reativar perfil";i:2;i:1;}s:2:"en";a:2:{i:1;s:18:"Reactivate profile";i:2;i:1;}}}}a:4:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:6:"dialog";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Novo membro";i:2;i:1;}s:2:"en";a:2:{i:1;s:10:"New member";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:11:"Novo membro";i:2;i:1;}s:2:"en";a:2:{i:1;s:10:"New member";i:2;i:1;}}}s:8:"children";a:11:{i:0;s:6:"_start";i:1;s:23:"adminUsers_add_editName";i:2;s:26:"adminUsers_add_editCaption";i:3;s:24:"adminUsers_add_editTitle";i:4;s:23:"adminUsers_add_editMail";i:5;s:25:"adminUsers_add_editGender";i:6;s:27:"adminUsers_add_editPassword";i:7;s:28:"adminUsers_add_editPassword2";i:8;s:10:"~editGroup";i:9;s:7:"_submit";i:10;s:4:"_end";}}a:1:{s:4:"text";a:1:{s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:314:"#r#nAo cadastrar um novo membro, voc deve informar identificador e senha provisrios com os quais o novo membro poder conectar-se.#r#n#r#nInicialmente os membros tm acesso limitado s ferramentas administrativas da organizao, cabendo ao administrador - neste caso voc - configurar direitos especiais de acesso.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:25:"Desligar membro (remover)";i:2;i:1;}s:2:"en";a:2:{i:1;s:22:"Unlink member (Remove)";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:7:"default";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:14:"Membro inativo";i:2;i:1;}s:2:"en";a:2:{i:1;s:15:"Inactive member";i:2;i:1;}}s:7:"content";a:1:{s:2:"pt";a:3:{i:1;s:607:"#r#nEste membro agora est inativo, porquanto sua ficha foi movida para a lista de documentos inativos ou descontinuados.#r#n#r#nEnquanto houverem vnculos entre esta ficha e outros documentos - tais como compromissos na agenda, auditorias realizadas, etc - ela no poder ser eliminada.#r#n#r#nPor se tratar de uma ficha que representa um membro da equipe, no recomendamos sua eliminao antes de pelo menos 5 (cinco) anos aps seu desligamento da organizao.#r#n#r#nLembramos que a legislao brasileira obriga a organizao a manter em seus arquivos o contrato com o membro em papel pelo prazo de 30 (trinta) anos.#r#n";i:2;i:1;i:4;i:1;}}}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:7:"default";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:14:"Membro inativo";i:2;i:1;}s:2:"en";a:2:{i:1;s:15:"Inactive member";i:2;i:1;}}s:7:"content";a:1:{s:2:"pt";a:3:{i:1;s:380:"#r#nEste usurio agora est inativo, porquanto sua ficha foi movida para a lista de documentos inativos ou descontinuados.#r#n#r#nEnquanto houverem vnculos entre esta ficha e outros documentos - tais como compromissos na agenda, auditorias realizadas, etc - ela no poder ser eliminada.#r#n#r#nO perfil do usurio no ser eliminado. Porm, perder os direitos especiais neste ambiente.#r#n";i:2;i:1;i:4;i:1;}}}}a:1:{s:4:"text";a:3:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:17:"Termos de servio";i:2;i:1;}}s:5:"title";a:1:{s:2:"pt";a:3:{i:1;s:30:"Sobre "[text $document.title]"";i:2;i:1;i:6;i:1;}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:415:"#r#nQuando voc define os termos de servio, estes termos sero apresentados durante o processo de cadastro de novos usurios.#r#n#r#nUm link para os termos de servio tambm sero apresentados no menu de boas-vindas, logo abaixo da caixa de login.#r#n#r#nPor isto, os termos de servio no precisam figurar no menu principal, uma vez que ele estar acessvel em todas as pginas do ambiente atravs do menu de boas-vindas.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:2:{s:5:"check";a:2:{s:4:"mode";s:7:"section";s:6:"marker";i:5;}s:6:"create";a:2:{s:4:"mode";s:7:"section";s:4:"type";s:5:"terms";}}a:1:{s:8:"children";a:1:{i:0;s:19:"section_editContent";}}a:1:{s:8:"children";a:1:{i:0;s:19:"section_editContent";}}a:2:{s:5:"flags";a:1:{s:6:"preset";s:14:"~contentPreset";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"Termos de servio";i:2;i:1;}s:2:"en";a:2:{i:1;s:13:"Service terms";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:25:"Definir termos de servio";i:2;i:1;}s:2:"en";a:2:{i:1;s:20:"Define service terms";i:2;i:1;}}s:11:"description";a:1:{s:2:"pt";a:2:{i:1;s:126:"Se forem definidos, os termos de servio tambm sero exibidos durante o cadastro de novos usurios e no menu de "Boas vindas"";i:2;i:1;}}}}a:4:{s:6:"access";i:0;s:6:"marker";i:5;s:5:"flags";a:1:{s:12:"section_type";s:5:"terms";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"Termos de servio";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Service terms";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:17:"Termos de servio";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Service terms";}}s:11:"description";a:1:{s:2:"pt";a:2:{i:1;s:65:"Conhea as condies de uso impostas aos usurios deste ambiente.";i:2;i:1;}}}}a:1:{s:5:"flags";a:3:{s:6:"filter";s:6:"submit";s:10:"field_name";s:3:"add";s:7:"caption";s:17:"labels/action/add";}}a:1:{s:5:"flags";a:3:{s:6:"filter";s:6:"submit";s:10:"field_name";s:6:"cancel";s:7:"caption";s:18:"labels/action/back";}}a:1:{s:5:"flags";a:3:{s:6:"filter";s:6:"submit";s:10:"field_name";s:6:"cancel";s:7:"caption";s:20:"labels/action/cancel";}}a:1:{s:5:"flags";a:3:{s:6:"filter";s:6:"submit";s:10:"field_name";s:6:"cancel";s:7:"caption";s:19:"labels/action/close";}}a:1:{s:5:"flags";a:3:{s:6:"filter";s:6:"submit";s:10:"field_name";s:4:"save";s:7:"caption";s:20:"labels/action/create";}}a:1:{s:5:"flags";a:2:{s:4:"type";s:3:"end";s:6:"filter";s:3:"end";}}a:1:{s:5:"flags";a:1:{s:4:"type";s:8:"view_end";}}a:1:{s:5:"flags";a:3:{s:6:"filter";s:6:"submit";s:10:"field_name";s:4:"next";s:7:"caption";s:20:"labels/action/finish";}}a:2:{s:5:"flags";a:1:{s:4:"type";s:11:"descriptive";}s:4:"text";a:1:{s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:274:"=== Um erro ocorreu ao inserir um formulrio aqui ===#r#n#r#nHouve um conflito de identificadores.#r#n#r#nPossivelmente o mesmo formulrio est sendo inserido mais de uma vez no mesmo documento, ou uma aplicao est tentando criar um segundo formulrio com o mesmo identificador.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:1:{s:5:"flags";a:3:{s:6:"filter";s:6:"submit";s:10:"field_name";s:4:"save";s:7:"caption";s:16:"labels/action/go";}}a:1:{s:5:"flags";a:3:{s:6:"filter";s:6:"submit";s:10:"field_name";s:4:"next";s:7:"caption";s:18:"labels/action/next";}}a:1:{s:5:"flags";a:3:{s:6:"filter";s:6:"submit";s:10:"field_name";s:8:"previous";s:7:"caption";s:22:"labels/action/previous";}}a:2:{s:5:"flags";a:1:{s:6:"filter";s:6:"submit";}s:8:"children";a:2:{i:0;s:9:"_previous";i:1;s:7:"_finish";}}a:2:{s:5:"flags";a:1:{s:6:"filter";s:6:"submit";}s:8:"children";a:2:{i:0;s:9:"_previous";i:1;s:5:"_next";}}a:2:{s:5:"flags";a:1:{s:6:"filter";s:6:"submit";}s:8:"children";a:2:{i:0;s:9:"_previous";i:1;s:7:"_submit";}}a:1:{s:5:"flags";a:3:{s:6:"filter";s:6:"submit";s:10:"field_name";s:4:"save";s:7:"caption";s:18:"labels/action/save";}}a:2:{s:5:"flags";a:2:{s:4:"type";s:6:"submit";s:6:"filter";s:6:"submit";}s:8:"children";a:2:{i:0;s:5:"_save";i:1;s:7:"_cancel";}}a:2:{s:5:"flags";a:2:{s:4:"type";s:6:"submit";s:6:"filter";s:6:"submit";}s:8:"children";a:2:{i:0;s:5:"_save";i:1;s:6:"_close";}}a:1:{s:5:"flags";a:1:{s:4:"type";s:9:"separator";}}a:1:{s:5:"flags";a:2:{s:4:"type";s:5:"start";s:6:"filter";s:5:"start";}}a:1:{s:5:"flags";a:1:{s:4:"type";s:10:"view_start";}}a:1:{s:5:"flags";a:3:{s:6:"filter";s:6:"submit";s:10:"field_name";s:4:"save";s:7:"caption";s:20:"labels/action/submit";}}a:2:{s:5:"flags";a:2:{s:4:"type";s:6:"submit";s:6:"filter";s:6:"submit";}s:8:"children";a:2:{i:0;s:7:"_submit";i:1;s:7:"_cancel";}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:38:"A configurao original foi restaurada";i:2;i:1;}s:2:"en";a:2:{i:1;s:31:"Original configuration restored";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:24:"A configurao foi salva";i:2;i:1;}s:2:"en";a:2:{i:1;s:19:"Configuration saved";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:7:"default";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Sucesso";i:2;i:1;}s:2:"en";a:2:{i:1;s:7:"Success";i:2;i:1;}}s:7:"content";a:2:{s:2:"pt";a:4:{i:1;s:31:"#r#nOs dados foram atualizados.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}s:2:"en";a:3:{i:1;s:17:"#r#nData updated.#r#n";i:4;i:1;i:6;i:1;}}}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:5:"crash";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Falha interna";i:2;i:1;}s:2:"en";a:2:{i:1;s:14:"Internal error";i:2;i:1;}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:115:"#r#nOcorreu uma falha interna.#r#n#r#nUm mdulo ou configurao necessrio para completar esta ao no foi encontrado.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:5:"crash";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:18:"Operao cancelada";i:2;i:1;}s:2:"en";a:2:{i:1;s:18:"Operation canceled";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:18:"Operao cancelada";i:2;i:1;}s:2:"en";a:1:{i:1;s:18:"Operation canceled";}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:143:"#r#nNo foi possvel concluir a operao.#r#n#r#nOs requisitos para concluir esta operao no foram atendidos ou uma falha interna est ocorrendo.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:5:"error";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:34:"Campo de preenchimento obrigatrio";i:2;i:1;}s:2:"en";a:2:{i:1;s:14:"Required field";i:2;i:1;}}s:7:"content";a:2:{s:2:"pt";a:4:{i:1;s:110:"O campo "[text $field_caption]" no pode ficar vazio.#r#n#r#nPor favor, preencha-o antes de enviar o formulrio.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}s:2:"en";a:3:{i:1;s:105:"#r#nThe field "[text $field_caption]" needs a content.#r#n#r#nPlease, fill it before submiting the formulary.#r#n";i:4;i:1;i:6;i:1;}}}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:5:"crash";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"Falha inesperada";i:2;i:1;}s:2:"en";a:2:{i:1;s:16:"Unespected error";i:2;i:1;}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:579:"#r#nUma falha ocorreu ao tentar processar os dados do formulrio.#r#n#r#nOs dados do campo "[text:field_caption]" no foram recebidos ou no so vlidos.#r#n#r#nEste tipo de problema no deve ocorrer, porque o campo onde a falha ocorreu forneceu um conjunto de dados vlidos para serem escolhidos.#r#n#r#nAparentemente algum est adulterando o formulrio, tentando explorar brechas na segurana.#r#n#r#nSe voc acredita estar preenchendo o formulrio corretamente e este erro persistir, por favor, entre em contato com os administradores.#r#n#r#nPor precauo, verifique a segurana da sua conexo.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:4:{i:1;s:40:"Limpar verso em [text_language_caption]";i:2;i:1;i:5;i:2;i:6;i:1;}s:2:"en";a:4:{i:1;s:37:"Clear [text_language_caption] version";i:2;i:1;i:5;i:2;i:6;i:1;}}s:7:"content";a:2:{s:2:"pt";a:4:{i:1;s:119:"Esta ao ir limpar permanentemente todo o texto em [text_language_caption] desta pgina.#r#n#r#nDeseja mesmo continuar?#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}s:2:"en";a:3:{i:1;s:115:"This action will clear permanently all texts in [text_language_caption] or this page.#r#n#r#nDo you wich to continue?#r#n";i:4;i:1;i:6;i:1;}}}}a:3:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:6:"dialog";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:14:"rea reservada";i:2;i:1;}s:2:"en";a:2:{i:1;s:13:"Reserved area";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:14:"rea reservada";i:2;i:1;}s:2:"en";a:2:{i:1;s:13:"Reserved area";i:2;i:1;}}s:7:"content";a:2:{s:2:"pt";a:5:{i:1;s:337:"#r#nPrezad[gender:o|a] [text $user.caption],#r#n#r#nEsta rea est reservada somente aos administradores.#r#n#r#nSe voc um administrador, conecte-se para obter acesso.#r#n#r#n
      #r#n[mod:user]#r#n[mod:login]#r#n[mod:welcome]#r#n
      #r#n#r#n[cut:headerlinks]#r#n#r#n[/cut]#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}s:2:"en";a:5:{i:1;s:309:"Dear [text $user.caption],#r#n#r#n This area is reserved for administrators only.#r#n#r#nIf you are an administrator, log in to gain access.#r#n#r#n
      #r#n[mod:user]#r#n[mod:login]#r#n[mod:welcome]#r#n
      #r#n#r#n[cut:headerlinks]#r#n#r#n[/cut]#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"content";a:2:{s:2:"pt";a:5:{i:1;s:340:"#r#nPrezad[gender:o|a] [text $user.caption],#r#n#r#nEsta rea est reservada somente ao proprietrio deste perfil.#r#n#r#nSe este perfil seu, conecte-se para obter acesso.#r#n#r#n
      #r#n[mod:user]#r#n[mod:login]#r#n[mod:welcome]#r#n
      #r#n#r#n[cut:headerlinks]#r#n#r#n[/cut]#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}s:2:"en";a:5:{i:1;s:307:"Dear [text $user.caption],#r#n#r#n This area is reserved for this profile owner only.#r#n#r#nIf it is your profile, log in to gain access.#r#n#r#n
      #r#n[mod:user]#r#n[mod:login]#r#n[mod:welcome]#r#n
      #r#n#r#n[cut:headerlinks]#r#n#r#n[/cut]#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:1:{s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:15:"Erro do sistema";i:2;i:1;}s:2:"en";a:2:{i:1;s:12:"System error";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:15:"Erro do sistema";i:2;i:1;}s:2:"en";a:2:{i:1;s:12:"System error";i:2;i:1;}}s:7:"content";a:2:{s:2:"pt";a:4:{i:1;s:124:"O [text $system.caption] foi incapaz de processar o seu pedido. Certifique-se de que o sistema esteja instalado corretamente";i:2;i:1;i:4;i:1;i:6;i:1;}s:2:"en";a:5:{i:1;s:103:"The [text $system.caption] was unable to process your request.#r#n#r#nPlease check the system installation.";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"content";a:1:{s:2:"pt";a:5:{i:1;s:545:"#r#nOl [text $user.caption],#r#n#r#nO [text $system.caption] no foi capaz de encontrar uma aplicao que atenda ao endereo fornecido na requisio.#r#n#r#nSe voc um administrador e est certo de que o endereo vlido, verifique se a rvore de componentes est montada corretamente.#r#n#r#nLembre-se de que a sequncia dos componentes na rvore relevante para o roteamento correto. Por exemplo, qualquer aplicao posicionada aps "systemDefault" no ser acessvel, uma vez que "systemDefault" ir atender a qualquer requisio que chegar at ela.#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:1:{s:8:"children";a:10:{i:0;s:6:"_start";i:1;s:13:"~0description";i:2;s:13:"~adminCaption";i:3;s:12:"~adminGender";i:4;s:10:"~adminMail";i:5;s:16:"~adminIdentifier";i:6;s:14:"~adminPassword";i:7;s:10:"_separator";i:8;s:5:"_next";i:9;s:4:"_end";}}a:2:{s:5:"flags";a:1:{s:6:"filter";s:29:"personaliteFields_descriptive";}s:4:"text";a:1:{s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:35:"#r#n== Perfil do administrador ==#r#n#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:1:{s:8:"children";a:9:{i:0;s:6:"_start";i:1;s:13:"~1description";i:2;s:18:"~systemHostingMode";i:3;s:10:"_separator";i:4;s:20:"~systemRewriteEngine";i:5;s:20:"~systemHttpsRedirect";i:6;s:10:"_separator";i:7;s:13:"_previousNext";i:8;s:4:"_end";}}a:2:{s:5:"flags";a:1:{s:6:"filter";s:29:"personaliteFields_descriptive";}s:4:"text";a:1:{s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:30:"#r#n== O que voc deseja? ==#r#n#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:1:{s:8:"children";a:5:{i:0;s:6:"_start";i:1;s:13:"~2description";i:2;s:10:"_separator";i:3;s:15:"_previousFinish";i:4;s:4:"_end";}}a:2:{s:5:"flags";a:1:{s:6:"filter";s:29:"personaliteFields_descriptive";}s:4:"text";a:1:{s:7:"content";a:1:{s:2:"pt";a:5:{i:1;s:492:"#r#n== Verificar permisso de acesso ==#r#n#r#nPara evitar que qualquer pessoa crie um perfil de administrador neste sistema, S ser permitido concluir a instalao a quem possuir acesso aos arquivos do servidor via FTP ou painel de controle.#r#n#r#nPara realizar esta verificao, lhe ser enviado um arquivo chamado "config.php" que voc dever colocar na pasta [$document.folder] deste servidor.#r#n#r#nAps transferir o arquivo, basta acessar novamente [$document.url].#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"content";a:2:{s:2:"pt";a:5:{i:1;s:289:"#r#nO [text $system.caption] no tem permisso para gerenciar arquivos e pastas no local onde est sendo instalado.#r#n#r#nVerifique as permisses de acesso da pasta e dos arquivos.#r#n#r#nSe voc tem dvidas sobre como proceder, solicite o auxlio do suporte tcnico do seu servio de hospedagem.#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}s:2:"en";a:4:{i:1;s:283:"#r#n[Text $system.caption] does not have permission to manage files and folders in the location where it is being installed.#r#n#r#nCheck the folder and file access permissions.#r#n#r#nIf you have questions about how to proceed, ask the help of the technical support of your hosting service.#r#n";i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:1:{s:5:"flags";a:7:{s:4:"type";s:10:"text_small";s:6:"filter";s:4:"free";s:6:"target";s:13:"ADMIN_CAPTION";s:10:"field_name";s:13:"ADMIN_CAPTION";s:8:"required";i:1;s:7:"caption";s:28:"admin_constants_adminCaption";s:4:"help";i:1;}}a:2:{s:5:"flags";a:7:{s:4:"type";s:6:"select";s:6:"filter";s:6:"select";s:6:"target";s:12:"ADMIN_GENDER";s:10:"field_name";s:12:"ADMIN_GENDER";s:10:"value_cast";s:6:"string";s:4:"help";i:1;s:7:"caption";s:27:"admin_constants_adminGender";}s:8:"children";a:2:{i:0;s:31:"admin_constants_adminGenderMale";i:1;s:33:"admin_constants_adminGenderFemale";}}a:1:{s:5:"flags";a:7:{s:4:"type";s:10:"text_small";s:6:"filter";s:6:"regexp";s:6:"target";s:16:"ADMIN_IDENTIFIER";s:10:"field_name";s:16:"ADMIN_IDENTIFIER";s:6:"regexp";s:16:"/[a-z][a-z0-9]+/";s:4:"help";i:1;s:7:"caption";s:31:"admin_constants_adminIdentifier";}}a:1:{s:5:"flags";a:6:{s:4:"type";s:4:"text";s:6:"filter";s:4:"free";s:6:"target";s:10:"ADMIN_MAIL";s:10:"field_name";s:10:"ADMIN_MAIL";s:4:"help";i:1;s:7:"caption";s:25:"admin_constants_adminMail";}}a:1:{s:5:"flags";a:8:{s:4:"type";s:13:"text_password";s:6:"filter";s:27:"systemInstallation_password";s:6:"target";s:14:"ADMIN_PASSWORD";s:10:"field_name";s:14:"ADMIN_PASSWORD";s:4:"help";i:1;s:8:"required";i:1;s:12:"password_md5";i:1;s:7:"caption";s:29:"admin_constants_adminPassword";}}a:2:{s:5:"flags";a:5:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:7:"default";s:21:"modLayout_sharedStyle";s:27:"styles/ecolabore-basics.css";s:22:"modLayout_sharedScript";s:35:"scripts/ecolabore-humperstilshen.js";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Incio";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Start";}}s:5:"title";a:2:{s:2:"pt";a:3:{i:1;s:36:"Instalao do [text $system.caption]";i:2;i:1;i:6;i:1;}s:2:"en";a:2:{i:1;s:35:"[text $system.caption] Installation";i:6;i:1;}}}}a:3:{s:5:"flags";a:6:{s:4:"type";s:5:"radio";s:6:"filter";s:6:"select";s:6:"target";s:19:"SYSTEM_HOSTING_MODE";s:10:"field_name";s:19:"SYSTEM_HOSTING_MODE";s:10:"value_cast";s:3:"int";s:4:"help";i:1;}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:18:"Modo de hospedagem";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Hosting mode";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:18:"Modo de hospedagem";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Hosting mode";}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:1181:"#r#nO [text $system.caption] capaz de gerenciar mltiplos ambientes independentes entre si. Podem ser acessados como subpastas ou como subdomnios, de acordo com a configurao escolhida e das capacidades do servidor.#r#n#r#nPara utilizar o modo "Portal", em que os mltiplos ambientes sejam acessados como subdomnios, certifique-se de:#r#n#r#n* O servidor deve ser Apache e deve ter o mdulo "rewriteEngine" habilitado#r#n* O servidor deve estar configurado para aceitar qualquer subdomnio#r#n* Todo o sistema deve estar na raiz do domnio#r#n* O arquivo ".htdocs" correto deve ser colocado na raiz do seu sistema#r#n* Voc deve certificar-se de que outras aplicaes no entrem em conflito com o [text $system.caption].#r#n#r#nEm modo "ambientes como subpastas" voc pode acessar os diversos ambientes como se fossem subpastas do seu domnio. Neste caso, todo o sistema poder ser colocado dentro de uma subpasta do seu domnio, caso voc queira evitar conflito com outras aplicaes. Este modo permite acesso local atravs de "localhost".#r#n#r#nO modo "Ambiente nico" permite o acesso a um nico ambiente, porm, sem restringir o acesso rea de configurao do sistema e aos perfis de usurios.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}s:8:"children";a:2:{i:0;s:24:"~systemHostingModeSingle";i:1;s:26:"~systemHostingModeMultiple";}}a:2:{s:5:"flags";a:1:{s:5:"value";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:3:{i:1;s:96:"Configurar manualmente o sistema atravs do ambiente de Administrao do [text $system.caption].";i:2;i:1;i:6;i:1;}s:2:"en";a:2:{i:1;s:92:"Manually configure the system through the [text $system.caption] Administration environment.";i:2;i:1;}}}}a:2:{s:5:"flags";a:1:{s:5:"value";i:0;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:71:"Criar e gerenciar um nico ambiente utilizando as configuraes padro.";i:2;i:1;}s:2:"en";a:2:{i:1;s:11:"Single site";i:2;i:1;}}}}a:1:{s:5:"flags";a:7:{s:4:"type";s:8:"checkbox";s:6:"filter";s:8:"checkbox";s:6:"target";s:21:"SYSTEM_HTTPS_REDIRECT";s:10:"field_name";s:21:"SYSTEM_HTTPS_REDIRECT";s:10:"value_cast";s:4:"bool";s:4:"help";i:1;s:7:"caption";s:35:"admin_constants_systemHttpsRedirect";}}a:1:{s:5:"flags";a:8:{s:9:"condition";s:21:"rewrite_engine_choose";s:4:"type";s:8:"checkbox";s:6:"filter";s:8:"checkbox";s:6:"target";s:21:"SYSTEM_REWRITE_ENGINE";s:10:"field_name";s:21:"SYSTEM_REWRITE_ENGINE";s:10:"value_cast";s:4:"bool";s:7:"caption";s:35:"admin_constants_systemRewriteEngine";s:4:"help";i:1;}}a:4:{s:13:"ADMIN_CAPTION";s:13:"Administrador";s:12:"ADMIN_GENDER";s:4:"male";s:16:"ADMIN_IDENTIFIER";s:5:"admin";s:19:"SYSTEM_HOSTING_MODE";i:0;}a:2:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:7:"default";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:3:{i:1;s:11:"Ferramentas";i:2;i:1;i:6;i:1;}s:2:"en";a:3:{i:1;s:5:"Tools";i:2;i:1;i:6;i:1;}}s:5:"title";a:2:{s:2:"pt";a:3:{i:1;s:11:"Ferramentas";i:2;i:1;i:6;i:1;}s:2:"en";a:3:{i:1;s:5:"Tools";i:2;i:1;i:6;i:1;}}}}a:2:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:7:"default";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:3:{i:1;s:13:"Configuraes";i:2;i:1;i:6;i:1;}s:2:"en";a:3:{i:1;s:14:"Configurations";i:2;i:1;i:6;i:1;}}s:5:"title";a:2:{s:2:"pt";a:3:{i:1;s:13:"Configuraes";i:2;i:1;i:6;i:1;}s:2:"en";a:3:{i:1;s:14:"Configurations";i:2;i:1;i:6;i:1;}}}}a:2:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:7:"default";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:3:{i:1;s:11:"Organizao";i:2;i:1;i:6;i:1;}s:2:"en";a:3:{i:1;s:12:"Organization";i:2;i:1;i:6;i:1;}}s:5:"title";a:2:{s:2:"pt";a:3:{i:1;s:20:"Dados da organizao";i:2;i:1;i:6;i:1;}s:2:"en";a:3:{i:1;s:17:"Organization data";i:2;i:1;i:6;i:1;}}}}a:1:{s:8:"children";a:9:{i:0;s:6:"_start";i:1;s:24:"domainCreate_editCaption";i:2;s:22:"domainCreate_editTitle";i:3;s:28:"domainCreate_editDescription";i:4;s:24:"domainCreate_editAddress";i:5;s:22:"domainCreate_editPhone";i:6;s:21:"domainCreate_editMail";i:7;s:5:"_save";i:8;s:4:"_end";}}a:2:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:7:"default";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:3:{i:1;s:7:"Idiomas";i:2;i:1;i:6;i:1;}s:2:"en";a:3:{i:1;s:9:"Languages";i:2;i:1;i:6;i:1;}}s:5:"title";a:2:{s:2:"pt";a:3:{i:1;s:7:"Idiomas";i:2;i:1;i:6;i:1;}s:2:"en";a:3:{i:1;s:9:"Languages";i:2;i:1;i:6;i:1;}}}}a:3:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:13:"dialog_select";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:15:"Adicionar Moeda";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Add currency";}}}}a:1:{s:8:"children";a:8:{i:0;s:6:"_start";i:1;s:40:"adminDomains_details_editDefaultLanguage";i:2;s:21:"~editLanguagesManager";i:3;s:10:"_separator";i:4;s:33:"adminDomains_details_editCurrency";i:5;s:22:"~editCurrenciesManager";i:6;s:5:"_save";i:7;s:4:"_end";}}a:2:{s:5:"flags";a:2:{s:6:"filter";s:38:"toolConfig_languages_currenciesManager";s:10:"field_name";s:15:"currencies_list";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Moedas em uso";i:2;i:1;}s:2:"en";a:1:{i:1;s:17:"Active currencies";}}}}a:2:{s:5:"flags";a:2:{s:6:"filter";s:28:"toolConfig_languages_manager";s:10:"field_name";s:13:"language_list";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:14:"Idiomas ativos";i:2;i:1;}s:2:"en";a:1:{i:1;s:16:"Active languages";}}}}a:3:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:13:"dialog_select";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"Adicionar idioma";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Add language";}}}}a:2:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:7:"default";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:3:{i:1;s:7:"Verses";i:2;i:1;i:6;i:1;}s:2:"en";a:3:{i:1;s:8:"Versions";i:2;i:1;i:6;i:1;}}s:5:"title";a:2:{s:2:"pt";a:3:{i:1;s:24:"Gerenciamento de verses";i:2;i:1;i:6;i:1;}s:2:"en";a:3:{i:1;s:19:"Versions management";i:2;i:1;i:6;i:1;}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:114:"#r#nQuando voc cria ou edita uma pgina, uma cpia do contedo armazenada para permitir desfazer as alteraes.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:1:{s:8:"children";a:9:{i:0;s:6:"_start";i:1;s:24:"domainCreate_editCaption";i:2;s:22:"domainCreate_editTitle";i:3;s:28:"domainCreate_editDescription";i:4;s:24:"domainCreate_editAddress";i:5;s:22:"domainCreate_editPhone";i:6;s:21:"domainCreate_editMail";i:7;s:5:"_save";i:8;s:4:"_end";}}a:2:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:7:"default";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:3:{i:1;s:17:"Galeria de mdias";i:2;i:1;i:6;i:1;}s:2:"en";a:3:{i:1;s:12:"Media galery";i:2;i:1;i:6;i:1;}}s:5:"title";a:2:{s:2:"pt";a:3:{i:1;s:17:"Galeria de mdias";i:2;i:1;i:6;i:1;}s:2:"en";a:3:{i:1;s:12:"Media galery";i:2;i:1;i:6;i:1;}}}}a:2:{s:5:"flags";a:1:{s:14:"modLayout_from";s:7:"library";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:18:"Perfis de usurios";i:2;i:1;}s:2:"en";a:2:{i:1;s:14:"Users profiles";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:18:"Perfis de usurios";i:2;i:1;}s:2:"en";a:2:{i:1;s:14:"Users profiles";i:2;i:1;}}s:11:"description";a:1:{s:2:"pt";a:2:{i:1;s:109:"Permite visualizar os perfis dos usurios cadastrados e oferece um conjunto de ferramentas para cada usurio.";i:2;i:1;}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:4:"Voc";i:2;i:1;}s:2:"en";a:2:{i:1;s:3:"You";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:4:"Voc";i:2;i:1;}s:2:"en";a:2:{i:1;s:3:"You";i:2;i:1;}}}}a:1:{s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:23:"Perfil do administrador";i:2;i:1;}s:2:"en";a:2:{i:1;s:21:"Administrator profile";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:23:"Perfil do administrador";i:2;i:1;}s:2:"en";a:2:{i:1;s:21:"Administrator profile";i:2;i:1;}}s:7:"content";a:2:{s:2:"pt";a:4:{i:1;s:219:"#r#nO Administrador no possui um perfil.#r#n#r#n[if($document.user_is_admin){]#r#n#r#nPara criar um perfil para o administrador, cadastre um usurio com o mesmo identificador que voc utiliza para o administrador.#r#n#r#n[} // if]#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}s:2:"en";a:4:{i:1;s:46:"#r#nThe Administrator does not have a profile.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Visitante";i:2;i:1;}s:2:"en";a:2:{i:1;s:7:"Visitor";i:2;i:1;}}}}a:1:{s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:21:"Perfil no encontrado";i:2;i:1;}s:2:"en";a:2:{i:1;s:17:"Profile not found";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:21:"Perfil no encontrado";i:2;i:1;}s:2:"en";a:2:{i:1;s:17:"Profile not found";i:2;i:1;}}s:7:"content";a:2:{s:2:"pt";a:4:{i:1;s:98:"Ol [text $user.caption],#r#n#r#nO perfil que voc est procurando no existe em nossos cadastros.#r#n#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}s:2:"en";a:5:{i:1;s:94:"Hello [text $user.caption],#r#n#r#nThe profile you#sre looking for does not exists in our database.";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:3:{s:5:"flags";a:2:{s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:6:"dialog";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Avisos";i:2;i:1;}s:2:"en";a:1:{i:1;s:6:"Alerts";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:6:"Avisos";i:2;i:1;}s:2:"en";a:1:{i:1;s:6:"Alerts";}}}}a:2:{s:5:"flags";a:1:{s:20:"modUser_alerts_popUp";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:40:"Seu endereo de email no foi verificado";i:2;i:1;}s:2:"en";a:1:{i:1;s:44:"Your email address has not yet been verified";}}}}a:2:{s:5:"flags";a:1:{s:20:"modUser_alerts_popUp";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:41:"Seu nmero de telefone no foi verificado";i:2;i:1;}s:2:"en";a:1:{i:1;s:43:"Your phone number has not yet been verified";}}}}a:2:{s:5:"flags";a:1:{s:22:"modHumperstilshen_menu";a:3:{i:0;s:7:"context";i:1;s:9:"usertools";i:2;s:4:"user";}}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:3:{i:1;s:21:"Pgina no encontrada";i:2;i:1;i:6;i:1;}s:2:"en";a:3:{i:1;s:14:"Page not found";i:2;i:1;i:6;i:1;}}s:5:"title";a:2:{s:2:"pt";a:3:{i:1;s:21:"Pgina no encontrada";i:2;i:1;i:6;i:1;}s:2:"en";a:3:{i:1;s:14:"Page not found";i:2;i:1;i:6;i:1;}}}}a:2:{s:5:"flags";a:1:{s:22:"modHumperstilshen_menu";a:3:{i:0;s:7:"context";i:1;s:9:"usertools";i:2;s:4:"user";}}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:3:{i:1;s:25:"Perfil de [text $profile]";i:2;i:1;i:6;i:1;}s:2:"en";a:2:{i:1;s:25:"[text $profile]#ss profile";i:6;i:1;}}s:5:"title";a:2:{s:2:"pt";a:3:{i:1;s:34:"Perfil de [text $document.profile]";i:2;i:1;i:6;i:1;}s:2:"en";a:2:{i:1;s:34:"[text $document.profile]#ss profile";i:6;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:23:"Sites que eu administro";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"My sites";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:22:"Publicado recentemente";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Recent posts";}}}}a:3:{s:5:"flags";a:2:{s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:6:"dialog";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:15:"Verificar email";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Verify email";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:15:"Verificar email";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Verify email";}}}}a:1:{s:4:"text";a:1:{s:7:"content";a:2:{s:2:"pt";a:3:{i:1;s:52:"Uma falha ocorreu na tentativa de verificar o email.";i:2;i:1;i:4;i:1;}s:2:"en";a:2:{i:1;s:28:"Failed on mail verification.";i:4;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"content";a:2:{s:2:"pt";a:4:{i:1;s:127:"#r#nUma mensagem foi enviada para [$user.mail].#r#n#r#nAo abrir a mensagem voc encontrar instrues para concluir a verificao.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}s:2:"en";a:3:{i:1;s:39:"#r#nA message was sent to [$user.mail].#r#n";i:4;i:1;i:6;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"content";a:2:{s:2:"pt";a:4:{i:1;s:74:"#r#nConecte-se para obter mais informaes sobre a verificao de email.#r#n#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}s:2:"en";a:3:{i:1;s:66:"#r#nPlease log in for more information about email verification.#r#n#r#n";i:4;i:1;i:6;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"content";a:2:{s:2:"pt";a:4:{i:1;s:81:"#r#nOl [text $user.caption],#r#n#r#nO email [$user.mail] foi verificado com sucesso.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}s:2:"en";a:3:{i:1;s:82:"#r#nHello [text $user.caption],#r#n#r#nThe mail [$user.mail] was successfuly verified.#r#n";i:4;i:1;i:6;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:3:{i:1;s:23:"[$user.mail] verificado";i:2;i:1;i:6;i:1;}s:2:"en";a:2:{i:1;s:21:"[$user.mail] verified";i:6;i:1;}}}}a:2:{s:5:"flags";a:4:{s:4:"type";s:4:"text";s:6:"filter";s:4:"text";s:10:"field_name";s:8:"security";s:6:"target";s:13:"text/security";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:18:"Frase de segurana";i:2;i:1;}s:2:"en";a:1:{i:1;s:15:"Security phrase";}}}}a:1:{s:8:"children";a:5:{i:0;s:6:"_start";i:1;s:9:"~editMail";i:2;s:13:"~editSecurity";i:3;s:5:"_next";i:4;s:4:"_end";}}a:2:{s:5:"flags";a:1:{s:14:"modLayout_base";s:4:"mail";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:15:"Verificar email";i:2;i:1;}s:2:"en";a:1:{i:1;s:18:"Email verification";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:25:"Verificao de email para";i:2;i:1;}s:2:"en";a:1:{i:1;s:21:"Email verification to";}}s:7:"content";a:2:{s:2:"pt";a:5:{i:1;s:523:"#r#nOl [text $user.caption],#r#n#r#nVoc est recebendo esta mensagem porque uma solicitao de verificao de email foi feita no [text $system.caption].#r#n#r#n[if($user.security){]#r#n#r#nEsta a sua frase de segurana:#r#n#r#n"[text $user.security]"#r#n#r#n[}]#r#n#r#nPara continuar, acione o hyperlink a seguir ou copie-o e cole-o na barra de endereo do seu navegador:#r#n#r#n

      [$document.url]

      #r#n#r#nCaso no tenha feito esta solicitao, apenas desconsidere esta mensagem.#r#n#r#nA equipe do [text $system.caption].#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}s:2:"en";a:5:{i:1;s:493:"#r#n Hello [text $user.caption],#r#n#r#nYou are receiving this message because a email verification request was made in [text $system.caption].#r#n#r#n[if ($user.security) {]#r#n#r#nThis is your safety phrase:#r#n#r#n"[text $user.security]"#r#n#r#n[}]#r#n#r#nTo continue, click on the following hyperlink or copy and paste it into your browser#ss address bar:#r#n#r#n

      [$document.url]

      #r#n#r#nIf you have not made this request, just disregard this message.#r#n#r#nThe [text $system.caption] team.#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:1:{s:8:"children";a:3:{i:0;s:6:"_start";i:1;s:12:"~sentButtons";i:2;s:4:"_end";}}a:2:{s:5:"flags";a:1:{s:6:"filter";s:6:"submit";}s:8:"children";a:2:{i:0;s:11:"~sentUpdate";i:1;s:6:"_close";}}a:1:{s:5:"flags";a:3:{s:6:"filter";s:6:"submit";s:10:"field_name";s:6:"update";s:7:"caption";s:20:"userHome_mail_update";}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Alterar email";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Change email";}}}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:5:"happy";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Sucesso!";i:2;i:1;}s:2:"en";a:2:{i:1;s:8:"Success!";i:2;i:1;}}s:7:"content";a:2:{s:2:"pt";a:4:{i:1;s:39:"Sua senha foi alterada com sucesso.#r#n#r#n";i:2;i:1;i:4;i:1;i:5;i:2;}s:2:"en";a:5:{i:1;s:30:"#r#nYour password was changed.#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:3:{s:5:"flags";a:2:{s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:6:"dialog";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:3:{i:1;s:13:"Alterar senha";i:2;i:1;i:6;i:1;}s:2:"en";a:3:{i:1;s:15:"Change password";i:2;i:1;i:6;i:1;}}s:5:"title";a:2:{s:2:"pt";a:3:{i:1;s:13:"Alterar senha";i:2;i:1;i:6;i:1;}s:2:"en";a:3:{i:1;s:15:"Change password";i:2;i:1;i:6;i:1;}}}}a:1:{s:8:"children";a:6:{i:0;s:6:"_start";i:1;s:42:"adminUsers_details_editPasswordDescription";i:2;s:23:"adminUsers_editPassword";i:3;s:24:"adminUsers_editPassword2";i:4;s:10:"_saveClose";i:5;s:4:"_end";}}a:1:{s:8:"children";a:6:{i:0;s:6:"_start";i:1;s:42:"adminUsers_details_editPasswordDescription";i:2;s:27:"adminUsers_add_editPassword";i:3;s:28:"adminUsers_add_editPassword2";i:4;s:7:"_submit";i:5;s:4:"_end";}}a:1:{s:4:"text";a:1:{s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:842:"#r#nSenha o principal mtodo de identificao na Internet.#r#n#r#nEnto voc pode imaginar que pessoas mal intensionadas desejam de qualquer forma descobrir as senhas de terceiros para todo o tipo de finalidade inapropriada.#r#n#r#nIsso inclui desenvolver programas para tentar descobrir sua senha, ou de qualquer outra forma roub-la de voc.#r#n#r#nEm primeiro lugar, tenha certeza de anot-la em um local seguro.#r#n#r#nEm segundo lugar, escolha para senha qualquer coisa que no seja bvia. Programas que tentam descobrir a senha com "fora bruta", chutando aleatoriamente milhares de possibilidades, normalmente procuram palavras comuns. Por isso, recomendamos misturar nmeros em meio a letras, e utilizar no mnimo 7 caractres. Pessoas que possuam seus dados pessoais tambm podero tentar sua data de aniversrio ou outras combinaes semelhantes.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"content";a:2:{s:2:"pt";a:5:{i:1;s:161:"#r#nOl [text $user.caption],#r#n#r#nEsta solicitao para redefinir sua senha no mais vlida.#r#n#r#nEla expirou ou outra solicitao mais recente est em andamento.#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}s:2:"en";a:4:{i:1;s:147:"#r#nHi [text $user.caption],#r#n#r#n This request to reset your password is not valid.#r#n#r#nIt has expired or another more recent request is in progress.#r#n";i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"content";a:2:{s:2:"pt";a:5:{i:1;s:137:"#r#nOl [text $user.caption],#r#n#r#nSua senha foi redefinida com sucesso.#r#n#r#nConecte-se ao [text $system.caption] utilizando sua nova senha.#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}s:2:"en";a:4:{i:1;s:136:"#r#nHi [text $user.caption],#r#n#r#nYour password has been successfully reset.#r#n#r#nConnect to [text $system.caption] using your new password.#r#n";i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:5:"happy";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Sucesso!";i:2;i:1;}s:2:"en";a:2:{i:1;s:8:"Success!";i:2;i:1;}}s:7:"content";a:2:{s:2:"pt";a:4:{i:1;s:44:"Seus dados cadastrais foram atualizados.#r#n#r#n";i:2;i:1;i:4;i:1;i:5;i:2;}s:2:"en";a:5:{i:1;s:34:"#r#nYour personal data is updated.#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:3:{s:5:"flags";a:2:{s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:6:"dialog";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:3:{i:1;s:14:"Dados pessoais";i:2;i:1;i:6;i:1;}s:2:"en";a:3:{i:1;s:13:"Personal data";i:2;i:1;i:6;i:1;}}s:5:"title";a:2:{s:2:"pt";a:3:{i:1;s:14:"Dados pessoais";i:2;i:1;i:6;i:1;}s:2:"en";a:3:{i:1;s:13:"Personal data";i:2;i:1;i:6;i:1;}}}}a:1:{s:8:"children";a:9:{i:0;s:6:"_start";i:1;s:22:"adminUsers_editCaption";i:2;s:20:"adminUsers_editTitle";i:3;s:26:"adminUsers_editDescription";i:4;s:18:"adminUsers_editCPF";i:5;s:23:"adminUsers_editBornDate";i:6;s:22:"adminUsers_editAddress";i:7;s:10:"_saveClose";i:8;s:4:"_end";}}a:1:{s:4:"text";a:1:{s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:240:"#r#nSeus dados pessoais so secretos.#r#n#r#nCaso em alguma circunstncia seus dados pessoais forem solicitados - por exemplo ao preencher uma ficha de cadastro - o [text $system.caption] ir lhe perguntar se voc deseja ou no compartilh-los.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:5:"error";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:4:{i:1;s:15:"Cdigo invlido";i:2;i:1;i:5;i:2;i:6;i:1;}s:2:"en";a:2:{i:1;s:12:"Invalid code";i:2;i:1;}}s:7:"content";a:2:{s:2:"pt";a:5:{i:1;s:40:"#r#nO cdigo informado no corresponde#r#n#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}s:2:"en";a:5:{i:1;s:216:"#r#nHello [text $user.caption],#r#n#r#n[if($document.user_is_admin){]#r#n#r#nYou#sre connected as administrator.#r#n#r#n[}else{]#r#n#r#nYou#sre connected in [text $system.caption].#r#n#r#n[}]#r#n#r#n[mod:user_quoteoftheday]#r#n[mod:user_alerts]#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:1:{s:8:"children";a:5:{i:0;s:6:"_start";i:1;s:17:"~checkDescription";i:2;s:10:"~checkCode";i:3;s:5:"_next";i:4;s:4:"_end";}}a:2:{s:5:"flags";a:5:{s:4:"type";s:10:"text_small";s:6:"filter";s:7:"integer";s:10:"field_name";s:4:"code";s:6:"target";s:4:"code";s:8:"required";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:21:"Cdigo de verificao";i:2;i:1;}s:2:"en";a:1:{i:1;s:17:"Verification code";}}}}a:3:{s:5:"flags";a:2:{s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:6:"dialog";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:28:"Verificar nmero de telefone";i:2;i:1;}s:2:"en";a:1:{i:1;s:19:"Verify phone number";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:28:"Verificar nmero de telefone";i:2;i:1;}s:2:"en";a:1:{i:1;s:19:"Verify phone number";}}}}a:3:{s:5:"flags";a:2:{s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:6:"dialog";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:3:{i:1;s:50:"[$user.phone_area] [$user.phone_number] verificado";i:2;i:1;i:6;i:1;}s:2:"en";a:2:{i:1;s:48:"[$user.phone_area] [$user.phone_number] verified";i:6;i:1;}}}}a:1:{s:8:"children";a:4:{i:0;s:6:"_start";i:1;s:11:"~inputPhone";i:2;s:5:"_next";i:3;s:4:"_end";}}a:1:{s:5:"flags";a:3:{s:6:"filter";s:5:"phone";s:10:"field_name";s:5:"phone";s:8:"required";i:1;}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:26:"Alterar nmero de telefone";i:2;i:1;}s:2:"en";a:1:{i:1;s:19:"Change phone number";}}}}a:4:{s:5:"flags";a:2:{s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:6:"dialog";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"Nmero verificado";i:2;i:1;}s:2:"en";a:1:{i:1;s:15:"Verified number";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:17:"Nmero verificado";i:2;i:1;}s:2:"en";a:1:{i:1;s:15:"Verified number";}}s:7:"content";a:2:{s:2:"pt";a:4:{i:1;s:100:"#r#nOl [text $user.caption],#r#n#r#nO nmero de telefone [$document.number] foi verificado com sucesso.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}s:2:"en";a:3:{i:1;s:96:"#r#nHello [text $user.caption],#r#n#r#nThe phone number [$document.number] was successfuly verified.#r#n";i:4;i:1;i:6;i:1;}}}s:8:"children";a:3:{i:0;s:6:"_start";i:1;s:16:"~verifiedButtons";i:2;s:4:"_end";}}a:2:{s:5:"flags";a:1:{s:6:"filter";s:6:"submit";}s:8:"children";a:2:{i:0;s:15:"~verifiedUpdate";i:1;s:6:"_close";}}a:1:{s:5:"flags";a:3:{s:6:"filter";s:6:"submit";s:10:"field_name";s:6:"update";s:7:"caption";s:21:"userHome_phone_update";}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:5:"crash";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:4:{i:1;s:17:"Usuria bloqueada";i:2;i:1;i:5;i:2;i:6;i:1;}s:2:"en";a:2:{i:1;s:12:"Blocked user";i:2;i:1;}}s:7:"content";a:2:{s:2:"pt";a:5:{i:1;s:175:"#r#nEsta usuria est temporariamente impedida de se conectar.#r#n#r#nPara mais informaes, favor entrar em contato com a nossa equipe.#r#n#r#nAdministrao do [text $system.caption]#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}s:2:"en";a:5:{i:1;s:134:"This user is temporarily forbided to connect.#r#nFor more information, please contact our administrators.#r#n#r#n[text $system.caption] team";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:5:"crash";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:4:{i:1;s:17:"Usurio bloqueado";i:2;i:1;i:5;i:2;i:6;i:1;}s:2:"en";a:2:{i:1;s:12:"Blocked user";i:2;i:1;}}s:7:"content";a:2:{s:2:"pt";a:5:{i:1;s:175:"#r#nEste usurio est temporariamente impedido de se conectar.#r#n#r#nPara mais informaes, favor entrar em contato com a nossa equipe.#r#n#r#nAdministrao do [text $system.caption]#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}s:2:"en";a:5:{i:1;s:136:"This user is temporarily forbided to connect.#r#n#r#nFor more information, please contact our administrators.#r#n#r#n[text $system.caption] team";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:7:"default";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:4:{i:1;s:20:"Bem-vind[gender:o|a]";i:2;i:1;i:5;i:2;i:6;i:1;}s:2:"en";a:2:{i:1;s:7:"Welcome";i:2;i:1;}}s:7:"content";a:2:{s:2:"pt";a:5:{i:1;s:257:"#r#n#r#nOl [text $user.caption],#r#n#r#n[if($document.user_is_admin){]#r#n#r#nVoc est conectad[gender:o|a] como administrador[gender:|a].#r#n#r#n[}else{]#r#n#r#nVoc est conectad[gender:o|a] ao [text $system.caption].#r#n#r#n[}]#r#n#r#n[mod:user_quoteoftheday]#r#n[mod:user_alerts]#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}s:2:"en";a:5:{i:1;s:216:"#r#nHello [text $user.caption],#r#n#r#n[if($document.user_is_admin){]#r#n#r#nYou#sre connected as administrator.#r#n#r#n[}else{]#r#n#r#nYou#sre connected in [text $system.caption].#r#n#r#n[}]#r#n#r#n[mod:user_quoteoftheday]#r#n[mod:user_alerts]#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:7:"default";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:4:{i:1;s:20:"Bem-vind[gender:o|a]";i:2;i:1;i:5;i:2;i:6;i:1;}s:2:"en";a:2:{i:1;s:7:"Welcome";i:2;i:1;}}s:7:"content";a:2:{s:2:"pt";a:5:{i:1;s:255:"#r#n#r#nOl [text $user.caption],#r#n#r#n[if($document.user_is_admin){]#r#n#r#nVoc est conectad[gender:o|a] ao seu perfil.#r#n#r#n[}else{]#r#n#r#nVoc est conectad[gender:o|a] rede social do [text $system.caption].#r#n#r#n[}]#r#n#r#n[mod:user_quoteoftheday]#r#n[mod:user_alerts]#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}s:2:"en";a:5:{i:1;s:234:"#r#nHello [text $user.caption],#r#n#r#n[if($document.user_is_admin){]#r#n#r#nYou#sre connected to your profile.#r#n#r#n[}else{]#r#n#r#nYou#sre connected in the [text $system.caption] social network.#r#n#r#n[}]#r#n#r#n[mod:user_quoteoftheday]#r#n[mod:user_alerts]#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:2:{s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:18:"Perfis de usurios";i:2;i:1;}s:2:"en";a:2:{i:1;s:14:"Users profiles";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:18:"Perfis de usurios";i:2;i:1;}s:2:"en";a:2:{i:1;s:14:"Users profiles";i:2;i:1;}}s:11:"description";a:1:{s:2:"pt";a:2:{i:1;s:109:"Permite visualizar os perfis dos usurios cadastrados e oferece um conjunto de ferramentas para cada usurio.";i:2;i:1;}}}s:5:"flags";a:1:{s:14:"modLayout_from";s:7:"library";}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:5:"happy";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:3:{i:1;s:8:"Sucesso!";i:2;i:1;i:5;i:2;}s:2:"en";a:2:{i:1;s:7:"Success";i:2;i:1;}}s:7:"content";a:1:{s:2:"pt";a:4:{i:1;s:398:"#r#nOl [text $user.caption],#r#n#r#nVoc est cadastrad[gender:o|a] no [text $system.caption].#r#n#r#nAproveite para verificar e completar seus dados cadastrais.#r#n#r#n------#r#n#r#n=== Olha a dica ===#r#n#r#nEm todas as pginas h um cone no canto superior direito. Acionando este cone voc ter acesso caixa de login. Se j estiver conectado, l estaro as ferramentas disponveis para voc.#r#n#r#n #r#n#r#nBoa sorte!#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}}}}a:3:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:6:"dialog";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:3:{i:1;s:38:"Cadastrar-se no [text $system.caption]";i:2;i:1;i:6;i:1;}s:2:"en";a:3:{i:1;s:30:"Join to [text $system.caption]";i:2;i:1;i:6;i:1;}}s:5:"title";a:2:{s:2:"pt";a:3:{i:1;s:38:"Cadastrar-se no [text $system.caption]";i:2;i:1;i:6;i:1;}s:2:"en";a:3:{i:1;s:30:"Join to [text $system.caption]";i:2;i:1;i:6;i:1;}}}}a:2:{s:5:"flags";a:5:{s:4:"type";s:8:"checkbox";s:6:"filter";s:8:"checkbox";s:10:"field_name";s:7:"i_agree";s:6:"target";s:5:"agree";s:5:"clear";i:1;}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:39:"Li e concordo com os termos de servio.";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"I agree.";}}}}a:1:{s:5:"flags";a:1:{s:6:"filter";s:18:"userJoin_termsView";}}a:1:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:5:"Ajuda";i:2;i:1;}}}}a:3:{s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:2:{s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:35:"Bem vindo ao [text $system.caption]";i:6;i:1;}s:2:"en";a:2:{i:1;s:33:"Welcome to [text $system.caption]";i:6;i:1;}}s:7:"content";a:1:{s:2:"pt";a:5:{i:1;s:105:"#r#nAo cadastrar-se e utilizar nossos servios, voc deve concordar com nossos termos e condies de uso:#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}s:8:"children";a:5:{i:0;s:6:"_start";i:1;s:14:"~editTermsView";i:2;s:15:"~editTermsAgree";i:3;s:5:"_next";i:4;s:4:"_end";}}a:3:{s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:1:{s:5:"title";a:2:{s:2:"pt";a:1:{i:1;s:22:"Dados para se conectar";}s:2:"en";a:1:{i:1;s:15:"Data to connect";}}}s:8:"children";a:9:{i:0;s:6:"_start";i:1;s:22:"adminUsers_editCaption";i:2;s:21:"adminUsers_editGender";i:3;s:19:"adminUsers_editMail";i:4;s:19:"adminUsers_editName";i:5;s:23:"adminUsers_editPassword";i:6;s:24:"adminUsers_editPassword2";i:7;s:5:"_next";i:8;s:4:"_end";}}a:2:{s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:8:"children";a:8:{i:0;s:6:"_start";i:1;s:22:"adminUsers_editCaption";i:2;s:21:"adminUsers_editGender";i:3;s:19:"adminUsers_editName";i:4;s:23:"adminUsers_editPassword";i:5;s:24:"adminUsers_editPassword2";i:6;s:13:"_previousNext";i:7;s:4:"_end";}}a:3:{s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:1:{s:5:"title";a:2:{s:2:"pt";a:1:{i:1;s:19:"Seus dados pessoais";}s:2:"en";a:1:{i:1;s:19:"Your personal data";}}}s:8:"children";a:9:{i:0;s:6:"_start";i:1;s:20:"adminUsers_editTitle";i:2;s:26:"adminUsers_editDescription";i:3;s:18:"adminUsers_editCPF";i:4;s:23:"adminUsers_editBornDate";i:5;s:20:"adminUsers_editPhone";i:6;s:22:"adminUsers_editAddress";i:7;s:6:"_close";i:8;s:4:"_end";}}a:3:{s:5:"flags";a:2:{s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:6:"dialog";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:15:"Recuperar senha";i:2;i:1;}s:2:"en";a:2:{i:1;s:16:"Recover password";i:2;i:1;}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:15:"Recuperar senha";i:2;i:1;}s:2:"en";a:2:{i:1;s:16:"Recover password";i:2;i:1;}}s:7:"content";a:2:{s:2:"pt";a:4:{i:1;s:4:"#r#n#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}s:2:"en";a:5:{i:1;s:2:"#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:1:{s:8:"children";a:4:{i:0;s:6:"_start";i:1;s:15:"~editIdentifier";i:2;s:7:"_submit";i:3;s:4:"_end";}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:5:"error";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:26:"Impossvel enviar mensagem";i:2;i:1;}s:2:"en";a:2:{i:1;s:19:"Unable to send mail";i:2;i:1;}}s:7:"content";a:2:{s:2:"pt";a:2:{i:1;s:143:"Este usurio no possui um endereo de e-mail cadastrado.#r#n#r#nSolicite ao administrador o cadastro de um email ou a criao de uma nova senha.#r#n";i:2;i:1;}s:2:"en";a:5:{i:1;s:126:" This user does not have a registered email address.#r#n#r#nAsk the administrator to register an email or create a new password.#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:2:{s:5:"flags";a:1:{s:4:"icon";s:5:"error";}s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:22:"Usurio no encontrado";i:2;i:1;}s:2:"en";a:2:{i:1;s:14:"User not found";i:2;i:1;}}s:7:"content";a:2:{s:2:"pt";a:2:{i:1;s:47:"O nome de usurio informado no foi encontrado.";i:2;i:1;}s:2:"en";a:5:{i:1;s:28:"The user name was not found.";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:2:{s:5:"flags";a:2:{s:6:"filter";s:30:"userRecoverPassword_identifier";s:10:"field_name";s:10:"identifier";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Identificador";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Identifier";}}}}a:2:{s:5:"flags";a:1:{s:14:"modLayout_base";s:4:"mail";}s:4:"text";a:3:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:15:"Recuperar senha";i:2;i:1;}s:2:"en";a:1:{i:1;s:16:"Recover password";}}s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:18:"Recuperar senha de";i:2;i:1;}s:2:"en";a:1:{i:1;s:20:"Recover password for";}}s:7:"content";a:2:{s:2:"pt";a:5:{i:1;s:521:"#r#nOl [text $user.caption],#r#n#r#nVoc est recebendo esta mensagem pois uma solicitao de recuperao de senha foi feita no [text $system.caption].#r#n#r#n[if($user.security){]#r#n#r#nEsta a sua frase de segurana:#r#n#r#n"[text $user.security]"#r#n#r#n[}]#r#n#r#nPara continuar, acione o hyperlink a seguir ou copie-o e cole-o na barra de endereo do seu navegador:#r#n#r#n

      [$document.url]

      #r#n#r#nCaso no tenha feito esta solicitao, apenas desconsidere esta mensagem.#r#n#r#nA equipe do [text $system.caption].#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}s:2:"en";a:5:{i:1;s:492:"#r#n Hello [text $user.caption],#r#n#r#nYou are receiving this message because a password recovery request was made in [text $system.caption].#r#n#r#n[if ($user.security) {]#r#n#r#nThis is your safety phrase:#r#n#r#n"[text $user.security]"#r#n#r#n[}]#r#n#r#nTo continue, click on the following hyperlink or copy and paste it into your browser#ss address bar:#r#n#r#n

      [$document.url]

      #r#n#r#nIf you have not made this request, just disregard this message.#r#n#r#nThe [text $system.caption] team.#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"content";a:2:{s:2:"pt";a:4:{i:1;s:346:"#r#nUm email foi enviado para voc, com instrues sobre como concluir a recuperao da sua senha.#r#n#r#nCertifique-se de que sua caixa de mensagens no esteja cheia e que seu anti-spam no esteja bloqueando mensagens de [$document.mail_from].#r#n#r#nSe voc definiu uma frase de segurana, ela ser transcrita no corpo da mensagem para sua verificao.#r#n";i:2;i:1;i:4;i:1;i:6;i:1;}s:2:"en";a:5:{i:1;s:317:"#r#n An email has been sent to you with instructions on how to complete the recovery of your password.#r#n#r#nMake sure your mailbox is not full and your anti-spam is not blocking messages from [$document.mail_from].#r#n#r#nIf you have defined a security phrase, it is transcribed in the body of the message for verification.#r#n";i:2;i:1;i:4;i:1;i:5;i:2;i:6;i:1;}}}}a:1:{s:4:"html";s:12:"[mod:layout]";}a:1:{s:4:"html";s:404:"#r#n#r#n#r#n#r#n[text$document.title]#r#n#r#n[paste:headerlinks]#r#n[paste:style]#r#n#r#n[mod:panel main]#r#n#r#n";}a:1:{s:4:"html";s:526:"#r#n#r#n#r#n#r#n[text$document.title]#r#n#r#n#r#n[paste:headerlinks]#r#n[paste:style]#r#n#r#n[mod:title]#r#n[mod:panel main]#r#n[mod:hits]#r#n#r#n";}a:1:{s:4:"html";s:4932:"#r#n#r#n#r#n#r#n[if($document.description){ ``; nl; }]#r#n[if($document.keywords){ ``; nl; }]#r#n#r#n#r#n#r#n#r#n[mod(`languages_header`){ if($url_rss){]#r#n#r#n[}if($url_canonical){]#r#n#r#n#r#n[}list{loop{]#r#n#r#n[}}}]#r#n#r#n#r#n[paste:headerlinks]#r#n[text$document.title or $document.caption]#r#n[script]#r#n#r#nhumperstilshen = new humperstilshenClass();#r#nhumperstilshen.msgIconOpen = "[text:layout_assistant_open]";#r#nhumperstilshen.msgIconClose = "[text:layout_assistant_close]";#r#nhumperstilshen.msgColapsed = "[text:layout_menu_colapsed]";#r#nhumperstilshen.msgExpanded = "[text:layout_menu_opened]";#r#n#r#n[/script]#r#n[paste:style]#r#n#r#n#r#n#r#n#r#n
      #r#n#r#n[paste:bar_left_icons]#r#n[scope(`home`){]#r#n#r#n[if($editable){]#r#n[text $title]#r#n[}elseif($url){]#r#n[text $title]#r#n[}else{]#r#n[text $title]#r#n[}]#r#n#r#n[} // scope]#r#n#r#n
      #r#n#r#n#r#n#r#n
      #r#n#r#n#r#n[mod:layout]#r#n
      #r#n#r#n#r#n[mod:editor]#r#n[mod:instructor]#r#n#r#n
      #r#n#r#n[paste:bar_right_icons]#r#n[paste:editor_icon]#r#n[paste:instructor_icon]#r#n#r#n[text:layout_assistant_open]#r#n#r#n
      #r#n#r#n#r#n#r#n#r#n#r#n#r#n[cut:footerscript]#r#nif (humperstilshen.onLoad !== false && !humperstilshen.loadWait){#r#nhumperstilshen.onLoad();#r#nhumperstilshen.onLoad = false;#r#n}#r#n[/cut]#r#n[paste:script]#r#n#r#n";}a:1:{s:4:"html";s:503:"#r#n#r#n#r#n#r#n[text$document.title]#r#n#r#n#r#n[paste:headerlinks]#r#n[paste:style]#r#n#r#n#r#n[mod:layout]#r#n[paste:script]#r#n#r#n";}a:1:{s:4:"html";s:669:"#r#n#r#n#r#n#r#n#r#n[text $document.title]#r#n#r#n#r#n[paste:headerlinks]#r#n[paste:style]#r#n#r#n#r#n[mod(`title`){list{]#r#n

      [text $title]

      #r#n[}}]#r#n[mod:panel main]#r#n#r#n[paste:script]#r#n#r#n";}a:1:{s:4:"html";s:114:"#r#n?#r#n#r#n";}a:1:{s:4:"html";s:164:"#r#n+#r#n#r#n";}a:1:{s:4:"html";s:191:"#r#n[text $personalite_caption]#r#n#r#n";}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Carto";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"Card";}}}s:4:"html";s:382:"#r#n#r#n
      #r#n[text:layout_card_start]#r#n[$value]#r#n[personalite]#r#n
      #r#n#r#n";}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Colunas";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Columns";}}}s:4:"html";s:392:"#r#n#r#n#r#n[text:layout_columns_start]#r#n[$value]#r#n[personalite]#r#n[text:layout_columns_end]#r#n#r#n#r#n";}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Padro";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Default";}}}s:4:"html";s:941:"#r#n#r#n<[$mod-semantic or `div`;#r#ninline_class(`mod position-$position??left wd-sm-$wd-sm??12 wd-md-$wd-md wd-lg-$wd-lg wd-xl-$wd-xl`);#r#ninline_style(`padding-top:$mod-padding-top; padding-right:$mod-padding-right; padding-bottom:$mod-padding-bottom; padding-left:$mod-padding-left`);#r#n`>`; nl;#r#n#r#nif($caption-display and !$caption-legend){ ``; text; ``; nl; }#r#n#r#n``; nl;#r#n#r#nlist($list);#r#n#r#n``; nl;#r#n#r#nif($caption-display and $caption-legend){ ``; text; ``; nl; }#r#npersonalite;#r#n#r#n``; nl;#r#n]#r#n#r#n";}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"Fonte e pargrafo";i:2;i:1;}s:2:"en";a:1:{i:1;s:17:"Fonte e pargrafo";}}}s:4:"html";s:90:"#r#n#r#n
      #r#n[$value]#r#n[personalite]#r#n
      #r#n#r#n";}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:26:"Formatar fonte e pargrafo";i:2;i:1;}s:2:"en";a:1:{i:1;s:25:"Format font and paragraph";}}}s:4:"html";s:289:"#r#n#r#n
      #r#n[$value]#r#n[personalite]#r#n
      #r#n#r#n";}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"Grade de cartes";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Cards grid";}}}s:4:"html";s:569:"#r#n#r#n
      #r#n
      #r#n[text:layout_grid_start]#r#n[$value]#r#n[personalite]#r#n[text:layout_grid_end]#r#n
      #r#n
      #r#n#r#n";}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"Boto com legenda";i:2;i:1;}s:2:"en";a:1:{i:1;s:19:"Button with caption";}}}s:4:"html";s:949:"[if($menu){]#r#n[text][text:layout_menu_colapsed]#r#n[script]#r#nhumperstilshen.menuAdd ("[$menu]");#r#n[/script]#r#n#r#n[}elseif($active or !$url){]#r#n[ if $editable{][text][}else{ text; }]#r#n[}else{]#r#n[text]#r#n[}";}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"Boto com ttulo";i:2;i:1;}s:2:"en";a:1:{i:1;s:17:"Button with title";}}}s:4:"html";s:325:"[if($active or !$url){]#r#n[text $title]#r#n[}else{]#r#n[text $title]#r#n[}";}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Legenda";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Caption";}}}s:4:"html";s:117:"[if($active or !$url){]#r#n[text]#r#n[}else{]#r#n[text]#r#n[}";}a:3:{s:5:"local";a:1:{s:7:"filters";s:14:"contactAddress";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Endereo";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Address";}}}s:4:"html";s:247:"[scope(`address`){#r#nif($street){ `

      `; $street; if($number){ `, `; $number; } ` `; $complement; `

      `; nl; }#r#nif($district){ `

      `; $district; `

      `; nl; }#r#nif($city or $state){ `

      `; $city; ` - `; $state; ` - `; $postal_code; `

      `; nl; }#r#n}";}a:3:{s:5:"local";a:1:{s:7:"filters";s:11:"contactMail";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Email";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Email";}}}s:4:"html";s:66:"[if $mail{]
      #r#n[$mail]#r#n
      #r#n[}";}a:3:{s:5:"local";a:1:{s:7:"filters";s:12:"contactPhone";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Telefone";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Phone";}}}s:4:"html";s:39:"[if $phone{]
      #r#n[$phone]#r#n
      #r#n[}";}a:3:{s:5:"local";a:1:{s:7:"filters";s:11:"contactSite";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"Site (Criar link)";i:2;i:1;}s:2:"en";a:1:{i:1;s:18:"Site (create link)";}}}s:4:"html";s:73:"[if $site{]
      #r#n[$site]#r#n
      #r#n[}";}a:3:{s:5:"local";a:1:{s:7:"filters";s:7:"content";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Contedo";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Content";}}}s:4:"html";s:298:"[text($content, $editable)]#r#n";}a:3:{s:5:"local";a:1:{s:7:"filters";s:11:"description";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Descrio";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"Description";}}}s:4:"html";s:286:"[if($description or $editable){]#r#n`; text($description); `

      `; }";}a:3:{s:5:"flags";a:1:{s:7:"filters";s:9:"eventDate";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:14:"Data do evento";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Event date";}}}s:4:"html";s:102:"[scope(`date`, $event_start){]#r#n

      [text:detail_event_start] [text:date_formated]

      #r#n[}";}a:3:{s:5:"local";a:1:{s:7:"filters";s:3:"img";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Imagem";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Image";}}}s:4:"html";s:655:"[scope(`img`){]#r#n#r#n#r#n[text $description]#r#n#r#n#r#n[}]";}a:3:{s:5:"local";a:1:{s:7:"filters";s:3:"img";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Miniatura";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Thumbnail";}}}s:4:"html";s:728:"[scope(`img`){]#r#n#r#n#r#n[if($url){ ``; nl; }]#r#n[text $description]#r#n[if($url){ ``nl; }]#r#n#r#n#r#n[}";}a:3:{s:5:"local";a:1:{s:7:"filters";s:16:"description#r#nimg";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:41:"Miniatura esquerda + ttulo + descrio";i:2;i:1;}s:2:"en";a:1:{i:1;s:36:"Left thumbnail + title + description";}}}s:4:"html";s:1293:"
      #r#n[scope(`img`){]#r#n
      #r#n#r#n#r#n[if($url){ ``; nl; }]#r#n[text $description]#r#n[if($url){ ``nl; }]#r#n
      #r#n
      #r#n#r#n[}]#r#n
      #r#n[if $url{]#r#n[text $title]#r#n#r#n[}else{]#r#n[text $title]#r#n[}#r#nif($description or $editable){]#r#n[text $description]

      #r#n[}]#r#n
      #r#n#r#n";}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Visualizaes";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Views";}}}s:4:"html";s:60:"[if $hits{]

      [$hits] [text:field_hits]

      #r#n[}";}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:19:"Por (nome do autor)";i:2;i:1;}s:2:"en";a:1:{i:1;s:16:"By (author name)";}}}s:4:"html";s:146:"[scope(`user`, $owner_id){]#r#n

      [text:field_info_by] [if $url{][text $caption][}else{ text($caption); }]

      #r#n[}";}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"Criado em (data)";i:2;i:1;}s:2:"en";a:1:{i:1;s:17:"Created at (date)";}}}s:4:"html";s:97:"[scope(`date`, $created){]#r#n

      [text:field_info_posted] [text:date_formated]

      #r#n[}";}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:23:"Criado em (data e hora)";i:2;i:1;}s:2:"en";a:1:{i:1;s:26:"Created at (date and time)";}}}s:4:"html";s:108:"[scope(`date`, $created){]#r#n

      [text:field_info_posted] [text:date_formated], [$h]h[$i]

      #r#n[}";}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:28:"Postado h (tempo decorrido)";i:2;i:1;}s:2:"en";a:1:{i:1;s:21:"Posted (elapsed time)";}}}s:4:"html";s:75:"[scope(`date_elapsed`, $created){]#r#n

      [text $elapsed]

      #r#n[}";}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:20:"Atualizado em (data)";i:2;i:1;}s:2:"en";a:1:{i:1;s:17:"Updated at (date)";}}}s:4:"html";s:108:"[scope(`date`, $updated, $created){]#r#n

      [text:field_info_updated] [text:date_formated]

      #r#n[}";}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"Categorias";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Categories";}}}s:4:"html";s:141:"[scope(`categories`){list{loop{]#r#n
      #r#n[text]#r#n[list{loop{]#r#n[text]#r#n[}}]#r#n
      #r#n[}}}#r#n";}a:3:{s:5:"local";a:1:{s:7:"filters";s:8:"keywords";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:14:"Palavras-chave";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Keywords";}}}s:4:"html";s:143:"[scope(`keywords`){]#r#n
      #r#n[text:field_keywords]#r#n[list{loop{]#r#n[text]#r#n[}}]#r#n
      #r#n[}]#r#n";}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Localizao";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Location";}}}s:4:"html";s:169:"[scope(`location`){]#r#n
      #r#n[text:field_location]#r#n[list{loop{#r#nif(!$first){ `→`; }]#r#n[text]#r#n[}}]#r#n
      #r#n[}]#r#n";}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:30:"Localizao (caminho completo)";i:2;i:1;}s:2:"en";a:1:{i:1;s:23:"Location (full pathway)";}}}s:4:"html";s:173:"[scope(`locationFull`){]#r#n
      #r#n[text:field_location]#r#n[list{loop{#r#nif(!$first){ `→`; }]#r#n[text]#r#n[}}]#r#n
      #r#n[}]#r#n";}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:22:"Localizao (em linha)";i:2;i:1;}s:2:"en";a:1:{i:1;s:17:"Location (inline)";}}}s:4:"html";s:150:"[scope(`location`){]#r#n

      [text:field_location_at]#r#n[list{loop{#r#nif(!$first){ `→`; }]#r#n[text]#r#n[}}]#r#n

      #r#n[}]#r#n";}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:40:"Player Audima - L o artigo desta pgina";i:2;i:1;}s:2:"en";a:1:{i:1;s:31:"Audima Player - Reads this page";}}}s:4:"html";s:120:"[scope(`audima`){]#r#n
      #r#n#r#n[}]";}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:27:"udio (Reproduzir e Baixar)";i:2;i:1;}s:2:"en";a:1:{i:1;s:25:"Audio (Play and Download)";}}}s:4:"html";s:504:"[scope(`audio`){]#r#n
      #r#n[if $editable {]#r#n[text:field_media_add_audio]#r#n[}else{]#r#n#r#n[$play] [text:field_media_plays]#r#n[text:action_download]#r#n[$downloads] [text:field_media_downloads]#r#n[}]#r#n
      #r#n[}]";}a:3:{s:5:"local";a:1:{s:7:"filters";s:8:"mediaBox";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:25:"Caixa de destaque do post";i:2;i:1;}s:2:"en";a:1:{i:1;s:18:"Post spotlight box";}}}s:4:"html";s:7:"[box:0]";}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"Arquivo (Baixar)";i:2;i:1;}s:2:"en";a:1:{i:1;s:15:"File (Download)";}}}s:4:"html";s:321:"[scope(`file`){]#r#n
      #r#n[if $editable {]#r#n[text:field_media_add_file]#r#n[}else{]#r#n
      [$filename]
      #r#n[text:action_download]#r#n[$downloads] [text:field_media_downloads]#r#n[}]#r#n
      #r#n[}]";}a:3:{s:5:"local";a:1:{s:7:"filters";s:9:"mediaFont";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:22:"Fonte (exibir famlia)";i:2;i:1;}s:2:"en";a:1:{i:1;s:21:"Font (display family)";}}}s:4:"html";s:2607:"[scope(`fonts`){]#r#n
      #r#n[if($regular-url){]#r#n[style]#r#n@font-face {#r#nfont-family:[$font-family];#r#nsrc:[$font-stack-start]url("[$regular-url]") format("[$regular-format]");#r#n}#r#n[/style]#r#n

      [text:detail_font_regular]

      #r#n

      [text $demonstration]

      #r#n[}]#r#n[if($italic-url){]#r#n[style]#r#n@font-face {#r#nfont-family:[$font-family];#r#nsrc:[$font-stack-start]url("[$italic-url]") format("[$italic-format]");#r#nfont-weight:normal;#r#nfont-style:italic;#r#n}#r#n[/style]#r#n

      [text:detail_font_italic]

      #r#n

      [text $demonstration]

      #r#n[}]#r#n[if($bold-url){]#r#n[style]#r#n@font-face {#r#nfont-family:[$font-family];#r#nsrc:[$font-stack-start]url("[$bold-url]") format("[$bold-format]");#r#nfont-weight:bold;#r#nfont-style:normal;#r#n}#r#n[/style]#r#n

      [text:detail_font_bold]

      #r#n

      [text $demonstration]

      #r#n[}]#r#n[if($bold-italic-url){]#r#n[style]#r#n@font-face {#r#nfont-family:[$font-family];#r#nsrc:[$font-stack-start]url("[$bold-italic-url]") format("[$bold-italic-format]");#r#nfont-weight:bold;#r#nfont-style:italic;#r#n}#r#n[/style]#r#n

      [text:detail_font_bold_italic]

      #r#n

      [text $demonstration]

      #r#n[}]#r#n#r#n[if($add){]#r#n[text:detail_font_favorite_add]#r#n[}elseif($remove){]#r#n[text:detail_font_favorite_remove]#r#n[}]#r#n#r#n#r#n
      #r#n[}]";}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:18:"Vdeo (Reproduzir)";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Video (Play)";}}}s:4:"html";s:210:"[scope(`video`){]#r#n
      #r#n[if $editable {]#r#n[text:field_media_add_video]#r#n[}else{]#r#n#r#n[$plays] [text:detail_plays]#r#n[}]#r#n
      #r#n[}]";}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:39:"Informaes sobre o carrinho de compras";i:2;i:1;}s:2:"en";a:1:{i:1;s:36:"Informations about the shopping cart";}}}s:4:"html";s:1268:"#r#n[text][if($url){] [text:field_cart_go]
      [}]#r#n
      #r#n[cut:script]#r#n#r#ncartTimer = [$timer];#r#n#r#nfunction cartStatus (){#r#nvar status = document.getElementById ("[$mod.name]_status");#r#n#r#nif (cartTimer < 1){#r#nwindow.location = "[$url_timeout]";#r#n}else if (cartTimer <= 10){#r#nstatus.innerHTML = cartTimer + " Segundos restantes";#r#ncartTimer --;#r#nwindow.setTimeout (cartStatus, 1000);#r#n}else if (cartTimer < 60 && cartTimer % 10){#r#nstatus.innerHTML = cartTimer + " Segundos restantes";#r#nwindow.setTimeout (cartStatus, (cartTimer % 10) * 1000);#r#ncartTimer -= (cartTimer % 10);#r#n}else if (cartTimer <= 60){#r#nstatus.innerHTML = cartTimer + " Segundos restantes";#r#ncartTimer -= 10;#r#nwindow.setTimeout (cartStatus, 10000);#r#n}else if (cartTimer % 60){#r#nvar dif = cartTimer % 60;#r#nvar rounded = (60 + cartTimer) - dif;#r#nstatus.innerHTML = (rounded / 60) + " Minutos restantes";#r#nwindow.setTimeout (cartStatus, (cartTimer % 60) * 1000);#r#ncartTimer -= (cartTimer % 60);#r#n}else{#r#nstatus.innerHTML = (cartTimer / 60) + " Minutos restantes";#r#ncartTimer -= 60;#r#nwindow.setTimeout (cartStatus, 60000);#r#n}#r#n}#r#n#r#nwindow.addEventListener ("load", cartStatus);#r#n[/cut]#r#n#r#n";}a:3:{s:5:"local";a:1:{s:7:"filters";s:7:"product";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:29:"Preo (Adicionar ao carrinho)";i:2;i:1;}s:2:"en";a:1:{i:1;s:19:"Price (Add to cart)";}}}s:4:"html";s:310:"[scope (`cart`){]#r#n
      #r#n#r#n
      #r#n[$document.currency_symbol][$product_price]#r#n#r#n#r#n
      #r#n
      #r#n[}]";}a:1:{s:4:"html";s:63:"
      #r#n[list{ loop{]#r#n[text]#r#n[}}]#r#n
      ";}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:14:"Ttulo nvel 1";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Header 1";}}}s:4:"html";s:397:"[if($url){ ``; nl; }#r#nif(!$url and $editable){ `

      `; text($title); `

      `; nl; }#r#nelse { ``; text($title); ``; nl; }#r#nif($url){ `
      `; nl; }";}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:14:"Ttulo nvel 2";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Header 2";}}}s:4:"html";s:120:"[if($url){ ``; nl; }#r#n``; text($title); ``; nl;#r#nif($url){ ``; nl; }";}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:14:"Ttulo nvel 3";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Header 3";}}}s:4:"html";s:120:"[if($url){ ``; nl; }#r#n``; text($title); ``; nl;#r#nif($url){ ``; nl; }";}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:14:"Ttulo nvel 4";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Header 4";}}}s:4:"html";s:402:"[if($url){ ``; nl; }#r#nif(!$url and $editable){ `

      `; text($title); `

      `; nl; }#r#nelse { ``; text($title); ``; nl; }#r#nif($url){ `
      `; nl; }";}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:14:"Ttulo nvel 5";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Header 5";}}}s:4:"html";s:402:"[if($url){ ``; nl; }#r#nif(!$url and $editable){ `
      `; text($title); `
      `; nl; }#r#nelse { ``; text($title); ``; nl; }#r#nif($url){ `
      `; nl; }";}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:14:"Ttulo nvel 6";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Header 6";}}}s:4:"html";s:402:"[if($url){ ``; nl; }#r#nif(!$url and $editable){ `
      `; text($title); `
      `; nl; }#r#nelse { ``; text($title); ``; nl; }#r#nif($url){ `
      `; nl; }";}a:3:{s:5:"local";a:1:{s:7:"filters";s:7:"address";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Endereo";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Address";}}}s:4:"html";s:1921:"
      #r#n#r#n
      #r#n#r#n#r#n#r#n#r#n#r#n
      #r#n[if($help){ `
      `; help; `
      `; nl; }]#r#n
      #r#n#r#n#r#n
      #r#n
      #r#n#r#n#r#n#r#n#r#n
      #r#n
      #r#n#r#n#r#n
      #r#n
      #r#n#r#n#r#n
      #r#n";}a:3:{s:5:"local";a:1:{s:7:"filters";s:7:"address";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:55:"Endereo com preenchimento automtico por CEP no Brasil";i:2;i:1;}s:2:"en";a:1:{i:1;s:33:"Address with Brazil CEP auto fill";}}}s:4:"html";s:2509:"
      #r#n#r#n#r#n
      #r#n
      #r#n
      #r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n
      #r#n#r#n#r#n#r#n
      #r#n#r#n#r#n#r#n#r#n#r#n
      #r#n#r#n#r#n
      #r#n
      #r#n[cut:script buscacep]#r#nfunction buscacep (name, cep){#r#nif (cep.length != 8)#r#nreturn;#r#n#r#nvar request = new XMLHttpRequest();#r#nrequest.onreadystatechange = function() {#r#nif (this.readyState == 4 && this.status == 200) {#r#nvar fields = JSON.parse(this.responseText);#r#ndocument.getElementById ("[$name]_street").value = fields.logradouro;#r#ndocument.getElementById ("[$name]_district").value = fields.bairro;#r#ndocument.getElementById ("[$name]_city").value = fields.localidade;#r#ndocument.getElementById ("[$name]_state").value = fields.uf;#r#ndocument.getElementById ("[$name]_country").value = "Brasil";#r#n}#r#n}#r#nrequest.open("GET", "https://viacep.com.br/ws/" + cep + "/json/", true);#r#nrequest.send(); #r#n#r#n}#r#n[/cut]#r#n";}a:3:{s:5:"local";a:1:{s:7:"filters";s:8:"checkbox";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:20:"Caixa de verificao";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Check box";}}}s:4:"html";s:332:"
      #r#n#r#n#r#n[if($help){ `
      `; help; `
      `; nl; }]#r#n
      #r#n";}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:31:"Caixas de verificao em rvore";i:2;i:1;}s:2:"en";a:1:{i:1;s:19:"Check boxes in tree";}}}s:4:"html";s:1555:"[cut:script checkbox_tree]#r#nfunction changeCheckboxVisibility (name)#r#n{#r#nname += "_sublevel";#r#nvar control = document.getElementById(name);#r#ncontrol.hidden = !control.hidden;#r#n} // change checkbox visibility#r#n#r#nfunction changeCheckboxTree (name)#r#n{ // change checkboxTree#r#nvar checked = document.getElementById (name).checked;#r#nalert (checked);#r#nvar checkboxList = checkboxTree[]name];#r#nalert (checkboxList.length);#r#nfor(var i= 0; i < checkboxList.length; i++)#r#n{ // loop checkboxes#r#nvar chName = checkboxList[]i];#r#nvar checkbox = document.getElementById (chName);#r#ncheckbox.checked = checked;#r#n} // loop checkboxes#r#n} // change checkboxTree#r#n#r#n#r#n[/cut]#r#n
      #r#n#r#n#r#n[if($help){ `
      `; help; `
      `; nl; }]#r#n
      #r#n#r#n";}a:3:{s:5:"local";a:1:{s:7:"filters";s:11:"descriptive";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:32:"Insero de contedo explicativo";i:2;i:1;}s:2:"en";a:1:{i:1;s:28:"Explaining content insertion";}}}s:4:"html";s:53:"
      #r#n[text $content]#r#n
      #r#n";}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:25:"Finalizao do formulrio";i:2;i:1;}s:2:"en";a:1:{i:1;s:16:"Formulary ending";}}}s:4:"html";s:107:"#r#n[list{loop{]#r#n#r#n[}}]#r#n
      #r#n#r#n";}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"Envio de arquivos";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"File sending";}}}s:4:"html";s:333:"
      #r#n#r#n#r#n[if($help){ `
      `; help; `
      `; nl; }]#r#n
      #r#n";}a:3:{s:5:"local";a:1:{s:7:"filters";s:6:"select";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:15:"Lista de opes";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Options list";}}}s:4:"html";s:403:"
      #r#n#r#n#r#n[if($help){ `
      `; help; `
      `; nl; }]#r#n
      #r#n";}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:20:"Gerenciador de itens";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Itens manager";}}}s:4:"html";s:6710:"
      #r#n#r#n[if($help){ `
      `; help; `
      `; nl; }]#r#n
      "#r#n#r#n#r#n
      #r#n#r#n[if($move-enable){]#r#n#r#n[text:action_move_up]#r#n#r#n#r#n#r#n[text:action_move_down]#r#n#r#n[}if($url_add){]#r#n#r#n[text:action_add]#r#n#r#n[}if($remove-enable){]#r#n#r#n[text:action_remove]#r#n#r#n[}if($edit-enable){]#r#n#r#n[text:action_edit]#r#n#r#n[}]#r#n
      #r#n
      #r#n[cut:script manager]#r#n#r#nfunction listManagerClass()#r#n{ // listManagerClass#r#nthis.name = false;#r#n#r#nthis.moveUp = function (name)#r#n{ // moveUp#r#nthis.name = name;#r#nvar select = document.getElementById (name);#r#nif (select.selectedIndex > 0)#r#n{ // can move#r#nvar index = select.selectedIndex;#r#nvar value = select.value;#r#nvar text = select.options[]index].text;#r#nvar url = select.options[]index].dataset.url;#r#nselect.options[]index] = select.options[]index - 1];#r#nvar option = document.createElement("option");#r#noption.setAttribute ("value", value);#r#noption.text = text;#r#noption.dataset.url = url;#r#nselect.add (option, index - 1);#r#nselect.selectedIndex = index - 1;#r#n#r#nthis.serialize();#r#n} // can move#r#n} // moveUp#r#n#r#nthis.moveDown = function (name)#r#n{ // moveDown#r#nthis.name = name;#r#nvar select = document.getElementById (name);#r#nif (select.selectedIndex >= 0 && select.selectedIndex < select.length - 1)#r#n{ // can move#r#nvar index = select.selectedIndex;#r#nvar value = select.value;#r#nvar text = select.options[]index].text;#r#nvar url = select.options[]index].dataset.url;#r#nselect.options[]index] = select.options[]index + 1];#r#nvar option = document.createElement("option");#r#noption.setAttribute ("value", value);#r#noption.text = text;#r#noption.dataset.url = url;#r#nselect.add (option, index + 1);#r#nselect.selectedIndex = index + 1;#r#n#r#nthis.serialize();#r#n} // can move#r#n} // moveDown#r#n#r#nthis.add = function (name, url)#r#n{ // add#r#nthis.name = name;#r#n#r#nvar left = (screen.width) ? (screen.width-400)/2 : 200;#r#nvar top = (screen.height) ? (screen.height-600)/2 : 25;#r#nwindow.open (url, "", "width=400,height=600,top=" + top + ",left=" + left);#r#n} // add#r#n#r#nthis.remove = function (name)#r#n{ // remove#r#nthis.name = name;#r#nvar select = document.getElementById (name);#r#nif (select.selectedIndex >= 0)#r#n{ // can remove#r#nvar index = select.selectedIndex;#r#nif (select.options[]index].dataset.remove && select.options[]index].dataset.remove.length)#r#n{ // remove request#r#nvar request = new XMLHttpRequest();#r#nrequest.mySelect = select;#r#nrequest.myIndex = index;#r#nrequest.myName = name;#r#nrequest.onreadystatechange = function() {#r#nif (this.readyState == 4 && this.status == 200) {#r#nalert (this.responseText);#r#nvar select = this.mySelect;#r#nvar index = this.myIndex;#r#nvar name = this.myName;#r#nselect.remove (index);#r#nif (select.length)#r#n{ // focus new item#r#nif (index < select.length)#r#nselect.selectedIndex = index;#r#nelse#r#nselect.selectedIndex = select.length - 1;#r#n} // focus new item#r#nlistManager.name = name;#r#nlistManager.serialize();#r#n#r#n}#r#n}#r#nrequest.open(select.options[]index].dataset.remove, true);#r#nrequest.send(); #r#nreturn;#r#n} // remove request#r#nselect.remove (index);#r#nif (select.length)#r#n{ // focus new item#r#nif (index < select.length)#r#nselect.selectedIndex = index;#r#nelse#r#nselect.selectedIndex = select.length - 1;#r#n} // focus new item#r#nthis.serialize();#r#n} // can remove#r#n} // remove#r#n#r#nthis.edit = function (name)#r#n{ // edit#r#nthis.name = name;#r#nvar select = document.getElementById (name);#r#nif (select.selectedIndex >= 0)#r#n{ // selected#r#nvar url = select.options[]select.selectedIndex].dataset.url;#r#nif (!url || !url.length)#r#nreturn;#r#n#r#nvar left = (screen.width) ? (screen.width-400)/2 : 200;#r#nvar top = (screen.height) ? (screen.height-600)/2 : 25;#r#nwindow.open (url, "", "width=400,height=600,top=" + top + ",left=" + left);#r#n} // selected#r#n} // edit#r#n#r#nthis.append = function (value, text, url="")#r#n{ // append#r#nif(!this.name)#r#nreturn;#r#n#r#nvar select = document.getElementById (this.name);#r#nvar option = document.createElement("option");#r#noption.setAttribute ("value", value);#r#noption.text = text;#r#noption.dataset.url = url;#r#nselect.add (option);#r#n#r#nselect.selectedIndex = select.length - 1;#r#nselect.focus();#r#nthis.serialize();#r#n} // append#r#n#r#nthis.update = function (oldValue, newValue, newText, newUrl)#r#n{ // update#r#nif(!this.name)#r#nreturn;#r#n#r#nvar select = document.getElementById (this.name);#r#nfor (var index in select.options)#r#n{ // each option#r#nif (select.options[]index].value == oldValue)#r#n{ // found#r#nif (newValue.length)#r#n{ // update#r#nvar option = select.options[]index];#r#noption.value = newValue;#r#noption.text = newText;#r#noption.dataset.url = newUrl;#r#nselect.selectedIndex = index;#r#nselect.focus();#r#nthis.serialize();#r#nreturn;#r#n} // update#r#nelse#r#n{ // remove#r#nselect.remove (index);#r#nthis.serialize();#r#nreturn;#r#n} // remove#r#n} // found#r#n} // each option#r#n#r#nthis.append (newValue, newText, newUrl);#r#n} // update#r#n#r#nthis.serialize = function ()#r#n{ // serialize#r#nvar buffer = "";#r#nvar select = document.getElementById (this.name);#r#nfor (var i = 0; i < select.length; i++)#r#n{ // each element#r#nbuffer += select.options[]i].value + "#er#en";#r#n} // each element#r#ndocument.getElementById (this.name + "_serialized").value = buffer;#r#n} // serialize#r#n#r#n} // listManagerClass#r#n#r#nlistManager = new listManagerClass();#r#n[/cut]#r#n";}a:3:{s:5:"local";a:1:{s:7:"filters";s:5:"phone";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Telefone";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Phone";}}}s:4:"html";s:811:"
      #r#n#r#n
      #r#n#r#n#r#n#r#n#r#n#r#n
      #r#n[if($help){ `
      `; help; `
      `; nl; }]#r#n";}a:3:{s:5:"local";a:1:{s:7:"filters";s:5:"radio";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:15:"Botes de rdio";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Radio buttons";}}}s:4:"html";s:306:"#r#n
      #r#n[text]#r#n[list{ loop{]#r#n
      #r#n[}}]#r#n
      #r#n";}a:3:{s:5:"local";a:1:{s:7:"filters";s:7:"numeric";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:18:"Seletor deslizante";i:2;i:1;}s:2:"en";a:1:{i:1;s:16:"Sliding selector";}}}s:4:"html";s:342:"
      #r#n#r#n#r#n[if($help){ `
      `; help; `
      `; nl; }]#r#n
      #r#n";}a:3:{s:5:"local";a:1:{s:7:"filters";s:6:"select";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"Caixa de seleo";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Select box";}}}s:4:"html";s:413:"
      #r#n#r#n#r#n[if($help){ `
      `; help; `
      `; nl; }]#r#n
      #r#n";}a:3:{s:5:"local";a:1:{s:7:"filters";s:9:"separator";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Separador";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Separator";}}}s:4:"html";s:6:"
      #r#n";}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:27:"Inicializao do formulrio";i:2;i:1;}s:2:"en";a:1:{i:1;s:16:"Formulary ending";}}}s:4:"html";s:646:"
      #r#n[if($roneypot){]#r#n#r#n#r#n[cut:footerscript]#r#ndocument.getElementById ("[$prefix]_command_password").value = "[$password]";#r#n[/cut]#r#n#r#n[}]#r#n
      #r#n";}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:19:"Botes de submisso";i:2;i:1;}s:2:"en";a:1:{i:1;s:18:"Submission buttons";}}}s:4:"html";s:464:"
      #r#n
      #r#n
      #r#n[list{ loop{]#r#n[if $reset{]#r#n#r#n[}elseif $onclick{]#r#n#r#n[}else{]#r#n#r#n[}#r#n}}]#r#n
      #r#n
      #r#n";}a:3:{s:5:"local";a:1:{s:7:"filters";s:10:"mail#r#ntext";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"Entrada de texto";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Text input";}}}s:4:"html";s:340:"
      #r#n#r#n#r#n[if($help){ `
      `; help; `
      `; nl; }]#r#n
      #r#n";}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"Entrada de senha";i:2;i:1;}s:2:"en";a:1:{i:1;s:14:"Password input";}}}s:4:"html";s:347:"
      #r#n#r#n#r#n[if($help){ `
      `; help; `
      `; nl; }]#r#n
      #r#n";}a:3:{s:5:"local";a:1:{s:7:"filters";s:19:"mail#r#nnumeric#r#ntext";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:24:"Entrada de texto pequena";i:2;i:1;}s:2:"en";a:1:{i:1;s:16:"Small text input";}}}s:4:"html";s:343:"
      #r#n#r#n#r#n[if($help){ `
      `; help; `
      `; nl; }]#r#n
      #r#n";}a:3:{s:5:"local";a:1:{s:7:"filters";s:13:"numeric#r#ntext";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:26:"Entrada de texto minscula";i:2;i:1;}s:2:"en";a:1:{i:1;s:15:"Tiny text input";}}}s:4:"html";s:360:"
      #r#n#r#n
      #r#n#r#n
      #r#n[if($help){ `
      `; help; `
      `; nl; }]#r#n
      #r#n";}a:3:{s:5:"local";a:1:{s:7:"filters";s:8:"textarea";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:24:"rea de texto multilinha";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Textarea";}}}s:4:"html";s:344:"
      #r#n#r#n#r#n[if($help){ `
      `; help; `
      `; nl; }]#r#n
      #r#n";}a:3:{s:5:"local";a:1:{s:7:"filters";s:8:"textarea";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:31:"rea de texto multilinha grande";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"Big textarea";}}}s:4:"html";s:337:"#r#n#r#n[if($help){ `
      `; help; `
      `; nl; }]#r#n#r#n#r#n#r#n#r#n";}a:3:{s:5:"local";a:1:{s:7:"filters";s:8:"textarea";}s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:32:"rea de texto multilinha pequena";i:2;i:1;}s:2:"en";a:1:{i:1;s:14:"Small textarea";}}}s:4:"html";s:344:"
      #r#n#r#n#r#n[if($help){ `
      `; help; `
      `; nl; }]#r#n
      #r#n";}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:18:"Ver valor do campo";i:2;i:1;}s:2:"en";a:1:{i:1;s:16:"View field value";}}}s:4:"html";s:224:"
      #r#n
      [text]
      #r#n
      #r#n[if($url){#r#n``; text($content); ``; nl;#r#n}else{#r#ntext($content);#r#n}]#r#n
      #r#n
      #r#n";}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:31:"Finalizar caixa de vizualizao";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"View box end";}}}s:4:"html";s:8:"
      #r#n";}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:29:"Iniciar caixa de visualizao";i:2;i:1;}s:2:"en";a:1:{i:1;s:14:"View box start";}}}s:4:"html";s:56:"
      #r#n";}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"en";a:1:{i:1;s:5:"Arial";}}}s:5:"local";a:1:{s:10:"font-stack";s:49:"Arial, "Helvetica Neue", Helvetica, sans-serif";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"en";a:1:{i:1;s:12:"Book Antiqua";}}}s:5:"local";a:1:{s:10:"font-stack";s:65:""Book Antiqua", "Big Caslon", "Palatino Linotype", Georgia, serif";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"en";a:1:{i:1;s:14:"Century Gothic";}}}s:5:"local";a:2:{s:9:"font-face";s:25:"/* Angelo escreve aqui */";s:10:"font-stack";s:56:""Century Gothic", CenturyGothic, AppleGothic, sans-serif";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"en";a:1:{i:1;s:8:"Consolas";}}}s:5:"local";a:1:{s:10:"font-stack";s:212:"Consolas, "Andale Mono WT", "Andale Mono", "Lucida Console", "Lucida Sans Typewriter", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Liberation Mono", "Nimbus Mono L", Monaco, "Courier New", Courier, monospace";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"en";a:1:{i:1;s:11:"Courier New";}}}s:5:"local";a:1:{s:10:"font-stack";s:80:""Courier New", Courier, "Lucida Sans Typewriter", "Lucida Typewriter", monospace";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"en";a:1:{i:1;s:14:"Helvetica Neue";}}}s:5:"local";a:1:{s:10:"font-stack";s:54:""Helvetica Neue", Helvetica, Roboto, Arial, sans-serif";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"en";a:1:{i:1;s:15:"Times New Roman";}}}s:5:"local";a:1:{s:10:"font-stack";s:68:"TimesNewRoman, "Times New Roman", Times, Baskerville, Georgia, serif";}}a:3:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:1:{i:1;s:9:"Adicionar";}s:2:"en";a:1:{i:1;s:3:"Add";}}}s:5:"local";a:1:{s:5:"wd-sm";i:16;}s:4:"html";s:76:"#r#n";}a:3:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:1:{i:1;s:10:"Configurar";}s:2:"en";a:1:{i:1;s:9:"Configure";}}}s:5:"local";a:1:{s:5:"wd-sm";i:16;}s:4:"html";s:97:"#r#n";}a:3:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:1:{i:1;s:7:"Remover";}s:2:"en";a:1:{i:1;s:6:"Remove";}}}s:5:"local";a:1:{s:5:"wd-sm";i:16;}s:4:"html";s:42:"#r#n";}a:3:{s:4:"text";a:0:{}s:5:"local";a:1:{s:5:"wd-sm";i:800;}s:4:"html";s:1100:"#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n";}a:3:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:1:{i:1;s:4:"Menu";}s:2:"en";a:1:{i:1;s:4:"Menu";}}}s:5:"local";a:1:{s:5:"wd-sm";i:8;}s:4:"html";s:120:"#r#n#r#n#r#n";}a:3:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:1:{i:1;s:11:"Seta abaixo";}s:2:"en";a:1:{i:1;s:10:"Down arrow";}}}s:5:"local";a:1:{s:5:"wd-sm";i:10;}s:4:"html";s:68:"#r#n";}a:3:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:1:{i:1;s:14:"Seta direita";}s:2:"en";a:1:{i:1;s:11:"Right arrow";}}}s:5:"local";a:1:{s:5:"wd-sm";i:10;}s:4:"html";s:69:"#r#n";}a:3:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:1:{i:1;s:14:"Seta direita";}s:2:"en";a:1:{i:1;s:11:"Right arrow";}}}s:5:"local";a:1:{s:5:"wd-sm";i:10;}s:4:"html";s:69:"#r#n";}a:3:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:1:{i:1;s:10:"Seta acima";}s:2:"en";a:1:{i:1;s:8:"Up arrow";}}}s:5:"local";a:1:{s:5:"wd-sm";i:10;}s:4:"html";s:69:"#r#n";}a:3:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:1:{i:1;s:8:"Quadrado";}s:2:"en";a:1:{i:1;s:6:"Square";}}}s:5:"local";a:1:{s:5:"wd-sm";i:8;}s:4:"html";s:40:"#r#n";}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Adicionar";i:2;i:1;}s:2:"en";a:1:{i:1;s:3:"Add";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Responder";i:2;i:1;}s:2:"en";a:1:{i:1;s:6:"Answer";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Voltar";i:2;i:1;}s:2:"en";a:2:{i:1;s:4:"Back";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Cancelar";i:2;i:1;}s:2:"en";a:2:{i:1;s:6:"Cancel";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Escolher";i:2;i:1;}s:2:"en";a:2:{i:1;s:6:"Choose";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Limpar";i:2;i:1;}s:2:"en";a:2:{i:1;s:5:"Clear";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Fechar";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Close";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"Configurar";i:2;i:1;}s:2:"en";a:2:{i:1;s:9:"Configure";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Confirmar";i:2;i:1;}s:2:"en";a:2:{i:1;s:7:"Confirm";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Conectar-se";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Connect";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Criar";i:2;i:1;}s:2:"en";a:1:{i:1;s:6:"Create";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Baixar";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Download";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Editar";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"Edit";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Concluir";i:2;i:1;}s:2:"en";a:2:{i:1;s:6:"Finish";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:2:"Ir";i:2;i:1;}s:2:"en";a:2:{i:1;s:2:"Go";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"Mover para baixo";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Move down";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:19:"Mover para esquerda";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Move left";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:18:"Mover para direita";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Move right";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Mover para...";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Move to...";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:15:"Mover para cima";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Move up";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Avanar";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"Next";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:2:"Ok";i:2;i:1;}s:2:"en";a:1:{i:1;s:2:"Ok";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Pausar";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Pause";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"Reproduzir";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"Play";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"Retroceder";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Previous";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Refazer";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"Redo";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Remover";i:2;i:1;}s:2:"en";a:1:{i:1;s:6:"Remove";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:14:"Remover objeto";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Remove object";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:31:"Restaurar configurao original";i:2;i:1;}s:2:"en";a:1:{i:1;s:30:"Restore original configuration";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Salvar";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"Save";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Enviar";i:2;i:1;}s:2:"en";a:1:{i:1;s:6:"Submit";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Desfazer";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"Undo";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Atualizar";i:2;i:1;}s:2:"en";a:1:{i:1;s:6:"Update";}}}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:27:"United Arab Emirates dirham";}}}s:5:"local";a:1:{s:6:"symbol";s:31:"&#cx2f;&#cx62e;&#cx27;&#cx655;&#cx6;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:12:"Lek albanês";}}}s:5:"local";a:1:{s:6:"symbol";s:6:"&#cx4c;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:30:"Guilder de Netherland Antilhas";}}}s:5:"local";a:1:{s:6:"symbol";s:23:"&#cx4e;&#cx41;&#cx92;&#cx1;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:14:"Peso argentino";}}}s:5:"local";a:1:{s:6:"symbol";s:6:"&#cx24;";}}a:1:{s:5:"local";a:1:{s:6:"symbol";s:6:"&#cx24;";}}a:1:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:18:"Dólar australiano";}}}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:12:"Aruba Florin";}}}s:5:"local";a:1:{s:6:"symbol";s:11:"&#cx92;&#cx1;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:18:"Dólar de Barbados";}}}s:5:"local";a:1:{s:6:"symbol";s:18:"&#cx42;&#cx42;&#cx44;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:18:"Taka de Bangladesh";}}}s:5:"local";a:1:{s:6:"symbol";s:12:"&#cx54;&#cx6b;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:12:"Lev búlgaro";}}}s:5:"local";a:1:{s:6:"symbol";s:18:"&#cx3b;&#cx432;&#cx4;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:16:"Dinar do Bahrein";}}}s:5:"local";a:1:{s:6:"symbol";s:30:"&#cx2e;&#cx2f;&#cx62e;&#cx28;&#cx6;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:18:"Franco de Burundi ";}}}s:5:"local";a:1:{s:6:"symbol";s:18:"&#cx46;&#cx42;&#cx75;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:19:"Dólar das Bermudas";}}}s:5:"local";a:1:{s:6:"symbol";s:18:"&#cx42;&#cx44;&#cx24;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:16:"Dólar de Brunei";}}}s:5:"local";a:1:{s:6:"symbol";s:12:"&#cx42;&#cx24;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:18:"Boliviano Bolivian";}}}s:5:"local";a:1:{s:6:"symbol";s:12:"&#cx42;&#cx73;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:15:"Real brasileiro";}}}s:5:"local";a:1:{s:6:"symbol";s:12:"&#cx52;&#cx24;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:18:"Dólar das Bahamas";}}}s:5:"local";a:1:{s:6:"symbol";s:12:"&#cx42;&#cx24;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:18:"Ngultrum do Butão";}}}s:5:"local";a:1:{s:6:"symbol";s:18:"&#cx4e;&#cx75;&#cx2e;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:13:"Botswana Pula";}}}s:5:"local";a:1:{s:6:"symbol";s:6:"&#cx50;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:13:"Belarus Ruble";}}}s:5:"local";a:1:{s:6:"symbol";s:12:"&#cx42;&#cx72;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:16:"Dólar de Belize";}}}s:5:"local";a:1:{s:6:"symbol";s:18:"&#cx42;&#cx5a;&#cx24;";}}a:1:{s:5:"local";a:1:{s:6:"symbol";s:12:"&#cx43;&#cx24;";}}a:1:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:16:"Dólar canadense";}}}}a:1:{s:5:"local";a:1:{s:6:"symbol";s:18:"&#cx43;&#cx48;&#cx46;";}}a:1:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:14:"Franco suíço";}}}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:12:"Peso chileno";}}}s:5:"local";a:1:{s:6:"symbol";s:6:"&#cx24;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:12:"Yuan Chinês";}}}s:5:"local";a:1:{s:6:"symbol";s:6:"&#cxa5;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:15:"Peso colombiano";}}}s:5:"local";a:1:{s:6:"symbol";s:6:"&#cx24;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:17:"Cólon Costa Rica";}}}s:5:"local";a:1:{s:6:"symbol";s:12:"&#cxa1;&#cx20;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:11:"Peso cubano";}}}s:5:"local";a:1:{s:6:"symbol";s:18:"&#cx24;&#cx4d;&#cx4e;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:20:"Escudo cabo-verdiano";}}}s:5:"local";a:1:{s:6:"symbol";s:18:"&#cx45;&#cx73;&#cx63;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:23:"Coroa República Tcheca";}}}s:5:"local";a:1:{s:6:"symbol";s:24:"&#cx4b;&#cx63;&#cxc;&#cx320;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:18:"Franco djiboutiano";}}}s:5:"local";a:1:{s:6:"symbol";s:18:"&#cx46;&#cx64;&#cx6a;";}}a:1:{s:5:"local";a:1:{s:6:"symbol";s:12:"&#cx6b;&#cx72;";}}a:1:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:18:"Coroa dinamarquesa";}}}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:15:"Peso dominicano";}}}s:5:"local";a:1:{s:6:"symbol";s:18:"&#cx52;&#cx44;&#cx24;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:14:"Dinar argelino";}}}s:5:"local";a:1:{s:6:"symbol";s:18:"&#cx2f;&#cx62c;&#cx6;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:14:"Coroa Estônia";}}}s:5:"local";a:1:{s:6:"symbol";s:18:"&#cx45;&#cx45;&#cx4b;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:14:"Libra egípcia";}}}s:5:"local";a:1:{s:6:"symbol";s:24:"&#cx2c;&#cx62e;&#cx45;&#cx6;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:12:"Birr Etíope";}}}s:5:"local";a:1:{s:6:"symbol";s:12:"&#cx42;&#cx72;";}}a:1:{s:5:"local";a:1:{s:6:"symbol";s:12:"&#cxac;&#cx20;";}}a:1:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:4:"Euro";}}}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:14:"Dólar de Fiji";}}}s:5:"local";a:1:{s:6:"symbol";s:18:"&#cx46;&#cx4a;&#cx24;";}}a:1:{s:5:"local";a:1:{s:6:"symbol";s:6:"&#cxa3;";}}a:1:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:18:"Libra das Malvinas";}}}}a:1:{s:5:"local";a:1:{s:6:"symbol";s:6:"&#cxa3;";}}a:1:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:15:"Libra Esterlina";}}}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:9:"Cedi Gana";}}}s:5:"local";a:1:{s:6:"symbol";s:18:"&#cx47;&#cx48;&#cx53;";}}a:1:{s:5:"local";a:1:{s:6:"symbol";s:6:"&#cx44;";}}a:1:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:14:"Dalasi Gâmbia";}}}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:16:"Franco guineense";}}}s:5:"local";a:1:{s:6:"symbol";s:12:"&#cx46;&#cx47;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:17:"Quetzal Guatemala";}}}s:5:"local";a:1:{s:6:"symbol";s:6:"&#cx51;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:16:"Dólar guianense";}}}s:5:"local";a:1:{s:6:"symbol";s:18:"&#cx47;&#cx59;&#cx24;";}}a:1:{s:5:"local";a:1:{s:6:"symbol";s:18:"&#cx48;&#cx4b;&#cx24;";}}a:1:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:19:"Dólar de Hong Kong";}}}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:16:"Lempira Honduras";}}}s:5:"local";a:1:{s:6:"symbol";s:6:"&#cx4c;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:14:"Coroa Croácia";}}}s:5:"local";a:1:{s:6:"symbol";s:12:"&#cx6b;&#cx6e;";}}a:1:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:12:"Haiti Gourde";}}}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:15:"Florim húngaro";}}}s:5:"local";a:1:{s:6:"symbol";s:12:"&#cx46;&#cx74;";}}a:1:{s:5:"local";a:1:{s:6:"symbol";s:12:"&#cx52;&#cx70;";}}a:1:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:16:"Rupia indonésia";}}}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:22:"Novo shekel israelense";}}}s:5:"local";a:1:{s:6:"symbol";s:12:"&#cxaa;&#cx20;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:13:"Rupia indiana";}}}s:5:"local";a:1:{s:6:"symbol";s:18:"&#cx52;&#cx73;&#cx2e;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:15:"Dinar iraquiano";}}}s:5:"local";a:1:{s:6:"symbol";s:24:"&#cx39;&#cx62e;&#cx2f;&#cx6;";}}a:1:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:14:"Rial iraniano ";}}}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:15:"Coroa Islândia";}}}s:5:"local";a:1:{s:6:"symbol";s:12:"&#cx6b;&#cx72;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:16:"Dinar jordaniano";}}}s:5:"local";a:1:{s:6:"symbol";s:18:"&#cx4a;&#cx4f;&#cx44;";}}a:1:{s:5:"local";a:1:{s:6:"symbol";s:6:"&#cxa5;";}}a:1:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:13:"Iene japonês";}}}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:14:"Xelim queniano";}}}s:5:"local";a:1:{s:6:"symbol";s:18:"&#cx4b;&#cx53;&#cx68;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:12:"Som quirguiz";}}}s:5:"local";a:1:{s:6:"symbol";s:18:"&#cx4b;&#cx47;&#cx53;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:12:"Camboja Riel";}}}s:5:"local";a:1:{s:6:"symbol";s:18:"&#cx4b;&#cx48;&#cx52;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:16:"Franco comorense";}}}s:5:"local";a:1:{s:6:"symbol";s:18:"&#cx4b;&#cx4d;&#cx46;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:17:"Won norte-coreano";}}}s:5:"local";a:1:{s:6:"symbol";s:12:"&#cxa9;&#cx20;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:15:"Won sul-coreano";}}}s:5:"local";a:1:{s:6:"symbol";s:12:"&#cxa9;&#cx20;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:16:"Dinar kuwaitiano";}}}s:5:"local";a:1:{s:6:"symbol";s:24:"&#cx2f;&#cx62e;&#cx43;&#cx6;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:18:"Dólar das Caimans";}}}s:5:"local";a:1:{s:6:"symbol";s:6:"&#cx24;";}}a:1:{s:5:"local";a:1:{s:6:"symbol";s:18:"&#cx4b;&#cx5a;&#cx54;";}}a:1:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:18:"Tenge Cazaquistão";}}}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:18:"Rupia do Sri Lanka";}}}s:5:"local";a:1:{s:6:"symbol";s:18:"&#cxb0;&#cxbc2;&#cxb;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:17:"Dirham marroquino";}}}s:5:"local";a:1:{s:6:"symbol";s:26:"&#cx2f;&#cx62e;&#cx45;&#cx62e;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:13:"Leu moldávio";}}}s:5:"local";a:1:{s:6:"symbol";s:18:"&#cx4d;&#cx44;&#cx4c;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:16:"Dinar macedónio";}}}s:5:"local";a:1:{s:6:"symbol";s:18:"&#cx4d;&#cx4b;&#cx44;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:13:"Quiat Myanmar";}}}s:5:"local";a:1:{s:6:"symbol";s:6:"&#cx4b;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:23:"Togrog/Tugrik Mongólia";}}}s:5:"local";a:1:{s:6:"symbol";s:12:"&#cxae;&#cx20;";}}a:1:{s:5:"local";a:1:{s:6:"symbol";s:6:"&#cx24;";}}a:1:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:12:"Pataca Macau";}}}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:19:"Mauritânia Ougulya";}}}s:5:"local";a:1:{s:6:"symbol";s:12:"&#cx55;&#cx4d;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:19:"Rúpia da Maurícia";}}}s:5:"local";a:1:{s:6:"symbol";s:12:"&#cxa8;&#cx20;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:16:"Rupia maldívia ";}}}s:5:"local";a:1:{s:6:"symbol";s:12:"&#cx52;&#cx66;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:16:"Kwacha malawiana";}}}s:5:"local";a:1:{s:6:"symbol";s:12:"&#cx4d;&#cx4b;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:13:"Peso mexicano";}}}s:5:"local";a:1:{s:6:"symbol";s:6:"&#cx24;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:16:"Malásia Ringgit";}}}s:5:"local";a:1:{s:6:"symbol";s:12:"&#cx52;&#cx4d;";}}a:1:{s:5:"local";a:1:{s:6:"symbol";s:12:"&#cx4e;&#cx24;";}}a:1:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:16:"Dólar namibiano";}}}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:14:"Naira Nigéria";}}}s:5:"local";a:1:{s:6:"symbol";s:12:"&#cxa6;&#cx20;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:19:"Córdoba Nicarágua";}}}s:5:"local";a:1:{s:6:"symbol";s:12:"&#cx43;&#cx24;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:13:"Coroa Noruega";}}}s:5:"local";a:1:{s:6:"symbol";s:12:"&#cx6b;&#cx72;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:14:"Rupia nepalesa";}}}s:5:"local";a:1:{s:6:"symbol";s:12:"&#cxa8;&#cx20;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:24:"Dólar da Nova Zelândia";}}}s:5:"local";a:1:{s:6:"symbol";s:6:"&#cx24;";}}a:1:{s:5:"local";a:1:{s:6:"symbol";s:26:"&#cx31;&#cx62e;&#cx39;&#cx62e;";}}a:1:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:10:"Omani Rial";}}}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:14:"Balboa Panamá";}}}s:5:"local";a:1:{s:6:"symbol";s:6:"&#cx42;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:8:"Sol novo";}}}s:5:"local";a:1:{s:6:"symbol";s:18:"&#cx53;&#cx2f;&#cx2e;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:22:"Kina Papua-Nova Guiné";}}}s:5:"local";a:1:{s:6:"symbol";s:6:"&#cx4b;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:13:"Peso filipino";}}}s:5:"local";a:1:{s:6:"symbol";s:12:"&#cxb1;&#cx20;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:16:"Rupia Paquistão";}}}s:5:"local";a:1:{s:6:"symbol";s:18:"&#cx52;&#cx73;&#cx2e;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:15:"Złoty Polónia";}}}s:5:"local";a:1:{s:6:"symbol";s:17:"&#cx7a;&#cx42;&#cx1;";}}a:1:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:17:"Guarani Paraguaio";}}}}a:1:{s:5:"local";a:1:{s:6:"symbol";s:24:"&#cx31;&#cx62e;&#cx42;&#cx6;";}}a:1:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:13:"Rial do Qatar";}}}}a:1:{s:5:"local";a:1:{s:6:"symbol";s:6:"&#cx4c;";}}a:1:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:10:"Leu romeno";}}}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:11:"Rublo russo";}}}s:5:"local";a:1:{s:6:"symbol";s:25:"&#cx40;&#cx443;&#cx431;&#cx4;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:15:"Franco ruandês";}}}s:5:"local";a:1:{s:6:"symbol";s:12:"&#cx52;&#cx46;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:21:"Riyal Arábia Saudita";}}}s:5:"local";a:1:{s:6:"symbol";s:24:"&#cx31;&#cx62e;&#cx33;&#cx6;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:25:"Dólar das Ilhas Salomão";}}}s:5:"local";a:1:{s:6:"symbol";s:18:"&#cx53;&#cx49;&#cx24;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:20:"Rúpia de Seychelles";}}}s:5:"local";a:1:{s:6:"symbol";s:12:"&#cx53;&#cx52;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:14:"Dinar sudanês";}}}s:5:"local";a:1:{s:6:"symbol";s:18:"&#cx53;&#cx44;&#cx47;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:13:"Coroa Suécia";}}}s:5:"local";a:1:{s:6:"symbol";s:12:"&#cx6b;&#cx72;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:19:"Dólar de Singapura";}}}s:5:"local";a:1:{s:6:"symbol";s:12:"&#cx53;&#cx24;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:21:"Libra de Santa Helena";}}}s:5:"local";a:1:{s:6:"symbol";s:6:"&#cxa3;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:17:"Coroa Eslováquia";}}}s:5:"local";a:1:{s:6:"symbol";s:12:"&#cx53;&#cx6b;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:19:"leone de Serra Leoa";}}}s:5:"local";a:1:{s:6:"symbol";s:12:"&#cx4c;&#cx65;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:15:"Chelin Somália";}}}s:5:"local";a:1:{s:6:"symbol";s:18:"&#cx53;&#cx6f;&#cx2e;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:16:"São Tomé Dobra";}}}s:5:"local";a:1:{s:6:"symbol";s:12:"&#cx44;&#cx62;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:18:"Cólon El Salvador";}}}s:5:"local";a:1:{s:6:"symbol";s:12:"&#cxa1;&#cx20;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:12:"Libra síria";}}}s:5:"local";a:1:{s:6:"symbol";s:18:"&#cx53;&#cx59;&#cx50;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:15:"Lilangeni suazi";}}}s:5:"local";a:1:{s:6:"symbol";s:18:"&#cx53;&#cx5a;&#cx4c;";}}a:1:{s:5:"local";a:1:{s:6:"symbol";s:11:"&#cx3f;&#cxe;";}}a:1:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:15:"Baht Tailândia";}}}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:11:"Dinar Tunez";}}}s:5:"local";a:1:{s:6:"symbol";s:24:"&#cx2f;&#cx62e;&#cx2a;&#cx6;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:15:"Tongan paʻanga";}}}s:5:"local";a:1:{s:6:"symbol";s:12:"&#cx54;&#cx24;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:10:"Lira turca";}}}s:5:"local";a:1:{s:6:"symbol";s:18:"&#cx59;&#cx54;&#cx4c;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:27:"Dólar de Trinidad e Tobago";}}}s:5:"local";a:1:{s:6:"symbol";s:18:"&#cx54;&#cx54;&#cx44;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:16:"Dólar de Taiwan";}}}s:5:"local";a:1:{s:6:"symbol";s:18:"&#cx4e;&#cx54;&#cx24;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:16:"Chelin Tanzânia";}}}s:5:"local";a:1:{s:6:"symbol";s:6:"&#cx78;";}}a:1:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:16:"Hryvnia Ucrânia";}}}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:13:"Chelin Uganda";}}}s:5:"local";a:1:{s:6:"symbol";s:18:"&#cx55;&#cx53;&#cx68;";}}a:1:{s:5:"local";a:1:{s:6:"symbol";s:3:"US$";}}a:1:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:25:"Dólar dos Estados Unidos";}}}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:13:"Peso uruguaio";}}}s:5:"local";a:1:{s:6:"symbol";s:18:"&#cx55;&#cx59;&#cx55;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:12:"Som uzbeque ";}}}s:5:"local";a:1:{s:6:"symbol";s:18:"&#cx55;&#cx5a;&#cx53;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:20:"Bolívar venezuelano";}}}s:5:"local";a:1:{s:6:"symbol";s:18:"&#cx56;&#cx45;&#cx46;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:13:"Dong Vietname";}}}s:5:"local";a:1:{s:6:"symbol";s:12:"&#cxab;&#cx20;";}}a:1:{s:5:"local";a:1:{s:6:"symbol";s:12:"&#cx56;&#cx74;";}}a:1:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:12:"Vatu Vanuatu";}}}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:10:"Tala Samoa";}}}s:5:"local";a:1:{s:6:"symbol";s:18:"&#cx57;&#cx53;&#cx24;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:17:"Franco CFA (BEAC)";}}}s:5:"local";a:1:{s:6:"symbol";s:24:"&#cx42;&#cx45;&#cx41;&#cx43;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:25:"Dólar do Caribe Oriental";}}}s:5:"local";a:1:{s:6:"symbol";s:18:"&#cx45;&#cx43;&#cx24;";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:18:"Franco CFA (BCEAO)";}}}s:5:"local";a:1:{s:6:"symbol";s:30:"&#cx42;&#cx43;&#cx45;&#cx41;&#cx4f;";}}a:1:{s:5:"local";a:1:{s:6:"symbol";s:6:"&#cx46;";}}a:1:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:16:"Pacífico Franco";}}}}a:1:{s:5:"local";a:1:{s:6:"symbol";s:18:"&#cx59;&#cx45;&#cx52;";}}a:1:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:13:"Rial iemenita";}}}}a:2:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:19:"Rand África do Sul";}}}s:5:"local";a:1:{s:6:"symbol";s:6:"&#cx52;";}}a:1:{s:5:"local";a:1:{s:6:"symbol";s:18:"&#cx5a;&#cx4d;&#cx4b;";}}a:1:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"pt";a:1:{i:1;s:15:"Kwacha zambiana";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:3:"Dia";i:2;i:1;}s:2:"en";a:1:{i:1;s:3:"Day";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"Dias atrs";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Days ago";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Postado ontem";i:2;i:1;}s:2:"en";a:1:{i:1;s:17:" Posted yesterday";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"Postado h 1 hora";i:2;i:1;}s:2:"en";a:1:{i:1;s:18:" Posted 1 hour ago";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:19:"Postado h 1 minuto";i:2;i:1;}s:2:"en";a:1:{i:1;s:20:" Posted 1 minute ago";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"Postado h 1 ms";i:2;i:1;}s:2:"en";a:1:{i:1;s:19:" Posted 1 month ago";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"Postado h 1 ano";i:2;i:1;}s:2:"en";a:1:{i:1;s:18:" Posted 1 year ago";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:3:{i:1;s:20:"Postado h [$d] dias";i:2;i:1;i:6;i:1;}s:2:"en";a:2:{i:1;s:21:" Posted [$d] days ago";i:6;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:3:{i:1;s:21:"Postado h [$h] horas";i:2;i:1;i:6;i:1;}s:2:"en";a:2:{i:1;s:22:" Posted [$h] hours ago";i:6;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:3:{i:1;s:23:"Postado h [$i] minutos";i:2;i:1;i:6;i:1;}s:2:"en";a:2:{i:1;s:24:" Posted [$i] minutes ago";i:6;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:3:{i:1;s:21:"Postado h [$m] meses";i:2;i:1;i:6;i:1;}s:2:"en";a:2:{i:1;s:23:" Posted [$m] months ago";i:6;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Postado agora";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:" Posted now";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:3:{i:1;s:20:"Postado h [$y] anos";i:2;i:1;i:6;i:1;}s:2:"en";a:2:{i:1;s:22:" Posted [$y] years ago";i:6;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:3:{i:1;s:29:"[$d] de [text $month] de [$y]";i:2;i:1;i:6;i:1;}s:2:"en";a:3:{i:1;s:39:"[text $month] [$d][$th] [$y]";i:5;i:2;i:6;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Horas";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Hours";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Horas";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Hours";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Horas atrs";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Hours ago";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Minutos";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Minutes";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Minutos atrs";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"Minutes ago";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:3:"Ms";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Month";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:3:"Jan";i:2;i:1;}s:2:"en";a:1:{i:1;s:3:"Jan";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:3:"Out";i:2;i:1;}s:2:"en";a:1:{i:1;s:3:"Oct";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:3:"Nov";i:2;i:1;}s:2:"en";a:1:{i:1;s:3:"Nov";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:3:"Dez";i:2;i:1;}s:2:"en";a:1:{i:1;s:3:"Dec";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:3:"Fev";i:2;i:1;}s:2:"en";a:1:{i:1;s:3:"Feb";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:3:"Mar";i:2;i:1;}s:2:"en";a:1:{i:1;s:3:"Mar";}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:3:"Abr";i:2;i:1;}}s:2:"en";a:1:{i:1;s:3:"Apr";}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:3:"Mai";i:2;i:1;}s:2:"en";a:1:{i:1;s:3:"May";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:3:"Jun";i:2;i:1;}s:2:"en";a:1:{i:1;s:3:"Jun";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:3:"Jul";i:2;i:1;}s:2:"en";a:1:{i:1;s:3:"Jul";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:3:"Ago";i:2;i:1;}s:2:"en";a:1:{i:1;s:3:"Aug";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:3:"Set";i:2;i:1;}s:2:"en";a:1:{i:1;s:3:"Sep";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Janeiro";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"January";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Outubro";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"October";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Novembro";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"November";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Dezembro";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"December";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Fevereiro";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"February";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Maro";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"March";}}}}a:1:{s:4:"text";a:2:{s:7:"caption";a:1:{s:2:"pt";a:2:{i:1;s:5:"Abril";i:2;i:1;}}s:2:"en";a:1:{i:1;s:5:"April";}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:4:"Maio";i:2;i:1;}s:2:"en";a:1:{i:1;s:3:"May";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Junho";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"June";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Julho";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"July";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Agosto";i:2;i:1;}s:2:"en";a:1:{i:1;s:6:"August";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Setembro";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"September";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Segundos";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Seconds";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:3:"Seg";i:2;i:1;}s:2:"en";a:1:{i:1;s:3:"Mon";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:3:"Ter";i:2;i:1;}s:2:"en";a:1:{i:1;s:3:"Tue";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:3:"Qua";i:2;i:1;}s:2:"en";a:1:{i:1;s:3:"Wed";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:3:"Qui";i:2;i:1;}s:2:"en";a:1:{i:1;s:3:"Thu";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:3:"Sex";i:2;i:1;}s:2:"en";a:1:{i:1;s:3:"Fri";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:3:"Sab";i:2;i:1;}s:2:"en";a:1:{i:1;s:3:"Sat";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:3:"Dom";i:2;i:1;}s:2:"en";a:1:{i:1;s:3:"Sun";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:3:"Ano";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"Year";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"ontem";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"yesterday";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Endereo";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Address";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Cidade";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"City";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Complemento";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Complement";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:4:"Pas";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Country";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Bairro";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"District";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Nmero";i:2;i:1;}s:2:"en";a:1:{i:1;s:6:"Number";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:3:"CEP";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"Postal code";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Estado";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"State";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:3:"Rua";i:2;i:1;}s:2:"en";a:1:{i:1;s:6:"Street";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:23:"No preencha este campo";i:2;i:1;}s:2:"en";a:1:{i:1;s:21:"Keep this field empty";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:21:"Adicionar ao carrinho";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"Add to cart";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"Ver pedido";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"View order";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:4:"Item";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"Item";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Itens";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Items";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"Categorias";i:2;i:1;}s:2:"en";a:2:{i:1;s:10:"Categories";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"Comentrio";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Comment";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Contedo";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Content";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Descrio";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"Description";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Pasta";i:2;i:1;}s:2:"en";a:2:{i:1;s:6:"Folder";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Visualizaes";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Views";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:3:"Por";i:2;i:1;}s:2:"en";a:1:{i:1;s:2:"By";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"Postado em";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Posted at";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Atualizado em";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Updated at";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:14:"Palavras-chave";i:2;i:1;}s:2:"en";a:2:{i:1;s:8:"Keywords";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Local";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Location";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Na seo";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"At section";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:15:"Adicionar udio";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Add audio";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"Adicionar arquivo";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Add file";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:15:"Adicionar vdeo";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Add video";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:19:"Reproduo contnua";i:2;i:1;}s:2:"en";a:1:{i:1;s:18:"Continuous playing";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Downloads";i:2;i:1;}s:2:"en";a:1:{i:1;s:9:"Downloads";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Reprodues";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Plays";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Telefone";i:2;i:1;}s:2:"en";a:2:{i:1;s:5:"Phone";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:4:"rea";i:2;i:1;}s:2:"en";a:2:{i:1;s:9:"Area code";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:4:"Pas";i:2;i:1;}s:2:"en";a:2:{i:1;s:7:"Country";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Nmero";i:2;i:1;}s:2:"en";a:2:{i:1;s:6:"Number";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Ttulo";i:2;i:1;}s:2:"en";a:2:{i:1;s:5:"Title";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Identificador";i:2;i:1;}s:2:"en";a:2:{i:1;s:10:"Identifier";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Senha";i:2;i:1;}s:2:"en";a:1:{i:1;s:8:"Password";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Repetir senha";i:2;i:1;}s:2:"en";a:1:{i:1;s:15:"Repeat password";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:4:"Afar";}s:2:"en";a:1:{i:1;s:4:"Afar";}s:2:"aa";a:1:{i:1;s:4:"Afar";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:9:"Abkhazian";}s:2:"en";a:1:{i:1;s:9:"Abkhazian";}s:2:"ab";a:1:{i:1;s:10:"Аҧсуа";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:9:"Avéstico";}s:2:"en";a:1:{i:1;s:7:"Avestan";}s:2:"ae";a:1:{i:1;s:6:"Avesta";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:10:"Africâner";}s:2:"en";a:1:{i:1;s:9:"Afrikaans";}s:2:"af";a:1:{i:1;s:9:"Afrikaans";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:4:"Akan";}s:2:"en";a:1:{i:1;s:4:"Akan";}s:2:"ak";a:1:{i:1;s:5:"Akana";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:8:"Amárico";}s:2:"en";a:1:{i:1;s:7:"Amharic";}s:2:"am";a:1:{i:1;s:12:"አማርኛ";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:9:"Aragonês";}s:2:"en";a:1:{i:1;s:9:"Aragonese";}s:2:"an";a:1:{i:1;s:9:"Aragonés";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:6:"Árabe";}s:2:"en";a:1:{i:1;s:6:"Arabic";}s:2:"ar";a:1:{i:1;s:14:"العربية";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:8:"Assamês";}s:2:"en";a:1:{i:1;s:8:"Assamese";}s:2:"as";a:1:{i:1;s:21:"অসমীয়া";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:8:"Avárico";}s:2:"en";a:1:{i:1;s:6:"Avaric";}s:2:"av";a:1:{i:1;s:8:"авар";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:7:"Aimará";}s:2:"en";a:1:{i:1;s:6:"Aymara";}s:2:"ay";a:1:{i:1;s:5:"Aymar";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:11:"Azerbaijano";}s:2:"en";a:1:{i:1;s:11:"Azerbaijani";}s:2:"az";a:1:{i:1;s:11:"Azərbaycan";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:7:"Bashkir";}s:2:"en";a:1:{i:1;s:7:"Bashkir";}s:2:"ba";a:1:{i:1;s:14:"Башҡорт";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:11:"Bielo-russo";}s:2:"en";a:1:{i:1;s:10:"Belarusian";}s:2:"be";a:1:{i:1;s:20:"беларуская";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:8:"Búlgaro";}s:2:"en";a:1:{i:1;s:9:"Bulgarian";}s:2:"bg";a:1:{i:1;s:18:"български";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:8:"Maithili";}s:2:"en";a:1:{i:1;s:8:"Maithili";}s:2:"bh";a:1:{i:1;s:18:"मैथिली";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:9:"Bichlamar";}s:2:"en";a:1:{i:1;s:7:"Bislama";}s:2:"bi";a:1:{i:1;s:7:"Bislama";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:8:"Bâmbara";}s:2:"en";a:1:{i:1;s:7:"Bambara";}s:2:"bm";a:1:{i:1;s:10:"Bamanankan";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:7:"Bengali";}s:2:"en";a:1:{i:1;s:7:"Bengali";}s:2:"bn";a:1:{i:1;s:15:"বাংলা";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:8:"Tibetano";}s:2:"en";a:1:{i:1;s:7:"Tibetan";}s:2:"bo";a:1:{i:1;s:21:"བོད་ཡིག";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:7:"Bretão";}s:2:"en";a:1:{i:1;s:6:"Breton";}s:2:"br";a:1:{i:1;s:9:"Brezhoneg";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:7:"Bósnio";}s:2:"en";a:1:{i:1;s:7:"Bosnian";}s:2:"bs";a:1:{i:1;s:8:"Bosanski";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:8:"Catalão";}s:2:"en";a:1:{i:1;s:7:"Catalan";}s:2:"ca";a:1:{i:1;s:7:"Català";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:8:"Checheno";}s:2:"en";a:1:{i:1;s:7:"Chechen";}s:2:"ce";a:1:{i:1;s:14:"нохчийн";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:8:"Chamorro";}s:2:"en";a:1:{i:1;s:8:"Chamorro";}s:2:"ch";a:1:{i:1;s:7:"Chamoru";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:5:"Corso";}s:2:"en";a:1:{i:1;s:8:"Corsican";}s:2:"co";a:1:{i:1;s:5:"Corsu";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:4:"Cree";}s:2:"en";a:1:{i:1;s:4:"Cree";}s:2:"cr";a:1:{i:1;s:15:"ᓀᐦᐃᔭᐤ";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:6:"Tcheco";}s:2:"en";a:1:{i:1;s:5:"Czech";}s:2:"cs";a:1:{i:1;s:6:"česky";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:13:"Eslavo antigo";}s:2:"en";a:1:{i:1;s:13:"Church Slavic";}s:2:"cu";a:1:{i:1;s:31:"ѩзыкъ словѣньскъ";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:9:"Tchuvache";}s:2:"en";a:1:{i:1;s:7:"Chuvash";}s:2:"cv";a:1:{i:1;s:10:"Чӑваш";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:6:"Galês";}s:2:"en";a:1:{i:1;s:5:"Welsh";}s:2:"cy";a:1:{i:1;s:7:"Cymraeg";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:12:"Dinamarquês";}s:2:"en";a:1:{i:1;s:6:"Danish";}s:2:"da";a:1:{i:1;s:5:"Dansk";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:7:"Alemão";}s:2:"en";a:1:{i:1;s:6:"German";}s:2:"de";a:1:{i:1;s:7:"Deutsch";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:9:"Maldívio";}s:2:"en";a:1:{i:1;s:7:"Dhivehi";}s:2:"dv";a:1:{i:1;s:20:"ދިވެހިބަސް";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:6:"Zoncá";}s:2:"en";a:1:{i:1;s:8:"Dzongkha";}s:2:"dz";a:1:{i:1;s:15:"ཇོང་ཁ";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:5:"Éwé";}s:2:"en";a:1:{i:1;s:3:"Ewe";}s:2:"ee";a:1:{i:1;s:6:"Ɛʋɛ";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:6:"Grêgo";}s:2:"en";a:1:{i:1;s:5:"Greek";}s:2:"el";a:1:{i:1;s:16:"Ελληνικά";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Ingls";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"English";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:9:"Esperanto";}s:2:"en";a:1:{i:1;s:9:"Esperanto";}s:2:"eo";a:1:{i:1;s:9:"Esperanto";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:8:"Espanhol";}s:2:"en";a:1:{i:1;s:7:"Spanish";}s:2:"es";a:1:{i:1;s:8:"Español";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:9:"Estoniano";}s:2:"en";a:1:{i:1;s:8:"Estonian";}s:2:"et";a:1:{i:1;s:5:"Eesti";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:5:"Basco";}s:2:"en";a:1:{i:1;s:6:"Basque";}s:2:"eu";a:1:{i:1;s:7:"Euskara";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:5:"Persa";}s:2:"en";a:1:{i:1;s:7:"Persian";}s:2:"fa";a:1:{i:1;s:10:"فارسی";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:4:"Fula";}s:2:"en";a:1:{i:1;s:5:"Fulah";}s:2:"ff";a:1:{i:1;s:8:"Fulfulde";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:10:"Finlandês";}s:2:"en";a:1:{i:1;s:7:"Finnish";}s:2:"fi";a:1:{i:1;s:5:"Suomi";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:8:"Fidjiano";}s:2:"en";a:1:{i:1;s:6:"Fijian";}s:2:"fj";a:1:{i:1;s:16:"Na vosa Vakaviti";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:7:"Feroês";}s:2:"en";a:1:{i:1;s:7:"Faroese";}s:2:"fo";a:1:{i:1;s:9:"føroyskt";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:8:"Francês";}s:2:"en";a:1:{i:1;s:6:"French";}s:2:"fr";a:1:{i:1;s:9:"Français";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:7:"Frísio";}s:2:"en";a:1:{i:1;s:7:"Frisian";}s:2:"fy";a:1:{i:1;s:5:"Frysk";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:9:"Irlandês";}s:2:"en";a:1:{i:1;s:5:"Irish";}s:2:"ga";a:1:{i:1;s:7:"Gaeilge";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:17:"Gaélico escocês";}s:2:"en";a:1:{i:1;s:6:"Gaelic";}s:2:"gd";a:1:{i:1;s:9:"Gàidhlig";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:6:"Galego";}s:2:"en";a:1:{i:1;s:8:"Galician";}s:2:"gl";a:1:{i:1;s:6:"Galego";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:7:"Guarani";}s:2:"en";a:1:{i:1;s:7:"Guarani";}s:2:"gn";a:1:{i:1;s:10:"Avañe`ẽ";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:8:"Guzerate";}s:2:"en";a:1:{i:1;s:8:"Gujarati";}s:2:"gu";a:1:{i:1;s:21:"ગુજરાતી";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:6:"Manês";}s:2:"en";a:1:{i:1;s:4:"Manx";}s:2:"gv";a:1:{i:1;s:5:"Gaelg";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:7:"Haúça";}s:2:"en";a:1:{i:1;s:5:"Hausa";}s:2:"ha";a:1:{i:1;s:14:"حَوْسََ";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:8:"Hebraico";}s:2:"en";a:1:{i:1;s:6:"Hebrew";}s:2:"he";a:1:{i:1;s:16:"עִבְרִית";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:6:"Híndi";}s:2:"en";a:1:{i:1;s:5:"Hindi";}s:2:"hi";a:1:{i:1;s:18:"हिन्दी";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:9:"Hiri Motu";}s:2:"en";a:1:{i:1;s:9:"Hiri Motu";}s:2:"ho";a:1:{i:1;s:9:"Hiri Motu";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:6:"Croata";}s:2:"en";a:1:{i:1;s:8:"Croatian";}s:2:"hr";a:1:{i:1;s:8:"Hrvatski";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:16:"Crioulo haitiano";}s:2:"en";a:1:{i:1;s:14:"Haitian Creole";}s:2:"ht";a:1:{i:1;s:15:"Kreyòl ayisyen";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:8:"Húngaro";}s:2:"en";a:1:{i:1;s:9:"Hungarian";}s:2:"hu";a:1:{i:1;s:6:"Magyar";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:8:"Armênio";}s:2:"en";a:1:{i:1;s:8:"Armenian";}s:2:"hy";a:1:{i:1;s:14:"Հայերեն";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:7:"Hereró";}s:2:"en";a:1:{i:1;s:6:"Herero";}s:2:"hz";a:1:{i:1;s:10:"Otjiherero";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:12:"Interlíngua";}s:2:"en";a:1:{i:1;s:11:"Interlingua";}s:2:"ia";a:1:{i:1;s:11:"Interlingua";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:10:"Indonésio";}s:2:"en";a:1:{i:1;s:10:"Indonesian";}s:2:"id";a:1:{i:1;s:16:"Bahasa Indonesia";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:12:"Interlíngue";}s:2:"en";a:1:{i:1;s:11:"Interlingue";}s:2:"ie";a:1:{i:1;s:11:"Interlingue";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:3:"Ibo";}s:2:"en";a:1:{i:1;s:4:"Igbo";}s:2:"ig";a:1:{i:1;s:4:"Igbo";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:10:"Yi Sichuan";}s:2:"en";a:1:{i:1;s:10:"Yi Sichuan";}s:2:"ii";a:1:{i:1;s:6:"ꆇꉙ";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:7:"Inupiaq";}s:2:"en";a:1:{i:1;s:7:"Inupiaq";}s:2:"ik";a:1:{i:1;s:8:"Iñupiaq";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Indonsio";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Indonesian";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:3:"Ido";}s:2:"en";a:1:{i:1;s:3:"ido";}s:2:"io";a:1:{i:1;s:3:"Ido";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:9:"Islandês";}s:2:"en";a:1:{i:1;s:9:"Icelandic";}s:2:"is";a:1:{i:1;s:9:"Íslenska";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:8:"Italiano";}s:2:"en";a:1:{i:1;s:7:"Italian";}s:2:"it";a:1:{i:1;s:8:"Italiano";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:9:"Inuktitut";}s:2:"en";a:1:{i:1;s:9:"Inuktitut";}s:2:"iu";a:1:{i:1;s:18:"ᐃᓄᒃᑎᑐᑦ";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Hebraico";i:2;i:1;}s:2:"en";a:1:{i:1;s:6:"Hebrew";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:8:"Japonês";}s:2:"en";a:1:{i:1;s:8:"Japanese";}s:2:"ja";a:1:{i:1;s:9:"日本語";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:1:{s:2:"en";a:1:{i:1;s:7:"Yiddish";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:8:"Javanês";}s:2:"en";a:1:{i:1;s:8:"Javanese";}s:2:"jv";a:1:{i:1;s:9:"Basa Jawa";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:9:"Georgiano";}s:2:"en";a:1:{i:1;s:8:"Georgian";}s:2:"ka";a:1:{i:1;s:21:"ქართული";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:5:"Kongo";}s:2:"en";a:1:{i:1;s:5:"Kongo";}s:2:"kg";a:1:{i:1;s:7:"Kikongo";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:6:"Gikuyu";}s:2:"en";a:1:{i:1;s:6:"Kikuyu";}s:2:"ki";a:1:{i:1;s:9:"Gĩkũyũ";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:12:"Oshikwanyama";}s:2:"en";a:1:{i:1;s:8:"Kuanyama";}s:2:"kj";a:1:{i:1;s:8:"Kuanyama";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:7:"Cazaque";}s:2:"en";a:1:{i:1;s:6:"Kazakh";}s:2:"kk";a:1:{i:1;s:14:"қазақша";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:12:"Groenlandês";}s:2:"en";a:1:{i:1;s:11:"Kalaallisut";}s:2:"kl";a:1:{i:1;s:11:"Kalaallisut";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:5:"Khmer";}s:2:"en";a:1:{i:1;s:5:"Khmer";}s:2:"km";a:1:{i:1;s:27:"ភាសាខ្មែរ";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:7:"Canará";}s:2:"en";a:1:{i:1;s:7:"Kannada";}s:2:"kn";a:1:{i:1;s:15:"ಕನ್ನಡ";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:7:"Coreano";}s:2:"en";a:1:{i:1;s:6:"Korean";}s:2:"ko";a:1:{i:1;s:9:"한국어";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:6:"Kanuri";}s:2:"en";a:1:{i:1;s:6:"Kanuri";}s:2:"kr";a:1:{i:1;s:6:"Kanuri";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:8:"Cachemir";}s:2:"en";a:1:{i:1;s:8:"Kashmiri";}s:2:"ks";a:1:{i:1;s:38:"कश्मीरी - (كشميري)";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:5:"Curdo";}s:2:"en";a:1:{i:1;s:7:"Kurdish";}s:2:"ku";a:1:{i:1;s:17:"Kurdî/كوردي";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:4:"Komi";}s:2:"en";a:1:{i:1;s:4:"Komi";}s:2:"kv";a:1:{i:1;s:8:"коми";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:7:"Cornish";}s:2:"en";a:1:{i:1;s:7:"Cornish";}s:2:"kw";a:1:{i:1;s:8:"Kernewek";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:8:"Quirguiz";}s:2:"en";a:1:{i:1;s:7:"Kirghiz";}s:2:"ky";a:1:{i:1;s:16:"Кыргызча";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:5:"Latim";}s:2:"en";a:1:{i:1;s:5:"Latin";}s:2:"la";a:1:{i:1;s:6:"Latine";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:13:"Luxemburguês";}s:2:"en";a:1:{i:1;s:13:"Letzeburgesch";}s:2:"lb";a:1:{i:1;s:15:"Lëtzebuergesch";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:7:"Luganda";}s:2:"en";a:1:{i:1;s:5:"Ganda";}s:2:"lg";a:1:{i:1;s:7:"Luganda";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:11:"Limburguês";}s:2:"en";a:1:{i:1;s:10:"Limburgish";}s:2:"li";a:1:{i:1;s:9:"Lèmburgs";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:7:"Lingala";}s:2:"en";a:1:{i:1;s:7:"Lingala";}s:2:"ln";a:1:{i:1;s:7:"Lingala";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:8:"Laociano";}s:2:"en";a:1:{i:1;s:3:"Lao";}s:2:"lo";a:1:{i:1;s:9:"ລາວ";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:7:"Lituano";}s:2:"en";a:1:{i:1;s:10:"Lithuanian";}s:2:"lt";a:1:{i:1;s:9:"Lietuvių";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:12:"Luba-katanga";}s:2:"en";a:1:{i:1;s:12:"Luba-Katanga";}s:2:"lu";a:1:{i:1;s:12:"Luba-Katanga";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:6:"Letão";}s:2:"en";a:1:{i:1;s:7:"Latvian";}s:2:"lv";a:1:{i:1;s:9:"Latviešu";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:7:"Malgaxe";}s:2:"en";a:1:{i:1;s:8:"Malagasy";}s:2:"mg";a:1:{i:1;s:15:"Malagasy fiteny";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:11:"Marshallês";}s:2:"en";a:1:{i:1;s:8:"Marshall";}s:2:"mh";a:1:{i:1;s:20:"Kajin M̧ajeļ; Ebon";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:5:"Maori";}s:2:"en";a:1:{i:1;s:5:"Maori";}s:2:"mi";a:1:{i:1;s:13:"te reo Māori";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:10:"Macedônio";}s:2:"en";a:1:{i:1;s:10:"Macedonian";}s:2:"mk";a:1:{i:1;s:20:"македонски";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:9:"Malayalam";}s:2:"en";a:1:{i:1;s:9:"Malayalam";}s:2:"ml";a:1:{i:1;s:18:"മലയാളം";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:6:"Mongol";}s:2:"en";a:1:{i:1;s:9:"Mongolian";}s:2:"mn";a:1:{i:1;s:12:"монгол";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:7:"Moldavo";}s:2:"en";a:1:{i:1;s:9:"Moldavian";}s:2:"mo";a:1:{i:1;s:24:"молдовеняскэ";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:6:"Marata";}s:2:"en";a:1:{i:1;s:7:"Marathi";}s:2:"mr";a:1:{i:1;s:15:"मराठी";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:6:"Malaio";}s:2:"en";a:1:{i:1;s:15:"Malay (generic)";}s:2:"ms";a:1:{i:1;s:31:"bahasa Melayu/بهاس ملاي";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:7:"Maltês";}s:2:"en";a:1:{i:1;s:7:"Maltese";}s:2:"mt";a:1:{i:1;s:9:"Bil-Malta";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:9:"Birmanês";}s:2:"en";a:1:{i:1;s:7:"Burmese";}s:2:"my";a:1:{i:1;s:21:"မန္မာစာ";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:8:"Nauruano";}s:2:"en";a:1:{i:1;s:5:"Nauru";}s:2:"na";a:1:{i:1;s:16:"Ekakairũ naoero";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:18:"Bokmål norueguês";}s:2:"en";a:1:{i:1;s:17:"Norwegian Bokmaal";}s:2:"nb";a:1:{i:1;s:7:"Bokmål";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:16:"Ndebele do norte";}s:2:"en";a:1:{i:1;s:13:"North Ndebele";}s:2:"nd";a:1:{i:1;s:7:"Ndebele";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:8:"Nepalês";}s:2:"en";a:1:{i:1;s:6:"Nepali";}s:2:"ne";a:1:{i:1;s:18:"नेपाली";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:6:"Ndonga";}s:2:"en";a:1:{i:1;s:6:"Ndonga";}s:2:"ng";a:1:{i:1;s:11:"O(shi)wambo";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:9:"Holandês";}s:2:"en";a:1:{i:1;s:5:"Dutch";}s:2:"nl";a:1:{i:1;s:10:"Nederlands";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:15:"Novo norueguês";}s:2:"en";a:1:{i:1;s:17:"Norwegian Nynorsk";}s:2:"nn";a:1:{i:1;s:13:"Norsk Nynorsk";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:10:"Norueguês";}s:2:"en";a:1:{i:1;s:9:"Norwegian";}s:2:"no";a:1:{i:1;s:5:"Norsk";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:14:"Ndebele do sul";}s:2:"en";a:1:{i:1;s:13:"South Ndebele";}s:2:"nr";a:1:{i:1;s:10:"Ndébélé";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:6:"Navajo";}s:2:"en";a:1:{i:1;s:6:"Navajo";}s:2:"nv";a:1:{i:1;s:12:"Diné bizaad";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:8:"Chichewa";}s:2:"en";a:1:{i:1;s:8:"Chichewa";}s:2:"ny";a:1:{i:1;s:9:"chiCheŵa";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:8:"Occitano";}s:2:"en";a:1:{i:1;s:7:"Occitan";}s:2:"oc";a:1:{i:1;s:7:"Occitan";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:8:"Chippewa";}s:2:"en";a:1:{i:1;s:6:"Ojibwa";}s:2:"oj";a:1:{i:1;s:15:"ᐊᓂᔑᓇᐯ";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:5:"Oromo";}s:2:"en";a:1:{i:1;s:5:"Oromo";}s:2:"om";a:1:{i:1;s:6:"Oromoo";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:5:"Oriá";}s:2:"en";a:1:{i:1;s:5:"Oriya";}s:2:"or";a:1:{i:1;s:15:"ଓଡ଼ିଆ";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:5:"Oseto";}s:2:"en";a:1:{i:1;s:8:"Ossetian";}s:2:"os";a:1:{i:1;s:12:"иронау";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:7:"Panjabi";}s:2:"en";a:1:{i:1;s:7:"Panjabi";}s:2:"pa";a:1:{i:1;s:18:"ਪੰਜਾਬੀ";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:5:"Páli";}s:2:"en";a:1:{i:1;s:4:"Pali";}s:2:"pi";a:1:{i:1;s:12:"पािऴ";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:8:"Polonês";}s:2:"en";a:1:{i:1;s:6:"Polish";}s:2:"pl";a:1:{i:1;s:6:"Polski";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:6:"Pachto";}s:2:"en";a:1:{i:1;s:6:"Pushto";}s:2:"ps";a:1:{i:1;s:8:"پښتو";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Portugus";i:2;i:1;}s:2:"en";a:1:{i:1;s:10:"Portuguese";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:8:"Quéchua";}s:2:"en";a:1:{i:1;s:7:"Quechua";}s:2:"qu";a:1:{i:1;s:9:"Runa Simi";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:11:"Reto-romano";}s:2:"en";a:1:{i:1;s:13:"Raeto-Romance";}s:2:"rm";a:1:{i:1;s:9:"Rumantsch";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:5:"Rundi";}s:2:"en";a:1:{i:1;s:5:"Rundi";}s:2:"rn";a:1:{i:1;s:7:"kiRundi";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:6:"Romeno";}s:2:"en";a:1:{i:1;s:8:"Romanian";}s:2:"ro";a:1:{i:1;s:8:"Română";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:5:"Russo";}s:2:"en";a:1:{i:1;s:7:"Russian";}s:2:"ru";a:1:{i:1;s:14:"русский";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:12:"Quiniaruanda";}s:2:"en";a:1:{i:1;s:11:"Kinyarwanda";}s:2:"rw";a:1:{i:1;s:11:"KinyaRwanda";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:10:"Sânscrito";}s:2:"en";a:1:{i:1;s:8:"Sanskrit";}s:2:"sa";a:1:{i:1;s:21:"संस्कृत";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:5:"Sardo";}s:2:"en";a:1:{i:1;s:9:"Sardinian";}s:2:"sc";a:1:{i:1;s:5:"Sardu";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:5:"Sindi";}s:2:"en";a:1:{i:1;s:6:"Sindhi";}s:2:"sd";a:1:{i:1;s:15:"सिनधि";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:13:"Sami do norte";}s:2:"en";a:1:{i:1;s:13:"Northern Sami";}s:2:"se";a:1:{i:1;s:11:"Sámegiella";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:5:"Sango";}s:2:"en";a:1:{i:1;s:5:"Sango";}s:2:"sg";a:1:{i:1;s:7:"Sängö";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:9:"Cingalês";}s:2:"en";a:1:{i:1;s:9:"Sinhalese";}s:2:"si";a:1:{i:1;s:15:"සිංහල";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:8:"Eslovaco";}s:2:"en";a:1:{i:1;s:6:"Slovak";}s:2:"sk";a:1:{i:1;s:11:"Slovenčina";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:8:"Esloveno";}s:2:"en";a:1:{i:1;s:9:"Slovenian";}s:2:"sl";a:1:{i:1;s:13:"Slovenščina";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:7:"Samoano";}s:2:"en";a:1:{i:1;s:6:"Samoan";}s:2:"sm";a:1:{i:1;s:12:"Gagana Samoa";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:5:"Chona";}s:2:"en";a:1:{i:1;s:5:"Shona";}s:2:"sn";a:1:{i:1;s:8:"ChiShona";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:6:"Somali";}s:2:"en";a:1:{i:1;s:6:"Somali";}s:2:"so";a:1:{i:1;s:10:"Soomaaliga";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:8:"Albanês";}s:2:"en";a:1:{i:1;s:8:"Albanian";}s:2:"sq";a:1:{i:1;s:5:"Shqip";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:7:"Sérvio";}s:2:"en";a:1:{i:1;s:7:"Serbian";}s:2:"sr";a:1:{i:1;s:12:"српски";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:6:"Suázi";}s:2:"en";a:1:{i:1;s:5:"Swati";}s:2:"ss";a:1:{i:1;s:7:"SiSwati";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:11:"Soto do sul";}s:2:"en";a:1:{i:1;s:14:"Southern Sotho";}s:2:"st";a:1:{i:1;s:7:"seSotho";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:9:"Sundanês";}s:2:"en";a:1:{i:1;s:9:"Sundanese";}s:2:"su";a:1:{i:1;s:10:"Basa Sunda";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:5:"Sueco";}s:2:"en";a:1:{i:1;s:7:"Swedish";}s:2:"sv";a:1:{i:1;s:7:"Svenska";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:7:"Suaíli";}s:2:"en";a:1:{i:1;s:7:"Swahili";}s:2:"sw";a:1:{i:1;s:9:"Kiswahili";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:6:"Tâmil";}s:2:"en";a:1:{i:1;s:5:"Tamil";}s:2:"ta";a:1:{i:1;s:15:"தமிழ்";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:6:"Telugu";}s:2:"en";a:1:{i:1;s:6:"Telugu";}s:2:"te";a:1:{i:1;s:18:"తెలుగు";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:7:"Tajique";}s:2:"en";a:1:{i:1;s:5:"Tajik";}s:2:"tg";a:1:{i:1;s:12:"Тоҷикӣ";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:10:"Tailandês";}s:2:"en";a:1:{i:1;s:4:"Thai";}s:2:"th";a:1:{i:1;s:21:"ภาษาไทย";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:9:"Tigrínia";}s:2:"en";a:1:{i:1;s:8:"Tigrinya";}s:2:"ti";a:1:{i:1;s:12:"ትግርኛ";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:9:"Turcomano";}s:2:"en";a:1:{i:1;s:7:"Turkmen";}s:2:"tk";a:1:{i:1;s:14:"Түркмен";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:6:"Tagalo";}s:2:"en";a:1:{i:1;s:7:"Tagalog";}s:2:"tl";a:1:{i:1;s:7:"Tagalog";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:6:"Tswana";}s:2:"en";a:1:{i:1;s:6:"Tswana";}s:2:"tn";a:1:{i:1;s:8:"SeTswana";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:9:"Tonganês";}s:2:"en";a:1:{i:1;s:5:"Tonga";}s:2:"to";a:1:{i:1;s:10:"Faka-Tonga";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:5:"Turco";}s:2:"en";a:1:{i:1;s:7:"Turkish";}s:2:"tr";a:1:{i:1;s:8:"Türkçe";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:6:"Tsonga";}s:2:"en";a:1:{i:1;s:6:"Tsonga";}s:2:"ts";a:1:{i:1;s:6:"Tsonga";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:8:"Tártaro";}s:2:"en";a:1:{i:1;s:5:"Tatar";}s:2:"tt";a:1:{i:1;s:8:"Tatarça";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:3:"Twi";}s:2:"en";a:1:{i:1;s:3:"Twi";}s:2:"tw";a:1:{i:1;s:3:"Twi";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:8:"Taitiano";}s:2:"en";a:1:{i:1;s:8:"Tahitian";}s:2:"ty";a:1:{i:1;s:10:"Reo Tahiti";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:5:"Uigur";}s:2:"en";a:1:{i:1;s:6:"Uighur";}s:2:"ug";a:1:{i:1;s:14:"Уйғурче";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:9:"Ucraniano";}s:2:"en";a:1:{i:1;s:9:"Ukrainian";}s:2:"uk";a:1:{i:1;s:20:"українська";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:4:"Urdu";}s:2:"en";a:1:{i:1;s:4:"Urdu";}s:2:"ur";a:1:{i:1;s:8:"اردو";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:7:"Uzbeque";}s:2:"en";a:1:{i:1;s:5:"Uzbek";}s:2:"uz";a:1:{i:1;s:10:"Ўзбек";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:5:"Venda";}s:2:"en";a:1:{i:1;s:5:"Venda";}s:2:"ve";a:1:{i:1;s:7:"Venḓa";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:10:"Vietnamita";}s:2:"en";a:1:{i:1;s:10:"Vietnamese";}s:2:"vi";a:1:{i:1;s:14:"tiếng Việt";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:9:"Volapuque";}s:2:"en";a:1:{i:1;s:8:"Volapük";}s:2:"vo";a:1:{i:1;s:8:"Volapük";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:6:"Valão";}s:2:"en";a:1:{i:1;s:7:"Walloon";}s:2:"wa";a:1:{i:1;s:5:"Walon";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:5:"Wolof";}s:2:"en";a:1:{i:1;s:5:"Wolof";}s:2:"wo";a:1:{i:1;s:5:"Wolof";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:5:"Xhosa";}s:2:"en";a:1:{i:1;s:5:"Xhosa";}s:2:"xh";a:1:{i:1;s:5:"Xhosa";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:8:"Iídiche";}s:2:"en";a:1:{i:1;s:7:"Yiddish";}s:2:"yi";a:1:{i:1;s:12:"ייִדיש";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:7:"Iorubá";}s:2:"en";a:1:{i:1;s:6:"Yoruba";}s:2:"yo";a:1:{i:1;s:8:"Yorùbá";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:6:"Zhuang";}s:2:"en";a:1:{i:1;s:6:"Zhuang";}s:2:"za";a:1:{i:1;s:12:"Saɯ cueŋƅ";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:7:"Chinês";}s:2:"en";a:1:{i:1;s:7:"Chinese";}s:2:"zh";a:1:{i:1;s:22:"漢語; 汉语; 中文";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:3:{s:2:"pt";a:1:{i:1;s:4:"Zulu";}s:2:"en";a:1:{i:1;s:4:"Zulu";}s:2:"zu";a:1:{i:1;s:4:"Zulu";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:90:"O balo do assistente est aberto. Utilize seta para baixo para navegar pelo seu contedo.";i:2;i:1;}s:2:"en";a:2:{i:1;s:76:"The assistant baloom is opened. Use down arrow to navigate thru its content.";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:3:{i:1;s:30:"Menu do [text $system.caption]";i:2;i:1;i:6;i:1;}s:2:"en";a:2:{i:1;s:29:"[text $system.caption]#ss menu";i:6;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:41:"O documento est pronto para ser editado.";i:2;i:1;}s:2:"en";a:2:{i:1;s:30:"The document is ready to edit.";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:38:"H alteraes no salvas no documento.";i:2;i:1;}s:2:"en";a:2:{i:1;s:40:"Theres no saved changes in the document.";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Primeira";i:2;i:1;}s:2:"en";a:2:{i:1;s:5:"First";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"ltima";i:2;i:1;}s:2:"en";a:2:{i:1;s:4:"Last";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:14:"Menu principal";i:2;i:1;}s:2:"en";a:2:{i:1;s:9:"Main menu";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:22:"Acessar pgina do menu";i:2;i:1;}s:2:"en";a:2:{i:1;s:16:"Access menu page";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:18:"Recolher este menu";i:2;i:1;}s:2:"en";a:2:{i:1;s:15:"Close this menu";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Recolhido";i:2;i:1;}s:2:"en";a:2:{i:1;s:8:"Colapsed";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Expandido";i:2;i:1;}s:2:"en";a:2:{i:1;s:6:"Opened";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Prximo";i:2;i:1;}s:2:"en";a:2:{i:1;s:4:"Next";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:23:"Ocultar painel esquerdo";i:2;i:1;}s:2:"en";a:2:{i:1;s:15:"Hide left panel";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:22:"Exibir painel esquerdo";i:2;i:1;}s:2:"en";a:2:{i:1;s:18:"Display left panel";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:22:"Ocultar painel direito";i:2;i:1;}s:2:"en";a:2:{i:1;s:16:"Hide right panel";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:21:"Exibir painel direito";i:2;i:1;}s:2:"en";a:2:{i:1;s:19:"Display right panel";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Anterior";i:2;i:1;}s:2:"en";a:2:{i:1;s:8:"Previous";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:24:"Fim da caixa de destaque";i:2;i:1;}s:2:"en";a:2:{i:1;s:20:"End of spotlight box";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"Caixa de destaque";i:2;i:1;}s:2:"en";a:2:{i:1;s:13:"Spotlight box";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:4:"Abas";i:2;i:1;}s:2:"en";a:2:{i:1;s:4:"Tabs";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Dica para";i:2;i:1;}s:2:"en";a:2:{i:1;s:7:"Tip for";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:4:"Topo";i:2;i:1;}s:2:"en";a:2:{i:1;s:3:"Top";i:2;i:1;}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Rascunho";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Draft";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"No lida";i:2;i:1;}s:2:"en";a:1:{i:1;s:6:"Unread";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:4:"Lida";i:2;i:1;}s:2:"en";a:1:{i:1;s:4:"Read";}}}}a:1:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Excluda";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Removed";}}}}a:3:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:12:"audio_player";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"html";s:1512:"#r#n#r#n#r#n[mod:list{]#r#n#r#n
      #r#n#r#n
      #r#n#r#n#r#n[}]#r#n[style]#r#n/* align window elements */#r#nBODY { text-align:center; }#r#n[/style]#r#n[script]#r#n#r#nfunction keyListener (event)#r#n{ // key listener#r#nif (event.key == #sEnter#s)#r#nplaySelectedTrack();#r#n} // key listener#r#n#r#nfunction playSelectedTrack ()#r#n{ // playSelectedTrack#r#nvar playlist = document.getElementById ("playlist");#r#nif (playlist.selectedIndex >= 0)#r#n{ // valid selection#r#nvar url = playlist.options[]playlist.selectedIndex].dataset.url;#r#nhumperstilshen.play (url);#r#n} // valid selection#r#n} // playSelectedTrack#r#n#r#nselect = document.getElementById ("playlist");#r#nif (select.length)#r#n{#r#nselect.selectedIndex = 0;#r#nselect.focus();#r#nplaySelectedTrack();#r#n#r#nhumperstilshen.playNext = function ()#r#n{ // playNext#r#nif (!document.getElementById ("continuous").checked)#r#nreturn;#r#n#r#nvar playlist = document.getElementById ("playlist");#r#nif (!playlist.options.length || playlist.selectedIndex + 1 >= playlist.options.length)#r#nreturn;#r#n#r#nplaylist.selectedIndex ++;#r#nplaySelectedTrack();#r#n} // playNext#r#n}#r#n[/script]#r#n";}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Layout padro";i:2;i:1;}s:2:"en";a:1:{i:1;s:14:"Default layout";}}}s:4:"html";s:964:"#r#n[cut:footerscript]#r#nhumperstilshen.panelAdd ("left");#r#n[/cut]#r#n[cut:bar_left_icons]#r#n#r#n#r#n#r#n#r#n[/cut]#r#n
      #r#n
      #r#n[mod:banner]#r#n[mod:navbar]#r#n[mod:title]#r#n[mod:languages]#r#n[mod:cart]#r#n[mod:pages]#r#n[mod:panel main]#r#n[mod:comments]#r#n[mod:comments_add]#r#n
      #r#n
      #r#n[mod:hits]#r#n[mod:navbottom]#r#n[mod:footer]#r#n
      #r#n
      #r#n";}a:3:{s:5:"flags";a:2:{s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:6:"dialog";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"html";s:20:"#r#n[mod:panel main]#r#n";}a:3:{s:5:"flags";a:2:{s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:12:"dialog_basic";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"html";s:47:"#r#n[mod:navbar]#r#n[mod:title]#r#n[mod:panel main]#r#n";}a:2:{s:5:"flags";a:3:{s:14:"modLayout_base";s:6:"simple";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:13:"dialog_cancel";}s:4:"html";s:36:"[script]#r#nwindow.close();#r#n[/script]";}a:2:{s:5:"flags";a:3:{s:14:"modLayout_base";s:6:"simple";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:12:"dialog_close";}s:4:"html";s:234:"[script]#r#n[if($document.module){]#r#nwindow.opener.EcolaboreEditor.insertModule(#s[$document.module]#s);#r#n[}elseif ($document.script){ #r#n$document.script; #r#n}else{]#r#nwindow.opener.humperstilshen.refresh();#r#n[}]#r#nwindow.close();#r#n[/script]";}a:3:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:13:"dialog_select";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"html";s:1254:"#r#n#r#n[mod:list{]#r#n#r#n
      #r#n#r#n#r#n[}]#r#n[style]#r#n/* align window elements */#r#nBODY { text-align:center; }#r#n[/style]#r#n[script]#r#n#r#nfunction keyListener (event)#r#n{ // key listener#r#nif (event.key == #sEnter#s)#r#nsendChoice();#r#n} // key listener#r#n#r#nfunction sendChoice ()#r#n{ // sendChoice#r#nvar select = document.getElementById ("modules");#r#nif (select.selectedIndex >= 0)#r#n{ // valid selection#r#n[if($document.update){]#r#nwindow.opener.listManager.update (select.value, select.value, select.options[]select.selectedIndex].text, select.options[]select.selectedIndex].dataset.url);#r#n[}else{]#r#nwindow.opener.listManager.append (select.value, select.options[]select.selectedIndex].text, select.options[]select.selectedIndex].dataset.url);#r#n[}]#r#nwindow.close();#r#n} // valid selection#r#n} // sendChoice#r#n#r#nselect = document.getElementById ("modules");#r#nif (select.length)#r#n{#r#nselect.selectedIndex = 0;#r#nselect.focus();#r#n}#r#n[/script]#r#n";}a:3:{s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:11:"dialog_tabs";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:4:"html";s:3113:"[script]#r#n#r#n// changes dialog tab#r#ntabOld = 2;#r#n#r#nfunction changeTab(){#r#nvar tabIndex = 2 + document.controls.select_tab.selectedIndex;#r#ndocument.getElementById(#stab_content_#s+tabOld).style.display = #snone#s;#r#ndocument.getElementById(#stab_content_#s+tabIndex).style.display = #sblock#s;#r#ntabOld = tabIndex;#r#n}#r#n#r#n// submit configurations#r#nfunction dialogOk(){#r#ndocument.controls.submit();#r#n}#r#n#r#n// Restore default configurations#r#nfunction dialogRestore(){#r#ndocument.controls.save.value = #srestore#s;#r#ndocument.controls.submit();#r#n}#r#n#r#n// closes dialog window#r#nfunction dialogClose(){#r#nwindow.close();#r#n}#r#n#r#ndocument.controls.select_tab.focus();#r#n[/script]#r#n[style]#r#n/* Panels positioning scheme*/#r#n#clayout_dialog_tabs { position:fixed; display:block; top:4rem; right:auto; bottom:4rem; left:0; width:25vw; padding:.4rem; }#r#n #clayout_dialog_tabs select { width:100%; }#r#nfieldset { position:fixed; display:block; top:4rem; right:0; bottom:4rem; left:25vw; padding:.4rem; }#r#n.scrollable { overflow:auto; }#r#n#clayout_dialog_bottom { position:fixed; display:flex; top:auto; right:0; bottom:0; left:0; height:4rem; }#r#n#clayout_dialog_bottom > :first-child { margin:auto; }#r#n#r#n[/style]#r#n#r#n[mod(`formulary`){ list{]#r#n#r#n#r#n#r#n
      #r#n
      #r#n#r#n
      #r#n#r#n#r#n#r#n
      #r#n[next]#r#n#r#n[cut:tab_option]#r#n#r#n[/cut]#r#n#r#n
      #r#n[text]#r#n
      #r#n
      #r#n[list{ loop{ field; }} ]#r#n
      #r#n
      #r#n
      #r#n#r#n#r#n[next; loop{ if(!$last){]#r#n[cut:tab_option]#r#n#r#n[/cut]#r#n#r#n#r#n#r#n#r#n[}else{]#r#n
      #r#n#r#n#r#n[list { loop{]#r#n#r#n[}}]#r#n#r#n#r#n[}}]#r#n#r#n#r#n
      #r#n
      #r#n#r#n[if($document.remove_object){])#r#n#r#n[}else{]#r#n#r#n[}]#r#n#r#n#r#n
      #r#n
      #r#n#r#n#r#n[}}]#r#n";}a:1:{s:4:"html";s:271:"#r#n[text:layout_spotlight_start]#r#n[if $mod.editable{]
      [text($content, $mod.editable)]
      #r#n[}else{#r#ntext($content);#r#n}]#r#n[text:layout_spotlight_end]#r#n";}a:1:{s:4:"html";s:485:"[loop{#r#nif (!$first){]#r#n
      #r#n[}#r#nlist{]#r#n#r#n[loop{]#r#n
      #r#n
      #r#n[details]#r#n
      #r#n
      #r#n[}]#r#n
      #r#n[}}]#r#n";}a:1:{s:4:"html";s:17:"[loop{ details; }";}a:1:{s:4:"html";s:13:"[loop{field;}";}a:1:{s:4:"html";s:7:"[$html]";}a:1:{s:4:"html";s:363:"[loop{#r#nif (!$first){]#r#n
      #r#n[}#r#nlist{]#r#n#r#n[loop{]#r#n
      #r#n[details]#r#n
      #r#n[}]#r#n
      #r#n[}}]#r#n";}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:21:"Menu simples vertical";i:2;i:1;}s:2:"en";a:1:{i:1;s:20:"Simple vertical menu";}}}s:4:"html";s:40:"[loop{]#r#n
      #r#n[details]#r#n
      #r#n[}]#r#n";}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:19:"Tabela transparente";i:2;i:1;}s:2:"en";a:1:{i:1;s:17:"Transparent table";}}}s:4:"html";s:31:"[rendertable:table-transparent]";}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:15:"Tabela decorada";i:2;i:1;}s:2:"en";a:1:{i:1;s:15:"Decorated table";}}}s:4:"html";s:28:"#r#n[rendertable:table-simple]";}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"udio";i:2;i:1;}s:2:"en";a:2:{i:1;s:5:"Audio";i:2;i:1;}}}s:5:"local";a:3:{s:5:"wd-sm";s:4:"auto";s:4:"list";s:7:"details";s:7:"details";s:11:"media_audio";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Banner";i:2;i:1;}s:2:"en";a:2:{i:1;s:6:"Banner";i:2;i:1;}}}s:5:"local";a:8:{s:5:"wd-sm";s:2:"12";s:15:"mod-padding-top";s:1:"0";s:17:"mod-padding-right";s:1:"0";s:18:"mod-padding-bottom";s:1:"0";s:16:"mod-padding-left";s:1:"0";s:10:"box-scheme";s:4:"card";s:4:"list";s:7:"details";s:7:"details";s:3:"img";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:17:"Caixa de destaque";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Spotlight box";}}}s:5:"local";a:8:{s:8:"position";s:10:"float-left";s:5:"wd-sm";s:2:"12";s:5:"wd-md";s:1:"6";s:5:"wd-lg";s:1:"4";s:5:"wd-xl";s:1:"3";s:10:"box-scheme";s:9:"spotlight";s:4:"list";s:7:"details";s:7:"details";s:3:"box";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:14:"Voc est aqui";i:2;i:1;}s:2:"en";a:1:{i:1;s:12:"You are here";}}}s:5:"local";a:6:{s:15:"caption-display";i:1;s:12:"mod-semantic";s:3:"nav";s:5:"wd-sm";s:4:"auto";s:11:"box-display";s:6:"inline";s:11:"list-layout";s:6:"inline";s:6:"col-sm";s:4:"auto";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Carto";i:2;i:1;}s:2:"en";a:2:{i:1;s:6:"Carto";i:2;i:1;}}}s:5:"local";a:1:{s:10:"box-scheme";s:4:"card";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"Meu pedido";i:2;i:1;}s:2:"en";a:2:{i:1;s:8:"My order";i:2;i:1;}}}s:5:"local";a:5:{s:15:"caption-display";i:1;s:5:"wd-sm";s:4:"auto";s:11:"box-display";s:6:"inline";s:4:"list";s:7:"details";s:7:"details";s:12:"product_cart";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Comentrios";i:2;i:1;}s:2:"en";a:2:{i:1;s:8:"Comments";i:2;i:1;}}}s:5:"local";a:3:{s:15:"caption-display";i:1;s:10:"box-scheme";s:5:"panel";s:7:"details";s:40:"info_posted_elapsed#r#ninfo_owner#r#ncontent";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:20:"Adicionar comentrio";i:2;i:1;}s:2:"en";a:2:{i:1;s:11:"Add comment";i:2;i:1;}}}s:5:"local";a:3:{s:15:"caption-display";i:1;s:10:"box-scheme";s:9:"formulary";s:4:"list";s:9:"formulary";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Contedo";i:2;i:1;}s:2:"en";a:2:{i:1;s:7:"Content";i:2;i:1;}}}s:5:"local";a:3:{s:12:"mod-semantic";s:7:"article";s:4:"list";s:7:"details";s:7:"details";s:7:"content";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:22:"Publicado recentemente";i:2;i:1;}s:2:"en";a:2:{i:1;s:21:"Recently publications";i:2;i:1;}}}s:5:"local";a:6:{s:15:"caption-display";i:1;s:10:"box-scheme";s:5:"panel";s:7:"details";s:59:"img_mini_title_description#r#ninfo_posted_elapsed#r#ninfo_owner";s:9:"list_sort";s:7:"created";s:14:"list_direction";s:4:"desc";s:8:"list_max";i:4;}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"Prximos eventos";i:2;i:1;}s:2:"en";a:2:{i:1;s:11:"Next events";i:2;i:1;}}}s:5:"local";a:6:{s:15:"caption-display";i:1;s:10:"box-scheme";s:5:"panel";s:7:"details";s:57:"img_mini_title_description#r#ninfo_event_date#r#ninfo_contact";s:9:"list_sort";s:11:"event_start";s:14:"list_direction";s:3:"asc";s:8:"list_max";i:4;}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:12:"Apresentao";i:2;i:1;}s:2:"en";a:2:{i:1;s:12:"Presentation";i:2;i:1;}}}s:5:"local";a:12:{s:15:"caption-display";i:1;s:10:"box-scheme";s:5:"panel";s:6:"col-sm";s:1:"2";s:6:"col-md";s:1:"2";s:6:"col-lg";s:1:"3";s:6:"col-xl";s:1:"4";s:24:"details-horizontal-align";s:6:"center";s:7:"details";s:8:"img_mini";s:9:"list_sort";s:7:"created";s:14:"list_direction";s:4:"desc";s:8:"list_max";i:4;s:9:"img-shape";s:9:"thumbnail";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"ltimas notcias";i:2;i:1;}s:2:"en";a:2:{i:1;s:9:"Last news";i:2;i:1;}}}s:5:"local";a:6:{s:15:"caption-display";i:1;s:10:"box-scheme";s:5:"panel";s:7:"details";s:39:"img_mini_title_description#r#ninfo_posted";s:9:"list_sort";s:7:"created";s:14:"list_direction";s:4:"desc";s:8:"list_max";i:4;}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:22:"Publicado recentemente";i:2;i:1;}s:2:"en";a:2:{i:1;s:14:"Recently posts";i:2;i:1;}}}s:5:"local";a:6:{s:15:"caption-display";i:1;s:10:"box-scheme";s:5:"panel";s:7:"details";s:72:"img_mini_title_description#r#nmedia_audio#r#ninfo_posted_elapsed#r#ninfo_owner";s:9:"list_sort";s:7:"created";s:14:"list_direction";s:4:"desc";s:8:"list_max";i:4;}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Lanamentos";i:2;i:1;}s:2:"en";a:2:{i:1;s:3:"New";i:2;i:1;}}}s:5:"local";a:6:{s:15:"caption-display";i:1;s:10:"box-scheme";s:5:"panel";s:7:"details";s:41:"img_mini_title_description#r#nproduct_price";s:9:"list_sort";s:7:"created";s:14:"list_direction";s:4:"desc";s:8:"list_max";i:4;}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:22:"Publicado recentemente";i:2;i:1;}s:2:"en";a:2:{i:1;s:21:"Recently publications";i:2;i:1;}}}s:5:"local";a:6:{s:15:"caption-display";i:1;s:10:"box-scheme";s:5:"panel";s:7:"details";s:69:"img_mini_title_description#r#ninfo_posted_elapsed#r#nlist_location_inline";s:9:"list_sort";s:7:"created";s:14:"list_direction";s:4:"desc";s:8:"list_max";i:4;}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:22:"Publicado recentemente";i:2;i:1;}s:2:"en";a:2:{i:1;s:10:"Last posts";i:2;i:1;}}}s:5:"local";a:21:{s:15:"caption-display";i:1;s:12:"mod-position";s:6:"center";s:5:"wd-sm";s:2:"12";s:5:"wd-lg";s:2:"12";s:10:"margin-top";s:4:"auto";s:12:"margin-right";s:4:"auto";s:13:"margin-bottom";s:4:"auto";s:11:"margin-left";s:4:"auto";s:10:"box-scheme";s:4:"card";s:4:"list";s:7:"default";s:9:"list-type";s:4:"grid";s:10:"list-align";s:4:"left";s:6:"col-sm";s:1:"1";s:6:"col-lg";s:1:"1";s:7:"details";s:66:"title_4#r#nmedia_video#r#ndescription#r#ninfo_posted_elapsed#r#ninfo_owner";s:26:"details-horizontal-spacing";s:3:"025";s:24:"details-vertical-spacing";s:3:"025";s:10:"img-format";s:6:"square";s:9:"list_sort";s:7:"created";s:14:"list_direction";s:4:"desc";s:8:"list_max";i:4;}}a:4:{s:4:"text";a:1:{s:5:"title";a:2:{s:2:"pt";a:2:{i:1;s:14:"Enviar arquivo";i:2;i:1;}s:2:"en";a:1:{i:1;s:11:"Submit file";}}}s:5:"flags";a:3:{s:14:"modLayout_base";s:10:"responsive";s:14:"modLayout_from";s:9:"templates";s:14:"modLayout_name";s:6:"dialog";}s:5:"local";a:1:{s:6:"scheme";s:6:"system";}s:8:"children";a:5:{i:0;s:6:"_start";i:1;s:11:"~uploadFile";i:2;s:10:"_separator";i:3;s:7:"_cancel";i:4;s:4:"_end";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Rodap";i:2;i:1;}s:2:"en";a:2:{i:1;s:6:"Footer";i:2;i:1;}}}s:5:"local";a:10:{s:12:"mod-semantic";s:6:"footer";s:15:"mod-padding-top";s:1:"0";s:17:"mod-padding-right";s:1:"0";s:18:"mod-padding-bottom";s:1:"0";s:16:"mod-padding-left";s:1:"0";s:10:"box-scheme";s:3:"nav";s:7:"details";s:7:"content";s:11:"list-layout";s:6:"inline";s:10:"list-align";s:6:"center";s:6:"col-sm";s:4:"auto";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:10:"Formulrio";i:2;i:1;}s:2:"en";a:2:{i:1;s:9:"Formulary";i:2;i:1;}}}s:5:"local";a:2:{s:10:"box-scheme";s:9:"formulary";s:4:"list";s:9:"formulary";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:20:"Formulrio de edio";i:2;i:1;}s:2:"en";a:2:{i:1;s:14:"Edit formulary";i:2;i:1;}}}s:5:"local";a:2:{s:10:"box-scheme";s:9:"formulary";s:4:"list";s:9:"formulary";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:22:"Formulrios do sistema";i:2;i:1;}s:2:"en";a:2:{i:1;s:18:"System formularies";i:2;i:1;}}}s:5:"local";a:0:{}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:12:"Exibir dados";i:2;i:1;}s:2:"en";a:2:{i:1;s:9:"View data";i:2;i:1;}}}s:5:"local";a:1:{s:4:"list";s:9:"formulary";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:16:"Grade de cartes";i:2;i:1;}s:2:"en";a:2:{i:1;s:10:"Cards grid";i:2;i:1;}}}s:5:"local";a:5:{s:11:"list-layout";s:4:"grid";s:6:"col-sm";s:1:"1";s:6:"col-md";s:1:"2";s:6:"col-lg";s:1:"3";s:6:"col-xl";s:1:"4";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:29:"Informaes sobre o documento";i:2;i:1;}s:2:"en";a:2:{i:1;s:13:"Document info";i:2;i:1;}}}s:5:"local";a:4:{s:12:"mod-semantic";s:6:"footer";s:5:"wd-sm";s:4:"auto";s:4:"list";s:7:"details";s:7:"details";s:9:"info_hits";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Insero HTML";i:2;i:1;}s:2:"en";a:1:{i:1;s:14:"HTML insertion";}}}s:5:"local";a:2:{s:5:"wd-sm";s:4:"auto";s:4:"list";s:4:"html";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Figura";i:2;i:1;}s:2:"en";a:2:{i:1;s:5:"Image";i:2;i:1;}}}s:5:"local";a:7:{s:8:"position";s:6:"center";s:5:"wd-sm";s:2:"12";s:5:"wd-md";s:1:"8";s:5:"wd-lg";s:1:"6";s:10:"box-scheme";s:4:"card";s:4:"list";s:7:"details";s:7:"details";s:3:"img";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:6:{s:2:"pt";a:2:{i:1;s:7:"Idiomas";i:2;i:1;}s:2:"en";a:2:{i:1;s:9:"Languages";i:2;i:1;}s:2:"es";a:1:{i:1;s:7:"idiomas";}s:2:"fi";a:1:{i:1;s:6:"Kielet";}s:2:"fr";a:1:{i:1;s:7:"Langues";}s:2:"it";a:1:{i:1;s:6:"Lingue";}}}s:5:"local";a:7:{s:15:"caption-display";i:1;s:12:"mod-semantic";s:3:"nav";s:5:"wd-sm";s:4:"auto";s:11:"box-display";s:6:"inline";s:11:"list-layout";s:6:"inline";s:6:"col-sm";s:4:"auto";s:7:"details";s:7:"caption";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Nesta seo";i:2;i:1;}s:2:"en";a:2:{i:1;s:15:"In this section";i:2;i:1;}}}s:5:"local";a:1:{s:7:"details";s:26:"img_mini_title_description";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Nesta seo";i:2;i:1;}s:2:"en";a:2:{i:1;s:15:"In this section";i:2;i:1;}}}s:5:"local";a:1:{s:7:"details";s:59:"img_mini_title_description#r#ninfo_posted_elapsed#r#ninfo_owner";}}a:1:{s:5:"local";a:2:{s:10:"box-scheme";s:4:"card";s:7:"details";s:26:"img_mini_title_description";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Eventos";i:2;i:1;}s:2:"en";a:2:{i:1;s:6:"Events";i:2;i:1;}}}s:5:"local";a:3:{s:7:"details";s:57:"img_mini_title_description#r#ninfo_event_date#r#ninfo_contact";s:9:"list-sort";s:11:"event_start";s:14:"list-direction";s:4:"desc";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Nesta seo";i:2;i:1;}s:2:"en";a:2:{i:1;s:15:"In this section";i:2;i:1;}}}s:5:"local";a:1:{s:7:"details";s:26:"img_mini_title_description";}}a:1:{s:5:"local";a:17:{s:15:"caption-display";i:1;s:12:"mod-position";s:6:"center";s:5:"wd-sm";s:2:"12";s:5:"wd-lg";s:2:"12";s:10:"margin-top";s:4:"auto";s:12:"margin-right";s:4:"auto";s:13:"margin-bottom";s:4:"auto";s:11:"margin-left";s:4:"auto";s:10:"box-scheme";s:9:"formulary";s:4:"list";s:7:"default";s:9:"list-type";s:6:"column";s:6:"col-sm";s:1:"1";s:6:"col-lg";s:1:"1";s:7:"details";s:26:"img_mini_title_description";s:26:"details-horizontal-spacing";s:3:"025";s:24:"details-vertical-spacing";s:3:"025";s:10:"img-format";s:6:"square";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Nesta seo";i:2;i:1;}s:2:"en";a:2:{i:1;s:15:"In this section";i:2;i:1;}}}s:5:"local";a:7:{s:6:"col-sm";s:1:"2";s:6:"col-md";s:1:"3";s:6:"col-lg";s:1:"4";s:6:"col-xl";s:1:"5";s:7:"details";s:17:"img_mini#r#ntitle_3";s:24:"details-horizontal-align";s:6:"center";s:22:"details-vertical-align";s:6:"bottom";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Verbetes";i:2;i:1;}s:2:"en";a:2:{i:1;s:4:"Tags";i:2;i:1;}}}s:5:"local";a:2:{s:7:"details";s:26:"img_mini_title_description";s:9:"list-sort";s:4:"name";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:1:{i:1;s:26:"Administradores deste site";}s:2:"en";a:1:{i:1;s:19:"Site administrators";}}}s:5:"local";a:2:{s:10:"box-scheme";s:4:"card";s:7:"details";s:26:"img_mini_title_description";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Notcias";i:2;i:1;}s:2:"en";a:2:{i:1;s:8:"Notcias";i:2;i:1;}}}s:5:"local";a:2:{s:7:"details";s:47:"img_mini_title_description#r#ninfo_posted_elapsed";s:14:"list-direction";s:4:"desc";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Podcast";i:2;i:1;}s:2:"en";a:2:{i:1;s:7:"Podcast";i:2;i:1;}}}s:5:"local";a:1:{s:7:"details";s:72:"img_mini_title_description#r#nmedia_audio#r#ninfo_posted_elapsed#r#ninfo_owner";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:8:"Produtos";i:2;i:1;}s:2:"en";a:2:{i:1;s:8:"Products";i:2;i:1;}}}s:5:"local";a:2:{s:7:"details";s:41:"img_mini_title_description#r#nproduct_price";s:9:"list-sort";s:4:"name";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Relacionado";i:2;i:1;}s:2:"en";a:2:{i:1;s:7:"Related";i:2;i:1;}}}s:5:"local";a:1:{s:7:"details";s:41:"img_mini_title_description#r#nlist_location";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:22:"Resultados da pesquisa";i:2;i:1;}s:2:"en";a:2:{i:1;s:14:"Search results";i:2;i:1;}}}s:5:"local";a:1:{s:7:"details";s:41:"img_mini_title_description#r#nlist_location";}}a:1:{s:5:"local";a:2:{s:10:"box-scheme";s:6:"system";s:7:"details";s:26:"img_mini_title_description";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Canal";i:2;i:1;}s:2:"en";a:2:{i:1;s:7:"Channel";i:2;i:1;}}}s:5:"local";a:19:{s:12:"mod-position";s:6:"center";s:5:"wd-sm";s:2:"12";s:5:"wd-lg";s:2:"12";s:10:"margin-top";s:4:"auto";s:12:"margin-right";s:4:"auto";s:13:"margin-bottom";s:4:"auto";s:11:"margin-left";s:4:"auto";s:10:"box-scheme";s:4:"card";s:4:"list";s:7:"default";s:9:"list-type";s:4:"grid";s:10:"list-align";s:4:"left";s:6:"col-sm";s:1:"1";s:6:"col-lg";s:1:"1";s:7:"details";s:66:"title_4#r#nmedia_video#r#ndescription#r#ninfo_posted_elapsed#r#ninfo_owner";s:26:"details-horizontal-spacing";s:3:"025";s:24:"details-vertical-spacing";s:3:"025";s:10:"img-format";s:6:"square";s:9:"list_sort";s:7:"created";s:14:"list_direction";s:4:"desc";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Conectar-se";i:2;i:1;}s:2:"en";a:2:{i:1;s:6:"Conect";i:2;i:1;}}}s:5:"local";a:4:{s:15:"caption-display";i:1;s:8:"position";s:6:"center";s:5:"wd-sm";s:4:"auto";s:4:"list";s:9:"formulary";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Sees";i:2;i:1;}s:2:"en";a:2:{i:1;s:8:"Sections";i:2;i:1;}}}s:5:"local";a:16:{s:12:"mod-semantic";s:3:"nav";s:15:"mod-padding-top";s:1:"0";s:17:"mod-padding-right";s:1:"0";s:16:"mod-padding-left";s:1:"0";s:5:"wd-sm";s:6:"hidden";s:5:"wd-md";s:6:"hidden";s:5:"wd-lg";s:2:"12";s:10:"box-scheme";s:3:"nav";s:11:"list-layout";s:6:"inline";s:10:"list-align";s:6:"center";s:6:"col-sm";s:4:"auto";s:15:"list-column-gap";s:3:"012";s:12:"list-row-gap";s:3:"012";s:7:"details";s:14:"button_caption";s:24:"details-horizontal-align";s:6:"center";s:22:"details-vertical-align";s:6:"center";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Navegao";i:2;i:1;}s:2:"en";a:2:{i:1;s:10:"Navigation";i:2;i:1;}}}s:5:"local";a:14:{s:12:"mod-semantic";s:3:"nav";s:15:"mod-padding-top";s:1:"0";s:17:"mod-padding-right";s:1:"0";s:18:"mod-padding-bottom";s:1:"0";s:16:"mod-padding-left";s:1:"0";s:10:"box-scheme";s:3:"nav";s:11:"list-layout";s:6:"inline";s:10:"list-align";s:6:"center";s:6:"col-sm";s:4:"auto";s:15:"list-column-gap";s:3:"012";s:12:"list-row-gap";s:4:"0012";s:7:"details";s:14:"button_caption";s:24:"details-horizontal-align";s:6:"center";s:22:"details-vertical-align";s:6:"center";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Sees";i:2;i:1;}s:2:"en";a:2:{i:1;s:8:"Sections";i:2;i:1;}}}s:5:"local";a:10:{s:15:"caption-display";i:1;s:12:"mod-semantic";s:3:"nav";s:5:"wd-sm";s:2:"12";s:11:"box-display";s:5:"block";s:11:"list-layout";s:7:"columns";s:10:"list-align";s:6:"center";s:6:"col-sm";s:1:"1";s:12:"list-row-gap";s:3:"050";s:7:"details";s:14:"button_caption";s:24:"details-horizontal-align";s:6:"center";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:7:"Pginas";i:2;i:1;}s:2:"en";a:2:{i:1;s:5:"Pages";i:2;i:1;}}}s:5:"local";a:7:{s:15:"caption-display";i:1;s:12:"mod-semantic";s:3:"nav";s:5:"wd-sm";s:4:"auto";s:11:"box-display";s:6:"inline";s:11:"list-layout";s:6:"inline";s:6:"col-sm";s:4:"auto";s:7:"details";s:7:"caption";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:12:"Navegar para";i:2;i:1;}s:2:"en";a:2:{i:1;s:11:"Navigate to";i:2;i:1;}}}s:5:"local";a:7:{s:15:"caption-display";i:1;s:12:"mod-semantic";s:3:"nav";s:5:"wd-sm";s:4:"auto";s:11:"box-display";s:6:"inline";s:11:"list-layout";s:6:"inline";s:6:"col-sm";s:4:"auto";s:7:"details";s:7:"caption";}}a:1:{s:5:"local";a:1:{s:7:"details";s:72:"info_posted_elapsed#r#ninfo_owner#r#ncontent#r#nlist_keywords#r#nlist_categories";}}a:1:{s:5:"local";a:1:{s:7:"details";s:98:"description#r#ninfo_event_date#r#ncontent#r#ncontact_phone#r#ncontact_site#r#nlist_keywords#r#nlist_categories";}}a:1:{s:5:"local";a:1:{s:7:"details";s:44:"img#r#ncontent#r#nlist_keywords#r#nlist_categories";}}a:1:{s:5:"local";a:1:{s:7:"details";s:77:"description#r#ninfo_posted#r#ninfo_owner#r#ncontent#r#nlist_keywords#r#nlist_categories";}}a:1:{s:5:"local";a:1:{s:7:"details";s:90:"description#r#ninfo_posted#r#ninfo_owner#r#nmedia_audio#r#ncontent#r#nlist_keywords#r#nlist_categories";}}a:1:{s:5:"local";a:1:{s:7:"details";s:67:"description#r#nproduct_price#r#ncontent#r#nlist_keywords#r#nlist_categories";}}a:1:{s:5:"local";a:1:{s:7:"details";s:85:"media_video#r#ninfo_posted_elapsed#r#ninfo_owner#r#ncontent#r#nlist_keywords#r#nlist_categories";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:33:"Painel do programa da Rdio Legal";i:2;i:1;}s:2:"en";a:2:{i:1;s:26:"Radio Legal program pannel";i:2;i:1;}}}s:5:"local";a:4:{s:8:"position";s:6:"center";s:5:"wd-sm";s:2:"12";s:4:"list";s:7:"details";s:7:"details";s:16:"content#r#ntitle_4";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Relacionado";i:2;i:1;}s:2:"en";a:2:{i:1;s:7:"Related";i:2;i:1;}}}s:5:"local";a:3:{s:15:"caption-display";i:1;s:11:"list-layout";s:6:"inline";s:7:"details";s:26:"img_mini_title_description";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Pesquisar";i:2;i:1;}s:2:"en";a:2:{i:1;s:6:"Search";i:2;i:1;}}}s:5:"local";a:2:{s:4:"list";s:9:"formulary";s:11:"form-layout";s:6:"inline";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:9:"Pesquisar";i:2;i:1;}s:2:"en";a:2:{i:1;s:6:"Search";i:2;i:1;}}}s:5:"local";a:1:{s:4:"list";s:9:"formulary";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:11:"Ordenar por";i:2;i:1;}s:2:"en";a:2:{i:1;s:7:"Sort by";i:2;i:1;}}}s:5:"local";a:1:{s:4:"list";s:9:"formulary";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"Menu vertical";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"Vertical menu";}}}s:5:"local";a:2:{s:15:"caption-display";i:1;s:7:"details";s:7:"caption";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Ttulo";i:2;i:1;}s:2:"en";a:2:{i:1;s:5:"title";i:2;i:1;}}}s:5:"local";a:3:{s:12:"mod-semantic";s:6:"header";s:4:"list";s:7:"details";s:7:"details";s:7:"title_1";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Vdeo";i:2;i:1;}s:2:"en";a:2:{i:1;s:5:"Vdeo";i:2;i:1;}}}s:5:"local";a:6:{s:12:"mod-position";s:6:"center";s:5:"wd-sm";s:2:"12";s:5:"wd-lg";s:1:"6";s:10:"box-scheme";s:3:"nav";s:4:"list";s:7:"details";s:7:"details";s:11:"media_video";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Padro";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Default";}}}s:5:"local";a:32:{s:19:"document-text-color";s:7:"#c393a44";s:25:"document-background-color";s:7:"#cd1d2f9";s:21:"document-border-color";s:7:"#c048ba8";s:21:"document-header-color";s:7:"#c048ba8";s:19:"document-mark-color";s:7:"#c893A44";s:22:"panel-background-color";s:4:"#ccce";s:20:"spotlight-text-color";s:4:"#cfff";s:26:"spotlight-background-color";s:4:"#c008";s:20:"spotlight-mark-color";s:4:"#cf99";s:21:"card-background-color";s:4:"#cfff";s:26:"formulary-background-color";s:4:"#cccc";s:14:"nav-text-color";s:4:"#cfff";s:20:"nav-background-color";s:4:"#c000";s:16:"nav-border-color";s:4:"#c666";s:16:"nav-header-color";s:4:"#cccc";s:14:"nav-mark-color";s:4:"#cccc";s:17:"system-text-color";s:4:"#cfff";s:23:"system-background-color";s:7:"#c406e8e";s:19:"system-header-color";s:4:"#ce80";s:17:"system-mark-color";s:4:"#ce80";s:16:"input-text-color";s:4:"#c000";s:22:"input-background-color";s:4:"#ceee";s:16:"focus-text-color";s:4:"#c000";s:22:"focus-background-color";s:4:"#cfff";s:17:"button-text-color";s:4:"#cfff";s:23:"button-background-color";s:7:"#c406e8e";s:17:"active-text-color";s:4:"#cfff";s:23:"active-background-color";s:7:"#c393A44";s:16:"badge-text-color";s:4:"#cfff";s:22:"badge-background-color";s:18:"rgba(0, 0, 0, 0.5)";s:19:"badge-border-radius";s:3:"50%";s:11:"table-strip";s:18:"rgba(0, 0, 0, 0.2)";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Branco";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"White";}}}s:5:"local";a:24:{s:19:"document-text-color";s:4:"#c000";s:25:"document-background-color";s:4:"#cfff";s:21:"document-border-color";s:4:"#c444";s:21:"document-header-color";s:4:"#c444";s:19:"document-mark-color";s:4:"#c888";s:22:"panel-background-color";s:4:"#cddd";s:20:"spotlight-text-color";s:4:"#cfff";s:26:"spotlight-background-color";s:4:"#c444";s:22:"spotlight-border-color";s:4:"#cddd";s:22:"spotlight-header-color";s:4:"#cfff";s:20:"spotlight-mark-color";s:4:"#cccc";s:21:"card-background-color";s:4:"#cccc";s:26:"formulary-background-color";s:4:"#cbbb";s:16:"input-text-color";s:4:"#c000";s:22:"input-background-color";s:4:"#ceee";s:16:"focus-text-color";s:4:"#c000";s:22:"focus-background-color";s:4:"#cfff";s:17:"button-text-color";s:4:"#cfff";s:23:"button-background-color";s:7:"#c406e8e";s:17:"active-text-color";s:4:"#cfff";s:23:"active-background-color";s:7:"#c393A44";s:16:"badge-text-color";s:4:"#cfff";s:22:"badge-background-color";s:18:"rgba(0, 0, 0, 0.5)";s:11:"table-strip";s:18:"rgba(0, 0, 0, 0.2)";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:5:"Vazio";i:2;i:1;}s:2:"en";a:1:{i:1;s:5:"Empty";}}}s:4:"html";s:0:"";}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:13:"ecolabore.css";i:2;i:1;}s:2:"en";a:1:{i:1;s:13:"ecolabore.css";}}}s:4:"html";s:48611:"#r#n/* system defaults */#r#n* { box-sizing:border-box; }#r#nhtml { -webkit-text-size-adjust:100%; -ms-text-size-adjust:100%; }#r#nbody { font-size:100%; margin:0; padding:0; min-height:100%; width:100%; }#r#n.clearfix { position:relative; display:block; width:100%; }#r#n.clearfix:before, .clearfix:after { content:""; display:table; }#r#n.clearfix:after { clear:both; }#r#n.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); border:0; }#r#nh1, h2, h3, h4, h5, h6, hr { clear:both; }#r#ndiv, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, p, blockquote, th, td { margin:0; padding:0; }#r#n[]data-type="paragraph"]:after { display:inline-block; height:1em; width:1em; content:" "; }#r#nspan[]contenteditable] { width:auto; }#r#nbody, h1, h2, h3, h4, h5, h6 { counter-reset:list-numeradic-main; }#r#n.list-numeradic-main { list-style-type:none; list-style:none; padding:0; }#r#n.list-numeradic-main > li { counter-increment:list-numeradic-main; padding-left:2em; position:relative; }#r#n.list-numeradic-main > li:before { content:counter(list-numeradic-main) ". "; position:absolute; left:-2em; }#r#n.list-alphabetic { list-style-type:lower-latin; }#r#nul { list-style-type:disc; }#r#nbutton + button, input + button, input + input { margin-left:.5em; }#r#n.center { display:inline-block; width:100%; text-align:center; } #r#n.center > * { display:inline-block; }#r#n.icon { display:inline-block; width:1em; height:1em; fill:currentColor; }#r#n.big-icon { display:inline-block; width:2em; height:2em; fill:currentColor; }#r#n.up { display:inline-block; position:relative; height:1em; }#r#n.up > span { position:absolute; top:-1em; }#r#nhr { max-width:75rem; height:0; margin:1.25rem auto; border-top:0; border-right:0; border-bottom:1px solid; border-left:0; }#r#n#r#n#r#nul, ol, dl { margin-bottom:1rem; list-style-position:outside; line-height:1.6; }#r#nli { font-size:inherit; }#r#nul { margin-left:1.25rem; list-style-type:disc; }#r#nol { margin-left:1.25rem; }#r#nul ul, ol ul, ul ol, ol ol { margin-left:1.25rem; margin-bottom:0; }#r#nul.no-bullet, ol.no-bullet { margin-left:0; list-style:none; }#r#ndl { margin-bottom:1rem; }#r#ndl dt { margin-bottom:0.3rem; font-weight:bold; }#r#nfigure { margin:0; }#r#n#r#n/* Fonts */#r#n[paste:font-face]#r#nbody { font-family:[font_stack $text-font-name]; font-size:[$text-font-size]; }#r#np, li { margin-bottom:[$text-margin-botton]; line-height:[$text-line-height]; text-align:justify; text-rendering:optimizeLegibility; }#r#na, .a { font-family:[font_stack $link-font-name]; font-weight:[$link-font-weight]; text-decoration:none; line-height:inherit; cursor:pointer; }#r#na img { border:0; }#r#nlabel, .label { font-family:[font_stack $label-font-name]; font-size:[$label-font-size]; font-weight:[$label-font-weight]; line-height:[$label-line-height]; }#r#n.legend { font-family:[font_stack $legend-font-name]; font-size:[$legend-font-size]; font-weight:[$legend-font-weight]; line-height:[$legend-line-height]; }#r#nblockquote { font-family:[font_stack $blockquote-font-name]; font-size:[$blockquote-font-size]; margin:0 0 1rem; padding:0.5625rem 1.25rem 0 1.1875rem; border-left:1px solid; }#r#nblockquote, blockquote p { line-height:[$blockquote-line-height]; }#r#ncite { display:block; font-size:0.8125rem; }#r#ncite:before { content:" "; }#r#nabbr, abbr[title] { border-bottom:1px dotted #c0a0a0a; cursor:help; text-decoration:none; }#r#n.footnote { font-family:[font_stack $footnote-font-name]; font-size:[$footnote-font-size]; line-height:[$footnote-line-height]; }#r#ninput, .input { font-family:[font_stack $input-font-name]; font-size:[$input-font-size]; font-weight:[$input-font-weight]; line-height:[$input-line-height]; }#r#npre, code, kbd { font-family:[font_stack $monospace-font-name]; font-size:[$monospace-font-size]; font-weight:[$monospace-font-weight]; line-height:[$monospace-line-height]; }#r#ncode { padding:0.125rem 0.3125rem 0.0625rem; border:1px solid; }#r#nkbd { margin:0; padding:0.125rem 0.25rem 0; }#r#n#r#nh1, h2, h3, h4, h5, h6 { font-family:[font_stack $header-font-name]; font-weight:[$header-font-weight]; line-height:[$header-line-height]; margin-top:0; margin-bottom:[$header-margin-bottom]; text-shadow:[$header-text-shadow]; text-rendering:optimizeLegibility; }#r#n.caption { font-family:[font_stack $caption-font-name]; font-size:[$caption-font-size]; font-weight:[$caption-font-weight]; line-height:[$caption-line-height]; text-shadow:[$caption-text-shadow]; }#r#nbutton, []type="submit"], .button { font-family:[font_stack $button-font-name]; font-size:[$button-font-size]; font-weight:[$button-font-weight]; line-height:[$button-line-height]; }#r#n.bar { font-family:[font_stack $bar-font-name]; font-size:[$bar-font-size]; font-weight:[$bar-font-weight]; line-height:[$bar-line-height]; text-shadow:[$bar-text-shadow]; }#r#n#r#nem, i { font-style:italic; line-height:inherit; }#r#nstrong, b { font-weight:bold; line-height:inherit; }#r#nsmall { font-size:80%; line-height:inherit; }#r#nins { text-decoration:none; font-weight:bold; }#r#ndel { text-decoration:line-through; }#r#nu { text-decoration:underline; }#r#n#r#nh1 { font-size:[$h1-font-size]; }#r#nh2 { font-size:[$h2-font-size]; }#r#nh3 { font-size:[$h3-font-size]; }#r#nh4 { font-size:[$h4-font-size]; }#r#nh5 { font-size:[$h5-font-size]; }#r#nh6 { font-size:[$h6-font-size]; }#r#n.badge { font-size:[$badge-font-size]; }#r#n@media print, screen and (min-width:40em) {#r#nh1 { font-size:3rem; }#r#nh2 { font-size:2.5rem; }#r#nh3 { font-size:1.9375rem; }#r#nh4 { font-size:1.5625rem; }#r#nh5 { font-size:1.25rem; }#r#nh6 { font-size:1rem; }#r#n }#r#n#r#n/* Tables */#r#ntable, th, td { color:inherit; font-size:inherit; border-color:inherit; background-color:transparent; }#r#n.table-transparent, .table-bordered, .table-striped { width:100%; }#r#n.table-transparent td, .table-bordered td, .table-striped td, .padded { padding:[$padding-medium]; }#r#n.table-bordered td { border-width:1px; border-style:solid; }#r#n#r#n/* Scheme */#r#nbody { color:[$document-text-color]; background-color:[$document-background-color]; }#r#nhr, table { border-color:[$document-border-color]; }#r#nh1, h2, h3, h4, h5, h6 { color:[$document-header-color]; text-shadow:[$header-text-shadow]; }#r#nmark { color:[$document-mark-color]; }#r#na, a:visited, .a { color:[$document-link-color]; }#r#na:hover, a:focus, a:active, .active { color:[$document-active-color]; }#r#n.caption { color:[$document-caption-color]; text-shadow:[$caption-text-shadow]; }#r#n.img-smoke:before { box-shadow:inset 0 0 [$smoke-width] [$smoke-width] [$document-background-color], 0 0 0 3px [$document-background-color]; }#r#nbutton, []type="submit"], .button { display:inline-block; text-align:center; color:[$button-text-color]; text-shadow:[$button-text-shadow]; background-color:[$button-background-color]; border-radius:[$button-border-radius]; padding-left:[$button-padding]; padding-right:[$button-padding]; box-shadow:[$button-box-shadow]; }#r#nbutton:hover, button:focus, button:active, []type="submit"]:hover, []type="submit"]:focus, []type="submit"]:active, .button:hover, .button:focus, .button:active, .button.active { color:[$active-text-color]; text-shadow:[$active-text-shadow]; background-color:[$active-background-color]; box-shadow:[$active-box-shadow]; }#r#n#r#n.panel { background-color:[$panel-background-color]; border-radius:[$panel-border-radius]; padding:[$panel-padding]; box-shadow:[$panel-box-shadow]; }#r#n.panel hr, .panel table, .panel td { border-color:[$panel-border-color]; }#r#n.panel h1, .panel h2, .panel h3, .panel h4, .panel h5, .panel h6 { color:[$panel-header-color]; }#r#n.panel mark { color:[$panel-mark-color]; }#r#n.panel a, .panel a:visited, .panel .a { color:[$panel-link-color]; }#r#n.panel a:hover, .panel a:focus, .panel a:active, .panel .active { color:[$panel-active-color]; }#r#n.panel .caption { color:[$panel-caption-color]; }#r#n.panel .img-smoke:before { box-shadow:inset 0 0 [$smoke-width] [$smoke-width] [$panel-background-color], 0 0 0 3px [$panel-background-color]; }#r#n.panel button, .panel []type="submit"], .panel .button { color:[$panel-button-text-color]; background-color:[$panel-button-background-color]; }#r#n.panel button:hover, .panel button:focus, .panel button:active, .panel []type="submit"]:hover, .panel []type="submit"]:focus, .panel []type="submit"]:active, .panel .button:hover, .panel .button:focus, .panel .button:active, .panel .button.active { color:[$panel-active-text-color]; background-color:[$panel-active-background-color]; }#r#n#r#n.spotlight { color:[$spotlight-text-color]; background-color:[$spotlight-background-color]; border-color:[$spotlight-border-color]; border-radius:[$spotlight-border-radius]; padding:[$spotlight-padding]; box-shadow:[$spotlight-box-shadow]; }#r#n.spotlight hr, .spotlight table, .spotlight td { border-color:[$spotlight-border-color]; }#r#n.spotlight h1, .spotlight h2, .spotlight h3, .spotlight h4, .spotlight h5, .spotlight h6 { color:[$spotlight-header-color]; }#r#n.spotlight mark { color:[$spotlight-mark-color]; }#r#n.spotlight a, .spotlight a:visited, .spotlight .a { color:[$spotlight-link-color]; }#r#n.spotlight a:hover, .spotlight a:focus, .spotlight a:active, .spotlight .active { color:[$spotlight-active-color]; }#r#n.spotlight .caption { color:[$spotlight-caption-color]; }#r#n.spotlight .img-smoke:before { box-shadow:inset 0 0 [$smoke-width] [$smoke-width] [$spotlight-background-color], 0 0 0 3px [$spotlight-background-color]; }#r#n.spotlight button, .spotlight []type="submit"], .spotlight .button { color:[$spotlight-button-text-color]; background-color:[$spotlight-button-background-color]; }#r#n.spotlight button:hover, .spotlight button:focus, .spotlight button:active, .spotlight []type="submit"]:hover, .spotlight []type="submit"]:focus, .spotlight []type="submit"]:active, .spotlight .button:hover, .spotlight .button:focus, .spotlight .button:active, .spotlight .button.active { color:[$spotlight-active-text-color]; background-color:[$spotlight-active-background-color]; }#r#n#r#n.nav { color:[$nav-text-color]; background-color:[$nav-background-color]; border-color:[$nav-border-color]; border-radius:[$nav-border-radius]; padding:[$nav-padding]; box-shadow:[$nav-box-shadow]; }#r#n.nav hr, .nav table, .nav td { border-color:[$nav-border-color]; }#r#n.nav h1, .nav h2, .nav h3, .nav h4, .nav h5, .nav h6 { color:[$nav-header-color]; }#r#n.nav mark { color:[$nav-mark-color]; }#r#n.nav a, .nav a:visited, .nav .a { color:[$nav-link-color]; }#r#n.nav a:hover, .nav a:focus, .nav a:active, .nav .active { color:[$nav-active-color]; }#r#n.nav .caption { color:[$nav-caption-color]; }#r#n.nav .img-smoke:before { box-shadow:inset 0 0 [$smoke-width] [$smoke-width] [$nav-background-color], 0 0 0 3px [$nav-background-color]; }#r#n.nav button, .nav []type="submit"], .nav .button { color:[$nav-button-text-color]; background-color:[$nav-button-background-color]; }#r#n.nav button:hover, .nav button:focus, .nav button:active, .nav []type="submit"]:hover, .nav []type="submit"]:focus, .nav []type="submit"]:active, .nav .button:hover, .nav .button:focus, .nav .button:active, .nav .button.active { color:[$nav-active-text-color]; background-color:[$nav-active-background-color]; }#r#n#r#n.formulary { color:[$formulary-text-color]; background-color:[$formulary-background-color]; border-color:[$formulary-border-color]; border-radius:[$formulary-border-radius]; padding:[$formulary-padding]; box-shadow:[$formulary-box-shadow]; }#r#n.formulary hr, .formulary table, .formulary td { border-color:[$formulary-border-color]; }#r#n.formulary h1, .formulary h2, .formulary h3, .formulary h4, .formulary h5, .formulary h6 { color:[$formulary-header-color]; }#r#n.formulary mark { color:[$formulary-mark-color]; }#r#n.formulary a, .formulary a:visited, .formulary .a { color:[$formulary-link-color]; }#r#n.formulary a:hover, .formulary a:focus, .formulary a:active, .formulary .active { color:[$formulary-active-color]; }#r#n.formulary .caption { color:[$formulary-caption-color]; }#r#n.formulary .img-smoke:before { box-shadow:inset 0 0 [$smoke-width] [$smoke-width] [$formulary-background-color], 0 0 0 3px [$formulary-background-color]; }#r#n.formulary button, .formulary []type="submit"], .formulary .button { color:[$formulary-button-text-color]; background-color:[$formulary-button-background-color]; }#r#n.formulary button:hover, .formulary button:focus, .formulary button:active, .formulary []type="submit"]:hover, .formulary []type="submit"]:focus, .formulary []type="submit"]:active, .formulary .button:hover, .formulary .button:focus, .formulary .button:active, .formulary .button.active { color:[$formulary-active-text-color]; background-color:[$formulary-active-background-color]; }#r#n#r#n.system { color:[$system-text-color]; background-color:[$system-background-color]; border-color:[$system-border-color]; border-radius:[$system-border-radius]; padding:[$system-padding]; box-shadow:[$system-box-shadow]; }#r#nbody.system { border-radius:0; padding:0; box-shadow:none; }#r#n.system-bar { border-radius:0; padding:0; box-shadow:[$system-bar-shadow]; }#r#nbody.system .system-bar { box-shadow:none; }#r#n.system hr, .system table, .system td { border-color:[$system-border-color]; }#r#n.system h1, .system h2, .system h3, .system h4, .system h5, .system h6 { color:[$system-header-color]; text-shadow:[$system-header-shadow]; }#r#n.system mark { color:[$system-mark-color]; }#r#n.system a, .system a:visited, .system .a { color:[$system-link-color]; }#r#n.system a:hover, .system a:focus, .system a:active, .system .active { color:[$system-active-color]; }#r#n.system .caption { color:[$system-caption-color]; text-shadow:[$system-caption-shadow]; }#r#n.system .img-smoke:before { box-shadow:inset 0 0 [$smoke-width] [$smoke-width] [$system-background-color], 0 0 0 3px [$system-background-color]; }#r#n.system button, .system []type="submit"], .system .button { color:[$system-button-text-color]; background-color:[$system-button-background-color]; }#r#n.system button:hover, .system button:focus, .system button:active, .system []type="submit"]:hover, .system []type="submit"]:focus, .system []type="submit"]:active, .system .button:hover, .system .button:focus, .system .button:active, .system .button.active { color:[$system-active-text-color]; background-color:[$system-active-background-color]; }#r#n#r#n.card { color:[$card-text-color]; background-color:[$card-background-color]; border-color:[$card-border-color]; border-radius:[$card-border-radius]; padding:[$card-padding]; box-shadow:[$card-box-shadow]; }#r#n.card hr, .card table, .card td { border-color:[$card-border-color]; }#r#n.card h1, .card h2, .card h3, .card h4, .card h5, .card h6 { color:[$card-header-color]; }#r#n.card mark { color:[$card-mark-color]; }#r#n.card a, .card a:visited, .card .a { color:[$card-link-color]; }#r#n.card a:hover, .card a:focus, .card a:active, .card .active { color:[$card-active-color]; }#r#n.card .caption { color:[$card-caption-color]; }#r#n.card .img-smoke:before { box-shadow:inset 0 0 [$smoke-width] [$smoke-width] [$card-background-color], 0 0 0 3px [$card-background-color]; }#r#n.card button, .card []type="submit"], .card .button { color:[$card-button-text-color]; background-color:[$card-button-background-color]; }#r#n.card button:hover, .card button:focus, .card button:active, .card []type="submit"]:hover, .card []type="submit"]:focus, .card []type="submit"]:active, .card .button:hover, .card .button:focus, .card .button:active, .card .button.active { color:[$card-active-text-color]; background-color:[$card-active-background-color]; }#r#n#r#ninput, .input { color:[$input-text-color]; background-color:[$input-background-color]; border-radius:[$input-border-radius]; box-shadow:[$input-box-shadow]; }#r#ninput[]type="radio"] { border-radius:50%; }#r#ninput:focus, .input:focus { color:[$focus-text-color]; background-color:[$focus-background-color]; box-shadow:[$focus-box-shadow]; }#r#n#r#n.badge { color:[$badge-text-color]; background-color:[$badge-background-color]; border-radius:[$badge-border-radius]; }#r#n.table-striped tr:nth-child(even) { background-color:[$table-strip]; }#r#n#r#n/* Positioning */#r#n.mod { padding-top:[$margin-top]; padding-right:[$margin-right]; padding-bottom:[$margin-bottom]; padding-left:[$margin-left]; }#r#n.mod .position-left, .mod .float-left { padding-left:0; }#r#n.mod .position-center { padding-left:0; padding-right:0; }#r#n.mod .position-right, .mod .position-float-right { padding-right:0; }#r#n#r#n.position-inline { display:inline-block; position:relative; vertical-align:top; }#r#n.position-left { display:block; position:relative; margin-left:0; margin-right:auto; }#r#n.position-center { display:block; position:relative; margin-left:auto; margin-right:auto; }#r#n.position-right { display:block; position:relative; margin-left:auto; margin-right:0; }#r#n.position-float-left { display:block; position:relative; float:left; }#r#n.position-float-right { display:block; position:relative; float:right; }#r#n#r#n.wd-sm-auto { width:auto; }#r#n#r#n.wd-sm-1 { width:8.1%; }#r#n.wd-sm-2 { width:16.4%; }#r#n.wd-sm-3 { width:24.7%; }#r#n.wd-sm-4 { width:33.1%; }#r#n.wd-sm-5 { width:41.4%; }#r#n.wd-sm-6 { width:48.7%; }#r#n.wd-sm-7 { width:58.1%; }#r#n.wd-sm-8 { width:66.4%; }#r#n.wd-sm-9 { width:74.7%; }#r#n.wd-sm-10 { width:83.1%; }#r#n.wd-sm-11 { width:91.4%; }#r#n.wd-sm-12 { width:100%; }#r#n#r#n.position-float-left.wd-sm-1, .position-float-right.wd-sm-1 { width:8.1vw; }#r#n.position-float-left.wd-sm-2, .position-float-right.wd-sm-2 { width:16.4vw; }#r#n.position-float-left.wd-sm-3, .position-float-right.wd-sm-3 { width:24.7vw; }#r#n.position-float-left.wd-sm-4, .position-float-right.wd-sm-4 { width:33.1vw; }#r#n.position-float-left.wd-sm-5, .position-float-right.wd-sm-5 { width:41.4vw; }#r#n.position-float-left.wd-sm-6, .position-float-right.wd-sm-6 { width:48.7vw; }#r#n.position-float-left.wd-sm-7, .position-float-right.wd-sm-7 { width:58.1vw; }#r#n.position-float-left.wd-sm-8, .position-float-right.wd-sm-8 { width:66.4vw; }#r#n.position-float-left.wd-sm-9, .position-float-right.wd-sm-9 { width:74.7vw; }#r#n#r#n.position-float-left.wd-sm-10, .position-float-left.wd-sm-11, .position-float-left.wd-sm-12 { float:none; margin-left:0; margin-right:auto; } #r#n.position-float-right.wd-sm-10, .position-float-right.wd-sm-11, .position-float-right.wd-sm-12 { float:none; margin-left:auto; margin-right:0; } #r#n#r#n@media (min-width:[$media-md-min]) {#r#n.wd-md-1 { width:8.1%; }#r#n.wd-md-2 { width:16.4%; }#r#n.wd-md-3 { width:24.7%; }#r#n.wd-md-4 { width:33.1%; }#r#n.wd-md-5 { width:41.4%; }#r#n.wd-md-6 { width:48.7%; }#r#n.wd-md-7 { width:58.1%; }#r#n.wd-md-8 { width:66.4%; }#r#n.wd-md-9 { width:74.7%; }#r#n.wd-md-10 { width:83.1%; }#r#n.wd-md-11 { width:91.4%; }#r#n.wd-md-12 { width:100%; }#r#n#r#n.position-float-left.wd-md-1, .position-float-right.wd-md-1 { width:8.1vw; }#r#n.position-float-left.wd-md-2, .position-float-right.wd-md-2 { width:16.4vw; }#r#n.position-float-left.wd-md-3, .position-float-right.wd-md-3 { width:24.7vw; }#r#n.position-float-left.wd-md-4, .position-float-right.wd-md-4 { width:33.1vw; }#r#n.position-float-left.wd-md-5, .position-float-right.wd-md-5 { width:41.4vw; }#r#n.position-float-left.wd-md-6, .position-float-right.wd-md-6 { width:48.7vw; }#r#n.position-float-left.wd-md-7, .position-float-right.wd-md-7 { width:58.1vw; }#r#n.position-float-left.wd-md-8, .position-float-right.wd-md-8 { width:66.4vw; }#r#n.position-float-left.wd-md-9, .position-float-right.wd-md-9 { width:74.7vw; }#r#n#r#n.position-float-left.wd-md-10, .position-float-left.wd-md-11, .position-float-left.wd-md-12 { float:none; margin-left:0; margin-right:auto; } #r#n.position-float-right.wd-md-10, .position-float-right.wd-md-11, .position-float-right.wd-md-12 { float:none; margin-left:auto; margin-right:0; } #r#n}#r#n#r#n@media (min-width:[$media-lg-min]) {#r#n.wd-lg-1 { width:8.1%; }#r#n.wd-lg-2 { width:16.4%; }#r#n.wd-lg-3 { width:24.7%; }#r#n.wd-lg-4 { width:33.1%; }#r#n.wd-lg-5 { width:41.4%; }#r#n.wd-lg-6 { width:48.7%; }#r#n.wd-lg-7 { width:58.1%; }#r#n.wd-lg-8 { width:66.4%; }#r#n.wd-lg-9 { width:74.7%; }#r#n.wd-lg-10 { width:83.1%; }#r#n.wd-lg-11 { width:91.4%; }#r#n.wd-lg-12 { width:100%; }#r#n#r#n.position-float-left.wd-lg-1, .position-float-right.wd-lg-1 { width:8.1vw; }#r#n.position-float-left.wd-lg-2, .position-float-right.wd-lg-2 { width:16.4vw; }#r#n.position-float-left.wd-lg-3, .position-float-right.wd-lg-3 { width:24.7vw; }#r#n.position-float-left.wd-lg-4, .position-float-right.wd-lg-4 { width:33.1vw; }#r#n.position-float-left.wd-lg-5, .position-float-right.wd-lg-5 { width:41.4vw; }#r#n.position-float-left.wd-lg-6, .position-float-right.wd-lg-6 { width:48.7vw; }#r#n.position-float-left.wd-lg-7, .position-float-right.wd-lg-7 { width:58.1vw; }#r#n.position-float-left.wd-lg-8, .position-float-right.wd-lg-8 { width:66.4vw; }#r#n.position-float-left.wd-lg-9, .position-float-right.wd-lg-9 { width:74.7vw; }#r#n#r#n.position-float-left.wd-lg-10, .position-float-left.wd-lg-11, .position-float-left.wd-lg-12 { float:none; margin-left:0; margin-right:auto; } #r#n.position-float-right.wd-lg-10, .position-float-right.wd-lg-11, .position-float-right.wd-lg-12 { float:none; margin-left:auto; margin-right:0; } #r#n}#r#n#r#n@media (min-width:[$media-xl-min]) {#r#n.wd-xl-1 { width:8.1%; }#r#n.wd-xl-2 { width:16.4%; }#r#n.wd-xl-3 { width:24.7%; }#r#n.wd-xl-4 { width:33.1%; }#r#n.wd-xl-5 { width:41.4%; }#r#n.wd-xl-6 { width:48.7%; }#r#n.wd-xl-7 { width:58.1%; }#r#n.wd-xl-8 { width:66.4%; }#r#n.wd-xl-9 { width:74.7%; }#r#n.wd-xl-10 { width:83.1%; }#r#n.wd-xl-11 { width:91.4%; }#r#n.wd-xl-12 { width:100%; }#r#n#r#n.position-float-left.wd-xl-1, .position-float-right.wd-xl-1 { width:8.1vw; }#r#n.position-float-left.wd-xl-2, .position-float-right.wd-xl-2 { width:16.4vw; }#r#n.position-float-left.wd-xl-3, .position-float-right.wd-xl-3 { width:24.7vw; }#r#n.position-float-left.wd-xl-4, .position-float-right.wd-xl-4 { width:33.1vw; }#r#n.position-float-left.wd-xl-5, .position-float-right.wd-xl-5 { width:41.4vw; }#r#n.position-float-left.wd-xl-6, .position-float-right.wd-xl-6 { width:48.7vw; }#r#n.position-float-left.wd-xl-7, .position-float-right.wd-xl-7 { width:58.1vw; }#r#n.position-float-left.wd-xl-8, .position-float-right.wd-xl-8 { width:66.4vw; }#r#n.position-float-left.wd-xl-9, .position-float-right.wd-xl-9 { width:74.7vw; }#r#n#r#n.position-float-left.wd-xl-10, .position-float-left.wd-xl-11, .position-float-left.wd-xl-12 { float:none; margin-left:0; margin-right:auto; } #r#n.position-float-right.wd-xl-10, .position-float-right.wd-xl-11, .position-float-right.wd-xl-12 { float:none; margin-left:auto; margin-right:0; } #r#n#r#n.wd-xl-hidden { display:none; }#r#n}#r#n@media (max-width:[$media-sm-max]) {#r#n.wd-sm-hidden { display:none; }#r#n}#r#n@media (min-width:[$media-md-min]) and (max-width:[$media-md-max]) {#r#n.wd-md-hidden { display:none; }#r#n}#r#n@media (min-width:[$media-lg-min]) and (max-width:[$media-lg-max]) {#r#n.wd-lg-hidden { display:none; }#r#n}#r#n#r#n.box-display-block { display:block; }#r#n.box-display-inline { display:inline-block; vertical-align:top; }#r#n.box-display-inline > div { display:inline-block; }#r#n.caption { display:inline-block; vertical-align:top; }#r#n.box-shadow-off { box-shadow:none; }#r#n.box-shadow-on { box-shadow:[$box-shadow]; }#r#n.box-shadow-create { border:1px solid #c000; background-color:#cfff; color:#c000; }#r#n#r#n.list-layout-inline > div { display:inline-block; vertical-align:top; text-align:left; }#r#n.list-layout-inline > div > div { display:inline-block; }#r#n.list-layout-inline.list-align-center { text-align:center; }#r#n.list-layout-inline.list-align-right { text-align:right; }#r#n#r#n.list-layout-flex { display:flex; flex-wrap:wrap; justify-content:flex-start; }#r#n.list-layout-flex.list-align-center { justify-content:center; }#r#n .list-layout-flex.list-align-right { justify-content:flex-end; }#r#n#r#n.list-layout-flex > div { flex:1; }#r#n#r#n.col-sm-1 > div { width:99.8%; }#r#n.col-sm-2 > div { width:49.8%; }#r#n.col-sm-3 > div { width:33.1%; }#r#n.col-sm-4 > div { width:24.7%; }#r#n.col-sm-5 > div { width:19.7%; }#r#n.col-sm-6 > div { width:16.4%; }#r#n#r#n@media (min-width:[$media-md-min]) {#r#n.col-md-1 > div { width:99.8%; }#r#n.col-md-2 > div { width:49.8%; }#r#n.col-md-3 > div { width:33.1%; }#r#n.col-md-4 > div { width:24.7%; }#r#n.col-md-5 > div { width:19.7%; }#r#n.col-md-6 > div { width:16.4%; }#r#n}#r#n#r#n@media (min-width:[$media-lg-min]) {#r#n.col-lg-1 > div { width:99.8%; }#r#n.col-lg-2 > div { width:49.8%; }#r#n.col-lg-3 > div { width:33.1%; }#r#n.col-lg-4 > div { width:24.7%; }#r#n.col-lg-5 > div { width:19.7%; }#r#n.col-lg-6 > div { width:16.4%; }#r#n}#r#n#r#n@media (min-width:[$media-xl-min]) {#r#n.col-xl-1 > div { width:99.8%; }#r#n.col-xl-2 > div { width:49.8%; }#r#n.col-xl-3 > div { width:33.1%; }#r#n.col-xl-4 > div { width:24.7%; }#r#n.col-xl-5 > div { width:19.7%; }#r#n.col-xl-6 > div { width:16.4%; }#r#n}#r#n#r#n.list-layout-columns { display:columns; }#r#n.list-layout-columns > div { width:100%; }#r#n#r#n.columns { display:columns; position:relative; width:100%; padding:0; }#r#n#r#n.columns, .list-layout-columns { column-count:1; }#r#n.columns.col-sm-2, .list-layout-columns.col-sm-2 { column-count:2; }#r#n.columns.col-sm-3, .list-layout-columns.col-sm-3 { column-count:3; }#r#n.columns.col-sm-4, .list-layout-columns.col-sm-4 { column-count:4; }#r#n.columns.col-sm-5, .list-layout-columns.col-sm-5 { column-count:5; }#r#n.columns.col-sm-6, .list-layout-columns.col-sm-6 { column-count:6; }#r#n@media (min-width:[$media-md-min]) {#r#n.columns.col-md-1, .list-layout-columns.col-md-1 { column-count:1; }#r#n.columns.col-md-2, .list-layout-columns.col-md-2 { column-count:2; }#r#n.columns.col-md-3, .list-layout-columns.col-md-3 { column-count:3; }#r#n.columns.col-md-4, .list-layout-columns.col-md-4 { column-count:4; }#r#n.columns.col-md-5, .list-layout-columns.col-md-5 { column-count:5; }#r#n.columns.col-md-6, .list-layout-columns.col-md-6 { column-count:6; }#r#n}#r#n@media (min-width:[$media-lg-min]) {#r#n.columns.col-lg-1, .list-layout-columns.col-lg-1 { column-count:1; }#r#n.columns.col-lg-2, .list-layout-columns.col-lg-2 { column-count:2; }#r#n.columns.col-lg-3, .list-layout-columns.col-lg-3 { column-count:3; }#r#n.columns.col-lg-4, .list-layout-columns.col-lg-4 { column-count:4; }#r#n.columns.col-lg-5, .list-layout-columns.col-lg-5 { column-count:5; }#r#n.columns.col-lg-6, .list-layout-columns.col-lg-6 { column-count:6; }#r#n}#r#n@media (min-width:[$media-xl-min]) {#r#n.columns.col-xl-1, .list-layout-columns.col-xl-1 { column-count:1; }#r#n.columns.col-xl-2, .list-layout-columns.col-xl-2 { column-count:2; }#r#n.columns.col-xl-3, .list-layout-columns.col-xl-3 { column-count:3; }#r#n.columns.col-xl-4, .list-layout-columns.col-xl-4 { column-count:4; }#r#n.columns.col-xl-5, .list-layout-columns.col-xl-5 { column-count:5; }#r#n.columns.col-xl-6, .list-layout-columns.col-xl-6 { column-count:6; }#r#n}#r#n#r#n.list-layout-grid { display:grid; justify-content:start; }#r#n.list-layout-grid > div { width:auto; }#r#n.list-layout-grid.list-align-center { justify-content:center; }#r#n.list-layout-grid.list-align-right { justify-content:end; }#r#n#r#n.list-layout-grid { grid-template-columns:auto; } #r#n.list-layout-grid.col-sm-2 { grid-template-columns:auto auto; } #r#n.list-layout-grid.col-sm-3 { grid-template-columns:auto auto auto; } #r#n.list-layout-grid.col-sm-4 { grid-template-columns:auto auto auto auto; } #r#n.list-layout-grid.col-sm-5 { grid-template-columns:auto auto auto auto auto; } #r#n.list-layout-grid.col-sm-6 { grid-template-columns:auto auto auto auto auto auto; } #r#n#r#n@media (min-width:[$media-md-min]) {#r#n.list-layout-grid.col-md-1 { grid-template-columns:auto; } #r#n.list-layout-grid.col-md-2 { grid-template-columns:auto auto; } #r#n.list-layout-grid.col-md-3 { grid-template-columns:auto auto auto; } #r#n.list-layout-grid.col-md-4 { grid-template-columns:auto auto auto auto; } #r#n.list-layout-grid.col-md-5 { grid-template-columns:auto auto auto auto auto; } #r#n.list-layout-grid.col-md-6 { grid-template-columns:auto auto auto auto auto auto; } #r#n}#r#n@media (min-width:[$media-md-min]) {#r#n.list-layout-grid.col-lg-1 { grid-template-columns:auto; } #r#n.list-layout-grid.col-lg-2 { grid-template-columns:auto auto; } #r#n.list-layout-grid.col-lg-3 { grid-template-columns:auto auto auto; } #r#n.list-layout-grid.col-lg-4 { grid-template-columns:auto auto auto auto; } #r#n.list-layout-grid.col-lg-5 { grid-template-columns:auto auto auto auto auto; } #r#n.list-layout-grid.col-lg-6 { grid-template-columns:auto auto auto auto auto auto; } #r#n}#r#n@media (min-width:[$media-xl-min]) {#r#n.list-layout-grid.col-xl-1 { grid-template-columns:auto; } #r#n.list-layout-grid.col-xl-2 { grid-template-columns:auto auto; } #r#n.list-layout-grid.col-xl-3 { grid-template-columns:auto auto auto; } #r#n.list-layout-grid.col-xl-4 { grid-template-columns:auto auto auto auto; } #r#n.list-layout-grid.col-xl-5 { grid-template-columns:auto auto auto auto auto; } #r#n.list-layout-grid.col-xl-6 { grid-template-columns:auto auto auto auto auto auto; } #r#n}#r#n#r#n.list-layout-inline > div, .list-layout-flex > div { padding-top:calc([$list-row-gap] / 2); padding-right:calc([$list-column-gap] / 2); padding-bottom:calc([$list-row-gap] / 2); padding-left:calc([$list-column-gap] / 2); }#r#n.list-layout-columns { column-gap:[$list-column-gap]; }#r#n.list-layout-columns > div { padding-top:calc([$list-row-gap] / 2); padding-bottom:calc([$list-row-gap] / 2); }#r#n.list-layout-grid { grid-row-gap:[$list-row-gap]; grid-column-gap:[$list-column-gap]; }#r#n#r#n.list-layout-inline.list-column-gap-000 > div, .list-layout-flex.list-column-gap-000 > div { padding-left:0; padding-right:0; }#r#n.list-layout-inline.list-column-gap-012 > div, .list-layout-flex.list-column-gap-012 > div { padding-left:0.0625rem; padding-right:0.0625rem; }#r#n.list-layout-inline.list-column-gap-025 > div, .list-layout-flex.list-column-gap-025 > div { padding-left:.125rem; padding-right:.125rem; }#r#n.list-layout-inline.list-column-gap-037 > div, .list-layout-flex.list-column-gap-037 > div { padding-left:.1875rem; padding-right:.1875rem; }#r#n.list-layout-inline.list-column-gap-050 > div, .list-layout-flex.list-column-gap-050 > div { padding-left:.25rem; padding-right:.25rem; }#r#n.list-layout-inline.list-column-gap-075 > div,.list-layout-flex .list-column-gap-075 > div { padding-left:.375rem; padding-right:.375rem; }#r#n.list-layout-inline.list-column-gap-100 > div, .list-layout-flex.list-column-gap-100 > div { padding-left:.5rem; padding-right:.5rem; }#r#n.list-layout-inline.list-column-gap-125 > div, .list-layout-flex.list-column-gap-125 > div { padding-left:.625rem; padding-right:.625rem; }#r#n.list-layout-inline.list-column-gap-150 > div, .list-layout-flex.list-column-gap-150 > div { padding-left:.75rem; padding-right:.75rem; }#r#n.list-layout-inline.list-column-gap-200 > div, .list-layout-flex.list-column-gap-200 > div { padding-left:1rem; padding-right:1rem; }#r#n#r#n.list-layout-inline.list-row-gap-000 > div, .list-layout-flex.list-row-gap-000 > div, .list-layout-columns.list-row-gap-000 > div { padding-top:0; padding-bottom:0; }#r#n.list-layout-inline.list-row-gap-012 > div, .list-layout-flex.list-row-gap-012 > div, .list-layout-columns.list-row-gap-012 > div { padding-top:.0625rem; padding-bottom:0.0625rem; }#r#n.list-layout-inline.list-row-gap-025 > div, .list-layout-flex.list-row-gap-025 > div, .list-layout-columns.list-row-gap-025 > div { padding-top:.125rem; padding-bottom:0.125rem; }#r#n.list-layout-inline.list-row-gap-037 > div, .list-layout-flex.list-row-gap-037 > div, .list-layout-columns.list-row-gap-037 > div { padding-top:.1875rem; padding-bottom:0.1875rem; }#r#n.list-layout-inline.list-row-gap-050 > div, .list-layout-flex.list-row-gap-050 > div, .list-layout-columns.list-row-gap-050 > div { padding-top:.25rem; padding-bottom:0.25rem; }#r#n.list-layout-inline.list-row-gap-075 > div, .list-layout-flex.list-row-gap-075 > div, .list-layout-columns.list-row-gap-075 > div, .list-layout-columns{ padding-top:0.375rem; padding-bottom:.375rem; }#r#n.list-layout-inline.list-row-gap-100 > div, .list-layout-flex.list-row-gap-100 > div, .list-layout-columns.list-row-gap-100 > div { padding-top:.5rem; padding-bottom:0.5rem; }#r#n.list-layout-inline.list-row-gap-125 > div, .list-layout-flex.list-row-gap-125 > div, .list-layout-columns.list-row-gap-125 > div { padding-top:.625rem; padding-bottom:0.625rem; }#r#n.list-layout-inline.list-row-gap-150 > div, .list-layout-flex.list-row-gap-150 > div, .list-layout-columns.list-row-gap-150 > div { padding-top:.75rem; padding-bottom:0.75rem; }#r#n.list-layout-inline.list-row-gap-200 > div, .list-layout-flex.list-row-gap-200 > div, .list-layout-columns.list-row-gap-200 > div { padding-top:1rem; padding-bottom:1rem; }#r#n#r#n.list-layout-columns.list-column-gap-000 { column-gap:0; }#r#n.list-layout-columns.list-column-gap-012 { column-gap:0.125rem; }#r#n.list-layout-columns.list-column-gap-025 { column-gap:0.25rem; }#r#n.list-layout-columns.list-column-gap-037 { column-gap:0.375rem; }#r#n.list-layout-columns.list-column-gap-050 { column-gap:0.5rem; }#r#n.list-layout-columns.list-column-gap-075 { column-gap:0.75rem; }#r#n.list-layout-columns.list-column-gap-100 { column-gap:1rem; }#r#n.list-layout-columns.list-column-gap-125 { column-gap:1.25rem; }#r#n.list-layout-columns.list-column-gap-150 { column-gap:1.5rem; }#r#n.list-layout-columns.list-column-gap-200 { column-gap:2rem; }#r#n#r#n.list-layout-grid.list-column-gap-000 { grid-column-gap:0; }#r#n.list-layout-grid.list-column-gap-012 { grid-column-gap:0.125rem; }#r#n.list-layout-grid.list-column-gap-025 { grid-column-gap:0.25rem; }#r#n.list-layout-grid.list-column-gap-037 { grid-column-gap:0.375rem; }#r#n.list-layout-grid.list-column-gap-050 { grid-column-gap:0.5rem; }#r#n.list-layout-grid.list-column-gap-075 { grid-column-gap:0.75rem; }#r#n.list-layout-grid.list-column-gap-100 { grid-column-gap:1rem; }#r#n.list-layout-grid.list-column-gap-125 { grid-column-gap:1.25rem; }#r#n.list-layout-grid.list-column-gap-150 { grid-column-gap:1.5rem; }#r#n.list-layout-grid.list-column-gap-200 { grid-column-gap:2rem; }#r#n#r#n.list-layout-grid.list-row-gap-000 { grid-row-gap:0; }#r#n.list-layout-grid.list-row-gap-012 { grid-row-gap:0.125rem; }#r#n.list-layout-grid.list-row-gap-025 { grid-row-gap:0.25rem; }#r#n.list-layout-grid.list-row-gap-037 { grid-row-gap:0.375rem; }#r#n.list-layout-grid.list-row-gap-050 { grid-row-gap:0.5rem; }#r#n.list-layout-grid.list-row-gap-075 { grid-row-gap:0.75rem; }#r#n.list-layout-grid.list-row-gap-100 { grid-row-gap:1rem; }#r#n.list-layout-grid.list-row-gap-125 { grid-row-gap:1.25rem; }#r#n.list-layout-grid.list-row-gap-150 { grid-row-gap:1.5rem; }#r#n.list-layout-grid.list-row-gap-200 { grid-row-gap:2rem; }#r#n#r#n/* Details */#r#n.details > div { display:inline-block; position:relative; text-align:left; }#r#n.details > div > * { display:inline-block; text-align:inherit; }#r#n.details > div > .button { width:100%; text-align:inherit; }#r#n#r#n.details-horizontal-align-center .detail { text-align:center; }#r#n.details-horizontal-align-right .detail { text-align:right; }#r#n.details.vertical-align-center > .details > div { top:50%; transform:translateY(-50%); }#r#n.details.vertical-align-bottom > .details > div { top:100%; transform:translateY(-100%); }#r#n#r#n.img-shape-auto, .img-shape-elipse, .img-shape-thumbnail, .img-shape-square, .img-shape-circle, .img-shape-video { display:block; position:relative; width:100%; z-index:1; }#r#n.img-shape-thumbnail:after, .img-shape-square:after, .img-shape-circle:after { content:""; display:block; padding-bottom:100%; }#r#n.img-shape-video { content:""; display:block; padding-bottom:57.5%; }#r#n.img-shape-auto > div, .img-shape-elipse > div { position:relative; width:100%; }#r#n.img-shape-thumbnail > div, .img-shape-square > div, .img-shape-circle > div, .img-shape-video > :first-child { position:absolute; width:100%; height:100%; overflow:hidden; }#r#n#r#n.img-shape-auto img, .img-shape-elipse img { width:100%; height:auto; }#r#n.img-shape-thumbnail img.img-orientation-portrait { width:auto; height:100%; position:relative; left:50%; transform:translateX(-50%); }#r#n.img-shape-thumbnail img.img-orientation-landscape { width:100%; height:auto; position:relative; top:50%; transform:translateY(-50%); }#r#n.img-shape-square img.img-orientation-portrait, .img-shape-circle img.img-orientation-portrait { width:100%; height:auto; position:relative; top:50%; transform:translateY(-50%); }#r#n.img-shape-square img.img-orientation-landscape, .img-shape-circle img.img-orientation-landscape { width:auto; height:100%; position:relative; left:50%; transform:translateX(-50%); }#r#n.img-shape-elipse > div, .img-shape-circle > div { border-radius:50%; overflow:hidden; }#r#n#r#n.img-smoke:before { position:absolute; width:100%; height:100%; content:""; z-index:2; border-radius:inherit; }#r#n#r#nhr.layer-separator { margin:0; width:100%; }#r#n.info { display:inline-block; }#r#n.info + .info { padding-left:.3rem; }#r#n#r#n/* Dropdown menu */#r#n.dropdown { display:flex; flex-direction:column; }#r#n#r#n/* format*/#r#n.format { margin-bottom:[$text-margin-botton]; }#r#n.format > p { line-height:inherit; margin-bottom:inherit; text-indent:inherit; }#r#n.format > :last-child { margin-bottom:0; }#r#n#r#n/* Layout */#r#n#clayout_system_bar { position:absolute; top:0; right:0; bottom:auto; left:0; height:[$system-bar-height]; line-height:[$system-bar-height]; z-index:2; box-shadow:[$system-bar-shadow]; padding-left:[$margin-left]; }#r#n#clayout_system_bar > * { display:inline-block; position:relative; line-height:1em; vertical-align:middle; margin-right:0.5rem; }#r#n#clayout_system_bar img { display:inline-block; height:2rem; width:auto; }#r#n#clayout_document { position:absolute; top:[$system-bar-height]; right:0; bottom:0; left:0; z-index:1; }#r#n#r#n#clayout_system_icons { position:absolute; top:0; right:0; bottom:auto; left:auto; height:[$system-bar-height]; line-height:[$system-bar-height]; padding-right:[$margin-right]; z-index:3; }#r#n#clayout_system_icons > * { display:inline-block; position:relative; line-height:1em; margin-left:0.5rem; vertical-align:middle; }#r#n#clayout_system_icons img { display:inline-block; height:2rem; width:auto; }#r#n#r#n#clayout_baloom { position:absolute; top:5rem; right:1rem; bottom:auto; left:1rem; text-align:right; z-index:4; }#r#n.baloom { display:inline-block; }#r#n#r#n/* Personalite */#r#n.personalite { position:absolute; top:.3rem; right:.3rem; z-index:1001; width:1rem; height:1rem; color:#cfff; background-color:rgba(0, 0, 0, 0.3); border:0.2rem solid #cfff; font-family:serif; font-weight:bold; }#r#n#r#n#r#n#r#n/* Formularies */#r#n.form-layout-grid { position:relative; width:100%; }#r#n.form-control { position:relative; display:block; width:100%; }#r#n#r#n.form-control-help { padding-right:3em; }#r#n.form-col-help { position:absolute; top:0.6rem; right:0; font-family:serif; font-weight:bold; }#r#n#r#n#r#n.form-col-input { width:100%; }#r#n.form-col-input-half { width:50%; }#r#n#r#n.form-col-reverse-input { display:inline-block; width:10%; }#r#n.form-col-reverse-label { display:inline-block; width:80%; }#r#n.form-col-full-label { display:inline-block; width:90%; }#r#n.form-col-full-input { display:inline-block; width:100%; }#r#n#r#n@media (min-width:[$media-md-min]) {#r#n.form-layout-grid .form-col-legend { display:inline-block; width:30%; }#r#n.form-layout-grid .form-col-input { display:inline-block; width:60%; }#r#n.form-layout-grid .form-col-input-half { display:inline-block; width:30%; }#r#n}#r#n#r#n.form-layout-box .form-col-legend { display:inline-block; width:40%; }#r#n.form-layout-box .form-col-input { display:inline-block; width:60%; }#r#n.form-layout-box .form-col-input-half { display:inline-block; width:60%; }#r#n#r#n.form-layout-inline { width:auto; }#r#n.form-layout-inline * { display:inline-block; width:auto; }#r#n#r#n/* start of Zurb formulary styles */#r#n[]type=#stext#s], []type=#spassword#s], []type=#sdate#s], []type=#sdatetime#s], []type=#sdatetime-local#s], []type=#smonth#s], []type=#sweek#s], []type=#semail#s], []type=#snumber#s], []type=#ssearch#s], []type=#stel#s], []type=#stime#s], []type=#surl#s], []type=#scolor#s], textarea { display:block; -webkit-box-sizing:border-box; box-sizing:border-box; width:100%; height:2.4375rem; margin:0 0 1rem; padding:0.5rem; border:1px solid #ccacaca; border-radius:0; -webkit-box-shadow:inset 0 1px 2px rgba(10, 10, 10, 0.1); box-shadow:inset 0 1px 2px rgba(10, 10, 10, 0.1); font-family:inherit; font-size:1rem; font-weight:normal; line-height:1.5; -webkit-transition:border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s; transition:border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s; transition:box-shadow 0.5s, border-color 0.25s ease-in-out; transition:box-shadow 0.5s, border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s; -webkit-appearance:none; -moz-appearance:none; appearance:none; color:[$input-text-color]; background-color:[$input-background-color]; }#r#n[]type=#stext#s]:focus, []type=#spassword#s]:focus, []type=#sdate#s]:focus, []type=#sdatetime#s]:focus, []type=#sdatetime-local#s]:focus, []type=#smonth#s]:focus, []type=#sweek#s]:focus, []type=#semail#s]:focus, []type=#snumber#s]:focus, []type=#ssearch#s]:focus, []type=#stel#s]:focus, []type=#stime#s]:focus, []type=#surl#s]:focus, []type=#scolor#s]:focus, textarea:focus { outline:none; border:1px solid #c8a8a8a; background-color:[$input-background-color]; -webkit-box-shadow:0 0 5px #ccacaca; box-shadow:0 0 5px #ccacaca; -webkit-transition:border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s; transition:border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s; transition:box-shadow 0.5s, border-color 0.25s ease-in-out; transition:box-shadow 0.5s, border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s; }#r#ntextarea { max-width:100%; }#r#ntextarea[]rows] { height:auto; }#r#ninput:disabled, input[]readonly], textarea:disabled, textarea[]readonly] { background-color:#ce6e6e6; cursor:not-allowed; }#r#n[]type=#ssubmit#s], []type=#sbutton#s] { -webkit-appearance:none; -moz-appearance:none; appearance:none; border-radius:0; }#r#ninput[]type=#ssearch#s] { -webkit-box-sizing:border-box; box-sizing:border-box; }#r#n::-webkit-input-placeholder { color:#ccacaca; }#r#n:-ms-input-placeholder { color:#ccacaca; }#r#n::-ms-input-placeholder { color:#ccacaca; }#r#n::placeholder { color:#ccacaca; }#r#n[]type=#sfile#s], []type=#scheckbox#s], []type=#sradio#s] { margin:0 0 1rem; }#r#n[]type=#scheckbox#s] + label, []type=#sradio#s] + label { display:inline-block; vertical-align:baseline; margin-left:0.5rem; margin-right:1rem; margin-bottom:0; }#r#n[]type=#scheckbox#s] + label[]for], []type=#sradio#s] + label[]for] { cursor:pointer; }#r#nlabel > []type=#scheckbox#s], label > []type=#sradio#s] { margin-right:0.5rem; }#r#n[]type=#sfile#s] { width:100%; }#r#nlabel { display:block; margin:0; font-size:0.875rem; font-weight:normal; line-height:1.8; }#r#nlabel.middle { margin:0 0 1rem; padding:0.5625rem 0; }#r#n.help-text { margin-top:-0.5rem; font-size:0.8125rem; font-style:italic; }#r#n.input-group { display:-webkit-box; display:-webkit-flex; display:-ms-flexbox; display:flex; width:100%; margin-bottom:1rem; -webkit-box-align:stretch; -webkit-align-items:stretch; -ms-flex-align:stretch; align-items:stretch; }#r#n.input-group >:first-child, .input-group >:first-child.input-group-button > * { border-radius:0 0 0 0; }#r#n.input-group >:last-child, .input-group >:last-child.input-group-button > * { border-radius:0 0 0 0; }#r#n.input-group-label, .input-group-field, .input-group-button, .input-group-button a, .input-group-button input, .input-group-button button, .input-group-button label { margin:0; white-space:nowrap; }#r#n.input-group-label { padding:0 1rem; border:1px solid #ccacaca; background:#ce6e6e6; color:#c0a0a0a; text-align:center; white-space:nowrap; display:-webkit-box; display:-webkit-flex; display:-ms-flexbox; display:flex; -webkit-box-flex:0; -webkit-flex:0 0 auto; -ms-flex:0 0 auto; flex:0 0 auto; -webkit-box-align:center; -webkit-align-items:center; -ms-flex-align:center; align-items:center; }#r#n.input-group-label:first-child { border-right:0; }#r#n.input-group-label:last-child { border-left:0; }#r#n.input-group-field { border-radius:0; -webkit-box-flex:1; -webkit-flex:1 1 0px; -ms-flex:1 1 0px; flex:1 1 0px; min-width:0; }#r#n.input-group-button { padding-top:0; padding-bottom:0; text-align:center; display:-webkit-box; display:-webkit-flex; display:-ms-flexbox; display:flex; -webkit-box-flex:0; -webkit-flex:0 0 auto; -ms-flex:0 0 auto; flex:0 0 auto; }#r#n.input-group-button a, .input-group-button input, .input-group-button button, .input-group-button label { -webkit-align-self:stretch; -ms-flex-item-align:stretch; align-self:stretch; height:auto; padding-top:0; padding-bottom:0; font-size:1rem; }#r#nfieldset { margin:0; padding:0; border:0; }#r#nlegend { max-width:100%; margin-bottom:0.5rem; }#r#n.fieldset { margin:1.125rem 0; padding:1.25rem; border:1px solid #ccacaca; }#r#n.fieldset legend { margin:0; margin-left:-0.1875rem; padding:0 0.1875rem; }#r#nselect { height:2.4375rem; margin:0 0 1rem; padding:0.5rem; -webkit-appearance:none; -moz-appearance:none; appearance:none; border:1px solid #ccacaca; border-radius:0; background-color:[$input-background-color]; font-family:inherit; font-size:1rem; font-weight:normal; line-height:1.5; color:[$input-text-color]; background-image:url("data:image/svg+xml; utf8,"); background-origin:content-box; background-position:right -1rem center; background-repeat:no-repeat; background-size:9px 6px; padding-right:1.5rem; -webkit-transition:border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s; transition:border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s; transition:box-shadow 0.5s, border-color 0.25s ease-in-out; transition:box-shadow 0.5s, border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s; }#r#n@media screen and (min-width:0#e0) {#r#nselect { background-image:url("data:image/png; base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAYAAACbU/80AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIpJREFUeNrEkckNgDAMBBfRkEt0ObRBBdsGXUDgmQfK4XhH2m8czQAAy27R3tsw4Qfe2x8uOO6oYLb6GlOor3GF+swURAOmUJ+RwtEJs9WvTGEYxBXqI1MQAZhCfUQKRzDMVj+TwrAIV6jvSUEkYAr1LSkcyTBb/V+KYfX7xAeusq3sLDtGH3kEGACPWIflNZfhRQAAAABJRU5ErkJggg=="); }#r#n }#r#nselect:focus { outline:none; border:1px solid #c8a8a8a; background-color:[$input-background-color]; -webkit-box-shadow:0 0 5px #ccacaca; box-shadow:0 0 5px #ccacaca; -webkit-transition:border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s; transition:border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s; transition:box-shadow 0.5s, border-color 0.25s ease-in-out; transition:box-shadow 0.5s, border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s; }#r#nselect:disabled { background-color:#ce6e6e6; cursor:not-allowed; }#r#nselect::-ms-expand { display:none; }#r#nselect[]multiple] { height:auto; background-image:none; }#r#n.is-invalid-input:not(:focus) { border-color:#ccc4b37; background-color:#cf9ecea; }#r#n.is-invalid-input:not(:focus)::-webkit-input-placeholder { color:#ccc4b37; }#r#n.is-invalid-input:not(:focus):-ms-input-placeholder { color:#ccc4b37; }#r#n.is-invalid-input:not(:focus)::-ms-input-placeholder { color:#ccc4b37; }#r#n.is-invalid-input:not(:focus)::placeholder { color:#ccc4b37; }#r#n.is-invalid-label { color:#ccc4b37; }#r#n.form-error { display:none; margin-top:-0.5rem; margin-bottom:1rem; font-size:0.75rem; font-weight:bold; color:#ccc4b37; }#r#n.form-error.is-visible { display:block; }#r#n/* end of Zurb formulary styles */#r#n#r#n/* start of Zurb tables */#r#ntable.zurb { border-collapse:collapse; width:100%; margin-bottom:1rem; border-radius:0; }#r#ntable.zurb thead, table.zurb tbody, table.zurb tfoot { border:1px solid #cf1f1f1; background-color:#cfefefe; }#r#ntable.zurb caption { padding:0.5rem 0.625rem 0.625rem; font-weight:bold; }#r#ntable.zurb thead { background:#cf8f8f8; color:#c0a0a0a; }#r#ntable.zurb tfoot { background:#cf1f1f1; color:#c0a0a0a; }#r#ntable.zurb thead tr, table.zurb tfoot tr { background:transparent; }#r#ntable.zurb thead th, table.zurb thead td, table.zurb tfoot th, table.zurb tfoot td { padding:0.5rem 0.625rem 0.625rem; font-weight:bold; text-align:left; }#r#ntable.zurb tbody th, table.zurb tbody td { padding:0.5rem 0.625rem 0.625rem; }#r#ntable.zurb tbody tr:nth-child(even) { border-bottom:0; background-color:#cf1f1f1; }#r#ntable.zurb.unstriped tbody { background-color:#cfefefe; }#r#ntable.zurb.unstriped tbody tr { border-bottom:0; border-bottom:1px solid #cf1f1f1; background-color:#cfefefe; }#r#n@media screen and (max-width:63.99875em) {#r#ntable.zurb.stack thead { display:none; }#r#ntable.zurb.stack tfoot { display:none; }#r#ntable.zurb.stack tr, table.stack th, table.stack td { display:block; }#r#ntable.zurb.stack td { border-top:0; }#r#n }#r#ntable.zurb.scroll { display:block; width:100%; overflow-x:auto; }#r#ntable.zurb.hover thead tr:hover { background-color:#cf3f3f3; }#r#ntable.zurb.hover tfoot tr:hover { background-color:#cececec; }#r#ntable.zurb.hover tbody tr:hover { background-color:#cf9f9f9; }#r#ntable.zurb.hover:not(.unstriped) tr:nth-of-type(even):hover { background-color:#cececec; }#r#n.zurb.table-scroll { overflow-x:auto; }#r#n/* end of Zurb tables */#r#n#r#n/* Ending definitions */#r#n[]hidden] { display:none !important; }#r#nform > label { display:none; }#r#n";}a:3:{s:4:"text";a:2:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:36:"Folha de estilo para verso impressa";i:2;i:1;}s:2:"en";a:1:{i:1;s:31:"Stylesheet for printable layout";}}s:7:"credits";a:1:{s:2:"pt";a:3:{i:1;s:52:"#r#nCrditos Dani Guerrato dani@popupdesign.com.br#r#n";i:2;i:1;i:4;i:1;}}}s:5:"local";a:0:{}s:4:"html";s:876:"/* Crditos Dani Guerrato dani at popupdesign.com.br */#r#n/* @media print { */#r#n* { text-shadow:none !important; filter:none !important; -ms-filter:none !important; }#r#nbody { margin:0; padding:0; line-height:1em; font:12pt arial, sams-serif; color:#c000; }#r#n@page { margin:1.5cm; }#r#n.wrap { width:100%; margin:0; float:none !important; }#r#n.no-print, video, audio, object, embed { display:none; }#r#n.print { display:block; }#r#nimg { max-width:100%; }#r#nh1 { font-size:18pt; }#r#nh2 { font-size:15pt; }#r#nh3 { font-size:13pt; }#r#np { font-size:12pt; widows:3; orphans:3; }#r#na, a:visited { text-decoration:underline; }#r#na:link:after, a:visited:after { content:" (" attr(href) ") "; }#r#np a { word-wrap:break-word; }#r#nq:after { content:" (" attr(cite) ")" }#r#na:after, a[]href^="javascript:"]:after, a[]href^="#c"]:after { content:""; }#r#n.page-break { page-break-before:always; }#r#n/* } */#r#n";}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Padro";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Default";}}}s:5:"local";a:4:{s:7:"layouts";s:7:"default";s:8:"palettes";s:7:"default";s:6:"styles";s:7:"default";s:6:"themes";s:7:"default";}}a:2:{s:4:"text";a:1:{s:7:"caption";a:2:{s:2:"pt";a:2:{i:1;s:6:"Padro";i:2;i:1;}s:2:"en";a:1:{i:1;s:7:"Default";}}}s:5:"local";a:167:{s:14:"text-font-name";s:14:"helvetica-neue";s:14:"link-font-name";s:15:"$text-font-name";s:15:"label-font-name";s:15:"$text-font-name";s:16:"legend-font-name";s:15:"$text-font-name";s:20:"blockquote-font-name";s:15:"$text-font-name";s:18:"footnote-font-name";s:15:"$text-font-name";s:15:"input-font-name";s:15:"$text-font-name";s:19:"monospace-font-name";s:8:"consolas";s:16:"header-font-name";s:15:"$text-font-name";s:17:"caption-font-name";s:17:"$header-font-name";s:16:"button-font-name";s:17:"$header-font-name";s:13:"bar-font-name";s:17:"$button-font-name";s:14:"text-font-size";s:3:"1em";s:14:"link-font-size";s:15:"$text-font-size";s:15:"label-font-size";s:15:"$text-font-size";s:16:"legend-font-size";s:15:"$text-font-size";s:20:"blockquote-font-size";s:15:"$text-font-size";s:18:"footnote-font-size";s:15:"$text-font-size";s:15:"input-font-size";s:15:"$text-font-size";s:19:"monospace-font-size";s:15:"$text-font-size";s:16:"header-font-size";s:3:"2em";s:17:"caption-font-size";s:15:"$text-font-size";s:16:"button-font-size";s:15:"$text-font-size";s:13:"bar-font-size";s:17:"$button-font-size";s:12:"h1-font-size";s:5:"1.5em";s:12:"h2-font-size";s:6:"1.25em";s:12:"h3-font-size";s:8:"1.1875em";s:12:"h4-font-size";s:7:"1.125em";s:12:"h5-font-size";s:8:"1.0625em";s:12:"h6-font-size";s:3:"1em";s:15:"badge-font-size";s:4:".9em";s:16:"text-font-weight";s:6:"normal";s:16:"link-font-weight";s:4:"bold";s:17:"label-font-weight";s:17:"$text-font-weight";s:18:"legend-font-weight";s:17:"$text-font-weight";s:22:"blockquote-font-weight";s:17:"$text-font-weight";s:20:"footnote-font-weight";s:17:"$text-font-weight";s:17:"input-font-weight";s:17:"$text-font-weight";s:21:"monospace-font-weight";s:17:"$text-font-weight";s:18:"header-font-weight";s:6:"normal";s:19:"caption-font-weight";s:19:"$header-font-weight";s:18:"button-font-weight";s:19:"$header-font-weight";s:15:"bar-font-weight";s:19:"$button-font-weight";s:16:"text-line-height";s:3:"1.6";s:16:"link-line-height";s:17:"$text-line-height";s:17:"label-line-height";s:17:"$text-line-height";s:18:"legend-line-height";s:17:"$text-line-height";s:22:"blockquote-line-height";s:17:"$text-line-height";s:20:"footnote-line-height";s:17:"$text-line-height";s:17:"input-line-height";s:17:"$text-line-height";s:21:"monospace-line-height";s:17:"$text-line-height";s:18:"header-line-height";s:3:"1.4";s:19:"caption-line-height";s:19:"$header-line-height";s:18:"button-line-height";s:3:"1em";s:15:"bar-line-height";s:19:"$button-line-height";s:18:"text-margin-bottom";s:3:"1em";s:20:"header-margin-bottom";s:6:"0.5rem";s:18:"header-text-shadow";s:4:"none";s:19:"caption-text-shadow";s:19:"$header-text-shadow";s:18:"button-text-shadow";s:28:"1px 1px 0 rgba(0, 0, 0, 0.7)";s:18:"active-text-shadow";s:19:"$button-text-shadow";s:15:"bar-text-shadow";s:4:"none";s:7:"padding";s:4:"1rem";s:13:"border-radius";s:6:"0.1rem";s:10:"box-shadow";s:38:".5rem .5rem .5rem 0 rgba(0, 0, 0, 0.5)";s:11:"smoke-width";s:5:".5rem";s:17:"system-bar-height";s:4:"3rem";s:10:"margin-top";s:6:"0.5rem";s:12:"margin-right";s:4:"1rem";s:13:"margin-bottom";s:1:"0";s:11:"margin-left";s:4:"1rem";s:19:"document-text-color";s:4:"#c000";s:25:"document-background-color";s:4:"#cfff";s:21:"document-border-color";s:4:"#c444";s:21:"document-header-color";s:20:"$document-text-color";s:19:"document-mark-color";s:4:"#c800";s:19:"document-link-color";s:20:"$document-text-color";s:21:"document-active-color";s:20:"$document-mark-color";s:22:"document-caption-color";s:22:"$document-header-color";s:19:"document-box-shadow";s:4:"none";s:16:"panel-text-color";s:20:"$document-text-color";s:22:"panel-background-color";s:26:"$document-background-color";s:18:"panel-border-color";s:17:"$panel-text-color";s:18:"panel-header-color";s:22:"$document-header-color";s:16:"panel-mark-color";s:20:"$document-mark-color";s:16:"panel-link-color";s:17:"$panel-text-color";s:18:"panel-active-color";s:17:"$panel-mark-color";s:19:"panel-caption-color";s:19:"$panel-header-color";s:19:"panel-border-radius";s:14:"$border-radius";s:13:"panel-padding";s:8:"$padding";s:16:"panel-box-shadow";s:20:"$document-box-shadow";s:20:"spotlight-text-color";s:20:"$document-text-color";s:26:"spotlight-background-color";s:26:"$document-background-color";s:22:"spotlight-border-color";s:21:"$spotlight-text-color";s:22:"spotlight-header-color";s:21:"$spotlight-text-color";s:20:"spotlight-mark-color";s:20:"$document-mark-color";s:20:"spotlight-link-color";s:21:"$spotlight-text-color";s:22:"spotlight-active-color";s:21:"$spotlight-mark-color";s:23:"spotlight-caption-color";s:23:"$spotlight-header-color";s:23:"spotlight-border-radius";s:14:"$border-radius";s:17:"spotlight-padding";s:8:"$padding";s:20:"spotlight-box-shadow";s:20:"$document-box-shadow";s:15:"card-text-color";s:20:"$document-text-color";s:21:"card-background-color";s:26:"$document-background-color";s:17:"card-border-color";s:22:"$document-border-color";s:17:"card-header-color";s:22:"$document-header-color";s:15:"card-mark-color";s:20:"$document-mark-color";s:15:"card-link-color";s:16:"$card-text-color";s:17:"card-active-color";s:16:"$card-mark-color";s:18:"card-caption-color";s:18:"$card-header-color";s:18:"card-border-radius";s:14:"$border-radius";s:12:"card-padding";s:8:"$padding";s:15:"card-box-shadow";s:20:"$document-box-shadow";s:20:"formulary-text-color";s:20:"$document-text-color";s:26:"formulary-background-color";s:26:"$document-background-color";s:22:"formulary-border-color";s:22:"$document-border-color";s:22:"formulary-header-color";s:22:"$document-header-color";s:20:"formulary-mark-color";s:20:"$document-mark-color";s:20:"formulary-link-color";s:21:"$formulary-text-color";s:22:"formulary-active-color";s:21:"$formulary-mark-color";s:23:"formulary-caption-color";s:23:"$formulary-header-color";s:23:"formulary-border-radius";s:14:"$border-radius";s:17:"formulary-padding";s:8:"$padding";s:20:"formulary-box-shadow";s:20:"$document-box-shadow";s:14:"nav-text-color";s:20:"$document-text-color";s:20:"nav-background-color";s:26:"$document-background-color";s:16:"nav-border-color";s:15:"$nav-text-color";s:16:"nav-header-color";s:15:"$nav-text-color";s:14:"nav-mark-color";s:20:"$document-mark-color";s:14:"nav-link-color";s:15:"$nav-text-color";s:16:"nav-active-color";s:15:"$nav-mark-color";s:17:"nav-caption-color";s:17:"$nav-header-color";s:17:"nav-border-radius";s:1:"0";s:11:"nav-padding";s:1:"0";s:14:"nav-box-shadow";s:20:"$document-box-shadow";s:17:"system-text-color";s:4:"#cfff";s:23:"system-background-color";s:7:"#c406e8e";s:19:"system-border-color";s:18:"$system-text-color";s:19:"system-header-color";s:4:"#ce80";s:17:"system-mark-color";s:4:"#ce80";s:17:"system-link-color";s:18:"$system-text-color";s:19:"system-active-color";s:18:"$system-mark-color";s:20:"system-caption-color";s:20:"$system-header-color";s:20:"system-border-radius";s:14:"$border-radius";s:14:"system-padding";s:8:"$padding";s:17:"system-box-shadow";s:20:"$document-box-shadow";s:17:"system-bar-shadow";s:4:"none";s:20:"system-header-shadow";s:4:"none";s:16:"input-text-color";s:4:"#c000";s:22:"input-background-color";s:4:"#ceee";s:19:"input-border-radius";s:14:"$border-radius";s:16:"input-box-shadow";s:20:"$document-box-shadow";s:16:"focus-text-color";s:17:"$input-text-color";s:22:"focus-background-color";s:4:"#cfff";s:16:"focus-box-shadow";s:71:"0 .5em 1em 0 rgba(0, 0, 0, 0.2), 0 0.375em 1.25em 0 rgba(0, 0, 0, 0.19)";s:17:"button-text-color";s:4:"#cfff";s:23:"button-background-color";s:7:"#c406e8e";s:14:"button-padding";s:8:"$padding";s:20:"button-border-radius";s:14:"$border-radius";s:17:"button-box-shadow";s:20:"$document-box-shadow";s:17:"active-text-color";s:18:"$button-text-color";s:23:"active-background-color";s:7:"#c393A44";s:17:"active-box-shadow";s:17:"$focus-box-shadow";s:16:"badge-text-color";s:4:"#cfff";s:22:"badge-background-color";s:18:"rgba(0, 0, 0, 0.5)";s:19:"badge-border-radius";s:3:"50%";s:11:"table-strip";s:18:"rgba(0, 0, 0, 0.2)";}}GIF89a#n#0#n#0#0#0!#0#0#0,#0#0#0#0#n#0#n#0#0c+#0;#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#n#r#nPNG#r#n#z#n#0#0#0#rIHDR#0#0#0n#0#0#0#0#0#0Eݶ#0#0#0 pHYs#0#0.#c#0#0.#c#0#0#0 #0IDATxieu&9yUEADS5ڒeˎv+H48΀Nw$qNvVdMЦlQy,bsW^+?}EJf䆥Zjs#z*nO ^#ew_—޹,o+/~oZn57K䗾h׿njuOoKzhp]nj发ܕo:vH`6&(^7^4$CQd^|HFiAq)GYGTPhkT?AH]*-(S#swf}y#chDP#nn嫋G붌$ UhP-#0BHAJJj͕f#s7{nN#e)L «~@)_>}f++{%q*ĸVU_#0ae4Degqŗ~:%(#0A| 83֪Epb<*Tn (UdccOݻPCA$d#0#0&(AATUIYPIJK|#03G帣[YAyAVkL#r:m7w?޹#cϾО;mV:#s %1$#0Z;,U܀Y˻̹xoX]JD#n(k9#c#ndWWs#eԩ;uPRHϽ6AD^TO^9! 1:JQ/x偒NLw<X-jnEܨLAKCnO׿t4M,#cԾ<3$R8PŠAP5Q #r]i~uc=BP< <rwQBM?] SϿ7C. !"Ӽ@$#ePv Meoү=T [e yܣtv~ hkˍ*7~$ҏ郿;ҕxvgK `%4ⶐ  dJAd wV/~u~*T#rXXyb884pR"JD֒bbhd)O,WUEͳo&46`!В6QAN-gǩݻM+${ʛ?QTDE=i@A e@$Pf#z0͕S)j!B#s^| $B&2 Ω*L`fҀW)`J#z rƻJ+໷4SIE%ה K[4^[LP*%<*^LDZG+E_{O#r c@UEb#e#06֨qBN$FQHsV#n(ۭûA+%^7η0~8MBAFUEī#s[l /^a+`k~D,I547n󝯕ŗͿu 1#n"ecFzWA^4r7sʶ)HyyC?_tN]"RU!6$"YMX#0!eALdHjDζNw#sx(]:}E yKYuo#r-!% #eJI[gD9ْ3"5l[n4#s_kynfِ+ff"V/$jdTEȓ!LD*緰}TXE#0Gs{:;4˾_udJyO#n!xf˖I#0ƀF0E@ ! qTT}?N7Wnp?T(?Ww%끨g"ښ;#03!cXCPUU8D`Ub&jX#rT 2pԢL3kTrÞ;J9v_KYPb@ AJU`U#red, 9beC $[#c#0!>-#rw$67껜#sA#0Kf*h#0x/^D#0 ` @T"C`9""I:}wiZ _i$4HML⡤)([e%Rz Pw9*k1r,u4^`@JSlA.J%K#08}gkev)2!J5$"^7=g :!, #0[ [ʨHPf;I{fsˬp^(jTU.3VC[wW.ѻt T2ѷ#0PHXrDJ^(@ׇD=`UcEVǃ@r < C]vV#s^/lM&GDU Aj+e:omƲ1!b 0y!kMFb#z+i]!?zݰ΋_N&6U8o;Aa؂#sA#sED>e #s14e/ȟY4 l(?u#n-1wϞd7[:VǐCdKj#c5Ӿ“{6LyR&AINvx=W#e) "eL;#ry;|@iٮT=X#021D B]"@`*< ‹ZBps^n_N#nkho03R7g]?- #ex@l#roM{1Ɩ"#0i]:}a9]M>Sa&⑛#nCE3`#svȼ({P1UX W#n) ^AyeUxnzeugvGJYXB=x)T$Kަ|o#e|SѮ]օ#sڽpQ;=dXWHA)s(Ē)f ( yU@ D#0 #s)1PUbT$7Cpf?G R"؞DAazlhcN:#eO.^{75On0"RVEBBF{ρ(U8%b(l5Dȉz("gmRIJ7_?s(%6,/NQU#r:׏/ģvzp)0Tgt4#eţ4޿9u~0:s%Ք8wĠRVm차HMbePeeIDXJJoQUKs3rCX [?S(vwOw΍O{pULl #s_|̯_{-ю!ʞkR4v OW/N<#0@Eɰxq$d(,KP |M!Pl$%r#nx""RE $#0ۇRO[O>f//)8F AAOܿM7/,#s<TTSbӡ_|J]LdG]BP!AYj ku 64J]#n<g=I楟PI^e#0D P&&$?UfOWjRj#zPt?{H&yn#cY+-TqF:6jǑ9e0#0#cJ$64N01F!^E.p*<:̓ـǿ#rq1`qSI]0?m[5/-xIƭ-~^7o [#e?Ֆju*ݔWKvEN}H#nrG.U|׈,n#rB#z׈z-U6cQ]d՟%G}+_zjOOsVC4)df(kMXaF)+0s_yu,qߚ=݉{Y_mxxf贶"+~lnrzhRBmi|_ia]AV 8C"II" R#nx#cAxKo¿V;//}[ɼG˽{ʷq,䚚*+ihؔ8I*%vQo5X[ j1;eC#sk P/7yx@LmP(/gz88ɇt+W/L Tb@fࣤDvq>Tޕaޞz](U5 l<}sSz QrQA@!qk863ib(")Va%C⵹Rڞl#ep-kb:6Cѿv~Bz?[]iI۔J 8U%%lMj>lb%Pi-]@9>zff/?g됌vSFC+@UԳ8((<a% Rۣ,#sE>!Pc5P*I8Af@Flk7Gw w6bf(rE6PF9ASL(jB=a-yRq#z#zuldA؋G;5b{w؃Csz!$Y%JK#cR;Lb?{W__رѻQGU4քvT#zZ4zTXH%T3D#ne۶pJ#s}mieZtN#s#cC:=]8lYUE#z#sg[x!ʡa ݋zUYG >tP)Mmm4=>x_cn#s#z#sMײB͌#0KkjGJ]6s| ^,>Z<UIußk_,~ßh.gH;iX/#euܞM7&ă*5 !fF߄2y^|=t#cV5Wf(+Vn畵;&lAK~?YnٷI݌yJ߿S#0-wwe1ud}oo}t~me%D*^q7(i $$^[{tg;#czts3mZAWk sYvyB].l>toro^ 98{^k_#eavU4a`=bj//cx6_bK[ħ<ͅf#ef׵Sb/gtsܸ5#swꃽ2EbE2H^_!DLpan^5`F|8|Ӥhޑ1x^+5 PHF<)N"^[{}eyn;l!$?ӈoMy3Yj:5{//rR5⮳q&Cg#n0͵~kCN~9eN"ݥΑĴkAQ~&qg&!a#c+7GYl|JVSD-ntΩ}b6#r#eV|S#n}ʉMŕɥH%_tf*2f*B!i""pm6+Bv#0#0 #0IDAT#c_OMTB$&UczQdkSZf5}JC&*w}<9VS+I3)#rS9q#riQ>_uf2:DlwP#e4qtڽB!֯"JQ>YFKo3(bõ=+Lw}(F^#nz@{l8y…]ZL#eAdH}^4&%)%(T7}jGgp}|qM+q% .yEj ᆆqP#ruYs3|ƹް Mf7=ogg3Y#e}qXeuW~vqR?mq#sf%pF s0(%s[L_}APo`{+_i5.*#09V,P7t.#rQ*L>Ka1A=D<[K2_.#cL2YkH2{VR%%vhpͶ|?t6k Xe_fx}#s/,=J!b?7;6KW2ݳ?]CLYBسYUM=]ûtYd#e1[`Xzy~]a o9kvkd%熔ܱ߮nśw;T5bUBQ>{gR4ΔMrWEfVqJJ#zeHSvOV 5bcQU<Ӝlj#rOv_sZƷ_o}͆lv~7IW9֔o8;va[<%x>sFj6 (NSG.~cVVgcuɱpM9{azXX:v~}$4S_8}s$%E{ysր ĬYF)9cg&jpV޲#r`IQߍh+MnH#0+R2|%p9rַ?n{dCv/N74;#cc^q,Xri]˛QTG2aT(q݄%[:7LˇG2dƣ]{@DҞHfGht#s^>=kԏBR&8gxP.a#z6!K4٬T#s%[1꽧$Ql1,|R- ReD#s*1ZetϤ9dF#s{Wד 4a 1&,?O[ΌS#0k#eX6AKG-rX^22,QPƛ[Memsx#r~[,KRB*ۋgg]n/~aa+}bee.lu~9rBa<#0.fQe?ߐ@tn{h6LKcZii2rq6WVk.7[ n}@ʺQdwh6???7ɏ%Jb?8.v^ OI>Q{e&U;Ŗ8p1||jpKj^z|>0>c#z+vr{P6G/79ݨ~ݵs;o>vlFmܝ1-*a`sBi*CT.#rG֭Փ sq/KfGw}?m7;a^&.{pNG;jv fg0EDH!KN3Nsv`Zk&{3#eN2ʼnePM?;7ɴ$|w9&3Yнwrzom$r+ε#zVd02 oxݜEaL#r s5#zJۄj#e#e_tNZƴ0>Ui{ 8Ĥf;[*Vzぱڥ^r.&cpd͑TGHIGsh#0eh#cBa~kM@ψ՜{[8t}|rn#eocB}mm>>{/4]K ҷg]|ba4?tkW!+[ۍr}ַF64~=%wn%zJuRaRe16R]ƔW#s$AnM #r Ւ#c z٠@Oid#nD)9& vj#cRoԻ#nY%Dَb3zeG/׾щc|&mkzzxz}հhDfDzmcCՙL|h[}X#zb#r(~DI?ͪnw+T닻xl׌FeeF呡 :ã̃phX kׂ łqYl݊TaƍaqJ*ƪ6?Wބ@_~̹߮9gk#coȗRTdgk{ؠj5̔?HՆ#s2塰4V#z.WF`CBXun^#eʨHmr+;?<ګK}]*=ݚofgg@`&~Rrhm$!"Q#rrPXEAՙݵBfM"ZV#zfSs?2#rnۚ_-vݶkthrvll6R1jmX hX#zEF`^1E+Ǯԭe<Wءc?/~9`y-ʥ{;xs>66ۙxb20&FGgc(* ̙ ϭm6N2^/o~{(K֊%C|b ,) C0DxoDT#0S-lC6~STAW lƈp#0P:#0oRU&:v#c3fK=DdA.#rFkgl&#s?Dc%(J{ok/.]xԱnPL}ΨZ.KSdR/J/<N>JzwGqlg d9$#z*3Bcɘ0o?tm@~4#nl0Bwy.l-#n a QU54MKws/g8 D?G>o.]8?1=y˕#z~YMN}Ss**&@_)ZgN!˒}?#e#zhT#rOm(JeP!T#n_N|o`ό|ֆ#sAM9f,A4Q_rC!5G<9JoUbD!7ͷl1כD~5ALp箩86QJF6RH~&:YM[{4(;g2+ὶTziicdf:952c6>T4$oUn:^l̵B舡ÀÀ 00sp؂so#s&w (8ɧCƠYk#r11Y(})] ZK9#nd^Wc)8kkn+GAP6 :xG#zuPʫ ȫN#sn}W_~G?Rizzrzr}֋#zX#reP~"2+8N8#c]kz449/R*ֺI#e+MNX*3!K"9 %H4142uPb&m#rJO~ırt}oOqZ,ܵx쁽B)a#0"l˰sз7ɪ*#ni#z͇T‚ZAcSJg{)ދԷgm`߲k۶=ϟ;wOJTMuG}j["cBlX6[o[fz?rP揼RE<0$϶ƤgN#nr4T05ԭ nr_ƛ՘b}|P6ʥ__i3i>O<|Kr#cӅ$+m6EPH#z؂1-~}{zxw,K -$q*-ʞA03)1SU(Dsjd;Va_/wOo~Q.ouǿ߻rJ~?E(.}IV/vITcnCaoVm*xqAh_OQe.*^ID#sg^y(oZa"2#sՉ,|x϶?F#n(#e.jHEC6%fGfPQqΉ#rZyXDRZzƲD|lIUEߏחy{r|dicٿz"G-ݹ(*wWՅ13=`@@&)!IǓ$M3d&`)TuqG) *Z#0[g_y֧ 0+-#r(D0 MJ#nPuǓy]̷sO~,)%E:Bqbr989X̻F$#00O#0*fXN3{߹;ﭒ^;aT27fK{5HteS֋04ݽo QT׭#rBkڮnWKDyi!#0u#0s#nU9y󗿾q}܅#s_x hbQ, ; Z뚮u%IL$Wgn38i520iԿ#z,kcu #0!+^n#zUB%ey Zs4O=߿onxm=[4*3X-dV.zꌭ¹itٽPE1"U#n9Gtvq:Mh52/BdQ,,uBDZUp#nKMǿB25szOW#c2~#c@iIc[´YLdm;˦99>U$l54~O{j~~ʯ(#0WՅ<$7z:|#nDΌozws?C錖U.`FCSU#c7 Kۃ,Ϥ#0 i8|%򋫹 ,L4HH(C[*RIЂ";` 9u|;~٢Zz¥{#eV~=7t)#z&[vIsJJ";$˵I}i:}WGp;kz$JsXH+8#0($`]#0t4|WocWy FM;+DmɄ "JuW?v&#nad#z*dbdzY5I/U"Hc}<[#cH{#n[#0^x3O8I?׭ѕ㿸J|8Gb#cTFJ(JLg=1{"kAd9)!Bnu~{upݏ!0#cι89`gLP .(p H#c%=x,p.@C(jwt2w#r_y^M)"J^/^Oz}U{#cVꎐ#s%Zt#0 kֈtZ4;C0*)% lI+y#n#0#eǓj;ՋHez?koNГi}؀,9͏nxn$)#sPJ!mMp>#eŅsauBu]w#eifH-u*:. r#e/[@!&Ŭ*5tv:)#rE)+S7,j"3w]5Ym.:f#0n13Z su;2EF"e=j8#czʋ}g  tfIoQi (%"#n! LbUF1x5m+AG#0Fk VM#cQ07<M1qiJ͜u_z~2i{0+c3;8R/IoMgelKTE7_q%@rY9`C0M081:ՃYIKf24gV=^#c#0˦=;9jNv /|套F̴~b1,o9/&K$+OdE0*f|*1qXksAS?hv)ɢ%#s^jO},λk7~=7_ͼ=06D%!iv`fWnH7N{sW!uoj.ZhPg9t:4^(eiי)۪NJC۶(8Grх[W~kv;9KzƦ#n8fm-D(QȔI1q+휗̑mNO|SÝQAv #0!˚-Z`|u˜EgytؤLRo}5!ķx鵗7Ua]YLWC-#n븵r 8vH&jjiʦ #c:F:#s#z)p0֭5bR]w3lo8&7*3q#0#0 IDAT_+W[+lJԏIo>ot]}Rm[˭n$9yb=n쮉ٔ(˜s(&#r<_uD^$5:Rc(hBƣmk-nwVۇ^ww{#clzw$^듩zt#z(Nɠ*|jvu]8H AәW%Fy"CRqq5S%nc_<#zW~o#ey~??R bO:v#e98OgUCi΀hQ/Im/CnQ+qm@ӂ(a=M*#zS;ey?iV,1GO~_|6#c| #c#c)=dzzD:=YBAw&sႌ#nHZƮB#0!9#rrYW"v)M!!yyݝ^N9w^{;^e#cq/C@ ˓o^n/euGyZ* ^ H5Tu$Yӡ*3wn޵V#s78wv{W_x1M_Kyi?ˑ-qPB%!#04M-D+%QAƖF[UD{wk:po/o#rFHٳψ/I$$Y#e!xٹXSȄt:#c(HEDLR#z71Fȣ|l>ًO=}xI#cVMB*P˦n#r#0+$L#ng#nOhuU,uNRݶE9co~W_D ?osM~Ƈlm@)P4u)0^#nu9Y(V@QnwyH+x*P0!+@DE[@Ii"!h "oyTtRvE%Q j!@~#z#0nuQ{ JG ZXH·yKo A#c#z<*gۿr]ɞ|]$[,֧+ h#s39 #r]olj#0!9 ]e".aMlj>o>Œ&ꎕvu,ԧ~tpozx `|Kf7IBq κV2u?Pc~bΙЩp$r,uLjOџ:"r=M!B=Bd d}Է{O.nɫDذ$GB)<{}i-f.yi8u]H˵#n{z#rf乄C3פĥGuXCks݁/Hۂ&Ҳ-RrWu`P@&rv#ea "=O$y[N=d}ho҆UT:KF B3l:-#0>!um(#0Ib"ZLv#ecv57_:n0#r01<#0#e2֝|E$U $ViT#0G@/ۘ͡m#0 l9EC BCw(e%q!l "Hk],0ʶ/싆iU-Y l#s#0.p~(vCL$_;y;_OP#s v@#0 #0cj#c#cbQ0v#rUUE+ሇ!&PlzWk ^W*;L/#n܌D#r3s#zݶeEj+6pBoS@wgd-{7lRRZ8*#cnN6˭v>KWri/^#cf!Mӧ6S72՝|zyn7cG܄B}QvB#egNI_G_7>1i ZLkE>aԱ" Hoo>#c"Q!5)./:~}~襹==ׯ}#eU;;o~?]$B#c/rKn=!nU_8Ǹ+oQ98kʔwϽ#04do6ą#0pk9_IMwP^5,#n(u̵S=nZ{}Bڿsc#n! Ẓv z~_#r^e߹{ze%{ē<]сu7_vyMȰ(fz~7z(|p(xɖ~L?hDRshg@#0-/-vÈZ>]oO=ݘ~ov#0#0LӺ #r̳cݍ#ehbΞIX:63!TO!#0>69q㰦iV#sW‹VwJb6& 6!hx8L"6@1xⲬ@,H"Bҙ̦FcSk*R[Xo<^tXXaE1HMĐc#0Bv@#swN睻Ү7~к[#e X˧ˆHU [ ǿs+r~64]W,ͧyvb#0б-9 Bqpi!@;}zׅW8mW#c׶#rG#0 dzF]չ?ϑ[#sJ/KN& %Ի#s,gN̓#n0#0"A˃H_"ުϞ?{g+˅Ra6JF05o/jO}+Lgsi/0x.t$9rtpb{~?`$_1ĔǛ[eUMӜ=N96ujY&$rl{;yTdNNz޻zj.>I#0RZ/I~|Z$#zOmشʎ4=1 #cC8%2#rxd|x|+!ZM0F>H^1NVq~rJ+vC œgN4h&9#nk>#cx͛ #z[r%.D q?$v4«:kbޘ;.UAj=sGhڻq]CoL;PO3#s<VnԮoFRe)pM9UUZ2 @˨ ĂckF7|Kt,2^XYt8(omR?Vjv]Lje{ȑ‘+#sPnNOfls@|MLlkmC9v-J(`@ `,ji @ Qm[ؗ۾qh#z]N2cdzr#sNt̚?x8O#0#0 Zuo=vpOrZQ1)E#0|f?U-B*-2%Juu#r#cn1_?3ݘ;t#c5#n౓=]XwtAU!:ʁv./ɒEa#z9&Q@)1#0#00 F4XXJ+$CR[^ٶ-̝$j,YN[OUmQpӦιeW Bø{>2ΝaWwDm("ْ4v HR]7c<#z9*  Y~?}[ 1/hc*[<#rnJr{n/ѪنnBG29TʅUk6#zLlVz^9 12Ȃ#03@$#n0#saR#0P*S]5_;~pwo턽%.$!5aӳ3aYT|#zŢxB*9ѸQE1B|86J5C_嚛ɗ3Ņh$P,2#r{GW>nٗ~QvFA}#e0"Ys#r!0ڭRlAzxhX,#ej=[v@(Ds2--!Ez3R*`fHZF#s#c8AZ#r><9/G$̏GS$ٓ+v[ARlךNh#eMFg#sgc4Z:L sk/粅䉁.@`™岦dxIV#c~l}#r:hPSFY4nOﭵŒY}ƒh#0 t]X JBIq{񽅹c1B!jzlU#zjF>|1ٿUA^tR:P!5iMKwB#cWQjxnH98zMqIJƬYwl+ċfmRaM4IFdYFZƩkU= NmwqĎKWͯӹ_8w˂[bԡBE4̿oc.dݎ%l ]Hlx2Z#zu!b(a*6].Uyd9UtIص+G0TOy#r#0wmj#c^lfP#eVL<(Jͥd˃k*e¸p&RXf Hy-רWmaDZ#0h{xx Rzjdttb#0#0*UOe-BI{EJؑ.R<7)HсxpdL#zqE O+[VǀoZ GY#rBAhFTW#rƃ#cLL珜#e82wb-EylЗ>0%#eȯ#n#rbiCQL(e(XQ9S׀)utRc׮fͰtI/Z2#zF`XRy)Y˥V^[LHmZ)Wx$ޣ+e#sfKnx^ L(qʅ2ag9-m~ p`>At,OV6Oݤѧ_dP"}#rJiڮ8L{ksX2XnIB#zA>",Zj#eqgr)To=}^s%֭[uxu2 #eJ쒈#eY^#e9q[y.#0w!9ɵ4KEʝCdz#eLvveA=衃+.^mX(7A FZoj,)WŠڰ#r= 9q ~J0/VG.#r#0]Cݟ91M0NB1ֈ}4LKSO=l +O#nehBEK#rpyN UuYڹdu#0xcksJs҅U`|?>kHpDžL"=Բݶ c/V"/#rqš*` p#0@@0?;gfY"Dǡz$e }Z2ҝ?w]1-݅YkaҬj*K!N ($#00a@W}~#cȊR!#0#n$i[u qg.klR$B^ x#rtOU5F#0VCcYv98YCArX6ufx،aB)1hC`;ѯ|+B2N{J.#z#n|e~vOZUvS"9!0aپ>6mMɩ4!!,*B|g@.BZܶ=jtce孟rr|v{w {OnR#nhb;3YB*5LH(,,2bqmpUUf+}矻ld=]XjmC|ˮ#06vVΔ&2-O$ h%_d2#sm=3N#cE#0󥺛].XM<22*H#cfH/U۝KqW$d݃&)7BAl;#0m#c5s|FIoy];1;Ƶv4)ڍBsfz!TH _ivuf;[o&FG̚Ǐb[#0x~h#0ܑP:C]bh :n+ѕXkwmt#0#0s+o|+En*S#s2墬8ԃpl#0bd2U^%4Z>o7fUˠkCrUka>ud,F%_KEu#0(>#s_t(u]OS#syKc}0ye>N[Of~eyq{ʩgti R)2egcWSV-=h*rJ٧#e}ۺ#r7eY&z5]ˮ9ttg|έ J QNRe7eaIu+5wr?מGӧO^.,*JGWWP_]^EJuh&.uX#rok#c[zO95C}]y> #s-/ nH5z9k*U4!)/V&Ǹg~2HϕxDil횧vXMcoc/z:J~w>ʾɗ0@+#nlt#0#eKUp1!o(W-#sbW>UNGLȯL(oq*c=LlyN1R-6fFKZ()2cnX)*J݂[.#0ށXր#n}ૻF{yǁMĠ6qtæ 0uMjdQĢhU!#neJd5hivmxU^޿f#rIU7mYC|i >BzuC?X3߶w^jFY*6 #svFAڞ(zɨW-è6#zı, 6#0)e+l{psyk#s`R!IIͶՕTCIv#0X<3Fߓ>žJR3b]RyiEt_K9Hif oj]8@"Mw#0#0QJx9J C^#cFr~xx#0@"CAsc¦~E~L&P  XeAq5 G?o{@WZF>#rXm8#0T2#0#0#0#0IENDB`PNG#r#n#z#n#0#0#0#rIHDR#0#0#0/#0#0#0#0#0#0~W#0#0#0 pHYs#0#0.#c#0#0.#c#0#0#0 #0IDATxg]W}(N2iF.ْe#r#s#sEb$8XA 慄H#rwIVo3)~gO?gFXm;g[Ϯ=PJ ^#c% Z+JO=3{h>rx#ro5ᑣ$|55#cǒ+#rFpbFVnȖFk炇ժ?=k#n@(xM걓b #cbgoFփ?HPՠ4}گzMTD#ePiT#z#0Hp)DK7L>+B5I7Bù0!P`̞+U85)Uji#z)T7@3ӑ@#nXD"f//5B4?#scq!#cC$B@K|5#zzbaSžٖB0hSY ^Dh)T1= P"r*Pjl:Ҵ얇8b0N0I#r* %>EB%#n#eZG{w#z"%EL2 #0$#zB2 OeDJw~n#z)& )`"$#cA(#s(T(9At>9jxI$@P#0 >FČRJ9#eH#0B )ʊT|5,Z"!r&i$*@!I$#0#0Ve:sT#zBc#nNy臎x#s8SR#0 !F.#c#0G9#sF1LT#r5H)8WE4!%#0@ DQ)$mYbӪ֊N#s4sE9!gz"SR3mTW#sVU$!P#n)8G#0!0I!#c~Λgͣ߼nGW#0@ϏB $ƺď$ d#0#0k#nArb#c8{ͤjB,a!Jb`B<4u(@1 #0XRkRJ&cl^IӪK,D$A Mc P#n#c @T2$I(xfnuLl#n e#n#0Pb.0<П6v#zI#0@p$)"$Q=#n?qWj7#sF(*R0H2E#00%WypI. `b0  cA#0,#eRxqA!U 4#e-eXW:3 " +i]w?2/%o#c-)c:2or催;.{2zL#rG%7h#c* #sg#rst#eީm6#eRjKl,*~?>2;13ln#e39g}S2؟n ^AiyD zjطhoWuY{ʏ@̛iz샗]]*U&ym[z>5w]Kb]f`]ս}dl/_ }ئW۾y)*~> wVI۪"E}+jX4)+M}_:KzMpp7O.`#sVȪn7~#nW`F|z3y~L Of޴ݍ#03T+Ge7w;zחlX[XHDBZo{mA.?]m#0b2y7R#rX[/6Wм$6#zN٧7rv7֖mR_LW,#zX}u=̓LeKPGJ8=ӳ]|~Ǫs]#nSR) F5і#z6&"?wp<#n^o6FNMRY=| #eoWxbbs+մy΋6qqJyi|rނAu#zG܃#0XQ~ 5#0#0@:eR*Ç>Ȏ8$w~s"ͮ9#sfVB4ܷ~ B0`3{W1$C}!s6;jo/_xa^y#0V!fb+><#ci9#nt@ QUpFryefةiHԹqz&:x3#rQs1 !<]uM#sSڻye#reiHLr".H*S)h&ibDtbDkF*۽ef#cfH Kz4=f.f&&#ze Kӧ}w}==մx*5;_#eYcw{`ѰjI`a_vǎWL˖ma¤]kJ!n jժ@WCG.MLBP̗JX543uMoWY5y{i]^*~ߛKhNԚW`jfa痖-7TR#ek#cLҦ4rifnvC}ȱyưm|lqyy~xu:19uמAǪ1Mp NMꭷvvv;98R>jY]#evͺu #r#syV[-W*<_]7Ǐ*]xn(ё#ck#r#r#rqZmL#nfln#z6 #zO޴yúF_b3pFNϩ#n%SZS5l6sr577?_)ϖ$ۿ/?5} ť .زrL֑krU;/jx򹘦zޖ{>_Mz7c~qnJWXEɶ>GN8n4gggž5꣟X3Ja#cd~h;>|=錓#efѣ^}}/ ii[0#rlz#smߡ@TL<"pR-on2~r0 l[oWϮW|w˦ee21#cM~5B{#c>~A}}_%TO;(-տv)oNk)3#s@ej7{jV*%:SxHAK?1Tv#0VH#n,#0 %#0L#e݁2+#zoQdJD6=#sBiJ*Y6..X2=|_7~NKWw`ȪVdU#r1a9^k-s#n4Èn*+0:5hfX.|fb%3h]/OMDqU7nڲ#r PMz~Кm= 䭖ZFSWCB_2FyGRM+FgbjA$JKRtdֱ@ft#c@3#sK+K4#sNbLdIޕz-]s+ q0d{{A0M]4^H$k>vjty˪^h լC pTD3#s~㮗h&&gz,#sD(8obScGZv]?e&Yrujo[#rl!R.άLig!ʵRNIa#z1U%#sG&^mWAI)$!@w&"(b;J^%mXC;A.vg@3#0r9zVSSdDT7c%Tw=$"U`*͊53.byRL#sQb4#c#0e;WiFs;w #0c#c*Up.#0DaS)m#eC#edr9N*Ų-dHaїSmrh$ BQ,` ,Θt*ǔ~zE(#0aa5W^oy/4#0ri醫.[S0cE)w>#sc󀉄^{ cGG8S(C<wg+,#z#0O=v;oŚIO1꘸:N6>ݷw܆)&,~$PdIZ޲~4.KNE#ewy&m&CZGy!R[!Z钍[^yNiBEnV],(moݸ5knt )K|gЖ^ZvSxK_zǶNf/uUw#0&PoI7Xڭi mjy(g.>&8CΧήѴXg`#eh}OaMoN=Jwa#0#0zzv#ewm;++e5/TZ?q{x%@sv#rª~ԱkK*cŰp#0H6txú/}1* D@.0ܝj׆O>?%v?@po~WirNc0K#0(3o|z#0_~(d`}#sOm$Yvh`gyn>M4WyQ$/N=T#nB>__"#0|obUWj &" a.k5ZP#rmhݛ7o9u,=DY˦JvKHځ5I}ꇷʻ_M[7QŲJSGEb(?ՐBLM͟ 6 v[yٹx"qR5g?n&r܆/-R#nT5Vm6:#0#0"ay&115:9}X<oo~̛@d#nEu`6WhNITgl]R1ᛮo ۲Fw#zO&xшn811yɁ^>#n"|^$ҊFJ߹aK>Њ>NME`(*/>̞c#c]]=g-O<bzj;F^j톯/}7u#r]]vq3ÉؿO".pe[7-.c /~F[U3/߹W:@ө-nvJ7էg.ta*#0`jfjfiI3;55vır#c rgYREC;qkfg v& >{#eht0*)#0:ڮ|-lEfb|$F@Zj#0j#r2/ƒO#zCS;;;03r#n"jWOϾ}GN˟y#n^_=7]NXQԌB`4&O&SlYkH Ijj+֣]n).hDXH >?L+1I#zwe% .׮ߥ:WM#eڶf#rU#nmhUn?qm`gOW #e JCuK N2m/XlQ]쓋s3mYTzz6ݸ~#e*,چo:V&G2s_#sgm{#z#0#0c,z1Q0 M |0?377"@dǎκZ8o9=RR#zEaj@2~jJ#0#0#0#0IENDB`PNG#r#n#z#n#0#0#0#rIHDR#0#0#00#0#0#0}#0#0#0kwb#0#0#0 pHYs#0#0.#c#0#0.#c#0#0#0 #0IDATxi#eW} ݥ~J[eɻ#r`LC1 #0I*LB%IRS2ET&d&dB#r풥Kw߳ɒ9_;}~s#z#n![-#0"-Ok#n[߻;oT]]n66A#rx; o{Yu#zAybPW_#z-J#r#0o[c噍b6Wh̩$A̶c5#e]ο jE.dȮ֍#e=5iเ"r#ezA4i!%.T#0U߱~KIm;^KfgJYw#n@#c U}k9" r ĆaloS r:*)f#0B@諫#cY,@#nG#0#0V7 y!H0jPxo@*YG!B#nRi7ʂH`fBP#zs#rȫ#0#ceDd,a*ӗޑ4Ig#0#0q!a #0`Js FnD&˒9!9#z5۶ P#0#0B(#eueg#r2ys+(C#0b#0Q!lg3Y<#0DBsL_nmẃ#ex%)!#0ڞbNkfmn]&+!s9!1L@ .ŭ&8/nۨmx#0#n#0@#0#0΁HET~˚/uad` A$TP1T֜FA̲S/V C59` #0qq9}gjmo3I Ĉ2Np#0HcgynZ:(w$8#nG 0#0#0r, ˋ +eҘz`H dB$)2FH#sP#0"6PʅwdlmSPǑ$HH %Ƅ D0PP #0m˂wZ#njɄWHpB?D!Hx@V![#cDhCp#0j>O0!#0K**yw*%MSa êܨ͊,H˄#0#nJ8k/5#r:OMuV[#0#n(رD"#0`.E(>U`Lp#eׅ|G*4#eK(C- 1#s."Zm#n3̛N+l3-WoQ[8PȊ!@Ȳ<=ș˺»ҳ;30"a@PG=8!BDV8R咓ξ a2cB Ħiz9&~@!I2&Xµoar=&p#n!DŽ #0<MC~9`6  pӂx=eN$(UMEԀAJT,<: "#e<@ࢵHwD[Mb*X؇HpJͭ51g#e0B#eڨ-- V ie٧2ƅM#z)* Db h>wo>0%b;#0H$U(3mGAfBS+B( #0#n ƭ-#c!2O%ޑZI#nEܠl #0#s( j(ApkE1#rk#0>pήj(QUl ? )T7vPs#s{;ok#ejFytuaeBt+PH;0z7Uf#c7rgW#sǓs#s$/ԫԥo<wݱXcQ3?:#nJַ7*hw%BJCڎΕ1g 1|g(uAbPwxis-wȔNZL}O$Bn=zB8@ LJz#e)L_î5uk2)Sz{/k?#0#0k7KdrkҺBGV]wlb#ev;$nR OϞr-1L#c 3zfͩBd6ML슆+gg.={Jl6X0km#c-ۮ^P46q۞{CtӖ]F#cC{&#e?q0jy#s#e.77m`_gLC#s}/%}@gTڻǯP)MkVT̝* ɭJ+ʅ&#sSlNoȡP#zj*%G7Ą#rhj@+ F#s㸼zVEGGŵ5?{/V7W+m68Ȼ{]53Wf,dЮ?Kkk,#ex]GvZq~1X[R{SWsT3#s 5g":xEf۫v{y;P,56ε0<^ˁۣ=X8I0P%#0#e^7L#cg"Ҁ7CXU}v@0uqPM EA)o#z#rOآ#e~k߬zP8R5>9*C(#0 #0tj#z&FC/KBRÁc<~6W7mtipe aJ<.n5ŅZ_cJT#c‰>,)B:r>2#sSӗU[WsR[T`gEH+]#eK5㎐z}b;/#nAEkv(vŢY`] Y#zVAV#cVU/0K#rO|ړo!ö#0P,9FR6˅gsrWgypH>c0.5ЮS]wJeYA {zz0 ]&/wKDe;H^lJcqR-P& N#0 t#cu? 0] ?4jd]8}e.;Z/,W2E6"6#c.#cnR #zUe9Z"›P:_95񱎹rU#cWċ#s2`OG*ojM,3E¶[25Е-#r( LJ1mD1?*8njVC.XxQ+Uϯ t#rN+;?Y*Էg>vh@]?VV#r>G>44z)]w;q•K5C´_:yT#n#ez?ƾdH|~!#zP $R(Y#sS茦#zj%=R7;@d=:K>5 J+7lGd#zNN/#0_OM~x-9Ӄ;Gg#e(._(r=Q1j71 pʅK]/|D{.{a}5۵,)!Kt΃Xy~a;8q𠹺Y].Kǒ#nG#0 Rur[Ӌϟ3#e)S3~4/ҳw6Xיj> %#0IY#eϞ<}byu%_?qܩSgp[(hmgeggIwR4H)B }_I%R(t$ǃ<54[t33[yÓ}2lr@)VyrfJgd Ϟ#rեzaр]6~w#sWEfEf^- ]ף] #0PkIj|YΎ݉gN`iuehثkٗV79mF W2!)*f]N iȲ2_}OZ5<;/)9Z$L(7sӅ6#eq[s߷??t7^AnjwSg#s#siL[B2Kp[,VHWolDcS ɾ÷/&#0O׶¶:zCkK٢=pʦq }ȪLVZ؂I#r[yN#eup޽eJ?i0A)7zXG;яʫG}{+k3KPF_~dg{ԨMO/҅K/WO_#e;]mX|Id,wZNgbGp[:) y}}~wdj:MZM#rOxܽKS$#0#0A#s#e[>?#cjgq@p*JO ƢSw[A2 #0i}/SR6}>Hp0pȯkΡ=׻g?Zϯ^f#cTJqZe}yiJ *7i~ՓX#r*`L?Ɛ{: ^iR@PQ]KR jZT4SI||ހJ0h)R.ŵּu $KBꐐ[;ldU8#n4B/9P[~OE#cG8(0,^Y[ky>Mw$F.mKjdyÈ*rXKĜ`W؁ٺ&#s{ݬdbDTYQlW}|fQ/#cDcTcERfsjbü#s_xnӡjֽJe;LWD.2~/;?<ڕV*"̰>MMD~ӿ068֋UHjK]$IuK`ȏC_#sJՖ%Z4z,45#z&Սe맰˄#0M}vnٙ#s=jO$& S_o#zQEQUUj(*Riŗv1mգʑZ#rڮ:bJ8QW׃^~@2x݃] F/g6ý[V~;9Z{{Wim#siO:h|m}HRb#sڰ"5M!;~7j#r4YUCL~/8Z#c=X7l6 #0#n92ux @#c#0;ňsF#zR.ӶM[Ck^ݹ~CC۔-HA>cۖi$=BK J-.@مfXOG#0 @gz0M]Ӵp(M]l#0i#zartӀ#0z68#s7&#sn{nh!Iāp{c=WZ!B<7t++BM ,WM5tô<T{Nun|c?:Zquœ]#ci#0#00#zMHR 0R(`SDoF#s+3 䜙Fӯ0&oIy~< #0W-:x/#0#0#0#0IENDB`PNG#r#n#z#n#0#0#0#rIHDR#0#0#0@#0#0#0#0#0#0 #0#0#0 pHYs#0#0.#c#0#0.#c#0#0#0 #0IDATx՜idq3]}wOOϽA8H("%$ZaaˡBaG>X;,YeI$R-(<@@#s{z{|ΪLX#n< wޙW!3èeFn7ɼ?ltS#02gGoj#z=5-_U7&[Fp#nt:rM؋2Wk#0FR#sv}Ư$ݖ4#01ZWՈNA#rĒ/j#0E)% 3?ǣ`&Ӽȭ#0#06#e__U(]#r"p[79%!uHPj5Fh#z%@i@#0miziQDUXDb@icW#0as|ƀBބb4Jjmb #e8=nū52#0&3#e:GID ۭqs#0(#z[#c!q2U52~cC,H2(#nmѰQF/@CȄF 7oF#0!3#0  #0˫5*#0v*) !9ሼ#eE0q<#e_mQ#z200qc}$^Q͂#r0DA)9pz$^#0NӰ&@Ì$ba#079#r@#0$H#0 d#r(Z]dmF#z#r#0._H*%#n,@!0ݬ͈F`1#c3#0K0,#0eYΏѫ5#n#0#nZ "D@ $fR(g#0č%Q”ؠdD#rh(#cҤYA#0d dt #0 Ȭ@KFg_7#s#0HQ1DČ2@fy?}Z#c#0gSfR a0 q_֍$o$FS"@F+|fQ#rkFaP#e) R"0#s#s^,p߭h]r#0$TA #n@ lhsd3B/|0B)Yi`D B1N#rc#s_2#zBaT5 2@#0ȀA myT_эAq``-M>d[ A@F)D#s#zhKcDFadIĠS@fdLI0=ᨢ.&Ʉ B#n-$P`P""ńf5΍*zA:kH`Z dknhf@`/~zT#rۤ !0#0V0@$f #zIHq ?9#c8E@0$A"0+&0B#0#z@X"#n0]P00N)JB` #0#nPiP#nF`hH#n$pZzoI#zChI @1#nFB0B!3xt#0Ф#0K2mFDHR4#r` B#nR$J4l`#0X.@ T$%"A !2" #0e1!Ț`#0}I #0A*@DR`!Ra,0sE#zEFݖhFP & ,eʘ#0@#cT~q ۭKQ F2 VH(#nv8pX0HB#zXHJK>e1Ch$f$`-X0"#r(Ü"Hgy#0#0#r8Xi fN$ P#0DC #sd2Z7dÎD `X"I@0(Zqp˶zJ8 K_zC E#0,T#nV"f!tH#c )U g&ql#r(Y=v#0Ak]IB#0Ɯll8ByCA4$0m#zaۗkzIM[eaqz"BҊS:%%N$$RS#0;hv#z!EP]+e׏&z6$%3לs꫍c_i sI#nQDiuBٶc=s#sK֎~ؓ>|~#0-th77cvrӛus2./y>3tv8}`nWíJ{K#cqШ#s^g*1Qo<Scwl?x8"}osk orfThv>l_}hH`W*V6#0xī-AƵmN0 :J*ܢ$/SY1֛+cs;HKZ[{KhV]7Cl@F72lX83ӵw#r-ݻ2~@dLr6yםwMVjUXQ=uB>;S~n8uVΔ35{kwiGsB֑ղSwLNh=Xo+ӧ=>Fs/xCoձ:#0R~蟚?d~T;qNN[X}/[%esOJt*y;-nX/S2N]o_;{:^{3nrõ?~v)0i![;[. Moեs*˥x-s{ry#0&c)!#0F)X1I&)b뵢N.^~:[5MK3m?#s x0軨dDWL}#s[ZvXW:B2PI }bA:Km:v)@#zƩŕ]sk]#zlM#c)v a8P!X/Dyf[u+ öː#eNaGjb#zj2-"i캿;?r~Bfk@]#0j#e^Qs}nj#eu߱Eyɥ^zK{wfᮝ{B-NM2JwWOoe*7n[JU?Ϗ6 _gJ0V*y::9sAR#0#c:DFd8 +[niۏ<ڔv#czagJY6)B0Yي[X#r$I&Vs%L+ubm$SP0+9LjtssسϞ#zFՉA k2#z*#nN_f2Ƀ![QZMuϡsk,/ko#0,VGVSaqZUvsgWNChFo<0^l*aR+7#0  =ʏ{d8Ja? ;QQV6cGPaD[u?̹am#0Zg~Ѱwa&KF}`^<6Tkğ^#z1P=&3l#r(r,/g#eem En|#nv!<;#cl)L?nzMov_CI?ݱ{lXHTJV`]|kg>޻: hm%:QqmhN[^VY JI*p*;>֪Lv؅w޽˛sLr`j*#0#0`P*#0yiTŕڤ% XOiuכAo#nOHՊƚb[zGsA#0**H:jɕFgbY Zqd l[YWrZ1Z#0g#0K^SW(O{9fr~#e9XeY]3C[J#e3̸Ac:*#sdB-Z#elnk+=K#ed 6@Lǧtno[cob}}vn[O-6v`HQA%Pj۳m02_^U#sMƢkoH#s9h#n2IW Z#e#e|6PyZι:#e6Svg"m@5LZ(^ w17>ʓ:^_T>we :#z[MK٬9t/Kd cʅIg]me#ngξ*Uq#z=_Q+~#su}w-" !8-{nLS[#n0N*Y%pZuu[^2+j!8 2IdPdARƵ2r"xSnoIyqUܶF/5vX:m}e#sKiks:?zǮ?̒uhT`X;#eF) #0"WM׼,0UrEӍnux&Д#z-JAvĠZOÓod)4p#z6P "C/6Zj,*O]g, E?x׾;n?x򥅍ur6ʂ]my IZfPӓ3۫ceuۮ%l>kjs٩#e٤0Ll%噍f&7Ak82u#0Jfo#cNln^^{#e#nJyiY痍=[>~%Vq[LqVs%P,d 9awL#n`LgX32BDݟع?c=ȑ71i#zmBrܢlnbV%#z#s 2#s^#zV#zyr&(4vQ0M@LC9g?lm#rph=(dr%גF*6QDկ#e#e>L$N#zvNV#rL WCe0Δ+ T+Ww#no߱m#e?=wn_#r3s#nㆮdsbνwSB#sO"KI$Lyae$ m32GI3L@Hi뵥h!L#eC#0;}n,}#ca+ľd#c^*GZrx4]/+dٽmM#eW7#zij5?đ$|#eX#efeLRf+(l^k#z4IԽ{#sE#sm9cj?|۾tdffgPVr.JeKuhtkA^̽/=cKImݵk*#nz1(vBZ$#eY[Djܺwdk#c#n~-m]#e!7 fX<|kbScO}]vIHzucھFNWo:pkERdnДlT/]J2B)2uaaxuy1Ԭ(w34N[hebBcl#s,4"b+ADĸ&dJ˞un3@ڙ?ԙsk@%1#et߽wR.,7rZ~:I PVBdVhVs{U7kGF&9YWy6jP&7T)[ˍD "a#r [ЏaqpYrtt#c;J<4V(q< 6cۮ-ؒz1@tqr~yzq҉·pt#0`s jܹ{4#s,ZIidtrnY+U K"1U(c5vۭT?y#0#0#0#0IENDB`PNG#r#n#z#n#0#0#0#rIHDR#0#0#0F#0#0#0y#0#0#0 `#0#0#0 pHYs#0#0.#c#0#0.#c#0#0#0 #0IDATxݜw]yOvbA$%RZ$cGLƎGc턱&LV,KqbSDEN l/wi ys=|΅J)pE)!,a_C][/Wt~ǪG^#0_6kgO ?EUFRE+K@dˑHwY+[W)lםfqz=#eWIT8#zEQ :WIե24@κHAu2uRL0.CRr#s@X0L x*HHyMn..`!EXT#e6U_%$V=kĀ($Dʈu_$g (8<칊W~u_kb!lKz#e#ekZHQ#0(IY$t2^e@R*X[,2D !0"Vq.#nHJţϧ4dSX)(Ѓ,._t5⠵p֤IybÌf+@^qn#0ʤ#sNkRrqsj#sN[&!E#0 aD͹#eI2B#sԩN@#nq/Yi]")Ru"Ja B#0s=wy Z齭HsjӺN1JH%c m6%ԙ5IBRD`#0JAd#zϊRsI[RB9cR]C(fڂ%գ42"2J$ `#0y#zTƊ(C8ԣ84"2$@Ha$yBbܑˉ>P #eXS)Ld4e!>Oj^$R)X&:H,#rMQԘ=Zoۄē_#sS#0!!#0P)",8<:^kUmB͟vΜ D(RI!R81W ꭦV$̳TT Tʴ Ձax K^ouz;qWз0)TA0dqX$#c"d#c)%{SM#rŨ#0RqR#s%JH #r#c#0^xYHRz47mXa 4lsp)"#nC¬V?U;ݷ`#cy;`eɀ#n"1+6@@D#n(Rq!EU,BWI)ٙ^z~m#n!8P( #0RJI1#rYM3߂+$yx9mb(R)R#nRMֻ+qGK/PHPET#0+ RJ#0 #0#su#n#0Ba 7e#nzII:uX4JS dCa @HQR#c %bD`4BoW#nI)}t#z#zQBiʰ#0B!N а€Q Vs^#s Y$Iїr#s#n3"tjR()C#nP5#0q!EMaH?vX}L7p,ߟ=}(8u0#ci-#c&֙L$Sa J&#nT#n #0p)B@kJI]sfy$o;6S ̌ w, ~3L#s$nOD#n(M3#0!U^Rs|颶X#rEc=#sN%d&mc)g<_=4u#0ڊ bP[C#n R#0$I]T`|}nP핯ܺz |A#eNF*Jqȥl#cnma΂Y鴙u]znbρ7dٜJeFnBLDBw:Fo۵!4$#e<414O#e.Xl?p#cʕ"Hm.vWz4v- _tZw}+mBR#0!^$#0@<ةi[wK@2sמj/vzVbMKuzbfi-W$h595+Lz> Vω2I8>z#rJ:#cG[Sg23)̓pm2{續H}/(bϕR>10f;p#0So< ȎƉ@Q#e_#zU#0#0Y_<[EKW{gwuF7Gnظu.3۶b+Z0[,r,Cp/q?#et;E!}H)1ST#0nq⑿Z=j߻sj7ڽZЌupϵ?s% w{#ztF5ԯֵcQ3GyqPiZ7Ndvl٨c񓮑5ffϿSHp#0Ǐ/;wo]ֆfQT=T3 #0-fxBij VBKcru^)Sn#zlB}l_a;{ ذ #0Ш4+RV;c/]jW|bm!?;(CYN#c#cj5n+jeDPO؃-g BSsGovOh48y[vܾ;#0 7OlGuzψ}wshB^B ;B&hPc{].g6#cO?/@8жڶ=_^ض6%}K#eYN†c? 2ZS[|n"TB C:JR@b_].塽H)"�@0w~K䱅#r6 M#0|J]؝#00(#e*!=#nD$nh#eB(2ke#z!a,;$IgJ8 !cܿ{vqMfYvJ#e`ɩe]#s`֛֧>588zaj#s#0#0(K~f^{^[Xm.]nbޮ5"?9U!h.as-ܱe+TJI?_FkZe;SHƐtZ;Bg*sM#c:.a"h6Ώ:Mc郷ޔJgj`6R1J5#rAB&zx^_#z:F]*fg_ZӘU/#0`#0"OR@DG#sTxv([6)Ϙ:^njΞعjٙ&#zƚ= qwA0B0D<ǁ:Ռ|`#e_=cE]Ws禗W+#0b(%RRmznc-NlԞW53cii R@gJ%#z)rnך!/]W8qZOc#sZnsm9#caJѕ]M5i|OIZ~ dż:4RJeDD|᱓-PY!{^|g7b#eBX囁$>O];;NJ˫gfn8REάv#sz6ҳ }ٮj),X.a`h0c|ðDF/~/RH6v.fMزeA #r[FK}}#e-[FNB?_|PEz=JEA0&XJPD̅Qmx49gblS. yb,c#nA5o3߽is?2IgmVF^"#0#0% ?hCm֖EH1k#cD_6r׾*뎾b0#r#nժ-fHEhX#02%&Ek|~??5=0-T}FLn#s#sao o4,D*D̟)HyRDK:RNY86R$Ik#zzuWn5k+K3#zeG& Tl"Dg7|9fe-[#s e1,p#zWBoHeT_rtacS);~k_~#n[[X.&l#nz]TtTRm՛ao-nRbM|hF+#e@&Y-K8|Vk#z^`x=ieedc&vk{n%VބK3OʛQ1m#z@C}P(i#c*Bzw% ;Ϸo%%D["jm0v%#e91K*f/k %ghE:ѠYrJGG?Fס$XLzQf@$qpt˲ْne5*}5"+82S#cu2+/V}c3zMoﵛfHNXHKJ!]6#eJ -陥+4#r4R#z$TEyq#ryݏO(e#z帎#c#nH)4EQHǟܾM^w(e,:?Yk#sN&1惿Tӿj"#0:v$v!?/M*5%Ŧ}#n ιVv =R^+ܑZ(oEf :׫#nEBr#0LjI<ټS5MwO&#nmשv;;gˁ;g.@ iP*eM#0|c#z#zFB:݈z#z9w#z[#eZHϧ-|!Fmj!dmijvf04#r(T-Cr#r>k+rԉʢd}EEmփ|Ȉ" :#0:7GD>0I8S~omX]+`EOXw@7s#c)74ZFX7GΥ H?ef#sG }/m&ޛ{{01<¡WDiq[P#n 8V@ @LN#e45Ɖa8V#zU#n81WLAaf`DZN3IU#0k&#cbG#r[^$#0#00,#0@)81r43M 0#0mPDNDX#zeAm/m1:8७CȘBu)jRfY]7Mv˸0#0IyrY*tuif#0#sPq"0JXbCh~8o#0qB$t c{?|5㼃QcL*Vk,,-I)iFalT6I7mc4:؟hudPSAӂ BFHB#nBATS/=.#rI볿473g>oſξ.=wÏvkUDl DNe4?#0XY #n&EX#02IL1#e)%#0 |{ӻkmx #0:sߏ!T RR:LXJ,+}I"Jۢ:X閮80rKcwdI)arY{>o(XJ{!`e,IB%HnBSqB3Їr|,Ҷ9#zvnj8Ϥ#r52hQw"Sx a:qouKfSi8m ("VEd޼mх‰dM#s5fA!Kz։+%#ekwi80.D^>GNlK G^?#0#0PIDAT;3gp9#saZn0Z]OrC_~/sr|^q$f!12Lʀ*cR.ez>ְG#s}*)R mL %:L/UNhR=G3U:mtڶrLXܳg#r/X(dqA#sB g}o߹#0#06o+e3(#npYKK٩zkj0N}׭4#0#0"t~[o53ZŸZ5Z^{~hXq 702|LX{?B@ H[vZEl>:6{ǷPJo @BȅrdHF27l܆..m&S_ZsǍ#0McXʭ^ް#s@8iS𱟽oI?#zds։3Ϝ+#e)uj_-s:rPje-K%3WWgWyGwU7(4ͯ-ϭ;򣁼-4;]/zBfӇoܹ]3Z#0.TTaWe!#e~xxg8>+AMn kdؾGL+0nؖBhZo#eO=[(]8M#z5]2R~|K{Υ9.AƌA`蘞?{h_x[& ١yfVo.L^A/QB?t7:]gr6%ԙӛFzVRӴ!jm5Bsرٹ#c#s#s.DJstt?8qjџ~O=/ж#0O/}nܚ):˃ .*Wfɧ_EZZ#zٴ42a-r?lkr5l(K͕E:x뻾ZN{wuqua;‹3=|u B_8?qlEFQa˲m8}bdp)uޝ ػȤ/&I#c40l>޿#soDWKǏ< �f*W*Z9aik_cG3܂UOI4#c>CԆG.KWh#0#09u A_{}s}}mH?c端o/MLzN۷#z#nޡ#sb#nzv_6sbbZ*L;BIʋ;͆toz}GT=4`!کıv ŕzX$080Шݪ=a4ϝ#z Ĵ4!ÊFkhd3—tXJyYm#z#zH:Z/w+jk[?ȡCcnb7rc6)fGqvrRf7~KjZ)S?X[VPGa{v;~267 iG9;snuuS;&#s>oOg #0 `,a5[#rдRaXG)QQI#nBwO+tP- #0#0#0#0IENDB`PNG#r#n#z#n#0#0#0#rIHDR#0#0#0N#0#0#0#0#0#0e#0#0#0 pHYs#0#0.#c#0#0.#c#0#0#0 #0IDATxyu_wι/,$ &EJQԑ}qmoACz#zD%ټ۲VVC=knگn5T#s?Iz{;VC-zoTگn)T3^-*.ʼn-vji0zcoo)Թ掵KϢRCSO_[Uکl)[ucpznԙtKznTqMPÂnTVfvl]-ꏿ=7߹i2*fSJ#nN2ŖC^Wo//o#rΦe- ۶:+/:"#ee;0QsS]}-SǧVxVe9vR.ϰ: SHPlVDm{)do@3@|ɷ%#zetg]5WFHL7%6p #0b~h5nqLjEa%UсٕU8Pw-_~wvXf[fm#0Pj?)8!3r5ЖWY#z#0"2#0C@;#rY[Ɍ`-j?@%,jX/Ĥ[L#sc=u縯RU/]!/){B:Co#ȇllmJU (aD2꽲?j̬||cW#nk#ec#z=WuRL^tTT#zi^>ߨ:Hz([FU l鿟d>bVaM7Bsů!|;=lڒӫEU7||ϕ/nMwAYfjU-*6D"%b^gݚzx~Fb7TZToC,RMۏl#0 ّZGNJfWZTax#0b$叟ƫVs#r}/Zhkrg,,XK?ޫl%#0mlMZZTB,.7]<#cg_ua#c~u,en.Ƀ;M%#zZmj-Kr"yj&qw:fC24j[*I,q #cL͖˟ț Οph㫨[JMҮXގ$|0oU-*S @Mrq7<{SPXw1֩Wgիʻ#coOb)#e̛".|89#zI UѪmoO;=#nS89r#zPXE#c%w#0ŪZZ5k#eiU1SFj#n^y2#e7o,yadltu3|jVI6ٱ#z"O3_=>AEemp;c+w#eO5Z⑆hMWdz+WIKkġY5WjF#nOqkt#s.=~X7F>{fhhR#s7TqZl2t;/Sg#z|{_orE+S乗kj;˹~S5/f#zix| ƖO/_;gS ewv@d5SmQ*lQS QhR#0 .RN#r|Od^ci(#cF3pr6E: DΜf&T{U].!#n;:PhFR&_0ТwΏ_xu&#eE+#n1K(zq[HVLڳpB:*eaO|VzNAcM#eZڮ訐onQ WAX ꯼=dPEK> d=Bj1ѝkJ PQBnUIm} @eP9JF-C#sנkٝ #n1@>5BfNfTԅ�F w!D8(`$!469FFBuDlP/mCR#cnBT#c-:iP0XVY#c*#nxd#0*3#0_$؂x#eS?io0~"$M:C "CpWQj:#c0Ci,S5ձ {#e Z(ܴ#zTȏߟV#sd#c#s#nJB2gcɘ&U#00;1JQM[3UҜ=7J_u/^sd E{tܲKUXQVCQο/,0lgWO.!#zbT #n]UW0!`#0G#ssd#0][нط3JȐ#c~6Q]J|uë4twv;޻fDqFhBtI$qk-O*leZ#0%#zF,(%#n#nC|6ur:)h3DFI&|1Up|yjQ/uݎ#ni-ӳMtC3|g#san3`k}AMTUx3U1h07??t LMmSgN-wy#s0_A7yҪbWjM[a}Li#0q,o̙xgcݯu?#coy [>JG^x]?#r>#sy3)Jcsc(ulyY:#s:aw}{G_9ɎI=+9baϜzNJr/#e#eW̹kwBO!rD,e#nuW۶1bz2#zy@#s<#s75ZJ0{ &#nSD̠ʳ)F=vrZTJ}H<{v@{w;JRz(3 e徧hK"` *HP#0yLXwso7D#zsE>c=Ү#0J8*J~KgK9ݫGmO|+sՑ]B#z̨gVmHxyi@!g4ܖT,A)#zDyͺbe Ԓ>sE!=W^ Z:P@/]J k*AwKøUrɳWK;c{ #0 Oh@ܕ14#c =!*hb#0(U۫M_Quwcv̪1H Tn(ympWK愚qEZv/PJ[#e6U֬<TꗾD vk4]V]]$(mﰲ3kobmq .oowT3$.MRR*@ #sDcaj#c#0r/0tKz4Mܒ[;z]Q#0rEk0M$[#n Q(UU#cdqξ]^s^fU]Jy{H6t5ze{7vV@NcSZ$QB{#ea褝#z#0 #c#0`۳3QH`Zsdp6M/|zwA[p-g.վJ#z#0Ln{®HE8y*Fu߳$|w*3#c3ց]2Y KPst )3Z>#s+%;}c߁z-#e,"][10‡$J eYj0R*M&CWɋc~Թ TN^5x8}qxF[cKϙ#zBxqJ:&3 D#n߳JsmaQu$Rv2#sr˦r>5[/ChrktDCj!nOI={ZlZUs=c!@a*r/Ix"8q@(H?r _ͧF+MB$@*TNōM#0raZ#n`5+n#n3es#0 HM~1#s*%#e]}_6#n#0ҵc#r#s;yq$gf#s;M$k/]Vpy +1(Te)#0@UVRG#0st4kT#0<&P)fGϞ ;hG0,%#czalWXDѻ<$G:=m Q"BQ-d@=Rh2hIu 5{s#c6nnfsSa#0[ܔ+y`ff2R#nB)U5@KB^)^Y#0#0!-c#cFI3=?L4#cӣŊC@ @eA#0U&t/BR^#00U (NtbڀFɈ#cp#nxWg w㌌wݡ&朢/򔼷ؤGOպB"#0d&UTh@#z{LYxJK̺21F#c*pr›#r#c#zMjT:sUeI#0)#0l+S=g+0ͺZ(*|%Wb#0JWr. 3y_njg#0iGd=#sJ_TKOM̑72@nyLX-fKE;YbRUW#0ЂQ#0$2sn+F%Dĩˆݶ#0 X /Gsa T`! fPWKK$y(Ԡqgq:399#rG>"5ˡBU4.+;UL vBPr(*/f`0GL3S)Bܮ#0#0KaL4#ez.;>*︳[%=#r#0,f}٪r1)[#r#0~!R#0!,)DD#eBB(BU]rJKy@rsj$N#0j,EXW+j6!N#0I&NNA@#c.=ҩHΙǝW.HkWʣwcұP}@K#sUT+=ҹ!4E5t&f}/0K#zTݒеq#0@EwDՐ{#s0w*~pwq*2 FK!N0Tppssx4>8@D5A[V4H1$a*#0#0e*Q`>/;J兒}rs#0/] ~n/{:zu;VJ? |9. dmkHYt!z$IP+K FgKQ".9&y~^hQp#c{OՑZT#0#0”_D$bĞ[Wg#0]}$,,JAD}tm#0 *%~#n皟5#cfЅp;c5P=#nZD"S5XH<ͿQ.%M_D!ܗsm#z(Q.͸F󞤄#z,ܱvUuhz!2SB==C#nQzxKL#c4a2#0R$|#n0%| _Ip㻒7.fQ]Ǘ#eSB@"U* J#z vw>cE(*Ɨ?E[{ӈ.Je#erCuELճJ_ Q4X˺NVUrx#ro5ᑣ$|55#cǒ+#rFpbFVnȖFk炇ժ?=k#n@(xM걓b #cbgoFփ?HPՠ4}گzMTD#ePiT#z#0Hp)DK7L>+B5I7Bù0!P`̞+U85)Uji#z)T7@3ӑ@#nXD"f//5B4?#scq!#cC$B@K|5#zzbaSžٖB0hSY ^Dh)T1= P"r*Pjl:Ҵ얇8b0N0I#r* %>EB%#n#eZG{w#z"%EL2 #0$#zB2 OeDJw~n#z)& )`"$#cA(#s(T(9At>9jxI$@P#0 >FČRJ9#eH#0B )ʊT|5,Z"!r&i$*@!I$#0#0Ve:sT#zBc#nNy臎x#s8SR#0 !F.#c#0G9#sF1LT#r5H)8WE4!%#0@ DQ)$mYbӪ֊N#s4sE9!gz"SR3mTW#sVU$!P#n)8G#0!0I!#c~Λgͣ߼nGW#0@ϏB $ƺď$ d#0#0k#nArb#c8{ͤjB,a!Jb`B<4u(@1 #0XRkRJ&cl^IӪK,D$A Mc P#n#c @T2$I(xfnuLl#n e#n#0Pb.0<П6v#zI#0@p$)"$Q=#n?qWj7#sF(*R0H2E#00%WypI. `b0  cA#0,#eRxqA!U 4#e-eXW:3 " +i]w?2/%o#c-)c:2or催;.{2zL#rG%7h#c* #sg#rst#eީm6#eRjKl,*~?>2;13ln#e39g}S2؟n ^AiyD zjطhoWuY{ʏ@̛iz샗]]*U&ym[z>5w]Kb]f`]ս}dl/_ }ئW۾y)*~> wVI۪"E}+jX4)+M}_:KzMpp7O.`#sVȪn7~#nW`F|z3y~L Of޴ݍ#03T+Ge7w;zחlX[XHDBZo{mA.?]m#0b2y7R#rX[/6Wм$6#zN٧7rv7֖mR_LW,#zX}u=̓LeKPGJ8=ӳ]|~Ǫs]#nSR) F5і#z6&"?wp<#n^o6FNMRY=| #eoWxbbs+մy΋6qqJyi|rނAu#zG܃#0XQ~ 5#0#0@:eR*Ç>Ȏ8$w~s"ͮ9#sfVB4ܷ~ B0`3{W1$C}!s6;jo/_xa^y#0V!fb+><#ci9#nt@ QUpFryefةiHԹqz&:x3#rQs1 !<]uM#sSڻye#reiHLr".H*S)h&ibDtbDkF*۽ef#cfH Kz4=f.f&&#ze Kӧ}w}==մx*5;_#eYcw{`ѰjI`a_vǎWL˖ma¤]kJ!n jժ@WCG.MLBP̗JX543uMoWY5y{i]^*~ߛKhNԚW`jfa痖-7TR#ek#cLҦ4rifnvC}ȱyưm|lqyy~xu:19uמAǪ1Mp NMꭷvvv;98R>jY]#evͺu #r#syV[-W*<_]7Ǐ*]xn(ё#ck#r#r#rqZmL#nfln#z6 #zO޴yúF_b3pFNϩ#n%SZS5l6sr577?_)ϖ$ۿ/?5} ť .زrL֑krU;/jx򹘦zޖ{>_Mz7c~qnJWXEɶ>GN8n4gggž5꣟X3Ja#cd~h;>|=錓#efѣ^}}/ ii[0#rlz#smߡ@TL<"pR-on2~r0 l[oWϮW|w˦ee21#cM~5B{#c>~A}}_%TO;(-տv)oNk)3#s@ej7{jV*%:SxHAK?1Tv#0VH#n,#0 %#0L#e݁2+#zoQdJD6=#sBiJ*Y6..X2=|_7~NKWw`ȪVdU#r1a9^k-s#n4Èn*+0:5hfX.|fb%3h]/OMDqU7nڲ#r PMz~Кm= 䭖ZFSWCB_2FyGRM+FgbjA$JKRtdֱ@ft#c@3#sK+K4#sNbLdIޕz-]s+ q0d{{A0M]4^H$k>vjty˪^h լC pTD3#s~㮗h&&gz,#sD(8obScGZv]?e&Yrujo[#rl!R.άLig!ʵRNIa#z1U%#sG&^mWAI)$!@w&"(b;J^%mXC;A.vg@3#0r9zVSSdDT7c%Tw=$"U`*͊53.byRL#sQb4#c#0e;WiFs;w #0c#c*Up.#0DaS)m#eC#edr9N*Ų-dHaїSmrh$ BQ,` ,Θt*ǔ~zE(#0aa5W^oy/4#0ri醫.[S0cE)w>#sc󀉄^{ cGG8S(C<wg+,#z#0O=v;oŚIO1꘸:N6>ݷw܆)&,~$PdIZ޲~4.KNE#ewy&m&CZGy!R[!Z钍[^yNiBEnV],(moݸ5knt )K|gЖ^ZvSxK_zǶNf/uUw#0&PoI7Xڭi mjy(g.>&8CΧήѴXg`#eh}OaMoN=Jwa#0#0zzv#ewm;++e5/TZ?q{x%@sv#rª~ԱkK*cŰp#0H6txú/}1* D@.0ܝj׆O>?%v?@po~WirNc0K#0(3o|z#0_~(d`}#sOm$Yvh`gyn>M4WyQ$/N=T#nB>__"#0|obUWj &" a.k5ZP#rmhݛ7o9u,=DY˦JvKHځ5I}ꇷʻ_M[7QŲJSGEb(?ՐBLM͟ 6 v[yٹx"qR5g?n&r܆/-R#nT5Vm6:#0#0"ay&115:9}X<oo~̛@d#nEu`6WhNITgl]R1ᛮo ۲Fw#zO&xшn811yɁ^>#n"|^$ҊFJ߹aK>Њ>NME`(*/>̞c#c]]=g-O<bzj;F^j톯/}7u#r]]vq3ÉؿO".pe[7-.c /~F[U3/߹W:@ө-nvJ7էg.ta*#0`jfjfiI3;55vır#c rgYREC;qkfg v& >{#eht0*)#0:ڮ|-lEfb|$F@Zj#0j#r2/ƒO#zCS;;;03r#n"jWOϾ}GN˟y#n^_=7]NXQԌB`4&O&SlYkH Ijj+֣]n).hDXH >?L+1I#zwe% .׮ߥ:WM#eڶf#rU#nmhUn?qm`gOW #e JCuK N2m/XlQ]쓋s3mYTzz6ݸ~#e*,چo:V&G2s_#sgm{#z#0#0c,z1Q0 M |0?377"@dǎκZ8o9=RR#zEaj@2~jJ#0#0#0#0IENDB`PNG#r#n#z#n#0#0#0#rIHDR#0#0#0>#0#0#0w#0#0#0d#0#0#0 pHYs#0#0.#c#0#0.#c#0#0#0 #0IDATxͼw%uK: =A$L"(#cQ]-,Rkym묭c^QKIQEȘ#0L 3_~9{a#0`띮W}}B!xK1-;Ws{D{Go&֛EWۍnS$iCvMߪD#nk^V#e}ٮ7zwq?q<@*4=#nO֛ ^ܜ#nZA=#n(8#zq!zٟ> a PF<-m8f#z4֩#nZ6E4DT6j}Ω_=Q&Gb E&2Dm[VS^UWAnqn1r 4u0[_#ziܦNeMZ`jpOTD&*{s3#nAبDnJGY27=@Ʉ#0#n"]Uڭ24"CTeH1>+z_gn+4p. BU  M˃wZztZ#0sA*$EIH1@`B8#0g:͍ebPjH (C"%sJ]au)]1FA$˪4dDec,#0?(Wt%oٹhv7FC%Hg09{q#sY~PįJtʃjS#0".#0#r1  9 P@:#zi*0#0C@#0CTw}~wj0 U#0Rcg Ԉ{jcVD.@C( GB(@j%AߩWGs} #0#nx#r#0 +&F埗թ2!c1x 4_^ 8#c9!gr9#z#e!^#ek#n%]#n#0#0a*눘2#nAj/]`LA"t|dQ(#rA}HF(+$KG]a2{^@)g#eQD"f*pPIq <׊L}l04dB@Ye!T@7ú6a#00hT ~`74p},ɚU!")! 9@d(3409L#0B|t9 vp1@<{GV(8@#02xȁ煒̣q$#eݡfD@"=#eQ8So&rqR陑t#r:#e6#0{o2=|ndױOk=Y$*)#0BRd` Qrl#0=#0B#0*QUMZ>Q^ʠT#e~w?PY8mMj/ 8Vxu#edQș#sx#eOh<8_N}ꗭpL#n #0B!brU!^[n]U#eB#n:w7t#c%;sp{BQNuja#eQ$u#cL]x__N?<ϦUJ 7[m;#eߘ[!/֛D#r( [QSQ}QlOY=FHslD#eti-썥ҫd7?m(8%sJ%ۯo qKctӕN#0_J<3crU#c@mmWGFҷYXۧƟzo1Q//ܩ#rl?xVR/fE "C GQ9"3ѮݡL"Q E#nB#n A3̈% 4֖z.ƻ!"#c#0#0Yz&7.CюnFmT$֟9VLlӴxm[[ԙJk׮ݲ,Ǖz$v♅嵎]#sSHlж`kM!}qu*V륂m׾۟֋$*u Ӄ}c=}C#cm_A2sqf$Z/sڟM*苏=tݠ#e{@7ogĞ#e:wٲ?)כKd =JyjDbZ:ժ:GONa_=w/m͟~w];NSi4"SۦljZnK2}y 缾#0#0]oO.om9@ԥ.[zь7#z`f*4m.CC+KNw>Ч>LCtmúl#0aKZej4D<*V^0?1Iik^(#eZ8΍_~*Ͻ]lf;#n![n^E$w#ez Pb#c5T&U5XzN˒"d,~åryy?{#r[V#c0X]LjùVـV;˾Qī蒬ƃb|׾ n3goݶEdG^@/ң#zA.e6eW^_{1T#e) /9}[?O$JƴEXsUUp<馑bG4s9"z."ōš27kߕc;Koj1Mn9mt3ӗ9zú&CMl݉u#c72 9+V<x~xm`}r"#0~ۏ(ߗ3:jf0tMQ(#r& Zma2+Q^Z_*n#sW 7N#0XTI(r<l88/sـ;)w;uzH pL3M}fjKNK G2Oa)Т#zTd#c!uw ĒvD7AY N#e{RWK/0x8@)m-7rUAa@!=71=/CuAY}[{3H*EіG͉Zc2"lu"V7⺤m;@&Dx"lwMGq#r8FԕAsվ#0#0" &2fr&CFA1nTK#r& K P"&kpÐbT"#e2޶4%:j(*19tu3x﹎窲Ane2L%#c!#0^t(#e8B˖cmWD(ݠ#e<ЛbJpOQZ^Pք*Y2ԗW˜:WacS:9ۗD|a#s8mx.OJ$RjV*HZ/vLѲWñԳ F_-"#0#00#zlJa#c[#eYrHz4c0u4۝C7-?d:-U=o,a#eC8 1r#sʱfF҅޸qd{ ZbbtE%JȈ#stE/X_OLJ_i":20iG~pOą LRa!pCG#sXbrjgȘ+xųƮِ_mZRܬ #z$#zޕmiDVΞMK8n#zT6tɇ @@$˒,FiF"R._^ZY2DR_Qc^mRi[hܨj$x#ejFs 1 ݓȎ↯K+B9_O`7)$CMjVjͩTbl蜷jr~Z#z?pPoת28)V.B XvE1DrAq:*YcfcɀY/Sx;m Y9*"ApuϗaFn>}#nPϪ#clGXpG#n k+{1ezV=/}2e-gH$|;{řs#swYR8tB`P&#nڲIԁJo6c٥GzD7ZaB]INBV*,>|֠2H_i^r6Z-i(K#rHGtəQxݓ2 g DS]șuG#0A_ak!D{ ;w#nVsc$OT-6Sw#09̢P:bczn,0RrT,BmXN U/l 2/1ⲖZ"l[cW0?1<@틳ra#0.q<3p#zHJ~aB8(5eY&j!<dlx*J2arԘܷ;05_"fj&⶝?)̼K#zə{7yW{Eɣ00#r9Ez}hoP#c#0#0@F#0#01#0d13gNTW릜kuXReP]%K네)#n+VCG#cUƆP*fqڢÊ[YsF}˅3uG=?ёG^(O?oW+^t2;qt*H~#e)1Itv՝=}Trƣ<sێp|@v#cVo{"KCq|{3}0d1b>f!|~t֧9~r1*`i"e?{bj,V#ncgn_~aeR)kF3;7"!帎 s留ׯ&BPfb M}0tT^*#zna4#0b"#zw]$LTCJN,_XKĢQSb.JRX4>H S9zS:Է1] %.uȹVuȞ;8|GR>BD02!( UN,?ٟ[[bf5=a@quu`(ܬLL"LW6ȾCV&&#zV&V+tF]{E 8 Z~ft;mڿW?{؛W$cB@]5|[ZbnumDIJP t]#n҆*hY!MŠa*wݶ$E;0 NL*Zٕ(Eв.j[6Lnmwٳs]ÃdY |׮1-xĩdܜ$qB#cO#rIlT*mh3M T#0JHQ#c#zBtٕe"GR9jԥNiE4S%#rI7to}H#zMKWS)kF~0Ǐ"D4՟9Y8qjǒ(F?<#n"Ӥz-W#0HtdlczxH1§}ǏZL3:V$v3tjt}I.%v;f;/oF|%:i6lpXo#ci?:] x8Q!|߷f0x03B#n.UUBB#nJ|ޖH^QS0S!J~m|9#sJ*ZŸ1p#s>rpfaJ7;1$gc>.q#z#rS#0#0#rIDATbTE r#05"#0Pץ#r|"ԇH#saEX:jgܲ#c#zemߖMc;.:B0g@A8ׇ#zB, Lp #0 #02"H,bI%%$j~^_m.{?;n+AoB*j/>!#c!u#0@Kq6g暊ȧmC1#0$ i#zwѹ^! 6A2#00w(&ɪ#0s&BeEְw;پ"t0ˆL0.Y+!MdS #epߥ@ w_MLO;b[JABHXF`tVN+:Qd"aKXqx4YIѱ@ysr6;:A2@1#rA Kho}o&?)I~}?tDfϯ)LF0H#0 *$hw/ÿY|/X#0v;64X#z E Lk{o1c=z)4x#e*DU(F3dMn*6u_?plʥlOyd}xns㧿f) "ff`230qvjPYǯ}ֺ̋,Ʉȁع٬#zWEQX"F_͙ :vy97e"! D/xIn/[l@,˅Xn&@Dғ9#0@3jk>J˗W #n!pM#sH`&m{[{Vq]7#0$8%"c>#c3ϟZ_Z;_|i l5#eY#0#0 Lb=;{9vxUZ]}y s {pg…qgz l+c/"+ [Fƚ.8]_^_p|%aJ_H$*IRO) U?AEu,,xC#e.}cd⾙Iu- 5i^Q0},n,7*Hdrtxj-΍Iw8#zK7*#nBCi5 Cڱӗ^]IgmFS}=ء[iV|q(1ST*! ~ya9u#ncI븷~z#0#0v !HG#n5go4!^#zKnfJZmZl.߷Z?(n$c MRUL#c#cABՈL]ɮVQZ#zYDrg˯o=:ԡ#cTgϞmWX*Z7kzqjν;&cq ӛ J848@0A(mW~+KQ^C#c>;?~XO^kr7Y.١VYqJۮ;0|/C(ϝzG2t#c8ky{בwRg GGFGjB ([o~~=~#07~!)*E !jZ<#zIdFV?sfnvFm IϞ9l4y/#0#0i#eЍH4ZktZږ{ZyH jL勧oSǷm;qh#0#r<ݠ jZ#r`*:zT;he$Qy/`ӿO#0#0 ŋa&bۜj/#cV4SX#eX#e#e#z#ztO{uwwV.#0h#cWG#r#n#r#n#r#n#r#n#r#n#r#nGIF89a@#0@#0#0#0#z#z$$$$//::::DDOOZZddddoooozzzzȄȄяњdڤگں2Naj}#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0!#0#0#0,#0#0#0#0@#0@#0@#0 H*#exC#sRPA+Xh…0BIrdH/|9&D8s]A@ԩbVrYr+X 7.O벮ݻxIY˘gV1_N@i<^e#r:ͺ*0ѣo[~IӦDܹ*#0 #z A„ 3d _N8r#z9pRܖu[>!#s XхAE6e|TB#0FabV` X[p%ׇ v`m$#z(>#z袁(gh3dyQo/uҐ07#nk-@sE dIpdY_<œ8 %t҉@ "v(T*&^`*NfGATZAYY#n9Uu~yFPr %͹(rbV_t* 6RjN_^^M*Xx]#nʠJ`kbKB6 zfAa+cf㹠k;k$#0mߨn[&Afnz^}4Od$,r #z1p%qjɰU%y IHy#0LϐmqMtաp:cTSV6f̝4ҔLSN<#s#ev9SA#e7E)kYE݉6G4SpHRw3ڨpZ5P΀ʞwUy)֥#ni[٨;TVgԪ:!w,a#z+~HVE6=daM/%fgOlN?`Ԣ/مб?#n]h_HHBR 0!MM#nfR_L,#rn愛)KġoVfu]#n,Ӭ?!: "{4_ry9EJ`QkE"b_#e⳶hA1flM#z #0;#r#nfunction humperstilshenClass()#r#n{ // humperstilshenClass#r#nthis.baloom = document.getElementById(#slayout_baloom#s);#r#nthis.dialogs = [];#r#nthis.menus = [];#r#nthis.panels = [];#r#nthis.onLoad = false;#r#nthis.loadWait = false;#r#nthis.onAlert = false;#r#nthis.onMenuOpen = false;#r#nthis.msgIconOpen = #sClick here to opens the assistant baloom.#s;#r#nthis.msgIconClose = #sThe assistant baloom is opened. Use down arrow to Browse your content.#s;#r#n#r#nvar shuffleds = document.getElementsByClassName ("humperstilshen-shuffled");#r#nfor (var i = 0; i < shuffleds.length; i++)#r#n{ // each shuffled#r#nif (shuffleds[i].dataset.shuffled)#r#nshuffleds[i].innerHTML = atob(shuffleds[i].dataset.shuffled);#r#n} // each shuffled#r#n#r#nthis.refresh = function ()#r#n{ // refresh#r#ndocument.refresh.submit();#r#n} // refresh#r#n#r#nthis.dialogAdd = function (name){#r#nthis.dialogs[this.dialogs.length] = name;#r#n}#r#n#r#nthis.panelAdd = function (name){#r#nthis.panels[this.panels.length] = name;#r#n}#r#n#r#nthis.dialogOpen = function (name){#r#nfor (var i in this.dialogs){#r#nchildName = this.dialogs[i];#r#nmyDialog = document.getElementById(#shumperstilshen_#s+childName);#r#nif (childName == name)#r#n{#r#nif (myDialog.hidden)#r#n{#r#nmyDialog.hidden = false;#r#nthis.help (#sopen#s, name);#r#n}else{#r#nmyDialog.hidden = true;#r#nthis.help (#sclose#s);#r#n}#r#n}#r#nelse#r#nmyDialog.hidden = true;#r#n}#r#ndocument.getElementById (#shumperstilshen#s).focus();#r#n}#r#n#r#nthis.dialogClose = function (id=false)#r#n{#r#nfor (var i in this.dialogs){#r#nchildName = this.dialogs[i];#r#ndocument.getElementById(#shumperstilshen_#s+childName).hidden = true;#r#n}#r#nthis.help (#sclose#s);#r#nif (id && id != #s#s && document.getElementById (id))#r#ndocument.getElementById (id).focus();#r#nelse#r#ndocument.getElementById (#shumperstilshen#s).focus();#r#nreturn false;#r#n}#r#n#r#nthis.panelToggle = function (name=#s#s){#r#nthis.dialogClose();#r#nthis.menuToggle();#r#nfor (var i = 0; i < this.panels.length; i++){#r#nvar id = this.panels[i];#r#nvar panel = document.getElementById(#spanel-#s + id + #s-details#s);#r#nvar button = document.getElementById(#spanel-#s + id);#r#n#r#nif (name == id)#r#nbutton.focus();#r#n#r#nif (name == id && panel.hidden){#r#nbutton.setAttribute ("aria-expanded", true);#r#npanel.hidden = false;#r#n}else{#r#nbutton.setAttribute ("aria-expanded", false);#r#npanel.hidden = true;#r#n}#r#n}#r#n}#r#n#r#nthis.help = function (caption, name=false)#r#n{ // help#r#nif (caption == #sopen#s)#r#n{ // open#r#ndocument.getElementById (#shumperstilshen_accessibility_label#s).alt = this.msgIconClose;#r#nthis.baloom.hidden = false;#r#nif (this.onAlert !== false)#r#n{ // onAlert#r#nthis.onAlert();#r#nthis.onAlert = false;#r#nthis.loadWait = true;#r#n} // onAlert#r#nelse if (this.onMenuOpen !== false)#r#n{ // onMenuOpen#r#nthis.onMenuOpen();#r#nthis.onMenuOpen = false;#r#n} // onMenuOpen#r#n} // open#r#nelse#r#n{ // close#r#ndocument.getElementById (#shumperstilshen_accessibility_label#s).alt = this.msgIconOpen;#r#nthis.baloom.hidden = true;#r#nif (this.onLoad !== false)#r#n{ // onLoad#r#nthis.onLoad();#r#nthis.onLoad = false;#r#n} // onLoad#r#n} // close#r#n} // help#r#n#r#nthis.popUpOpen = function (url, width=300, height=480, id=false){#r#nvar left = (screen.width) ? (screen.width - width)/2 : (800 - width) / 2;#r#nvar top = (screen.height) ? (screen.height - height)/2 : (600 - height) / 2;#r#nwindow.open (url, #s#s, #slocation=no, menubar=no, personalbar=no, status=no, toolbar=no, width=500, height=270, top=#s+top+#s, left=#s+left);#r#nthis.dialogClose(id);#r#n}#r#n#r#nthis.confirm = function (ref){#r#nlocation.replace(ref);#r#n}#r#n#r#nthis.audio = false;#r#nthis.audioLoaded = false;#r#nthis.lastAudioButton = false;#r#n#r#nthis.play = function (uri, target=false)#r#n{ // play#r#n#r#nif (this.lastAudioButton && this.lastAudioButton.dataset.play)#r#nthis.lastAudioButton.innerHTML = this.lastAudioButton.dataset.play;#r#nthis.lastAudioButton = target;#r#n#r#nif(!this.audio){#r#nthis.audio = document.createElement("audio");#r#ndocument.body.appendChild (this.audio);#r#n}#r#n#r#nif(!this.audioLoaded || this.audioLoaded != uri){#r#nthis.audioLoaded = uri;#r#nthis.audio.src = uri;#r#nthis.audio.load();#r#nthis.audio.play();#r#nthis.audio.onended = function (){#r#nif (humperstilshen.lastAudioButton && humperstilshen.lastAudioButton.dataset.play)#r#nhumperstilshen.lastAudioButton.innerHTML = humperstilshen.lastAudioButton.dataset.play;#r#nif (humperstilshen.playNext)#r#nhumperstilshen.playNext();#r#n}#r#nif (target && target.dataset.pause)#r#ntarget.innerHTML = target.dataset.pause;#r#nreturn;#r#n}#r#n#r#nif(this.audio.readyState < 2)#r#nreturn;#r#n#r#nif(this.audio.paused || this.audio.ended){#r#nthis.audio.play();#r#n#r#nif (target && target.dataset.pause)#r#ntarget.innerHTML = target.dataset.pause;#r#nreturn;#r#n}#r#n#r#nthis.audio.pause();#r#nif (target && target.dataset.play)#r#ntarget.innerHTML = target.dataset.play;#r#n} // play#r#n#r#nthis.menuAdd = function (id)#r#n{ // menuAdd#r#nthis.menus[this.menus.length] = id;#r#n} // menuAdd#r#n#r#nthis.menuToggle = function (id=#s#s)#r#n{ // menuToggle#r#nfor (var i = 0; i < this.menus.length; i++)#r#n{ // each menu#r#nvar currentId = this.menus[i];#r#nvar menu = document.getElementById (currentId + #s_details#s);#r#nif (currentId == id){#r#nvar alt = document.getElementById (id + #s_alt#s);#r#nif (menu.hidden){#r#nmenu.hidden = false;#r#nalt.innerHTML = this.msgExpanded;#r#n}else{#r#nmenu.hidden = true;#r#nalt.innerHTML = this.msgColapsed;#r#ndocument.getElementById (id).focus();#r#n}#r#n}else{#r#nif (!menu.hidden){#r#nmenu.hidden = true;#r#ndocument.getElementById (currentId + #s_alt#s).innerHTML = this.msgColapsed;#r#n}#r#n}#r#n} // each menu#r#n} // menuToggle#r#n#r#nthis.sessionTTL = 1800;#r#n#r#nthis.sessionCheck = function ()#r#n{ // sessionCheck#r#nthis.sessionRemainingTime = 0;#r#n#r#nvar request = new XMLHttpRequest();#r#nrequest.onreadystatechange = function(){#r#nif(request.readyState == 4){#r#nhumperstilshen.sessionRemainingTime = parseInt (this.responseText);#r#nif (humperstilshen.sessionCheckTimer){#r#nclearTimeout (humperstilshen.sessionCheckTimer);#r#nhumperstilshen.sessionCheckTimeout(); #r#n}#r#n}#r#n};#r#nrequest.open("GET", this.sessionCheckURL);#r#nrequest.send();#r#n#r#nif (this.sessionCheckTimer)#r#nclearTimeout (this.sessionCheckTimer);#r#nthis.sessionCheckTimer = setTimeout (function (){ humperstilshen.sessionCheckTimeout(); }, (humperstilshen.sessionTTL - 180) * 1000);#r#n} // sessionCheck#r#n#r#nthis.sessionCheckTimeout = function ()#r#n{ // sessionCheckTimeout#r#nif (this.sessionRemainingTime == 0)#r#nreturn this.refresh();#r#n#r#nif (this.sessionRemainingTime > 200)#r#nreturn setTimeout (function (){ }, (this.sessionRemainingTime - 180) * 1000);#r#n#r#nthis.sessionAsk();#r#n} // sessionCheckTimeout#r#n#r#nthis.sessionAsk = function ()#r#n{ // sessionAsk#r#ndocument.getElementById ("humperstilshen_session_progress").value = 0;#r#nthis.dialogOpen (this.sessionDialog);#r#nif (this.sessionProgressTimer)#r#nclearTimeout (this.sessionProgressTimer);#r#nthis.sessionProgressTimer = setTimeout (function (){ humperstilshen.sessionProgressUpdate(); }, 1000);#r#n} // sessionAsk#r#n#r#nthis.sessionProgressUpdate = function ()#r#n{ // sessionProgressUpdate#r#nvar progress = document.getElementById ("humperstilshen_session_progress");#r#nif (progress.value == 100)#r#nreturn this.sessionProgressEnded ();#r#n#r#nprogress.value ++;#r#nthis.sessionProgressTimer = setTimeout (function (){ humperstilshen.sessionProgressUpdate(); }, 1000);#r#n} // sessionProgressUpdate#r#n#r#nthis.sessionProgressEnded = function ()#r#n{ // sessionProgressEnded#r#nthis.dialogClose();#r#nthis.sessionProgressTimer = null;#r#nsetTimeout (function (){ humperstilshen.sessionCheck(); }, 10 * 1000);#r#n} // sessionProgressEnded#r#n#r#nthis.sessionRefresh = function ()#r#n{ // sessionRefresh#r#nvar request = new XMLHttpRequest();#r#nrequest.onreadystatechange = function(){#r#nif(request.readyState == 4){#r#nvar sessionRemainingTime = (parseInt (this.responseText) - 180) * 1000;#r#nsetTimeout (function (){ humperstilshen.sessionCheck(); }, sessionRemainingTime);#r#nhumperstilshen.sessionProgressTimer = null;#r#nhumperstilshen.dialogClose();#r#n}#r#n};#r#nrequest.open("GET", this.sessionRefreshURL);#r#nrequest.send();#r#n} // sessionRefresh#r#n#r#n} // humperstilshenClass#r#n#r#n/* system defaults */#r#n* { box-sizing:border-box; }#r#nhtml { -webkit-text-size-adjust:100%; -ms-text-size-adjust:100%; }#r#nbody { font-size:100%; margin:0; padding:0; min-height:100%; }#r#n.clearfix { position:relative; display:block; width:100%; }#r#n.clearfix:before, .clearfix:after { content:""; display:table; }#r#n.clearfix:after { clear:both; }#r#n.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); border:0; }#r#nh1, h2, h3, h4, h5, h6, hr { clear:both; }#r#nh1, h2, h3, h4, h5, h6, p, ul, li { margin:0; } #r#n[data-type="paragraph"]:after { display:inline-block; height:1em; width:1em; content:" "; }#r#nspan[contenteditable] { width:auto; }#r#nbody, h1, h2, h3, h4, h5, h6 { counter-reset:list-numeradic-main; }#r#n.list-numeradic-main { list-style-type:none; list-style:none; padding:0; }#r#n.list-numeradic-main > li { counter-increment:list-numeradic-main; padding-left:2em; position:relative; }#r#n.list-numeradic-main > li:before { content:counter(list-numeradic-main) ". "; position:absolute; left:-2em; }#r#n.list-alphabetic { list-style-type:lower-latin; }#r#nul { list-style-type:disc; }#r#nbutton + button, input + button, input + input { margin-left:.5em; }#r#n.center { display:inline-block; width:100%; text-align:center; } #r#n.center > * { display:inline-block; }#r#n.icon { display:inline-block; width:1em; height:1em; fill:currentColor; }#r#n.big-icon { display:inline-block; width:2em; height:2em; fill:currentColor; }#r#n#r#n/* Fonts */#r#n/* Angelo escreve aqui */#r#nbody { font-family:"Century Gothic", CenturyGothic, AppleGothic, sans-serif; font-size:1em; }#r#np, li { line-height:1em; text-align:justify; }#r#na, .a { font-family:"Century Gothic", CenturyGothic, AppleGothic, sans-serif; font-weight:bold; text-decoration:none; }#r#nlabel, .label { font-family:"Century Gothic", CenturyGothic, AppleGothic, sans-serif; font-size:1em; font-weight:normal; line-height:1.2em; }#r#n.legend { font-family:"Century Gothic", CenturyGothic, AppleGothic, sans-serif; font-size:.9em; font-weight:normal; line-height:1.2em; }#r#nblockquote { font-family:"Century Gothic", CenturyGothic, AppleGothic, sans-serif; font-size:1.25em; line-height:1.2em; }#r#n.footnote { font-family:"Century Gothic", CenturyGothic, AppleGothic, sans-serif; font-size:.9em; line-height:1.2em; }#r#ninput, .input { font-family:"Century Gothic", CenturyGothic, AppleGothic, sans-serif; font-size:1em; font-weight:normal; line-height:1.2em; }#r#npre, tt, code { font-family:Consolas, "Andale Mono WT", "Andale Mono", "Lucida Console", "Lucida Sans Typewriter", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Liberation Mono", "Nimbus Mono L", Monaco, "Courier New", Courier, monospace; font-size:1em; font-weight:normal; line-height:1em; }#r#nh1, h2, h3, h4, h5, h6 { font-family:"Century Gothic", CenturyGothic, AppleGothic, sans-serif; font-weight:bold; line-height:1.2em; text-shadow:none; }#r#n.caption { font-family:"Century Gothic", CenturyGothic, AppleGothic, sans-serif; font-size:1.25em; font-weight:bold; line-height:1.2em; text-shadow:none; }#r#nbutton, [type="submit"], .button { font-family:"Century Gothic", CenturyGothic, AppleGothic, sans-serif; font-size:1.25em; font-weight:bold; line-height:1em; }#r#n.bar { font-family:"Century Gothic", CenturyGothic, AppleGothic, sans-serif; font-size:1.25em; font-weight:bold; line-height:1em; text-shadow:none; }#r#n#r#nins { text-decoration:none; font-weight:bold; }#r#ndel { text-decoration:line-through; }#r#nh1 { font-size:2.5em; }#r#nh2 { font-size:2em; }#r#nh3 { font-size:1.75em; }#r#nh4 { font-size:1.5em; }#r#nh5 { font-size:1.25em; }#r#nh6 { font-size:1em; }#r#n.badge { font-size:.9em; }#r#n#r#n/* Tables */#r#ntable, th, td { color:inherit; font-size:inherit; border-color:inherit; background-color:transparent; }#r#n.table-transparent, .table-bordered, .table-striped { width:100%; }#r#n.table-transparent td, .table-bordered td, .table-striped td, .padded { padding:; }#r#n.table-bordered td { border-width:1px; border-style:solid; }#r#n#r#n/* Scheme */#r#nbody { color:#c393a44; background-color:#cd1d2f9; }#r#nhr, table { border-color:#c048ba8; }#r#nh1, h2, h3, h4, h5, h6 { color:#c048ba8; text-shadow:none; }#r#nmark { color:#c893A44; }#r#na, a:visited, .a { color:#c393a44; }#r#na:hover, a:focus, a:active, .active { color:#c893A44; }#r#n.caption { color:#c048ba8; text-shadow:none; }#r#n.img-smoke:before { box-shadow:inset 0 0 .5rem .5rem #cd1d2f9, 0 0 0 3px #cd1d2f9; }#r#n#r#n.panel { background-color:#ccce; border-radius:0.1rem; padding:1rem; box-shadow:none; }#r#n.panel hr, .panel table, .panel td { border-color:#c393a44; }#r#n.panel h1, .panel h2, .panel h3, .panel h4, .panel h5, .panel h6 { color:#c048ba8; }#r#n.panel mark { color:#c893A44; }#r#n.panel a, .panel a:visited, .panel .a { color:#c393a44; }#r#n.panel a:hover, .panel a:focus, .panel a:active, .panel .active { color:#c893A44; }#r#n.panel .caption { color:#c048ba8; }#r#n.panel .img-smoke:before { box-shadow:inset 0 0 .5rem .5rem #ccce, 0 0 0 3px #ccce; }#r#n#r#n.spotlight { color:#cfff; background-color:#c008; border-color:#cfff; border-radius:0.1rem; padding:1rem; box-shadow:none; }#r#n.spotlight hr, .spotlight table, .spotlight td { border-color:#cfff; }#r#n.spotlight h1, .spotlight h2, .spotlight h3, .spotlight h4, .spotlight h5, .spotlight h6 { color:#cfff; }#r#n.spotlight mark { color:#cf99; }#r#n.spotlight a, .spotlight a:visited, .spotlight .a { color:#cfff; }#r#n.spotlight a:hover, .spotlight a:focus, .spotlight a:active, .spotlight .active { color:#cf99; }#r#n.spotlight .caption { color:#cfff; }#r#n.spotlight .img-smoke:before { box-shadow:inset 0 0 .5rem .5rem #c008, 0 0 0 3px #c008; }#r#n#r#n.card { color:#c393a44; background-color:#cfff; border-color:#c048ba8; border-radius:0.1rem; padding:1rem; box-shadow:0.5em 0.5em 0.5em 0 rgba(0, 0, 0, 0.5); }#r#n.card hr, .card table, .card td { border-color:#c048ba8; }#r#n.card h1, .card h2, .card h3, .card h4, .card h5, .card h6 { color:#c048ba8; }#r#n.card mark { color:#c893A44; }#r#n.card a, .card a:visited, .card .a { color:#c393a44; }#r#n.card a:hover, .card a:focus, .card a:active, .card .active { color:#c893A44; }#r#n.card .caption { color:#c048ba8; }#r#n.card .img-smoke:before { box-shadow:inset 0 0 .5rem .5rem #cfff, 0 0 0 3px #cfff; }#r#n#r#n.formulary { color:#c393a44; background-color:#cccc; border-color:#c048ba8; border-radius:0.1rem; padding:1rem; box-shadow:none; }#r#n.formulary hr, .formulary table, .formulary td { border-color:#c048ba8; }#r#n.formulary h1, .formulary h2, .formulary h3, .formulary h4, .formulary h5, .formulary h6 { color:#c048ba8; }#r#n.formulary mark { color:#c893A44; }#r#n.formulary a, .formulary a:visited, .formulary .a { color:#c393a44; }#r#n.formulary a:hover, .formulary a:focus, .formulary a:active, .formulary .active { color:#c893A44; }#r#n.formulary .caption { color:#c048ba8; }#r#n.formulary .img-smoke:before { box-shadow:inset 0 0 .5rem .5rem #cccc, 0 0 0 3px #cccc; }#r#n#r#n.nav { color:#cfff; background-color:#c000; border-color:#c666; border-radius:0; padding:0; box-shadow:none; }#r#n.nav hr, .nav table, .nav td { border-color:#c666; }#r#n.nav h1, .nav h2, .nav h3, .nav h4, .nav h5, .nav h6 { color:#cccc; }#r#n.nav mark { color:#cccc; }#r#n.nav a, .nav a:visited, .nav .a { color:#cfff; }#r#n.nav a:hover, .nav a:focus, .nav a:active, .nav .active { color:#cccc; }#r#n.nav .caption { color:#cccc; }#r#n.nav .img-smoke:before { box-shadow:inset 0 0 .5rem .5rem #c000, 0 0 0 3px #c000; }#r#n#r#n.system { color:#cfff; background-color:#c406e8e; border-color:#cfff; border-radius:0.1rem; padding:1rem; box-shadow:none; }#r#nbody.system { border-radius:0; padding:0; box-shadow:none; }#r#n.system-bar { border-radius:0; padding:0; box-shadow:none; }#r#nbody.system .system-bar { box-shadow:none; }#r#n.system hr, .system table, .system td { border-color:#cfff; }#r#n.system h1, .system h2, .system h3, .system h4, .system h5, .system h6 { color:#ce80; text-shadow:none; }#r#n.system mark { color:#ce80; }#r#n.system a, .system a:visited, .system .a { color:#cfff; }#r#n.system a:hover, .system a:focus, .system a:active, .system .active { color:#ce80; }#r#n.system .caption { color:#ce80; text-shadow:none; }#r#n.system .img-smoke:before { box-shadow:inset 0 0 .5rem .5rem #c406e8e, 0 0 0 3px #c406e8e; }#r#n#r#ninput, .input { color:#c000; background-color:#ceee; border-radius:0.1rem; box-shadow:none; }#r#ninput[type="radio"] { border-radius:50%; }#r#ninput:focus, .input:focus { color:#c000; background-color:#cfff; box-shadow:0 .5em 1em 0 rgba(0, 0, 0, 0.2), 0 0.375em 1.25em 0 rgba(0, 0, 0, 0.19); }#r#nbutton, [type="button"], .button { display:inline-block; text-align:center; color:#cfff; text-shadow:1px 1px 0 rgba(0, 0, 0, 0.7); background-color:#c406e8e; border-radius:0.1rem; padding-left:1rem; padding-right:1rem; box-shadow:none; }#r#n.nav .button, .nav [type="submit"], .nav button { background-color:transparent; }#r#nbutton:hover, button:focus, button:active, [type="submit"]:hover, [type="submit"]:focus, [type="submit"]:active, .button:hover, .button:focus, .button:active, .button.active { color:#cfff; text-shadow:1px 1px 0 rgba(0, 0, 0, 0.7); background-color:#c393A44; box-shadow:0 .5em 1em 0 rgba(0, 0, 0, 0.2), 0 0.375em 1.25em 0 rgba(0, 0, 0, 0.19); }#r#n#r#n.badge { color:#cfff; background-color:rgba(0, 0, 0, 0.5); border-radius:50%; }#r#n.table-striped tr:nth-child(even) { background-color:rgba(0, 0, 0, 0.2); }#r#n#r#n/* Positioning */#r#n.margin-top-auto { padding-top:0.5rem; }#r#n.margin-top-025 { padding-top:.25rem; }#r#n.margin-top-050 { padding-top:.5rem; }#r#n.margin-top-075 { padding-top:.75rem; }#r#n.margin-top-100 { padding-top:1rem; }#r#n.margin-top-150 { padding-top:1.5rem; }#r#n.margin-top-200 { padding-top:2rem; }#r#n#r#n.margin-right-auto { padding-right:1rem; }#r#n.margin-right-025 { padding-right:.25rem; }#r#n.margin-right-050 { padding-right:.5rem; }#r#n.margin-right-075 { padding-right:.75rem; }#r#n.margin-right-100 { padding-right:1rem; }#r#n.margin-right-150 { padding-right:1.5rem; }#r#n.margin-right-200 { padding-right:2rem; }#r#n#r#n.margin-bottom-auto { padding-bottom:0; }#r#n.margin-bottom-025 { padding-bottom:.25rem; }#r#n.margin-bottom-050 { padding-bottom:.5rem; }#r#n.margin-bottom-075 { padding-bottom:.75rem; }#r#n.margin-bottom-100 { padding-bottom:1rem; }#r#n.margin-bottom-150 { padding-bottom:1.5rem; }#r#n.margin-bottom-200 { padding-bottom:2rem; }#r#n#r#n.margin-left-auto { padding-left:1rem; }#r#n.margin-left-025 { padding-left:.25rem; }#r#n.margin-left-050 { padding-left:.5rem; }#r#n.margin-left-075 { padding-left:.75rem; }#r#n.margin-left-100 { padding-left:1rem; }#r#n.margin-left-150 { padding-left:1.5rem; }#r#n.margin-left-200 { padding-left:2rem; }#r#n#r#n.position-inline { display:inline-block; position:relative; }#r#n.position-left { display:block; position:relative; margin-left:0; margin-right:auto; }#r#n.position-center { display:block; position:relative; margin-left:auto; margin-right:auto; }#r#n.position-right { display:block; position:relative; margin-left:auto; margin-right:0; }#r#n.position-float-left { display:block; position:relative; float:left; width:25vw; }#r#n.position-float-right { display:block; position:relative; float:right; width:25vw; }#r#n#r#n#r#n.wd-sm-1 { width:8.1%; }#r#n.wd-sm-2 { width:16.4%; }#r#n.wd-sm-3 { width:24.7%; }#r#n.wd-sm-4 { width:33.1%; }#r#n.wd-sm-5 { width:41.4%; }#r#n.wd-sm-6 { width:48.7%; }#r#n.wd-sm-7 { width:58.1%; }#r#n.wd-sm-8 { width:66.4%; }#r#n.wd-sm-9 { width:74.7%; }#r#n.wd-sm-10 { width:83.1%; }#r#n.wd-sm-11 { width:91.4%; }#r#n.wd-sm-12 { width:100%; }#r#n#r#n.position-float-left.wd-sm-1, .position-float-right.wd-sm-1 { width:8.1vw; }#r#n.position-float-left.wd-sm-2, .position-float-right.wd-sm-2 { width:16.4vw; }#r#n.position-float-left.wd-sm-3, .position-float-right.wd-sm-3 { width:24.7vw; }#r#n.position-float-left.wd-sm-4, .position-float-right.wd-sm-4 { width:33.1vw; }#r#n.position-float-left.wd-sm-5, .position-float-right.wd-sm-5 { width:41.4vw; }#r#n.position-float-left.wd-sm-6, .position-float-right.wd-sm-6 { width:48.7vw; }#r#n.position-float-left.wd-sm-7, .position-float-right.wd-sm-7 { width:58.1vw; }#r#n.position-float-left.wd-sm-8, .position-float-right.wd-sm-8 { width:66.4vw; }#r#n.position-float-left.wd-sm-9, .position-float-right.wd-sm-9 { width:74.7vw; }#r#n#r#n.position-float-left.wd-sm-10, .position-float-left.wd-sm-11, .position-float-left.wd-sm-12 { float:none; margin-left:0; margin-right:auto; } #r#n.position-float-right.wd-sm-10, .position-float-right.wd-sm-11, .position-float-right.wd-sm-12 { float:none; margin-left:auto; margin-right:0; } #r#n#r#n@media (min-width:401px) {#r#n#r#n.wd-md-1 { width:8.1%; }#r#n.wd-md-2 { width:16.4%; }#r#n.wd-md-3 { width:24.7%; }#r#n.wd-md-4 { width:33.1%; }#r#n.wd-md-5 { width:41.4%; }#r#n.wd-md-6 { width:48.7%; }#r#n.wd-md-7 { width:58.1%; }#r#n.wd-md-8 { width:66.4%; }#r#n.wd-md-9 { width:74.7%; }#r#n.wd-md-10 { width:83.1%; }#r#n.wd-md-11 { width:91.4%; }#r#n.wd-md-12 { width:100%; }#r#n#r#n.position-float-left.wd-md-1, .position-float-right.wd-md-1 { width:8.1vw; }#r#n.position-float-left.wd-md-2, .position-float-right.wd-md-2 { width:16.4vw; }#r#n.position-float-left.wd-md-3, .position-float-right.wd-md-3 { width:24.7vw; }#r#n.position-float-left.wd-md-4, .position-float-right.wd-md-4 { width:33.1vw; }#r#n.position-float-left.wd-md-5, .position-float-right.wd-md-5 { width:41.4vw; }#r#n.position-float-left.wd-md-6, .position-float-right.wd-md-6 { width:48.7vw; }#r#n.position-float-left.wd-md-7, .position-float-right.wd-md-7 { width:58.1vw; }#r#n.position-float-left.wd-md-8, .position-float-right.wd-md-8 { width:66.4vw; }#r#n.position-float-left.wd-md-9, .position-float-right.wd-md-9 { width:74.7vw; }#r#n#r#n.position-float-left.wd-md-10, .position-float-left.wd-md-11, .position-float-left.wd-md-12 { margin-left:0; margin-right:auto; float:none; } #r#n.position-float-right.wd-md-10, .position-float-right.wd-md-11, .position-float-right.wd-md-12 { margin-left:auto; margin-right:0; float:none; } #r#n}#r#n#r#n@media (min-width:601px) {#r#n#r#n.wd-lg-1 { width:8.1%; }#r#n.wd-lg-2 { width:16.4%; }#r#n.wd-lg-3 { width:24.7%; }#r#n.wd-lg-4 { width:33.1%; }#r#n.wd-lg-5 { width:41.4%; }#r#n.wd-lg-6 { width:48.7%; }#r#n.wd-lg-7 { width:58.1%; }#r#n.wd-lg-8 { width:66.4%; }#r#n.wd-lg-9 { width:74.7%; }#r#n.wd-lg-10 { width:83.1%; }#r#n.wd-lg-11 { width:91.4%; }#r#n.wd-lg-12 { width:100%; }#r#n#r#n.position-float-left.wd-lg-1, .position-float-right.wd-lg-1 { width:8.1vw; }#r#n.position-float-left.wd-lg-2, .position-float-right.wd-lg-2 { width:16.4vw; }#r#n.position-float-left.wd-lg-3, .position-float-right.wd-lg-3 { width:24.7vw; }#r#n.position-float-left.wd-lg-4, .position-float-right.wd-lg-4 { width:33.1vw; }#r#n.position-float-left.wd-lg-5, .position-float-right.wd-lg-5 { width:41.4vw; }#r#n.position-float-left.wd-lg-6, .position-float-right.wd-lg-6 { width:48.7vw; }#r#n.position-float-left.wd-lg-7, .position-float-right.wd-lg-7 { width:58.1vw; }#r#n.position-float-left.wd-lg-8, .position-float-right.wd-lg-8 { width:66.4vw; }#r#n.position-float-left.wd-lg-9, .position-float-right.wd-lg-9 { width:74.7vw; }#r#n#r#n.position-float-left.wd-lg-10, .position-float-left.wd-lg-11, .position-float-left.wd-lg-12 { margin-left:0; margin-right:auto; float:none; } #r#n.position-float-right.wd-lg-10, .position-float-right.wd-lg-11, .position-float-right.wd-lg-12 { margin-left:auto; margin-right:0; float:none; } #r#n#r#n.wd-lg-hidden { display:none; }#r#n}#r#n#r#n@media (max-width:400px) {#r#n.wd-sm-hidden { display:none; }#r#n}#r#n@media (min-width:400px and max-width:901px) {#r#n.wd-md-hidden { display:none; }#r#n}#r#n#r#n.box-shadow-off { box-shadow:none; }#r#n.box-shadow-on { box-shadow:0.5em 0.5em 0.5em 0 rgba(0, 0, 0, 0.5); }#r#n#r#n.box-display-inline { display:inline-block; position:relative; overflow:hidden; }#r#n.box-display-inline > div { display:inline-block; }#r#n.box-display-block { display:block; position:relative; width:100%; overflow:hidden; }#r#n#r#n/* Lists */#r#n.detail { position:relative; }#r#n.detail > div { position:relative; display:inline-block; }#r#n#r#n.list-inline > .detail { display:inline-block; }#r#n.list-inline.align-left { text-align:left; }#r#n.list-inline.align-center { text-align:center; }#r#n.list-inline.align-right { text-align:right; }#r#n#r#n.list-grid { display:flex; flex-wrap:wrap; }#r#n.list-grid.align-left { justify-content:flex-start; }#r#n.list-grid.align-center { justify-content:center; }#r#n .list-grid.align-right { justify-content:flex-end; }#r#n#r#n.col-sm-1 > .detail { width:99.8%; }#r#n.col-sm-2 > .detail { width:49.8%; }#r#n.col-sm-3 > .detail { width:33.1%; }#r#n.col-sm-4 > .detail { width:24.7%; }#r#n.col-sm-5 > .detail { width:19.7%; }#r#n.col-sm-6 > .detail { width:16.4%; }#r#n#r#n@media (min-width:401px) {#r#n.col-md-1 > .detail { width:99.8%; }#r#n.col-md-2 > .detail { width:49.8%; }#r#n.col-md-3 > .detail { width:33.1%; }#r#n.col-md-4 > .detail { width:24.7%; }#r#n.col-md-5 > .detail { width:19.7%; }#r#n.col-md-6 > .detail { width:16.4%; }#r#n}#r#n#r#n@media (min-width:901px) {#r#n.col-lg-1 > .detail { width:99.8%; }#r#n.col-lg-2 > .detail { width:49.8%; }#r#n.col-lg-3 > .detail { width:33.1%; }#r#n.col-lg-4 > .detail { width:24.7%; }#r#n.col-lg-5 > .detail { width:19.7%; }#r#n.col-lg-6 > .detail { width:16.4%; }#r#n}#r#n#r#n.detail > div { width:100%; }#r#n.columns-auto > .detail > div { width:auto; }#r#n.list-columns > .detail { width:100%; }#r#n#r#n.list-columns.col-sm-1 { column-count:1; }#r#n.list-columns.col-sm-2 { column-count:2; }#r#n.list-columns.col-sm-3 { column-count:3; }#r#n.list-columns.col-sm-4 { column-count:4; }#r#n.list-columns.col-sm-5 { column-count:5; }#r#n.list-columns.col-sm-6 { column-count:6; }#r#n@media (min-width:401px) {#r#n.list-columns.col-md-1 { column-count:1; }#r#n.list-columns.col-md-2 { column-count:2; }#r#n.list-columns.col-md-3 { column-count:3; }#r#n.list-columns.col-md-4 { column-count:4; }#r#n.list-columns.col-md-5 { column-count:5; }#r#n.list-columns.col-md-6 { column-count:6; }#r#n}#r#n@media (min-width:901px) {#r#n.list-columns.col-lg-1 { column-count:1; }#r#n.list-columns.col-lg-2 { column-count:2; }#r#n.list-columns.col-lg-3 { column-count:3; }#r#n.list-columns.col-lg-4 { column-count:4; }#r#n.list-columns.col-lg-5 { column-count:5; }#r#n.list-columns.col-lg-6 { column-count:6; }#r#n}#r#n#r#n.horizontal-spacing-006 > .detail { padding-left:.06rem; padding-right:.06rem; }#r#n.horizontal-spacing-012 > .detail { padding-left:.125rem; padding-right:.125rem; }#r#n.horizontal-spacing-025 > .detail { padding-left:.25rem; padding-right:.25rem; }#r#n.horizontal-spacing-037 > .detail { padding-left:.375rem; padding-right:.375rem; }#r#n.horizontal-spacing-050 > .detail { padding-left:.5rem; padding-right:.5rem; }#r#n.horizontal-spacing-075 > .detail { padding-left:.75rem; padding-right:.75rem; }#r#n.horizontal-spacing-100 > .detail { padding-left:1rem; padding-right:1rem; }#r#n#r#n.vertical-spacing-006 > .detail { padding-top:.06rem; padding-bottom:.06rem; }#r#n.vertical-spacing-012 > .detail { padding-top:.125rem; padding-bottom:.125rem; }#r#n.vertical-spacing-025 > .detail { padding-top:.25rem; padding-bottom:.25rem; }#r#n.vertical-spacing-037 > .detail { padding-top:.375rem; padding-bottom:.375rem; }#r#n.vertical-spacing-050 > .detail { padding-top:.5rem; padding-bottom:.5rem; }#r#n.vertical-spacing-075 > .detail { padding-top:.75rem; padding-bottom:.75rem; }#r#n.vertical-spacing-100 > .detail { padding-top:1rem; padding-bottom:1rem; }#r#n#r#n.horizontal-align-center > .detail > div { text-align:center; }#r#n.horizontal-align-right > .detail > div { text-align:right; }#r#n.vertical-align-center > .detail { display:flex; flex-direction:column; justify-content:center; }#r#n.vertical-align-bottom > .detail { display:flex; flex-direction:column; justify-content:flex-end; }#r#n#r#n/* Details */#r#n.detail > div > .button { width:100%; }#r#n#r#n.format-auto, .format-elipse, .format-thumbnail, .format-square, .format-circle, .format-video { display:block; position:relative; width:100%; z-index:1; }#r#n.format-thumbnail:after, .format-square:after, .format-circle:after { content:""; display:block; padding-bottom:100%; }#r#n.format-video { content:""; display:block; padding-bottom:57.5%; }#r#n.format-auto > div, .format-elipse > div { position:relative; width:100%; }#r#n.format-thumbnail > div, .format-square > div, .format-circle > div, .format-video > :first-child { position:absolute; width:100%; height:100%; overflow:hidden; }#r#n#r#n.format-auto img, .format-elipse img { width:100%; height:auto; }#r#n.format-thumbnail img.portrait { width:auto; height:100%; position:relative; left:50%; transform:translateX(-50%); }#r#n.format-thumbnail img.landscape { width:100%; height:auto; position:relative; top:50%; transform:translateY(-50%); }#r#n.format-square img.portrait, .format-circle img.portrait { width:100%; height:auto; position:relative; top:50%; transform:translateY(-50%); }#r#n.format-square img.landscape, .format-circle img.landscape { width:auto; height:100%; position:relative; left:50%; transform:translateX(-50%); }#r#n.format-elipse > div, .format-circle > div { border-radius:50%; overflow:hidden; }#r#n#r#n.img-smoke:before { position:absolute; width:100%; height:100%; content:""; z-index:2; border-radius:inherit; }#r#n#r#nhr.layer-separator { margin:0; width:100%; }#r#n.info { display:inline-block; }#r#n.info + .info { padding-left:.3rem; }#r#n#r#n/* Dropdown menu */#r#n.dropdown { display:flex; flex-direction:column; }#r#n#r#n/* Layout */#r#n#clayout_system_bar { position:absolute; top:0; right:0; bottom:auto; left:0; height:3rem; z-index:2; box-shadow:none; }#r#n#clayout_system_bar > * { display:inline-block; position:relative; height:100%; margin-right:0.5rem; }#r#n#clayout_system_bar > :first-child { margin-left:1rem; }#r#n#clayout_system_bar > * > * { display:inline-block; position:relative; top:50%; transform:translateY(-50%); }#r#n#clayout_document { position:absolute; top:3rem; right:0; bottom:0; left:0; z-index:1; }#r#n#clayout_system_icons { position:absolute; top:0; right:0; bottom:auto; left:auto; height:3rem; z-index:3; }#r#n#clayout_system_icons > * { display:inline-block; position:relative; height:100%; margin-left:0.5rem; }#r#n#clayout_system_icons > :last-child { margin-right:1rem; }#r#n#clayout_system_icons > * > * { display:inline-block; position:relative; top:50%; transform:translateY(-50%); }#r#n#clayout_system_icons img { display:inline-block; height:2rem; width:auto; }#r#n#clayout_baloom { position:absolute; top:5rem; right:1rem; bottom:auto; left:1rem; text-align:right; z-index:4; }#r#n.baloom { display:inline-block; }#r#n#r#n/* Personalite */#r#n.personalite { position:absolute; top:.3rem; right:.3rem; z-index:1001; }#r#n.personalite > img { position:absolute; top:0; right:0; width:1rem; height:1rem; }#r#n#r#n/* Formularies */#r#n.form-field { padding:0.125em; }#r#n.form-inline { display:inline-block; }#r#n.form-inline .form-field { display:inline-block; }#r#n.form-block .form-label { display:inline-block; width:10em; }#r#n#r#n/* Ending definitions */#r#n[hidden] { display:none !important; }#r#n.no-spam-bots:after { content:attr(data-name) "@" attr(data-server); }#r#nform > label { display:none; }/* Crditos Dani Guerrato dani@popupdesign.com.br */#r#n/* @media print { */#r#n* { text-shadow:none !important; filter:none !important; -ms-filter:none !important; }#r#nbody { margin:0; padding:0; line-height:1em; font:12pt arial, sams-serif; color:#c000; }#r#n@page { margin:1.5cm; }#r#n.wrap { width:100%; margin:0; float:none !important; }#r#n.no-print, video, audio, object, embed { display:none; }#r#n.print { display:block; }#r#nimg { max-width:100%; }#r#nh1 { font-size:18pt; }#r#nh2 { font-size:15pt; }#r#nh3 { font-size:13pt; }#r#np { font-size:12pt; widows:3; orphans:3; }#r#na, a:visited { text-decoration:underline; }#r#na:link:after, a:visited:after { content:" (" attr(href) ") "; }#r#np a { word-wrap:break-word; }#r#nq:after { content:" (" attr(cite) ")" }#r#na:after, a[href^="javascript:"]:after, a[href^="#c"]:after { content:""; }#r#n.page-break { page-break-before:always; }#r#n/* } */