00001 <?php
00002
00008 class Adminlinks_Main extends oxAdminDetails
00009 {
00015 public function render()
00016 {
00017 $myConfig = $this->getConfig();
00018
00019 parent::render();
00020
00021 $soxId = oxConfig::getParameter( "oxid");
00022
00023 $sSavedID = oxConfig::getParameter( "saved_oxid");
00024 if ( ($soxId == "-1" || !isset( $soxId)) && isset( $sSavedID) ) {
00025 $soxId = $sSavedID;
00026 oxSession::deleteVar( "saved_oxid");
00027 $this->_aViewData["oxid"] = $soxId;
00028
00029 $this->_aViewData["updatelist"] = "1";
00030 }
00031
00032 if ( $soxId != "-1" && isset( $soxId)) {
00033
00034 $oLinks = oxNew( "oxlinks", getViewName( 'oxlinks'));
00035 $oLinks->loadInLang( $this->_iEditLang, $soxId );
00036
00037 $oOtherLang = $oLinks->getAvailableInLangs();
00038 if (!isset($oOtherLang[$this->_iEditLang])) {
00039
00040 $oLinks->loadInLang( key($oOtherLang), $soxId );
00041 }
00042 $this->_aViewData["edit"] = $oLinks;
00043
00044
00045 $this->_aViewData["posslang"] = array_diff (oxLang::getInstance()->getLanguageNames(), $oOtherLang);
00046
00047 foreach ( $oOtherLang as $id => $language) {
00048 $oLang= new oxStdClass();
00049 $oLang->sLangDesc = $language;
00050 $oLang->selected = ($id == $this->_iEditLang);
00051 $this->_aViewData["otherlang"][$id] = clone $oLang;
00052 }
00053 }
00054
00055
00056 $this->_aViewData["editor"] = $this->_generateTextEditor( "100%", 255, $oLinks, "oxlinks__oxurldesc", "links.tpl.css");
00057
00058 return "adminlinks_main.tpl";
00059 }
00060
00066 public function save()
00067 {
00068 $soxId = oxConfig::getParameter( "oxid");
00069 $aParams = oxConfig::getParameter( "editval");
00070
00071 if ( !isset( $aParams['oxlinks__oxactive']))
00072 $aParams['oxlinks__oxactive'] = 0;
00073
00074
00075
00076 if (isset($aParams['oxlinks__oxurldesc']) && strlen($aParams['oxlinks__oxurldesc']) == 0)
00077 $aParams['oxlinks__oxurldesc'] .= " ";
00078
00079 if ( !$aParams['oxlinks__oxinsert']) {
00080
00081
00082 $sDate = date(oxLang::getInstance()->translateString( "simpleDateFormat"));
00083 if ($sDate == "simpleDateFormat")
00084 $aParams['oxlinks__oxinsert'] = date( "Y-m-d");
00085 else
00086 $aParams['oxlinks__oxinsert'] = $sDate;
00087 }
00088
00089 $iEditLanguage = oxConfig::getParameter("editlanguage");
00090 $oLinks = oxNew( "oxlinks", getViewName( 'oxlinks'));
00091
00092 if ( $soxId != "-1") {
00093
00094 $oLinks->loadInLang( $iEditLanguage, $soxId );
00095
00096 } else {
00097 $aParams['oxlinks__oxid'] = null;
00098 }
00099
00100
00101
00102 $oLinks->setLanguage(0);
00103 $oLinks->assign( $aParams);
00104 $oLinks->setLanguage( $iEditLanguage );
00105 $oLinks->save();
00106 $this->_aViewData["updatelist"] = "1";
00107
00108
00109
00110 if ( $soxId == "-1")
00111 oxSession::setVar( "saved_oxid", $oLinks->oxlinks__oxid->value);
00112 }
00113
00119 public function saveinnlang()
00120 {
00121 $soxId = oxConfig::getParameter( "oxid");
00122 $aParams = oxConfig::getParameter( "editval");
00123
00124 if ( !isset( $aParams['oxlinks__oxactive']))
00125 $aParams['oxlinks__oxactive'] = 0;
00126
00127
00128 $sShopID = oxSession::getVar( "actshop");
00129 $aParams['oxlinks__oxshopid'] = $sShopID;
00130 $oLinks = oxNew( "oxlinks", getViewName( 'oxlinks'));
00131 $iEditLanguage = oxConfig::getParameter("editlanguage");
00132
00133 if( $soxId != "-1")
00134 $oLinks->loadInLang( $iEditLanguage, $soxId );
00135 else
00136 $aParams['oxlinks__oxid'] = null;
00137
00138
00139
00140
00141 $oLinks->setLanguage(0);
00142 $oLinks->assign( $aParams);
00143
00144
00145 $sNewLanguage = oxConfig::getParameter( "new_lang");
00146 $oLinks->setLanguage( $sNewLanguage);
00147 $oLinks->save();
00148 $this->_aViewData["updatelist"] = "1";
00149
00150
00151 if ( $soxId == "-1")
00152 oxSession::setVar( "saved_oxid", $oLinks->oxlinks__oxid->value);
00153 }
00154
00166 protected function _getTextEditor( $iWidth, $iHeight, $oObject, $sField, $sStylesheet = null )
00167 {
00168 if ( $oEditor = parent::_getTextEditor( $iWidth, $iHeight, $oObject, $sField, $sStylesheet ) ) {
00169
00170 $oEditor->emptyValue = ( $oEditor->lineReturns == 'P' ) ? "<p> </p>" : "<div> </div>";
00171 }
00172 return $oEditor;
00173 }
00174 }