XFaq не сохраняются настройки

Тема в разделе "Установка и обновление расширений Joomla", создана пользователем GRON, 28.10.2007.

  1. Offline

    GRON Недавно здесь

    Регистрация:
    04.09.2007
    Сообщения:
    23
    Симпатии:
    0
    Проблема - не сохраняются настройки XFaq (после установки он корректно их отображает только в первый раз - стоит нажать "Save settings" и все настройки обнудяются, в файлк конфга пустые поля...), я вообще не представляю в чем может быть дело. Помогите пожалуйста, хотя бы мыслями!

    Спасибо!

    Добавлено через 3 часа 24 минуты
    Вот доп. информация - 1.0.12 RE,
    код файла adimin.xfaq.php
    Код (PHP):
    1. <?php
    2. /**
    3. * @version $Id: submit.php,v 1.1 2005/11/03 10:18:18 mic Exp $
    4. * @package XfaQ - a frequently asked question component for Joomla! & Mambo CMS
    5. * @copyright (C) 2005 mgfi.info
    6. * @info info@mgfi.info http://www.mgfi.info
    7. * @license GNU/GPL
    8. * based in simplefaq 2.0.1 & glossary 1.4
    9. */
    10.  
    11. defined( '_VALID_MOS' ) or die( 'Direct Access to this location is not allowed.' );
    12.  
    13. // access only for superadmins & admins
    14. if ( !( $acl->acl_check( 'administration', 'config', 'users', $my->usertype )) || $acl->acl_check( 'administration', 'edit', 'users', $my->usertype, 'components', 'com_xfaq' )) {
    15. mosRedirect( 'index2.php', _NOT_AUTH );
    16. }
    17.  
    18. require_once( $mainframe->getPath( 'admin_html' ) );
    19. require_once( $mainframe->getPath( 'class' ) );
    20.  
    21. $cid = mosGetParam( $_POST, 'cid', array(0) );
    22. if (!is_array( $cid )) {
    23. $cid = array(0);
    24. }
    25.  
    26. $pathCom = $GLOBALS['mosConfig_absolute_path'] . '/administrator/components/com_xfaq/';
    27. $pathComRel = $GLOBALS['mosConfig_live_site'] . '/administrator/components/com_xfaq/';
    28. $pathLanguagesAdmin = $pathCom . 'languages/admin_';
    29. $pathLanguagesUser = $GLOBALS['mosConfig_absolute_path'] . '/components/com_xfaq/languages/';
    30.  
    31. // call for correct language
    32. if( !defined( '_XFAQ_ALANG_INCLUDED' )) {
    33. $tmp_lng = $GLOBALS['mosConfig_lang'];
    34. if( $mosConfig_alang ){
    35. if( file_exists( $pathLanguagesAdmin . $mosConfig_alang . '.php' )) $tmp_lng = $mosConfig_alang;
    36. }
    37. if( file_exists( $pathLanguagesAdmin . $tmp_lng . '.php' )){
    38. include_once( $pathLanguagesAdmin . $tmp_lng . '.php' );
    39. }else{
    40. if( file_exists( $pathLanguagesAdmin . 'english.php' )) $tmp_lng = 'english.php'; else $tmp_lng = 'germanf.php';
    41. include_once( $pathLanguagesAdmin . $tmp_lng );
    42. }
    43. }
    44.  
    45. switch ($task) {
    46.  
    47. case 'categories':
    48. mosRedirect( 'index2.php?option=categories&section=com_xfaq' );
    49. break;
    50.  
    51. case 'publish':
    52. publishxFAQ( $cid, 1, $option );
    53. break;
    54.  
    55. case 'unpublish':
    56. publishxFAQ( $cid, 0, $option );
    57. break;
    58.  
    59. case 'orderup':
    60. orderFAQ( $cid[0], -1, $option );
    61. break;
    62.  
    63. case 'orderdown':
    64. orderFAQ( $cid[0], 1, $option );
    65. break;
    66.  
    67. case 'saveorder':
    68. saveOrder( $cid, $option );
    69. break;
    70.  
    71. case 'new':
    72. editxFAQ( $option, $database, 0 );
    73. break;
    74.  
    75. case 'edit':
    76. editxFAQ( $option, $database, $cid[0] );
    77. break;
    78.  
    79. case 'remove':
    80. removexFAQ( $database, $cid, $option );
    81. break;
    82.  
    83. case 'cancel':
    84. cancelxFAQ( $option );
    85. break;
    86.  
    87. case 'save':
    88. savexFAQ( $option, $database );
    89. break;
    90.  
    91. case 'config':
    92. showConfig( $option );
    93. footerFaq();
    94. break;
    95.  
    96. case 'savesettings':
    97. saveConfig ($option);
    98. break;
    99.  
    100. default:
    101. showxFAQ( $option, $database );
    102. break;
    103. }
    104.  
    105. // Show footer on Admin page (not shown but as copyright here)
    106. /* Copyright 2005 by http://www.parkviewconsultants.com */
    107.  
    108. // End of Main Admin loop
    109.  
    110. /* functions */
    111.  
    112. function footerFaq(){ ?>
    113. <p align="center">
    114. <span class="small" style="text-align: center; color:#999;"><a href="http://www.mgfi.info" target="_blank" title="Xfaq by MGFi.info">XfaQ v.<?php echo xfaq_this_version(); ?></a> by <a href="http://www.mgfi.info" target="_blank" title="MGFi">MGFi</a><br />(based on SimpleFAQ 2.0.1 from parkviewconsultants)</span>
    115. </p>
    116. <?php
    117. }
    118.  
    119. function xfaq_this_version() {
    120. global $xfaq_version;
    121.  
    122. $xfaq_version = '1.2';
    123. return $xfaq_version;
    124. }
    125.  
    126. /** JJC
    127. * Moves the order of a record
    128. * @param integer The increment to reorder by
    129. */
    130. function orderFAQ( $uid, $inc, $option ) {
    131. global $database;
    132. $row = new mosxFAQ( $database );
    133. $row->load( $uid );
    134. $row->move( $inc, 'published >= 0' );
    135.  
    136. mosRedirect( 'index2.php?option=' . $option );
    137. }
    138.  
    139. function saveOrder( &$cid, $option ) {
    140. global $database;
    141.  
    142. $total = count( $cid );
    143. $order = mosGetParam( $_POST, 'order', array(0) );
    144. $redirect = mosGetParam( $_POST, 'redirect', 0 );
    145. $rettask = mosGetParam( $_POST, 'returntask', '' );
    146. $row = new mosxFAQ( $database );
    147. $conditions = array();
    148.  
    149. // update ordering values
    150. for( $i=0; $i < $total; $i++ ) {
    151. $row->load( $cid[$i] );
    152. if ($row->ordering != $order[$i]) {
    153. $row->ordering = $order[$i];
    154. if (!$row->store()) {
    155. echo "<script> alert('".$database->getErrorMsg()."'); window.history.go(-1); </script>\n";
    156. exit();
    157. } // if
    158. // remember to updateOrder this group
    159. $condition = "catid='$row->catid' AND state>=0";
    160. $found = false;
    161. foreach ( $conditions as $cond )
    162. if ($cond[1]==$condition) {
    163. $found = true;
    164. break;
    165. } // if
    166. if (!$found) $conditions[] = array($row->id, $condition);
    167. } // if
    168. } // for
    169.  
    170. // execute updateOrder for each group
    171. foreach ( $conditions as $cond ) {
    172. $row->load( $cond[0] );
    173. $row->updateOrder( $cond[1] );
    174. } // foreach
    175.  
    176. $msg = _XFAQ_A_MESS_NEW_ORDER_SAVED;
    177. mosRedirect( 'index2.php?option=' . $option );
    178. } // saveOrder
    179.  
    180.  
    181. function showxFAQ( $option, &$db ) {
    182. global $database, $mainframe;
    183.  
    184. $catid = $mainframe->getUserStateFromRequest( "catid{$option}", 'catid', 0 );
    185. $limit = $mainframe->getUserStateFromRequest( "viewlistlimit", 'limit', $GLOBALS['mosConfig_list_limit'] );
    186. $limitstart = $mainframe->getUserStateFromRequest( "view{$option}limitstart", 'limitstart', 0 );
    187. $search = $mainframe->getUserStateFromRequest( "search{$option}", 'search', '' );
    188. $search = $database->getEscaped( trim( strtolower( $search ) ) );
    189.  
    190. $where = array();
    191. //if ($catid > 0) {
    192. // $where[] = "catid='$catid'";
    193. //}
    194. if ($search) {
    195. $where[] = "LOWER(question) LIKE '%$search%'";
    196. $where[] = "LOWER(answer) LIKE '%$search%'";
    197. }
    198.  
    199. // get the total number of records
    200. $database->setQuery( "SELECT count(*) FROM #__xfaq" );
    201. $total = $database->loadResult();
    202.  
    203. require_once( $GLOBALS['mosConfig_absolute_path'] . '/administrator/includes/pageNavigation.php' );
    204. $pageNav = new mosPageNav( $total, $limitstart, $limit );
    205.  
    206. // get the subset (based on limits) of required records
    207. $database->setQuery( "SELECT a.*, cc.name AS category"
    208. . "\nFROM #__xfaq AS a"
    209. . "\nLEFT JOIN #__categories AS cc ON cc.id = a.catid"
    210. . (count( $where ) ? "\nWHERE " . implode( ' AND ', $where ) : "")
    211. . "\nORDER BY a.catid, a.ordering, a.question"
    212. . "\nLIMIT $pageNav->limitstart,$pageNav->limit"
    213. );
    214.  
    215. $rows = $database->loadObjectList();
    216. if ($database->getErrorNum()) {
    217. echo $database->stderr();
    218. return false;
    219. }
    220.  
    221. // build list of categories
    222. $javascript = 'onchange="document.adminForm.submit();"';
    223. $lists['catid'] = mosAdminMenus::ComponentCategory( 'catid', 'com_xfaq', intval( $catid ), $javascript );
    224.  
    225. HTML_xFAQ::showxFAQEntries( $option, $rows, $search, $pageNav, $lists );
    226. }
    227.  
    228. function removexFAQ( &$db, $cid, $option ) {
    229. if (count( $cid )) {
    230. $cids = implode( ',', $cid );
    231. $db->setQuery( "DELETE FROM #__xfaq WHERE id IN ($cids)" );
    232. if (!$db->query()) {
    233. echo "<script> alert('".$db->getErrorMsg()."'); window.history.go(-1); </script>\n";
    234. }
    235. }
    236. mosRedirect( 'index2.php?option=' . $option );
    237. }
    238.  
    239. function publishxFAQ( $cid=null, $publish=1, $option ) {
    240. global $database;
    241.  
    242. if (!is_array( $cid ) || count( $cid ) < 1) {
    243. $action = $publish ? _XFAQ_TO_PUBLISH : _XFAQ_TO_UNPUBLISH;
    244. echo "<script> alert('" . _XFAQ_SELECT_ITEM . $action . "'); window.history.go(-1);</script>\n";
    245. exit;
    246. }
    247.  
    248. $cids = implode( ',', $cid );
    249.  
    250. $database->setQuery( "UPDATE #__xfaq SET published='$publish' WHERE id IN ($cids)" );
    251. if (!$database->query()) {
    252. echo "<script> alert('".$database->getErrorMsg()."'); window.history.go(-1); </script>\n";
    253. exit();
    254. }
    255.  
    256. mosRedirect( 'index2.php?option=' . $option );
    257. }
    258.  
    259. function editxFAQ( $option, &$db, $id ) {
    260. global $mosConfig_absolute_path, $mosConfig_live_site;
    261.  
    262. $row = new mosxFAQ( $db );
    263.  
    264. if ($id) {
    265. $db->setQuery( "SELECT * FROM #__xfaq WHERE id = $id" );
    266. $rows = $db->loadObjectList();;
    267. $row = $rows[0];
    268. } else {
    269. // initialise new record
    270. $row->imagepos = 'top';
    271. $row->published = 0;
    272. $row->ordering = 0;
    273. }
    274.  
    275. // make the select list for the image positions
    276. $yesno[] = mosHTML::makeOption( '0', _XFAQ_A_NO );
    277. $yesno[] = mosHTML::makeOption( '1', _XFAQ_A_YES );
    278.  
    279. //
    280. // Stick the next bit in - but don't understand it yet
    281. //
    282. /*
    283. $lists = array();
    284. // build the html select list for ordering
    285. $query = "SELECT ordering AS value, name AS text"
    286. . "\n FROM #__xfaq"
    287. . "\n WHERE published >= 0"
    288. . "\n ORDER BY ordering"
    289. ;
    290. $lists['ordering'] = mosAdminMenus::SpecificOrdering( $row, $id, $query, 1 );
    291. */
    292.  
    293. // Source: MOS - admin.weblinks.php
    294. // get list of categories
    295. $categories[] = mosHTML::makeOption( '0', _XFAQ_A_SEL_CAT );
    296. $db->setQuery( "SELECT id AS value, name AS text FROM #__categories"
    297. . "\nWHERE section='com_xfaq' ORDER BY ordering" );
    298. $categories = array_merge( $categories, $db->loadObjectList() );
    299.  
    300. if (count( $categories ) < 1) {
    301. mosRedirect( 'index2.php?option=categories&section=' . $option, _XFAQ_A_MESS_ADD_CAT_FIRST );
    302. }
    303.  
    304. $clist = mosHTML::selectList( $categories, 'catid', 'class="inputbox" size="1"',
    305. 'value', 'text', intval( $row->catid ) );
    306.  
    307. // build the html select list
    308. $publist = mosHTML::selectList( $yesno, 'published', 'class="inputbox" size="2"', 'value', 'text', $row->published );
    309.  
    310. HTML_xFAQ::editxFAQ( $option, $row, $publist, $clist );
    311. }
    312.  
    313. /**
    314. * Save operation
    315. * @param string The current url option
    316. */
    317. function savexFAQ( $option, &$db ) {
    318. global $my;
    319.  
    320. $row = new mosxFAQ( $db );
    321. if (!$row->bind( $_POST )) {
    322. echo "<script> alert('".$row->getError()."'); window.history.go(-1); </script>\n";
    323. exit();
    324. }
    325. $row->_tbl_key = "id";
    326.  
    327. // save params
    328. $params = mosGetParam( $_POST, 'params', '' );
    329. if (is_array( $params )) {
    330. $txt = array();
    331. foreach ( $params as $k=>$v) {
    332. $txt[] = "$k=$v";
    333. }
    334. $row->params = implode( "\n", $txt );
    335. }
    336.  
    337. if (!$row->store()) {
    338. echo "<script> alert('".$row->getError()."'); window.history.go(-1); </script>\n";
    339. exit();
    340. }
    341.  
    342. $row->checkin();
    343. $row->updateOrder();
    344.  
    345. mosRedirect( 'index2.php?option=' . $option );
    346. }
    347.  
    348.  
    349. /**
    350. * Cancels an edit operation
    351. * @param string The current url option
    352. */
    353. function cancelxFAQ( $option ) {
    354. mosRedirect( 'index2.php?option=' . $option . '&task=view', _XFAQ_A_EDIT_CANCELED );
    355. }


    Я честно говоря, не понимаю, где здесь проблема... В PHP недавно, хотя программирую в целом уже довольно давно. Пока не понял, где здесь "узкое место"..
     
    Последнее редактирование: 28.10.2007
  2.  
  3. Offline

    GRON Недавно здесь

    Регистрация:
    04.09.2007
    Сообщения:
    23
    Симпатии:
    0
    Ответ: XFaq не сохраняются настройки

    Код (PHP):
    1. function showConfig( $option ) {
    2. $configfile = $GLOBALS['mosConfig_absolute_path'] . '/administrator/components/com_xfaq/config.xfaq.php';
    3. require_once( $configfile ); ?>
    4. <script type="text/javascript">
    5. function submitbutton(pressbutton) {
    6. var form = document.adminForm;
    7. if (pressbutton == 'cancel') {
    8. submitform( pressbutton );
    9. return;
    10. }
    11. if (form.xfaq_perpage.value == ""){
    12. alert( "<?php echo _XFAQ_A_ENTRIES_PER_PAGE; ?>" );
    13. } else {
    14. submitform( pressbutton );
    15. }
    16. }
    17. </script>
    18. <?php
    19. $xfaqMess = '';
    20. @chmod ($configfile, 0766);
    21. $permission = @is_writable($configfile);
    22. @chmod ($configfile, 0644);
    23. if (!$permission) {
    24. $xfaqMess = '<span style="color:red;">' . _XFAQ_CONFIG_NOT_WRITEABLE . '</span>';
    25. }else{
    26. $xfaqMess = '<span style="color:green;">' . _XFAQ_CONFIG_IS_WRITEABLE . '</span>';
    27. }
    28.  
    29. mosCommonHTML::loadOverlib();
    30.  
    31. // vars
    32. $yn_xfaq_indexmode = mosHTML::yesnoRadioList( 'xfaq[indexmode]', 'class="inputbox"', $xfaq['indexmode'] );
    33. $yn_xfaq_showsearch = mosHTML::yesnoRadioList( 'xfaq[showsearch]', 'class="inputbox"', $xfaq['showsearch'] );
    34. $yn_xfaq_showcategories = mosHTML::yesnoRadioList( 'xfaq[showcategories]', 'class="inputbox"', $xfaq['showcategories'] );
    35. $yn_xfaq_hideauthor = mosHTML::yesnoRadioList( 'xfaq[hideauthor]', 'class="inputbox"', $xfaq['hideauthor'] );
    36. $yn_xfaq_requestauthorname = mosHTML::yesnoRadioList( 'xfaq[requestauthorname]', 'class="inputbox"', $xfaq['requestauthorname'] );
    37. $yn_xfaq_requestauthorlocation = mosHTML::yesnoRadioList( 'xfaq[requestauthorlocation]', 'class="inputbox"', $xfaq['requestauthorlocation'] );
    38. $yn_xfaq_requestauthorhomepage = mosHTML::yesnoRadioList( 'xfaq[requestauthorhomepage]', 'class="inputbox"', $xfaq['requestauthorhomepage'] );
    39. $yn_xfaq_requestauthoremail = mosHTML::yesnoRadioList( 'xfaq[requestauthoremail]', 'class="inputbox"', $xfaq['requestauthoremail'] );
    40. $yn_xfaq_answermandatory = mosHTML::yesnoRadioList( 'xfaq[answermandatory]', 'class="inputbox"', $xfaq['answermandatory'] );
    41. $yn_xfaq_requestanswer = mosHTML::yesnoRadioList( 'xfaq[requestanswer]', 'class="inputbox"', $xfaq['requestanswer'] );
    42. $yn_xfaq_allowcomments = mosHTML::yesnoRadioList( 'xfaq[allowcomments]', 'class="inputbox"', $xfaq['allowcomments'] );
    43. $yn_xfaq_usehtmleditor = mosHTML::yesnoRadioList( 'xfaq[usehtmleditor]', 'class="inputbox"', $xfaq['usehtmleditor'] );
    44. $yn_xfaq_allowentry = mosHTML::yesnoRadioList( 'xfaq[allowentry]', 'class="inputbox"', $xfaq['allowentry'] );
    45. $yn_xfaq_anonentry = mosHTML::yesnoRadioList( 'xfaq[anonentry]', 'class="inputbox"', $xfaq['anonentry'] );
    46. $yn_xfaq_autopublish = mosHTML::yesnoRadioList( 'xfaq[autopublish]', 'class="inputbox"', $xfaq['autopublish'] );
    47. $yn_xfaq_notify = mosHTML::yesnoRadioList( 'xfaq[notify]', 'class="inputbox"', $xfaq['notify'] );
    48. $yn_xfaq_thankuser = mosHTML::yesnoRadioList( 'xfaq[thankuser]', 'class="inputbox"', $xfaq['thankuser'] ); ?>
    49.  
    50. <form action="index2.php" method="post" name="adminForm" id="adminForm">
    51. <table cellpadding="2" cellspacing="0" border="0" width="100%">
    52. <tr>
    53. <td width="40%" class="sectionname">
    54. <?php echo _XFAQ_XFAQ; ?>
    55. </td>
    56. <td valign="middle" align="bottom" style="font-size:10px; vertical-align:baseline;">
    57. [&nbsp;
    58. <?php echo $xfaqMess; ?>
    59. &nbsp;]
    60. </td>
    61. </tr>
    62. </table>
    63.  
    64. <table width="100%" border="0" cellpadding="2" cellspacing="0" class="adminForm">
    65. <tr>
    66. <td>
    67. <?php
    68. $tabs = new mosTabs(0);
    69. $tabs->startPane( 'component' );
    70. $tabs->startTab( _XFAQ_A_TAB_GENERAL, 'general' ); ?>
    71.  
    72. <table width="100%" border="0" cellpadding="2" cellspacing="0" class="adminForm">
    73. <tr>
    74. <td align="left" valign="top" width="120"><?php echo _XFAQ_A_INDEX_MODE; ?></td>
    75. <td align="left" valign="top">
    76. <?php echo $yn_xfaq_indexmode; ?>
    77. &nbsp;
    78. <?php
    79. $tip = _XFAQ_A_INDEX_MODE_TIP;
    80. echo mosToolTip( $tip ); ?>
    81. </td>
    82. </tr>
    83. <tr>
    84. <td align="left" valign="top" width="120"><?php echo _XFAQ_ENTRIES_PER_PAGE; ?></td>
    85. <td align="left" valign="top">
    86. <input type="text" name="xfaq_perpage" value="<?php echo $xfaq['perpage']; ?>" size="5" />
    87. &nbsp;
    88. <?php
    89. $tip = _XFAQ_ENTRIES_PER_PAGE_TIP;
    90. echo mosToolTip( $tip ); ?>
    91. </td>
    92. </tr>
    93. <tr>
    94. <td align="left" valign="top" width="120"><?php echo _XFAQ_SHOW_SEARCH_BOX; ?></td>
    95. <td align="left" valign="top">
    96. <?php echo $yn_xfaq_showsearch; ?>
    97. &nbsp;
    98. <?php
    99. $tip = _XFAQ_A_SEARCH_BOX_TIP;
    100. echo mosToolTip( $tip ); ?>
    101. </td>
    102. </tr>
    103. <tr>
    104. <td align="left" valign="top" width="120"><?php echo _XFAQ_SHOW_CATEGORIE; ?></td>
    105. <td align="left" valign="top">
    106. <?php echo $yn_xfaq_showcategories; ?>
    107. &nbsp;
    108. <?php
    109. $tip = _XFAQ_CATEGORIE_TIP;
    110. echo mosToolTip( $tip ); ?>
    111. </td>
    112. </tr>
    113. <tr>
    114. <td align="left" valign="top" width="120"><?php echo _XFAQ_SHOW_AUTHOREN_DETAILS;; ?></td>
    115. <td align="left" valign="top">
    116. <?php echo $yn_xfaq_hideauthor; ?>
    117. &nbsp;
    118. <?php
    119. $tip = _XFAQ_SHOW_AUTHOREN_DETAILS_TIP;;
    120. echo mosToolTip( $tip ); ?>
    121. </td>
    122. </tr>
    123. <tr>
    124. <td align="left" valign="top" width="120"><?php echo _XFAQ_INTRO_TEXT; ?></td>
    125. <td align="left" valign="top">
    126. <textarea cols="70" rows="4" name="xfaq[introtext]" class="inputbox" wrap='virtual'><?php echo $xfaq['introtext']; ?></textarea>
    127. &nbsp;
    128. <?php
    129. $tip = _XFAQ_INTRO_TEXT_TIP;
    130. echo mosToolTip( $tip ); ?>
    131. </td>
    132. </tr>
    133. </table>
    134. <?php
    135. $tabs->endTab();
    136. $tabs->startTab( _XFAQ_A_TAB_ENTRY, 'entry' ); ?>
    137. <table width="100%" border="0" cellpadding="4" cellspacing="2" class="adminForm">
    138. <tr>
    139. <td align="left" valign="top" width="120"><?php echo _XFAQ_REQUEST_AUTHOR_NAME; ?></td>
    140. <td align="left" valign="top">
    141. <?php echo $yn_xfaq_requestauthorname; ?>
    142. &nbsp;
    143. <?php
    144. $tip = _XFAQ__XFAQ_REQUEST_AUTHOR_TIP;
    145. echo mosToolTip( $tip ); ?>
    146. </td>
    147. </tr>
    148. <tr>
    149. <td align="left" valign="top" width="120"><?php echo _XFAQ_REQUEST_AUTHOR_LOCATION; ?></td>
    150. <td align="left" valign="top">
    151. <?php echo $yn_xfaq_requestauthorlocation; ?>
    152. &nbsp;
    153. <?php
    154. $tip = _XFAQ_REQUEST_AUTHOR_LOCATION_TIP;
    155. echo mosToolTip( $tip ); ?>
    156. </td>
    157. </tr>
    158. <tr>
    159. <td align="left" valign="top" width="120"><?php echo _XFAQ_AUTHOR_PAGES; ?></td>
    160. <td align="left" valign="top">
    161. <?php echo $yn_xfaq_requestauthorhomepage; ?>
    162. &nbsp;
    163. <?php
    164. $tip = _XFAQ_AUTHOR_PAGES_TIP;
    165. echo mosToolTip( $tip ); ?>
    166. </td>
    167. </tr>
    168. <tr>
    169. <td align="left" valign="top" width="120"><?php echo _XFAQ_AUTHOR_MAIL; ?></td>
    170. <td align="left" valign="top">
    171. <?php echo $yn_xfaq_requestauthoremail; ?>
    172. &nbsp;
    173. <?php
    174. $tip = _XFAQ_AUTHOR_MAIL_TIP;
    175. echo mosToolTip( $tip ); ?>
    176. </td>
    177. </tr>
    178. <tr>
    179. <td align="left" valign="top" width="120"><?php echo _XFAQ_ANSWER_REQUIRED; ?></td>
    180. <td align="left" valign="top">
    181. <?php echo $yn_xfaq_answermandatory; ?>
    182. &nbsp;
    183. <?php
    184. $tip = _XFAQ_ANSWER_ENTRIES;
    185. echo mosToolTip( $tip ); ?>
    186. </td>
    187. </tr>
    188. <tr>
    189. <td align="left" valign="top" width="120"><?php echo _XFAQ_ANSWER_BOX; ?></td>
    190. <td align="left" valign="top">
    191. <?php echo $yn_xfaq_requestanswer; ?>
    192. &nbsp;
    193. <?php
    194. $tip = _XFAQ_ANSWER_BOX_TIP;
    195. echo mosToolTip( $tip ); ?>
    196. </td>
    197. </tr>
    198. <tr>
    199. <td align="left" valign="top" width="120"><?php echo _XFAQ_ALLOW_COMMENTS; ?></td>
    200. <td align="left" valign="top">
    201. <?php echo $yn_xfaq_allowcomments; ?>
    202. &nbsp;
    203. <?php
    204. $tip = _XFAQ_ALLOW_COMMENTS_TIP;
    205. echo mosToolTip( $tip ); ?>
    206. </td>
    207. </tr>
    208. <tr>
    209. <td align="left" valign="top" width="120"><?php echo _XFAQ_HTML_EDITOR; ?></td>
    210. <td align="left" valign="top">
    211. <?php echo $yn_xfaq_usehtmleditor; ?>
    212. &nbsp;
    213. <?php
    214. $tip = _XFAQ_HTML_EDITOR_TIP;
    215. echo mosToolTip( $tip ); ?>
    216. </td>
    217. </tr>
    218. </table>
    219. <?php
    220. $tabs->endTab();
    221. $tabs->startTab( _XFAQ_A_TAB_PUBLISH, 'publish' ); ?>
    222. <table width="100%" border="0" cellpadding="4" cellspacing="2" class="adminForm">
    223. <tr>
    224. <td align="left" valign="top" width="120"><?php echo _XFAQ_ALLOW_ENTRIES; ?></td>
    225. <td align="left" valign="top">
    226. <?php echo $yn_xfaq_allowentry; ?>
    227. &nbsp;
    228. <?php
    229. $tip = _XFAQ_ALLOW_ENTRIES_TIP;
    230. echo mosToolTip( $tip ); ?>
    231. </td>
    232. </tr>
    233. <tr>
    234. <td align="left" valign="top" width="120"><?php echo _XFAQ_ANONYME_ENTRIES; ?></td>
    235. <td align="left" valign="top">
    236. <?php echo $yn_xfaq_anonentry; ?>
    237. &nbsp;
    238. <?php
    239. $tip = _XFAQ_ANONYME_ENTRIES_TIP;
    240. echo mosToolTip( $tip ); ?>
    241. </td>
    242. </tr>
    243. <tr>
    244. <td align="left" valign="top" width="120"><?php echo _XFAQ_AUTO_ENTRIES; ?></td>
    245. <td align="left" valign="top">
    246. <?php echo $yn_xfaq_autopublish; ?>
    247. &nbsp;
    248. <?php
    249. $tip = _XFAQ_AUTO_ENTRIES_TIP;
    250. echo mosToolTip( $tip ); ?>
    251. </td>
    252. </tr>
    253. <tr>
    254. <td align="left" valign="top" width="120"><?php echo _XFAQ_NOTIFY_WEBMASTER; ?></td>
    255. <td align="left" valign="top">
    256. <?php echo $yn_xfaq_notify; ?>
    257. &nbsp;
    258. <?php
    259. $tip = _XFAQ_NOTIFY_WEBMASTER_TIP;
    260. echo mosToolTip( $tip ); ?>
    261. </td>
    262. </tr>
    263. <tr>
    264. <td align="left" valign="top" width="120"><?php echo _XFAQ_WEBMASTER_MAIL; ?></td>
    265. <td align="left" valign="top">
    266. <input type="text" name="xfaq[notify_email]" value="<?php echo $xfaq['notify_email']; ?>" size="40" />
    267. &nbsp;
    268. <?php
    269. $tip = _XFAQ_WEBMASTER_MAIL_TIP;
    270. echo mosToolTip( $tip ); ?>
    271. </td>
    272. </tr>
    273. <tr>
    274. <td align="left" valign="top" width="120"><?php echo _XFAQ_THANK_USER; ?></td>
    275. <td align="left" valign="top">
    276. <?php echo $yn_xfaq_thankuser; ?>
    277. &nbsp;
    278. <?php
    279. $tip = _XFAQ_THANK_USER_TIP;
    280. echo mosToolTip( $tip ); ?>
    281. </td>
    282. </tr>
    283. <tr>
    284. <td align="left" valign="top" width="120"><?php echo _XFAQ_EXCL_CAT; ?></td>
    285. <td align="left" valign="top">
    286. <input type="text" name="xfaq[exclcat]" value="<?php echo $xfaq['exclcat']; ?>" size="3" />
    287. &nbsp;
    288. <?php
    289. $tip = _XFAQ_EXCL_CAT_TIP;
    290. echo mosToolTip( $tip ); ?>
    291. </td>
    292. </tr>
    293. </table>
    294. <?php
    295. $tabs->endTab();
    296. $tabs->startTab( _XFAQ_A_TAB_VERSION, 'version' ); ?>
    297. <table width="100%" border="0" cellpadding="2" cellspacing="2" class="adminForm">
    298. <tr>
    299. <td width="150" align="left" valign="top"><?php echo _XFAQ_INSTALLED_VER; ?></td>
    300. <td align="left" valign="top">
    301. <span style="font-align:left; font-size:10px; color:#000099; font-weight:bold;"><?php echo xfaq_this_version(); ?></span>
    302. </td>
    303. </tr>
    304. <?php
    305. $xmlError = true;
    306. require_once( $GLOBALS['mosConfig_absolute_path'] . '/includes/domit/xml_domit_rss_lite.php' );
    307. $vFile = 'http://www.mgfi.info/customer/versions/xfaq.xml';
    308. $handle = fopen( $vFile, 'rb' );
    309. if( $handle ){
    310. $rssDoc = &new xml_domit_rss_document_lite( $cacheTime = 0 );
    311. $rssDoc->loadRSS( $vFile );
    312. $totalChannels = $rssDoc->getChannelCount();
    313. // check and define language
    314. $tmpLang = $GLOBALS['mosConfig_lang'];
    315. if( isset( $GLOBALS['mosConfig_alang'] ) && !empty( $GLOBALS['mosConfig_alang'] )){
    316. $tmpLang = $GLOBALS['mosConfig_alang'];
    317. }
    318.  
    319. $channelLang = '';
    320. for( $i = 0; $i < $totalChannels; $i++ ) {
    321. $currChannel = &$rssDoc->getChannel( $i );
    322. if( strpos( $currChannel->getTitle(), $tmpLang ) === 0 ){
    323. $channelLang = $tmpLang;
    324. break;
    325. }
    326. }
    327. if( !$channelLang ){
    328. $channelLang = 'default';
    329. for( $i = 0; $i < $totalChannels; $i++ ) {
    330. $currChannel = &$rssDoc->getChannel( $i );
    331. if( $currChannel->getTitle() === $channelLang ){
    332. break;
    333. }
    334. }
    335. }
    336. if( $currChannel->getTitle() === $channelLang ){
    337. $xmlError = false;
    338. $actualItems = $currChannel->getItemCount();
    339. if( $actualItems != 0 ){
    340. for( $j = 0; $j < $actualItems; $j++ ) {
    341. $currItem = &$currChannel->getItem( $j ); ?>
    342. <tr>
    343. <td valign="top"><?php echo $currItem->getTitle(); ?></td>
    344. <td>
    345. <?php
    346. if( $currItem->getTitle() == 'Version' ){
    347. if( $currItem->getDescription() === xfaq_this_version() ){ ?>
    348. <span style="font-align:left; font-size:10px; color:#000099; font-weight:bold;">
    349. <?php
    350. }else{ ?>
    351. <span style="font-align:left; font-size:10px; color:#FF0000; font-weight:bold;">
    352. <?php
    353. }
    354. echo $currItem->getDescription(); ?>
    355. </span>
    356. <?php
    357. }else{
    358. if( $currItem->getLink() ){
    359. echo '<a href="' . $currItem->getLink() . '" target="_blank">' . $currItem->getTitle() . '</a>';
    360. }else{
    361. echo $currItem->getDescription();
    362. }
    363. } ?>
    364. </td>
    365. </tr>
    366. <?php
    367. } // end for actualitems
    368. } // end if actualitems
    369. } // end lang selector
    370. }else{
    371. $xmlError = true;
    372. } // end handle
    373.  
    374. if( $xmlError ){ ?>
    375. <tr>
    376. <td colspan="2"><?php echo _XFAQ_INFO_NOT_AVAIL; ?></td>
    377. </tr>
    378. <?php
    379. } ?>
    380. </table>
    381. <?php
    382. $tabs->endTab();
    383. $tabs->startTab( _XFAQ_A_TAB_ABOUT, 'about' ); ?>
    384. <table width="100%" border="0" cellpadding="2" cellspacing="2" class="adminForm">
    385. <tr>
    386. <td>
    387. <fieldset><legend><?php echo _XFAQ_XFAQ; ?></legend>
    388. <table>
    389. <tr>
    390. <td>
    391. <span style="font-size:12px; color:#000099; font-weight:bold;">XfaQ</span> basiert auf der Komponente SimpleFAQ v.2.0.1 von parkviewconsultants, welche wiederum auf der Glossarykomponente von Sascha Claren basiert.<br />
    392. Wir entschlossen uns daraus XfaQ zu erstellen, da alle Scripte teilweise masiv umgestellt und auf den neuesten Stand gebracht wurden.<br />
    393. Zudem wurden etliche Fehler sowie das gesamte Interface erneuert.
    394. </td>
    395. </tr>
    396. <tr>
    397. <td align="left">
    398. <form action="https://www.paypal.com/cgi-bin/webscr" method="post" target="_blank">
    399. <input type="hidden" name="cmd" value="_s-xclick" />
    400. <input type="image" src="https://www.paypal.com/de_DE/i/btn/x-click-butcc-donate.gif" border="0" name="submit" alt="Unterst&uuml;tzen sie uns - zahlen Sie mit PayPal" title="Unterst&uuml;tzen sie uns" />
    401. <input type="hidden" name="encrypted" value="-----BEGIN PKCS7-----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-----END PKCS7-----">
    402. </form>
    403. </td>
    404. </tr>
    405. </table>
    406. </fieldset>
    407. </td>
    408. </tr>
    409. <tr>
    410. <td>
    411. <fieldset><legend><?php echo 'Original'; ?></legend>
    412. <table>
    413. <tr>
    414. <td>
    415. Hier der Originalwortlaut der Lizenz sowie des Copyrights:
    416. </td>
    417. </tr>
    418. <tr>
    419. <td>
    420. <p><b>SimpleFAQ</b><br>
    421. <p>The SimpleFAQ component was based heavily on Sascha Claren (www.mamboaddons.com) Glossary component
    422. <p><b>License</b><br>
    423. SimpleFAQ is free software; you can redistribute it and/or modify it under the terms
    424. of the <a href="http://www.gnu.org/licenses/gpl.html" target="_blank">GNU General
    425. Public License</a> as published by the Free Software Foundation. This program is
    426. distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without
    427. even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
    428. See the GNU General Public License for more details.<P>
    429. <p>All upcoming versions are developed and released by
    430. Rick Chapman ( <a href="http://www.parkviewconsultants.com" target="_blank">www.parkviewconsultants.com </a> )</p>
    431. </td>
    432. </tr>
    433. </table>
    434. </fieldset>
    435. </td>
    436. </tr>
    437. </table>
    438. <?php
    439. $tabs->endTab();
    440. $tabs->endPane(); ?>
    441. </td>
    442. </tr>
    443. </table>
    444. <input type="hidden" name="id" value="">
    445. <input type="hidden" name="task" value="">
    446. <input type="hidden" name="xfaq[beginwith]" value="all">
    447. <input type="hidden" name="option" value="<?php echo $option; ?>">
    448. </form>
    449. <?php
    450. }
    451.  
    452. function saveConfig( $option ) {
    453. global $my, $xfaq, $xfaq_perpage;
    454.  
    455. $configfile = $GLOBALS['mosConfig_absolute_path'] . '/administrator/components/com_xfaq/config.xfaq.php';
    456. @chmod( $configfile, 0777 );
    457. $permission = @is_writable( $configfile );
    458. if( !$permission ) {
    459. @chmod( $configfile, 0644 );
    460. mosRedirect( 'index2.php?option=' . $option . '&task=config', _XFAQ_CONFIG_NOT_WRITEABLE );
    461. break;
    462. }
    463.  
    464. $config = "<?php\n";
    465. $config .= '// Configurationfile [ XfaQ ] for ' . $GLOBALS['mosConfig_sitename'] . ' at ' . $GLOBALS['mosConfig_live_site']. "\n";
    466. $config .= '// saved at: '.date( 'Y.m.d - G:i:s', time() ) .' - by: '.$my->username.'( '. $my->id.' )'."\n\n";
    467. $config .= "// Variables for Publishing\n";
    468. $config .= '$xfaq[\'allowentry\'] = \'' . $xfaq['allowentry'] . "';\n";
    469. $config .= '$xfaq[\'anonentry\'] = \'' . $xfaq['anonentry'] . "';\n";
    470. $config .= '$xfaq[\'autopublish\'] = \'' . $xfaq['autopublish'] . "';\n";
    471. $config .= '$xfaq[\'notify\'] = \'' . $xfaq['notify'] . "';\n";
    472. $config .= '$xfaq[\'notify_email\'] = \'' . $xfaq['notify_email'] . "';\n";
    473. $config .= '$xfaq[\'thankuser\'] = \'' . $xfaq['thankuser'] . "';\n";
    474. $config .= '$xfaq[\'exclcat\'] = \'' . $xfaq['exclcat'] . "';\n";
    475.  
    476. $config .= "\n";
    477. $config .= "// Variables for Display\n";
    478. $config .= '$xfaq[\'indexmode\'] = \'' . $xfaq['indexmode'] . "';\n";
    479. $config .= '$xfaq[\'perpage\'] = \'' . $xfaq_perpage . "';\n";
    480. $config .= '$xfaq[\'sorting\'] = \'' . $xfaq['sorting'] . "';\n";
    481. $config .= '$xfaq[\'showrating\'] = \'' . $xfaq['hidedef'] . "';\n";
    482. $config .= '$xfaq[\'hideauthor\'] = \'' . $xfaq['hideauthor'] . "';\n";
    483. $config .= '$xfaq[\'showcategories\'] = \'' . $xfaq['showcategories'] . "';\n";
    484. $config .= '$xfaq[\'beginwith\'] = \'' . $xfaq['beginwith'] . "';\n";
    485. $config .= '$xfaq[\'allowcomments\'] = \'' . $xfaq['allowcomments'] . "';\n";
    486. $config .= '$xfaq[\'showsearch\'] = \'' . $xfaq['showsearch'] . "';\n";
    487. $config .= '$xfaq[\'introtext\'] = \'' . $xfaq['introtext'] . "';\n";
    488. $config .= "\n";
    489. $config .= "// Variables for Data Entry\n";
    490. $config .= '$xfaq[\'requestauthorname\'] = \'' . $xfaq['requestauthorname'] . "';\n";
    491. $config .= '$xfaq[\'requestauthorlocation\'] = \'' . $xfaq['requestauthorlocation'] . "';\n";
    492. $config .= '$xfaq[\'requestauthorhomepage\'] = \'' . $xfaq['requestauthorhomepage'] . "';\n";
    493. $config .= '$xfaq[\'requestauthoremail\'] = \'' . $xfaq['requestauthoremail'] . "';\n";
    494. $config .= '$xfaq[\'answermandatory\'] = \'' . $xfaq['answermandatory'] . "';\n";
    495. $config .= '$xfaq[\'requestanswer\'] = \'' . $xfaq['requestanswer'] . "';\n";
    496. $config .= '$xfaq[\'usehtmleditor\'] = \'' . $xfaq['usehtmleditor'] . "';\n";
    497. $config .= "?>";
    498.  
    499. if( $fp = @fopen( $configfile, 'wb' )) {
    500. @fputs( $fp, $config, strlen( $config ));
    501. @fclose( $fp );
    502. @chmod( $configfile, 0644 );
    503. }
    504. mosRedirect( 'index2.php?option=' . $option . '&task=config', _XFAQ_CONFIG_SAVED);
    505. }
    506. ?>
     
  4. Offline

    WebFX Недавно здесь

    Регистрация:
    04.03.2007
    Сообщения:
    70
    Симпатии:
    0
    Пол:
    Мужской
    Ответ: XFaq не сохраняются настройки

    Такая же фигня - все настройки сбрасываются в ноль
     
  5. Offline

    Yury_md Недавно здесь

    Регистрация:
    09.02.2007
    Сообщения:
    97
    Симпатии:
    2
    Пол:
    Мужской
    так ничего и не придумано? жаль. у меня те же проблемы. неплохо было бы рабочий компонент FAQ
     
  6. doctorgrif
    Offline

    doctorgrif специалист

    Регистрация:
    14.01.2008
    Сообщения:
    1 284
    Симпатии:
    66
    Пол:
    Мужской
    руками в конфиг.файле компонента писать не пробовали? видимо права на запись конфига из бэкэенда стоят на запрет записи
     
  7. Offline

    Yury_md Недавно здесь

    Регистрация:
    09.02.2007
    Сообщения:
    97
    Симпатии:
    2
    Пол:
    Мужской
    doctorgrif, только что попробовал руками конфиг изменить, получилось, но всё равно компонент не захотел работать нормально :(

    к примеру, если добавить вопрос, то в админке он виден, но текста не видно, т.е. как будто одни пробелы
     
  8. doctorgrif
    Offline

    doctorgrif специалист

    Регистрация:
    14.01.2008
    Сообщения:
    1 284
    Симпатии:
    66
    Пол:
    Мужской
    попробуй права поставить на папку с компонентом этого фака ну для начала 777:) если заработает - то так и оставь, правда если сломают тебя - я не виноват
     
  9. Offline

    Yury_md Недавно здесь

    Регистрация:
    09.02.2007
    Сообщения:
    97
    Симпатии:
    2
    Пол:
    Мужской
    doctorgrif, ну, в любом случае это не самое лучшее решение :) тем более что на xakeр.ru описан взлом сайта через этот компонент

    так что оставлю этот компонент и буду искать более живой
     

Поделиться этой страницей

Загрузка...