X   Сообщение сайта
(Сообщение закроется через 2 секунды)

Здравствуйте, гость ( Вход | Регистрация )

45 страниц Открыть меню  « < 29 30 31 32 33 > »   
Ответить в данную темуНачать новую тему
> Обсуждение Eleanor CMS 0.9 PRE
Alexander
сообщение 2013-01-19, 18:52
Сообщение #601
Eleanor developer
Иконка группы

Группа: Администраторы
Сообщений: 5 261
Регистрация: 2008-11-11
Из: Николаев
Версия системы: RC5

Репутация:   нет  
Всего: 67


Ну и чем мне это должно помочь?
Перейти в начало страницы
+Цитировать сообщение
A1es
сообщение 2013-01-19, 19:24
Сообщение #602
Любитель
Иконка группы

Группа: Eleanor user
Сообщений: 180
Регистрация: 2009-04-19

Репутация:   нет  
Всего: нет


Цитата (wormen @ 2013-01-19, 18:38)
Alexander, так речь была не об EleanorServ, а о таблицах в CMS

Вылет базы это баг платформы, а не CMS. Поэтому что вы хотите - непонятно :scratch_one-s_head:
Перейти в начало страницы
+Цитировать сообщение
wormen
сообщение 2013-01-20, 13:54
Сообщение #603
Опытный
Иконка группы

Группа: Eleanor user
Сообщений: 800
Регистрация: 2012-09-13

Репутация:   нет  
Всего: нет


Alexander, подскажи, какой файл нужно отредактировать, чтобы рядом с надписью локализации отображался соответствующий флаг.


Сообщение отредактировал wormen - 2013-01-21, 4:01
Перейти в начало страницы
+Цитировать сообщение
Alexander
сообщение 2013-01-20, 14:06
Сообщение #604
Eleanor developer
Иконка группы

Группа: Администраторы
Сообщений: 5 261
Регистрация: 2008-11-11
Из: Николаев
Версия системы: RC5

Репутация:   нет  
Всего: 67


wormen, в templates/Uniel/index.php
Перейти в начало страницы
+Цитировать сообщение
wormen
сообщение 2013-01-22, 15:18
Сообщение #605
Опытный
Иконка группы

Группа: Eleanor user
Сообщений: 800
Регистрация: 2012-09-13

Репутация:   нет  
Всего: нет


Цитата (Alexander @ 2013-01-20, 15:06)
<br /><b>wormen</b>, в templates/Uniel/index.php
<br /><br />

участок кода нашел...

<div class="language">
<?php
if(Eleanor::$vars['multilang'])
{
    $langs=Eleanor::$langs;
    unset($langs[Language::$main]);
    foreach($langs as $k=>$v)
        echo'<a href="',Eleanor::$filename,'?language=',$k,'" title="',$v['name'],'"><b>',substr($k,0,3),'</b></a>';
}
?>
</div>

но как прикрепить картинку, чтобы она менялась вместе с языком таки не разобрался.....
Перейти в начало страницы
+Цитировать сообщение
Alexander
сообщение 2013-01-22, 18:13
Сообщение #606
Eleanor developer
Иконка группы

Группа: Администраторы
Сообщений: 5 261
Регистрация: 2008-11-11
Из: Николаев
Версия системы: RC5

Репутация:   нет  
Всего: 67


Цитата (wormen @ 2024-04-19 05:08)
но как прикрепить картинку, чтобы она менялась вместе с языком таки не разобрался.....


Вместо <b>',substr($k,0,3),'</b> впишите код картинки...
Перейти в начало страницы
+Цитировать сообщение
wormen
сообщение 2013-01-23, 3:57
Сообщение #607
Опытный
Иконка группы

Группа: Eleanor user
Сообщений: 800
Регистрация: 2012-09-13

Репутация:   нет  
Всего: нет


Цитата (Alexander @ 2013-01-22, 19:13)
Вместо <b>',substr($k,0,3),'</b> впишите код картинки...


Alexander, если я тебя правильно понял, ты предлагаешь использовать картинки вместо текста, но мне нужен и текст и картинки
Перейти в начало страницы
+Цитировать сообщение
Alexander
сообщение 2013-01-23, 16:26
Сообщение #608
Eleanor developer
Иконка группы

Группа: Администраторы
Сообщений: 5 261
Регистрация: 2008-11-11
Из: Николаев
Версия системы: RC5

Репутация:   нет  
Всего: 67


wormen, когда на фоне картинки написан текст?
Перейти в начало страницы
+Цитировать сообщение
wormen
сообщение 2013-01-24, 3:25
Сообщение #609
Опытный
Иконка группы

Группа: Eleanor user
Сообщений: 800
Регистрация: 2012-09-13

Репутация:   нет  
Всего: нет


Цитата (Alexander @ 2024-04-19 05:08)
wormen, когда на фоне картинки написан текст?


верно.....чтобы было так......флаг+текст rus/eng

Сообщение отредактировал wormen - 2013-01-24, 4:38
Перейти в начало страницы
+Цитировать сообщение
Alexander
сообщение 2013-01-24, 11:00
Сообщение #610
Eleanor developer
Иконка группы

Группа: Администраторы
Сообщений: 5 261
Регистрация: 2008-11-11
Из: Николаев
Версия системы: RC5

Репутация:   нет  
Всего: 67


wormen, в верстке я плохо понимаю: дайте код, который хотите получить на выходе - я вам покажу, как добиться такого результата.
Перейти в начало страницы
+Цитировать сообщение
wormen
сообщение 2013-01-24, 12:01
Сообщение #611
Опытный
Иконка группы

Группа: Eleanor user
Сообщений: 800
Регистрация: 2012-09-13

Репутация:   нет  
Всего: нет


исходная часть кода для вывода текста локализации

<div class="language">
<?php
if(Eleanor::$vars['multilang'])
{
    $langs=Eleanor::$langs;
    unset($langs[Language::$main]);
    foreach($langs as $k=>$v)
        echo'<a href="',Eleanor::$filename,'?language=',$k,'" title="',$v['name'],'"><b>',substr($k,0,3),'</b></a>';
}
?>
</div>

эта часть <b>',substr($k,0,3),'</b> кода я так понял выводит непосредственно сам текст, на мой взгляд в итоге должен получиться примерно следующий код

<div class="language">
<?php
if(Eleanor::$vars['multilang'])
{
    $langs=Eleanor::$langs;
    unset($langs[Language::$main]);
    foreach($langs as $k=>$v)
        echo'<a href="',Eleanor::$filename,'?language=',$k,'" title="',$v['name'],'"><div class="flag"></div><b>',substr($k,0,3),'</b></a>';
}
?>
</div>

<div class="flag"></div> часть кода куда будет подгружаться картинка флага

это можно сделать с помощью jquery, но я просто не понял откуда подгружается текст в этот участок кода <b>',substr($k,0,3),'</b> и к тому же в этом участке кода нету никаких идентификаторов чтобы зацепить скрипт......уже даже мысля пришла в голову, чтобы менять картинку в зависимости какой текст в теге.......

выше я описал как это вижу, было бы еще неплохо, если бы ты поподробнее описал эту часть кода
<div class="language">
<?php
if(Eleanor::$vars['multilang'])
{
    $langs=Eleanor::$langs;
    unset($langs[Language::$main]);
    foreach($langs as $k=>$v)
        echo'<a href="',Eleanor::$filename,'?language=',$k,'" title="',$v['name'],'"><b>',substr($k,0,3),'</b></a>';
}
?>
</div>

что откуда подгружается.....а jquery скрипт я уже сам напишу
Перейти в начало страницы
+Цитировать сообщение
Alexander
сообщение 2013-01-24, 21:52
Сообщение #612
Eleanor developer
Иконка группы

Группа: Администраторы
Сообщений: 5 261
Регистрация: 2008-11-11
Из: Николаев
Версия системы: RC5

Репутация:   нет  
Всего: 67


Строка substr($k,0,3) выводит "rus", "eng" т.е. первые три буквы языка. Таким образом можно вставить и уникальный идентификатор.
Перейти в начало страницы
+Цитировать сообщение
wormen
сообщение 2013-01-25, 7:26
Сообщение #613
Опытный
Иконка группы

Группа: Eleanor user
Сообщений: 800
Регистрация: 2012-09-13

Репутация:   нет  
Всего: нет


не стал я сильно разбираться что откуда подгружается, и написал свой мини плагин для отображения картинки рядом с текстом локализации, сначала я подкоректировал исходную часть кода:

<div class="language">
<?php
if(Eleanor::$vars['multilang'])
{
$langs=Eleanor::$langs;
unset($langs[Language::$main]);
foreach($langs as $k=>$v)
echo'<div class="flag"></div><a href="',Eleanor::$filename,'?language=',$k,'" title="',$v['name'],'"><b id="localize">',substr($k,0,3),'</b></a>';
}
?>
</div>

В теме в файле index.php дописываем строку
<script type="text/javascript" src="<?php echo$theme?>js/init.js"></script>

в папке /templates/Uniel/js/ создал файл init.js
в него прописал содержимое:

$(function flags() {
//позиционирование блока <div class="flag"></div> и создание размера
$( ".flag" ).css({
'position': 'relative', 
'top': '-6px', 
'float': 'left', 
'width': '47px', 
'height': '32px'
})
//сканируем тег <b id="localize"></b> на наличие текста
if ($("b#localize").text() == "rus") { $( ".flag" ).css({'background': 'url(/templates/Uniel/images/rus.png)'}) } //если текст rus
if ($("b#localize").text() == "eng") { $( ".flag" ).css({'background': 'url(/templates/Uniel/images/eng.png)'}) } //если текст eng
});


для украинской локализации не делал, не было необходимости, скрипт меняется легко, кому нужно допишите
картинки флагов прилагаю 


Перейти в начало страницы
+Цитировать сообщение
wormen
сообщение 2013-01-25, 7:51
Сообщение #614
Опытный
Иконка группы

Группа: Eleanor user
Сообщений: 800
Регистрация: 2012-09-13

Репутация:   нет  
Всего: нет


я тут немного затупил....

Alexander, перенеси мой последний пост в эту тему

....и плагин добавь в стандартную комплектацию CMS, наверняка эти функции еще не раз пригодятся....
Перейти в начало страницы
+Цитировать сообщение
wormen
сообщение 2013-01-25, 10:58
Сообщение #615
Опытный
Иконка группы

Группа: Eleanor user
Сообщений: 800
Регистрация: 2012-09-13

Репутация:   нет  
Всего: нет


в CMS есть свои картинки с флагами, то пути будут такими

if ($("b#localize").text() == "rus") { $( ".flag" ).css({'background': 'url(/images/lang_flags/rus.png)'}) } //если текст rus
if ($("b#localize").text() == "eng") { $( ".flag" ).css({'background': 'url(/images/lang_flags/eng.png)'}) } //если текст eng
Перейти в начало страницы
+Цитировать сообщение
Alexander
сообщение 2013-01-26, 0:21
Сообщение #616
Eleanor developer
Иконка группы

Группа: Администраторы
Сообщений: 5 261
Регистрация: 2008-11-11
Из: Николаев
Версия системы: RC5

Репутация:   нет  
Всего: 67


wormen, к сожалению переносить посты сейчас невозможно :(

Пару комментариев.

foreach($langs as $k=>$v)
	echo'<div class="flag"></div><a href="',Eleanor::$filename,'?language=',$k,'" title="',$v['name'],'"><b id="localize">',substr($k,0,3),'</b></a>';

Во-впервых это создает невалидный код. Потому что идентификаторы элементов должны быть уникальными.

Во-вторых, я же писал, что строка substr($k,0,3) возвращает 3 первых буквы языка... Таким образом, ваш JS можно удалить, а вместо вышенаписанного (в моеём посте) кода, нужно написать примерно следующее:


foreach($langs as $k=>$v)
{
	$pref3=substr($k,0,3);
	echo'<div class="flag" style="background:url(images/lang_flags/',$pref3,'.png)"></div><a href="',Eleanor::$filename,'?language=',$k,'" title="',$v['name'],'"><b>',$pref3,'</b></a>';
}


Вот так.
Перейти в начало страницы
+Цитировать сообщение
wormen
сообщение 2013-01-26, 3:23
Сообщение #617
Опытный
Иконка группы

Группа: Eleanor user
Сообщений: 800
Регистрация: 2012-09-13

Репутация:   нет  
Всего: нет


ну ты в принципе сделал тоже самое, только средствами PHP...
Перейти в начало страницы
+Цитировать сообщение
Alexander
сообщение 2013-01-26, 3:33
Сообщение #618
Eleanor developer
Иконка группы

Группа: Администраторы
Сообщений: 5 261
Регистрация: 2008-11-11
Из: Николаев
Версия системы: RC5

Репутация:   нет  
Всего: 67


wormen, просто обратите внимание, что совершенно не обязательно усложнять настолько себе жизнь.
Перейти в начало страницы
+Цитировать сообщение
wormen
сообщение 2013-01-26, 3:48
Сообщение #619
Опытный
Иконка группы

Группа: Eleanor user
Сообщений: 800
Регистрация: 2012-09-13

Репутация:   нет  
Всего: нет


Alexander, а в чем невалидность моего кода?
что касается идентификаторов, то это еще спорный вопрос....

if ($("b").text() == "rus") { $( ".flag" ).css({'background': 'url(/images/lang_flags/rus.png)'}) }
if ($("b").text() == "eng") { $( ".flag" ).css({'background': 'url(/images/lang_flags/eng.png)'}) }

там скрипт просто сканирует наличие нужного текста в теге, и вставляет нужную картинку в div
Перейти в начало страницы
+Цитировать сообщение
Alexander
сообщение 2013-01-26, 4:15
Сообщение #620
Eleanor developer
Иконка группы

Группа: Администраторы
Сообщений: 5 261
Регистрация: 2008-11-11
Из: Николаев
Версия системы: RC5

Репутация:   нет  
Всего: 67


wormen, невалидный код создает <b id="localize"> - идентификаторы должны быть уникальным на странице.
Перейти в начало страницы
+Цитировать сообщение

45 страниц Открыть меню  « < 29 30 31 32 33 > » 
Ответить в данную темуНачать новую тему
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 
RSS Текстовая версия 0.0413 сек.    12 запросов    GZIP включен    Сейчас: 2024-04-19, 5:08