Перейти к содержанию

Как установить / обновить CKEditor?


AlexBrtn

Рекомендуемые сообщения

Приветствую!
 
Наткнулся недавно на новый CKEditor интегрированный в IPB, с многими вкусностями которых нет в стандартном форуме.
 
post-10061-0-70447300-1391623134_thumb.j 

Хоть в IPB и есть CKEditor, но он какой-то глючный (кривая вставка с буфера, вв коды раз через раз проходят...). 
 
Предлагаю обсудить тут, возможность интеграции CKEditor (v.4.3.1) в IPBoard



 
Для сравнения: 
 
файлы:
 
 Новый


ckeditor
|---build-config.js
|---CHANGES.md
|---ckeditor.js
|---config.js
|---contents.css
|---LICENSE.md
|---README.md
|---styles.js
|---adapters
|   `---jquery.js
|---lang
|   |---af.js
|   |---ar.js
|   |---bg.js
|   |---bn.js
|   |---bs.js
|   |---ca.js
|   |---cs.js
|   |---cy.js
|   |---da.js
|   |---de.js
|   |---el.js
|   |---en-au.js
|   |---en-ca.js
|   |---en-gb.js
|   |---en.js
|   |---eo.js
|   |---es.js
|   |---et.js
|   |---eu.js
|   |---fa.js
|   |---fi.js
|   |---fo.js
|   |---fr-ca.js
|   |---fr.js
|   |---gl.js
|   |---gu.js
|   |---he.js
|   |---hi.js
|   |---hr.js
|   |---hu.js
|   |---id.js
|   |---is.js
|   |---it.js
|   |---ja.js
|   |---ka.js
|   |---km.js
|   |---ko.js
|   |---ku.js
|   |---lt.js
|   |---lv.js
|   |---mk.js
|   |---mn.js
|   |---ms.js
|   |---nb.js
|   |---nl.js
|   |---no.js
|   |---pl.js
|   |---pt-br.js
|   |---pt.js
|   |---ro.js
|   |---ru.js
|   |---si.js
|   |---sk.js
|   |---sl.js
|   |---sq.js
|   |---sr-latn.js
|   |---sr.js
|   |---sv.js
|   |---th.js
|   |---tr.js
|   |---ug.js
|   |---uk.js
|   |---vi.js
|   |---zh-cn.js
|   `---zh.js
|---plugins
|   |---icons.png
|   |---icons_hidpi.png
|   |---a11yhelp
|   |   `---dialogs
|   |       |---a11yhelp.js
|   |       `---lang
|   |           |---ar.js
|   |           |---bg.js
|   |           |---ca.js
|   |           |---cs.js
|   |           |---cy.js
|   |           |---da.js
|   |           |---de.js
|   |           |---el.js
|   |           |---en.js
|   |           |---eo.js
|   |           |---es.js
|   |           |---et.js
|   |           |---fa.js
|   |           |---fi.js
|   |           |---fr-ca.js
|   |           |---fr.js
|   |           |---gl.js
|   |           |---gu.js
|   |           |---he.js
|   |           |---hi.js
|   |           |---hr.js
|   |           |---hu.js
|   |           |---id.js
|   |           |---it.js
|   |           |---ja.js
|   |           |---km.js
|   |           |---ko.js
|   |           |---ku.js
|   |           |---lt.js
|   |           |---lv.js
|   |           |---mk.js
|   |           |---mn.js
|   |           |---nb.js
|   |           |---nl.js
|   |           |---no.js
|   |           |---pl.js
|   |           |---pt-br.js
|   |           |---pt.js
|   |           |---ro.js
|   |           |---ru.js
|   |           |---si.js
|   |           |---sk.js
|   |           |---sl.js
|   |           |---sq.js
|   |           |---sr-latn.js
|   |           |---sr.js
|   |           |---sv.js
|   |           |---th.js
|   |           |---tr.js
|   |           |---ug.js
|   |           |---uk.js
|   |           |---vi.js
|   |           |---zh-cn.js
|   |           |---zh.js
|   |           `---_translationstatus.txt
|   |---about
|   |   `---dialogs
|   |       |---about.js
|   |       |---logo_ckeditor.png
|   |       `---hidpi
|   |           `---logo_ckeditor.png
|   |---clipboard
|   |   `---dialogs
|   |       `---paste.js
|   |---dialog
|   |   `---dialogDefinition.js
|   |---fakeobjects
|   |   `---images
|   |       `---spacer.gif
|   |---image
|   |   |---dialogs
|   |   |   `---image.js
|   |   `---images
|   |       `---noimage.png
|   |---link
|   |   |---dialogs
|   |   |   |---anchor.js
|   |   |   `---link.js
|   |   `---images
|   |       |---anchor.png
|   |       `---hidpi
|   |           `---anchor.png
|   |---magicline
|   |   `---images
|   |       |---icon.png
|   |       `---hidpi
|   |           `---icon.png
|   |---pastefromword
|   |   `---filter
|   |       `---default.js
|   |---scayt
|   |   |---LICENSE.md
|   |   |---README.md
|   |   `---dialogs
|   |       |---options.js
|   |       `---toolbar.css
|   |---specialchar
|   |   `---dialogs
|   |       |---specialchar.js
|   |       `---lang
|   |           |---ar.js
|   |           |---bg.js
|   |           |---ca.js
|   |           |---cs.js
|   |           |---cy.js
|   |           |---de.js
|   |           |---el.js
|   |           |---en.js
|   |           |---eo.js
|   |           |---es.js
|   |           |---et.js
|   |           |---fa.js
|   |           |---fi.js
|   |           |---fr-ca.js
|   |           |---fr.js
|   |           |---gl.js
|   |           |---he.js
|   |           |---hr.js
|   |           |---hu.js
|   |           |---id.js
|   |           |---it.js
|   |           |---ja.js
|   |           |---km.js
|   |           |---ku.js
|   |           |---lv.js
|   |           |---nb.js
|   |           |---nl.js
|   |           |---no.js
|   |           |---pl.js
|   |           |---pt-br.js
|   |           |---pt.js
|   |           |---ru.js
|   |           |---si.js
|   |           |---sk.js
|   |           |---sl.js
|   |           |---sq.js
|   |           |---sv.js
|   |           |---th.js
|   |           |---tr.js
|   |           |---ug.js
|   |           |---uk.js
|   |           |---vi.js
|   |           |---zh-cn.js
|   |           |---zh.js
|   |           `---_translationstatus.txt
|   |---table
|   |   `---dialogs
|   |       `---table.js
|   |---tabletools
|   |   `---dialogs
|   |       `---tableCell.js
|   `---wsc
|       |---LICENSE.md
|       |---README.md
|       `---dialogs
|           |---ciframe.html
|           |---tmp.html
|           |---tmpFrameset.html
|           |---wsc.css
|           |---wsc.js
|           `---wsc_ie.js
|---samples
|   |---ajax.html
|   |---api.html
|   |---appendto.html
|   |---datafiltering.html
|   |---divreplace.html
|   |---index.html
|   |---inlineall.html
|   |---inlinebycode.html
|   |---inlinetextarea.html
|   |---jquery.html
|   |---readonly.html
|   |---replacebyclass.html
|   |---replacebycode.html
|   |---sample.css
|   |---sample.js
|   |---sample_posteddata.php
|   |---tabindex.html
|   |---uicolor.html
|   |---uilanguages.html
|   |---xhtmlstyle.html
|   |---assets
|   |   |---posteddata.php
|   |   |---sample.css
|   |   |---sample.jpg
|   |   |---inlineall
|   |   |   `---logo.png
|   |   |---outputxhtml
|   |   |   `---outputxhtml.css
|   |   `---uilanguages
|   |       `---languages.js
|   `---plugins
|       |---dialog
|       |   |---dialog.html
|       |   `---assets
|       |       `---my_dialog.js
|       |---enterkey
|       |   `---enterkey.html
|       |---htmlwriter
|       |   |---outputforflash.html
|       |   |---outputhtml.html
|       |   `---assets
|       |       `---outputforflash
|       |           |---outputforflash.fla
|       |           |---outputforflash.swf
|       |           `---swfobject.js
|       |---magicline
|       |   `---magicline.html
|       |---toolbar
|       |   `---toolbar.html
|       `---wysiwygarea
|           `---fullpage.html
`---skins
    `---moono
        |---dialog.css
        |---dialog_ie.css
        |---dialog_ie7.css
        |---dialog_ie8.css
        |---dialog_iequirks.css
        |---dialog_opera.css
        |---editor.css
        |---editor_gecko.css
        |---editor_ie.css
        |---editor_ie7.css
        |---editor_ie8.css
        |---editor_iequirks.css
        |---icons.png
        |---icons_hidpi.png
        |---readme.md
        `---images
            |---arrow.png
            |---close.png
            |---lock-open.png
            |---lock.png
            |---refresh.png
            `---hidpi
                |---close.png
                |---lock-open.png
                |---lock.png
                `---refresh.png


 
С IPBoard 3.4.4
 

public/js/3rd_party/ckeditor/
|---ckeditor.js
|---ckeditor_basic.js
|---ckeditor_basic_source.js
|---ckeditor_source.js
|---config.js
|---contents.css
|---index.html
|---ips_changed.txt
|---ips_config.js
|---LICENSE.html
|---images
|   |---index.html
|   `---spacer.gif
|---lang
|   |---af.js
|   |---ar.js
|   |---bg.js
|   |---bn.js
|   |---bs.js
|   |---ca.js
|   |---cs.js
|   |---cy.js
|   |---da.js
|   |---de.js
|   |---el.js
|   |---en-au.js
|   |---en-ca.js
|   |---en-gb.js
|   |---en.js
|   |---eo.js
|   |---es.js
|   |---et.js
|   |---eu.js
|   |---fa.js
|   |---fi.js
|   |---fo.js
|   |---fr-ca.js
|   |---fr.js
|   |---gl.js
|   |---gu.js
|   |---he.js
|   |---hi.js
|   |---hr.js
|   |---hu.js
|   |---index.html
|   |---ipb.js
|   |---is.js
|   |---it.js
|   |---ja.js
|   |---ka.js
|   |---km.js
|   |---ko.js
|   |---lt.js
|   |---lv.js
|   |---mn.js
|   |---ms.js
|   |---nb.js
|   |---nl.js
|   |---no.js
|   |---pl.js
|   |---pt-br.js
|   |---pt.js
|   |---ro.js
|   |---ru.js
|   |---sk.js
|   |---sl.js
|   |---sr-latn.js
|   |---sr.js
|   |---sv.js
|   |---th.js
|   |---tr.js
|   |---uk.js
|   |---vi.js
|   |---zh-cn.js
|   |---zh.js
|   |---_languages.js
|   `---_translationstatus.txt
|---plugins
|   |---index.html
|   |---a11yhelp
|   |   |---index.html
|   |   |---dialogs
|   |   |   |---a11yhelp.js
|   |   |   `---index.html
|   |   `---lang
|   |       |---cs.js
|   |       |---cy.js
|   |       |---da.js
|   |       |---de.js
|   |       |---el.js
|   |       |---en.js
|   |       |---eo.js
|   |       |---fa.js
|   |       |---fi.js
|   |       |---fr.js
|   |       |---gu.js
|   |       |---he.js
|   |       |---index.html
|   |       |---it.js
|   |       |---ku.js
|   |       |---lv.js
|   |       |---mk.js
|   |       |---nb.js
|   |       |---nl.js
|   |       |---no.js
|   |       |---pt-br.js
|   |       |---ro.js
|   |       |---sk.js
|   |       |---tr.js
|   |       |---ug.js
|   |       |---vi.js
|   |       |---zh-cn.js
|   |       `---_translationstatus.txt
|   |---about
|   |   |---index.html
|   |   `---dialogs
|   |       |---about.js
|   |       |---index.html
|   |       `---logo_ckeditor.png
|   |---adobeair
|   |   |---index.html
|   |   `---plugin.js
|   |---ajax
|   |   |---index.html
|   |   `---plugin.js
|   |---autogrow
|   |   |---index.html
|   |   `---plugin.js
|   |---bbcode
|   |   |---index.html
|   |   `---plugin.js
|   |---clipboard
|   |   |---index.html
|   |   `---dialogs
|   |       |---index.html
|   |       `---paste.js
|   |---colordialog
|   |   |---index.html
|   |   `---dialogs
|   |       |---colordialog.js
|   |       `---index.html
|   |---devtools
|   |   |---index.html
|   |   |---plugin.js
|   |   `---lang
|   |       |---bg.js
|   |       |---cs.js
|   |       |---cy.js
|   |       |---da.js
|   |       |---de.js
|   |       |---el.js
|   |       |---en.js
|   |       |---eo.js
|   |       |---et.js
|   |       |---fa.js
|   |       |---fi.js
|   |       |---fr.js
|   |       |---gu.js
|   |       |---he.js
|   |       |---hr.js
|   |       |---index.html
|   |       |---it.js
|   |       |---ku.js
|   |       |---lv.js
|   |       |---nb.js
|   |       |---nl.js
|   |       |---no.js
|   |       |---pl.js
|   |       |---pt-br.js
|   |       |---sk.js
|   |       |---tr.js
|   |       |---ug.js
|   |       |---uk.js
|   |       |---vi.js
|   |       |---zh-cn.js
|   |       `---_translationstatus.txt
|   |---dialog
|   |   |---dialogDefinition.js
|   |   `---index.html
|   |---div
|   |   |---index.html
|   |   `---dialogs
|   |       |---div.js
|   |       `---index.html
|   |---docprops
|   |   |---index.html
|   |   |---plugin.js
|   |   `---dialogs
|   |       |---docprops.js
|   |       `---index.html
|   |---find
|   |   |---index.html
|   |   `---dialogs
|   |       |---find.js
|   |       `---index.html
|   |---flash
|   |   |---index.html
|   |   |---dialogs
|   |   |   |---flash.js
|   |   |   `---index.html
|   |   `---images
|   |       |---index.html
|   |       `---placeholder.png
|   |---forms
|   |   |---index.html
|   |   |---dialogs
|   |   |   |---button.js
|   |   |   |---checkbox.js
|   |   |   |---form.js
|   |   |   |---hiddenfield.js
|   |   |   |---index.html
|   |   |   |---radio.js
|   |   |   |---select.js
|   |   |   |---textarea.js
|   |   |   `---textfield.js
|   |   `---images
|   |       |---hiddenfield.gif
|   |       `---index.html
|   |---iframe
|   |   |---index.html
|   |   |---dialogs
|   |   |   |---iframe.js
|   |   |   `---index.html
|   |   `---images
|   |       |---index.html
|   |       `---placeholder.png
|   |---iframedialog
|   |   |---index.html
|   |   `---plugin.js
|   |---image
|   |   |---index.html
|   |   `---dialogs
|   |       |---image.js
|   |       `---index.html
|   |---ipsbbcode
|   |   |---index.html
|   |   |---dialogs
|   |   |   |---index.html
|   |   |   `---ipsbbcode.js
|   |   `---images
|   |       |---index.html
|   |       `---ips_bbcode.png
|   |---ipscode
|   |   |---index.html
|   |   |---dialogs
|   |   |   |---index.html
|   |   |   `---ipscode.js
|   |   `---images
|   |       |---code.png
|   |       `---index.html
|   |---ipsemoticon
|   |   |---index.html
|   |   `---images
|   |       |---index.html
|   |       `---ips_emoticon.png
|   |---ipsimage
|   |   |---dialogs
|   |   |   `---ipsimage.js
|   |   `---images
|   |       `---image.gif
|   |---ipsmedia
|   |   |---index.html
|   |   `---images
|   |       |---index.html
|   |       `---mymedia.png
|   |---ipsoptions
|   |   |---index.html
|   |   `---images
|   |       |---index.html
|   |       `---ips_options.png
|   |---ipsquote
|   |   |---index.html
|   |   `---images
|   |       |---index.html
|   |       `---quote.png
|   |---ipssourcearea
|   |   `---images
|   |       `---switch.png
|   |---ipsswitch
|   |   |---index.html
|   |   `---images
|   |       |---index.html
|   |       `---switch.png
|   |---link
|   |   |---index.html
|   |   |---dialogs
|   |   |   |---anchor.js
|   |   |   |---index.html
|   |   |   `---link.js
|   |   `---images
|   |       |---anchor.gif
|   |       `---index.html
|   |---liststyle
|   |   |---index.html
|   |   `---dialogs
|   |       |---index.html
|   |       `---liststyle.js
|   |---pagebreak
|   |   |---index.html
|   |   `---images
|   |       |---index.html
|   |       `---pagebreak.gif
|   |---pastefromword
|   |   |---index.html
|   |   `---filter
|   |       |---default.js
|   |       `---index.html
|   |---pastetext
|   |   |---index.html
|   |   `---dialogs
|   |       |---index.html
|   |       `---pastetext.js
|   |---placeholder
|   |   |---index.html
|   |   |---placeholder.gif
|   |   |---plugin.js
|   |   |---dialogs
|   |   |   |---index.html
|   |   |   `---placeholder.js
|   |   `---lang
|   |       |---bg.js
|   |       |---cs.js
|   |       |---cy.js
|   |       |---da.js
|   |       |---de.js
|   |       |---el.js
|   |       |---en.js
|   |       |---eo.js
|   |       |---et.js
|   |       |---fa.js
|   |       |---fi.js
|   |       |---fr.js
|   |       |---he.js
|   |       |---hr.js
|   |       |---index.html
|   |       |---it.js
|   |       |---ku.js
|   |       |---lv.js
|   |       |---nb.js
|   |       |---nl.js
|   |       |---no.js
|   |       |---pl.js
|   |       |---pt-br.js
|   |       |---sk.js
|   |       |---tr.js
|   |       |---ug.js
|   |       |---uk.js
|   |       |---vi.js
|   |       |---zh-cn.js
|   |       `---_translationstatus.txt
|   |---preview
|   |   `---preview.html
|   |---scayt
|   |   |---index.html
|   |   `---dialogs
|   |       |---index.html
|   |       |---options.js
|   |       `---toolbar.css
|   |---showblocks
|   |   |---index.html
|   |   `---images
|   |       |---block_address.png
|   |       |---block_blockquote.png
|   |       |---block_div.png
|   |       |---block_h1.png
|   |       |---block_h2.png
|   |       |---block_h3.png
|   |       |---block_h4.png
|   |       |---block_h5.png
|   |       |---block_h6.png
|   |       |---block_p.png
|   |       |---block_pre.png
|   |       `---index.html
|   |---smiley
|   |   |---index.html
|   |   |---dialogs
|   |   |   |---index.html
|   |   |   `---smiley.js
|   |   `---images
|   |       |---angel_smile.gif
|   |       |---angry_smile.gif
|   |       |---broken_heart.gif
|   |       |---confused_smile.gif
|   |       |---cry_smile.gif
|   |       |---devil_smile.gif
|   |       |---embaressed_smile.gif
|   |       |---envelope.gif
|   |       |---heart.gif
|   |       |---index.html
|   |       |---kiss.gif
|   |       |---lightbulb.gif
|   |       |---omg_smile.gif
|   |       |---regular_smile.gif
|   |       |---sad_smile.gif
|   |       |---shades_smile.gif
|   |       |---teeth_smile.gif
|   |       |---thumbs_down.gif
|   |       |---thumbs_up.gif
|   |       |---tounge_smile.gif
|   |       |---whatchutalkingabout_smile.gif
|   |       `---wink_smile.gif
|   |---specialchar
|   |   |---index.html
|   |   |---dialogs
|   |   |   |---index.html
|   |   |   `---specialchar.js
|   |   `---lang
|   |       |---cs.js
|   |       |---cy.js
|   |       |---de.js
|   |       |---el.js
|   |       |---en.js
|   |       |---eo.js
|   |       |---et.js
|   |       |---fa.js
|   |       |---fi.js
|   |       |---fr.js
|   |       |---he.js
|   |       |---hr.js
|   |       |---index.html
|   |       |---it.js
|   |       |---ku.js
|   |       |---lv.js
|   |       |---nb.js
|   |       |---nl.js
|   |       |---no.js
|   |       |---pt-br.js
|   |       |---sk.js
|   |       |---tr.js
|   |       |---ug.js
|   |       |---zh-cn.js
|   |       `---_translationstatus.txt
|   |---styles
|   |   |---index.html
|   |   `---styles
|   |       |---default.js
|   |       `---index.html
|   |---stylesheetparser
|   |   |---index.html
|   |   `---plugin.js
|   |---table
|   |   |---index.html
|   |   `---dialogs
|   |       |---index.html
|   |       `---table.js
|   |---tableresize
|   |   |---index.html
|   |   `---plugin.js
|   |---tabletools
|   |   |---index.html
|   |   `---dialogs
|   |       |---index.html
|   |       `---tableCell.js
|   |---templates
|   |   |---index.html
|   |   |---dialogs
|   |   |   |---index.html
|   |   |   `---templates.js
|   |   `---templates
|   |       |---default.js
|   |       |---index.html
|   |       `---images
|   |           |---index.html
|   |           |---template1.gif
|   |           |---template2.gif
|   |           `---template3.gif
|   |---uicolor
|   |   |---index.html
|   |   |---plugin.js
|   |   |---uicolor.gif
|   |   |---dialogs
|   |   |   |---index.html
|   |   |   `---uicolor.js
|   |   |---lang
|   |   |   |---bg.js
|   |   |   |---cs.js
|   |   |   |---cy.js
|   |   |   |---da.js
|   |   |   |---de.js
|   |   |   |---el.js
|   |   |   |---en.js
|   |   |   |---eo.js
|   |   |   |---et.js
|   |   |   |---fa.js
|   |   |   |---fi.js
|   |   |   |---fr.js
|   |   |   |---he.js
|   |   |   |---hr.js
|   |   |   |---index.html
|   |   |   |---it.js
|   |   |   |---ku.js
|   |   |   |---lv.js
|   |   |   |---mk.js
|   |   |   |---nb.js
|   |   |   |---nl.js
|   |   |   |---no.js
|   |   |   |---pl.js
|   |   |   |---pt-br.js
|   |   |   |---sk.js
|   |   |   |---tr.js
|   |   |   |---ug.js
|   |   |   |---uk.js
|   |   |   |---vi.js
|   |   |   |---zh-cn.js
|   |   |   `---_translationstatus.txt
|   |   `---yui
|   |       |---index.html
|   |       |---yui.js
|   |       `---assets
|   |           |---hue_bg.png
|   |           |---hue_thumb.png
|   |           |---index.html
|   |           |---picker_mask.png
|   |           |---picker_thumb.png
|   |           `---yui.css
|   |---wsc
|   |   |---index.html
|   |   `---dialogs
|   |       |---ciframe.html
|   |       |---index.html
|   |       |---tmpFrameset.html
|   |       |---wsc.css
|   |       `---wsc.js
|   `---xml
|       |---index.html
|       `---plugin.js
|---skins
|   |---index.html
|   `---ips
|       |---dialog.css
|       |---editor.css
|       |---elementspath.css
|       |---icons.css
|       |---icons.png
|       |---icons_rtl.png
|       |---index.html
|       |---mainui.css
|       |---menu.css
|       |---panel.css
|       |---presets.css
|       |---reset.css
|       |---richcombo.css
|       |---skin.js
|       |---templates.css
|       |---toolbar.css
|       `---images
|           |---dialog_sides.gif
|           |---dialog_sides.png
|           |---dialog_sides_rtl.png
|           |---index.html
|           |---ips_bbcode.png
|           |---mini.gif
|           |---noimage.png
|           |---sprites.png
|           |---sprites2.png
|           |---sprites3.png
|           |---sprites_ie6.png
|           `---toolbar_start.gif
`---themes
    |---index.html
    `---default
        |---index.html
        `---theme.js
 


 
Код: 
 
ajaxEditBox

<if test="jsNotLoaded:|:$extraData['_loadJs']">
	{parse template="editorLoadJs" group="editors" params="$extraData['smilies']"}
</if>
<if test="ajaxerror:|:$error_msg">
	<p id='error_msg_e{$pid}' class='message error'>{$error_msg}</p>
<else />
	<p id='error_msg_e{$pid}' class='message error' style='display: none'>{$error_msg}</p>
</if>
<input type='hidden' name='editor_ids[]' value='e{$pid}' />
<div class='ipsBox clearfix'>
	<div class='ipsBox_container'>
		<div class='ips_editor' id='editor_e{$pid}'>
			<if test="forceStd:|:$extraData['isHtml']">
				{parse editor="Post" content="$post" options="array( 'editorName' => 'edit-' . $pid, 'type' => 'full', 'minimize' => 0, 'isHtml' => 1, 'legacyMode' => 'off' )"}
			<else />
				{parse editor="Post" content="$post" options="array( 'editorName' => 'edit-' . $pid, 'type' => 'full', 'minimize' => 0, 'legacyMode' => 'off' )"}
			</if>
			<if test="showeditoptions:|:$extraData['showEditOptions']">
				<div class='row2 ipsPad ipsText_small desc'>
					<if test="showreason:|:$extraData['showReason']">
						{$this->lang->words['preason_for_edit']} <input type='text' size='35' maxlength='250' class='input_text' id='post_edit_reason_{$pid}' name='post_edit_reason_{$pid}' value='{$extraData['reasonForEdit']}' />
					</if>
					<if test="showappendedit:|:$extraData['showAppendEdit']">
					<input type='checkbox' name='add_edit_{$pid}' id='add_edit_{$pid}' <if test="appendedit:|:$extraData['append_edit']">checked='checked'</if> value='1' /> <label for='add_edit_{$pid}'>{$this->lang->words['show_edited_by']}</label>
					</if>
				</div>
				<if test="htmlstatus:|:$extraData['checkBoxes']['html'] !== null">
					<div class='row2 ipsPad ipsText_small desc'>
						<input type="checkbox" name="post_htmlstatus" class="input_check" value="1" id='post_htmlstatus_{$pid}' {$extraData['checkBoxes']['html']} /> <label for='post_htmlstatus' data-tooltip='{$this->lang->words['pp_html_tooltip']}'>{$this->lang->words['pp_html']}</label>
						<script type="text/javascript">
							ipb.textEditor.bindHtmlCheckbox( $('post_htmlstatus_{$pid}') );
						</script>
					</div>
				</if>
			</if>
			<fieldset class='submit'>
				<input type='submit' value='{$this->lang->words['save_changes']}' class='input_submit' id='edit_save_e{$pid}' tabindex='25' /> <if test="! $extraData['skipFullButton']"><input type='submit' value='{$this->lang->words['use_full_editor']}' class='input_submit alt' id='edit_switch_e{$pid}' /></if> {$this->lang->words['or']} <a href='#' title='{$this->lang->words['cancel']}' class='cancel' id='edit_cancel_e{$pid}'>{$this->lang->words['cancel']}</a>
			</fieldset>
		</div>
	</div>
</div> 


 
editor
 

<if test="hasToAcknowledge:|:$acknowledge">
	<p class='message'>{$this->lang->words['warnings_acknowledge_desc']} <a href='{parse url="app=members&amp;module=profile&amp;section=warnings&amp;do=acknowledge&amp;id={$acknowledge}" base="public"}' class='ipsButton_secondary'>{$this->lang->words['warnings_acknowledge_review']}</a></p>
<else />
	<if test="hasWrningInfo:|:$warningInfo">
		<p class='message'>{$warningInfo}</p>
		<br />
	</if>
	<if test="showEditor:|:$showEditor">
		<php>
			/* Always return as UTF-8 */
			$jsonEncoded = IPSText::jsonEncodeForTemplate( $autoSaveData );
		</php>
		<if test="jsNotLoaded:|:empty($this->_editorJsLoaded)">
			{parse template="editorLoadJs" group="editors" params="$options"}
		</if>
		<input type='hidden' rel="include" name='isRte' id='isRte_{$options['editorName']}' value='{parse expression="intval( $options['isRte'] )"}' />
		<input type='hidden'  rel="include" name='noSmilies' id='noSmilies_{$options['editorName']}' value='{parse expression="intval( $options['noSmilies'] )"}' />
		<if test="hasContent:|:$bbcodeVersion || $options['bypassCKEditor']">
			<!-- NO JS FALLBACK -->
			<input type='hidden' rel="include" name='noCKEditor' id='noCKEditor_{$options['editorName']}' value='1' />
			<textarea id="{$options['editorName']}" name="{$formField}" class='ipsEditor_textarea input_text'>$bbcodeVersion</textarea>
			<textarea id="{$options['editorName']}_js" name="{$formField}_js" style='display:none' class='ipsEditor_textarea input_text<if test="ismini:|:$options['type'] == 'mini'"> mini</if>'>{$content}</textarea>
		<else />
			<input type='hidden' name='noCKEditor_{$options['editorName']}' id='noCKEditor_{$options['editorName']}' value='0' />
			<textarea id="{$options['editorName']}" name="{$formField}" class='ipsEditor_textarea input_text<if test="ismini:|:$options['type'] == 'mini'"> mini</if>'>{$content}</textarea>
		</if>
		<p class='desc ipsPad' style='display: none' id='editor_html_message_{$options['editorName']}'>{$this->lang->words['editor_html_message']}</p>
		<script type="text/javascript">
			ipb.textEditor.initialize('{$options['editorName']}', { type: <if test="hasType:|:$options['type']">'{$options['type']}'<else />''</if>,
																	height: <if test="hasHeight:|:$options['height'] > 0">{$options['height']}<else /><if test="ismini:|:$options['type'] == 'mini'">150<else />300</if></if>,
																	minimize: <if test="hasMinimize:|:$options['minimize']">'{$options['minimize']}'<else />0</if>,
																	bypassCKEditor: {parse expression="intval( $options['bypassCKEditor'] )"},
																	delayInit: {parse expression="intval( $options['delayInit'] )"},
																	isHtml: {parse expression="intval( $options['isHtml'] )"},
																	isRte: {parse expression="intval( $options['isRte'] )"},
																	noSmilies: {parse expression="intval( $options['noSmilies'] )"},
																	disabledTags: {IPSText::jsonEncodeForTemplate( $options['disabledTags'] )},
																	isTypingCallBack: <if test="hasCallback:|:$options['isTypingCallBack']">{$options['isTypingCallBack']}<else />''</if>,
																	ips_AutoSaveKey: <if test="hasSaveKey:|:$options['autoSaveKey']">'{$options['autoSaveKey']}'<else />''</if>,
													                ips_AutoSaveData: {$jsonEncoded} } );
		</script>
	</if>
</if> 


 
editorLoadJs
 

{parse js_module="textEditor"}
{parse js_module="textEditor.bbcode"}
<php>
	$this->_editorJsLoaded = true;
	$jsonEncoded = IPSText::jsonEncodeForTemplate( isset($options['smilies']) && is_array($options['smilies']) ? $options['smilies'] : array() );
	$options['bypassCKEditor'] = ( isset($options['bypassCKEditor']) ) ? $options['bypassCKEditor'] : 0;
</php>
<if test="bypassCkEditor:|:$options['bypassCKEditor'] != 1">
	<if test="defined("CK_LOAD_SOURCE") AND CK_LOAD_SOURCE">
		<!-- Load source files, not the minified version -->
		<script type="text/javascript" src="{$this->settings['js_base_url']}js/3rd_party/ckeditor/ckeditor_source.js?nck={$this->settings['noCacheKey']}"></script>
	<else />
		<script type="text/javascript" src="{$this->settings['js_base_url']}js/3rd_party/ckeditor/ckeditor.js?nck={$this->settings['noCacheKey']}"></script>
	</if>
<else />
	<script type="text/javascript">
		CKEDITOR = { config: {} };
	</script>
</if>
<script type="text/javascript">
	/* Dynamic items */
	CKEDITOR.config.IPS_BBCODE          = {IPSLib::fetchBbcodeAsJson( array( 'skip' => array( 'sharedmedia' ) ) )};
	CKEDITOR.config.IPS_BBCODE_NOPARSE  = {IPSLib::fetchBbcodeAsJson( array( 'noParseOnly' => 1 ) )};
	CKEDITOR.config.IPS_BBCODE_DISABLED = {IPSText::jsonEncodeForTemplate( $options['disabledTags'] )};
	CKEDITOR.config.IPS_BBCODE_IMG_URL  = "{$this->settings['public_cdn_url']}style_extra/bbcode_icons";
	CKEDITOR.config.IPS_BBCODE_BUTTONS  = [];
	CKEDITOR.timestamp                  = "{$this->settings['noCacheKey']}";
	
	/* Has to go before config load */
	var IPS_smiley_path			= "{$this->settings['emoticons_url']}/";
	var IPS_smiles       		= <if test="hasimages:|:! empty($options['smilies']['count'])">{$jsonEncoded}<else />{}</if>;
	var IPS_remove_plugins      = [];
	var IPS_extra_plugins       = [];
	
	/* Load our configuration */
	CKEDITOR.config.customConfig  = '{$this->settings['js_base_url']}js/3rd_party/ckeditor/ips_config.js';
	
	/* Override with prefs */
	CKEDITOR.config.CmdVAsPlainText = <if test="hasPastePlain:|:$this->memberData['bw_paste_plain']">true<else />false</if>;
</script>
{parse expression="$this->registry->output->addToDocumentHead( 'importcss', "{$this->settings['css_base_url']}style_css/{$this->registry->output->skin['_csscacheid']}/ipb_ckeditor.css" )"} 


 
editorSettings
 

<h3>{$this->lang->words['editor_options']}</h3>
<div class='fixed_inner ipsBox row1'>
	<div class='ipsSettings'>
		<fieldset class='ipsSettings_section'>
			<ul class='ipsForm ipsForm_horizontal'>
				<li>
					<input type='checkbox' class='input_check' id='pastePlain' <if test="$this->memberData['bw_paste_plain']">checked="checked"</if> name="pastePlain" value="1" /> &nbsp;<label for='pastePlain'>{$this->lang->words['editor_paste']}</label>
				</li>
				<li>
					<input type='checkbox' class='input_check' id='clearSavedContent' name="clearSavedContent" value="1" /> &nbsp;<label for='clearSavedContent'>{$this->lang->words['editor_clear_data']}</label>
				</li>
			</ul>
		</fieldset>
	</div>
	<div class='right' style='position: relative'>
		<a href='#' id='ipsEditorOptionsSave' class='ipsButton_secondary'>{$this->lang->words['editor_ok']}</a>
	</div>
</div> 


 
mediaGenericWrapper
 

<div class='clearfix'>
	{$pages}
</div>
<div>
	<ul class='media_results'>
		<if test="hasrows:|:count($rows)">
			<foreach loop="genericmedia:$rows as $row">
				<li class='result' onclick="return CKEDITOR.plugins.ipsmedia.insert( '{$row['insert']}' );">
					<if test="hasimage:|:$row['image']">
							<img src='{$row['image']}' alt=''<if test="haswidth:|:$row['width']"> width='{$row['width']}'</if><if test="hasheight:|:$row['height']"> height='{$row['height']}'</if> style='max-width: 80px;' class='media_image' /><br />
					</if>
					
						<strong>{parse expression="IPSText::truncate( $row['title'], 15 )"}</strong>
						<if test="hasdescription:|:$row['desc']">
							<br /><span class='desc'>{parse expression="IPSText::truncate( $row['desc'], 15 )"}</span>
						</if>
				</li>
			</foreach>
		<else />
			<li class='no_messages'>
				{$this->lang->words['no_mymedia_rows']}
			</li>
		</if>
	</ul>
</div>
<div class='clearfix'>
	{$pages}
</div> 


 
sharedMedia
 

<h3>{$this->lang->words['mymedia_title']}</h3>
<div class='fixed_inner ipsBox'>
	<div id='mymedia_inserted' style='display: none'>{$this->lang->words['added_to_editor']}</div>
	<div class='ipsVerticalTabbed ipsLayout ipsLayout_withleft ipsLayout_smallleft clearfix'>
		<div class='ipsVerticalTabbed_tabs ipsLayout_left'>
			<ul id='mymedia_tabs'>
				<foreach loop="mediatabs:$tabs as $tab">
					<li id='{$tab['app']}_{$tab['plugin']}'><a href='#' onclick="return CKEDITOR.plugins.ipsmedia.loadTab( '{$tab['app']}', '{$tab['plugin']}' );">{$tab['title']}</a></li>
				</foreach>
			</ul>
		</div>
		<div class='ipsVerticalTabbed_content ipsLayout_content ipsBox_container' style='position: relative'>
			<div class='ipsType_small' id='mymedia_toolbar'>
				<a href='#' id='mymedia_finish' class='ipsButton no_width' onclick="CKEDITOR.plugins.ipsmedia.popup.hide(); return false;"><img src='{$this->settings['img_url']}/accept.png' /> &nbsp;{$this->lang->words['mymedia_finished']}</a>
				<input type='hidden' name='sharedmedia_search_app' id='sharedmedia_search_app' value='' />
				<input type='hidden' name='sharedmedia_search_plugin' id='sharedmedia_search_plugin' value='' />
				<input type='text' name='search_string' id='sharedmedia_search' value="{$this->lang->words['start_typing_sms']}" size='30' class='input_text inactive' />
				<input class='input_submit' type='button' id='sharedmedia_submit' value='{$this->lang->words['search_string_search']}' />
				&nbsp;&nbsp;<a href='#' id='sharedmedia_reset' class='ipsType_smaller'>{$this->lang->words['search_string_reset']}</a>
			</div>
			<div id='mymedia_content' class='ipsPad'>
				{parse template="sharedMediaDefault" group="editors" params=""}
			</div>
		</div>
	</div>
</div>
<script type='text/javascript'>
ipb.vars['sm_init_value']	= "{$this->lang->words['start_typing_sms']}";
CKEDITOR.plugins.ipsmedia.searchinit();
</script> 


 
sharedMediaDefault
 

<h1 class='ipsType_pagetitle' style='text-align: center'>{$this->lang->words['mymedia_title']}</h1>
				<h2 class='ipsType_subtitle desc' style='text-align: center'>{$this->lang->words['shareable_media_warn']}</h2> 




 
Документация от docs.ckeditor.com/#!/guide/dev_installation по интеграции. 
 
И так, что где менять? Кто в теме, обобщите ваши мысли. Изменено пользователем AlexBrtn
Запрещенны активные ссылки и картинки на сторонних хостингах!!!
Ссылка на комментарий
Поделиться на другие сайты

  • 1 месяц спустя...

Задался тем же вопросом. Ранее как-то пробовал обновлять, но сдался. У меня CKEditor вообще тогда грузиться отказался..

Ссылка на комментарий
Поделиться на другие сайты

PaShKinG, Я, глазами забоялся туда лезть) 

Ссылка на комментарий
Поделиться на другие сайты

  • 2 недели спустя...

Не знаю,у меня в стандартном всё отлично работает. Этот слишком грамоздкий. 

Ссылка на комментарий
Поделиться на другие сайты

Не знаю,у меня в стандартном всё отлично работает. Этот слишком грамоздкий.

Там каждая функция настраивается

Изменено пользователем AlexBrtn
Ссылка на комментарий
Поделиться на другие сайты

  • 1 месяц спустя...

Встроил данный редактор путем тупой замены папки ckeditor из архива. Сюда "/public/js/3rd_party/ckeditor" 

В итоге получил редактор, но форма "быстрого ответа" работает как поле редактирования, без панели.

"Расширенная форма" вроде бы, исправно работает.

 

Как заставить работать форум "быстрого ответа" не знаю. А так же как добавить, например, кнопку смайлов.

Есть у кого соображения на этот счет? 

Ссылка на комментарий
Поделиться на другие сайты

@AlexBrtn: how do you intergrate new version of CKEditor in your IPBoard as your screenshot ?

Ссылка на комментарий
Поделиться на другие сайты

  • 5 месяцев спустя...

В IPB 3.4.6 можно вмонтировать его? 

Ссылка на комментарий
Поделиться на другие сайты

В IPB 3.4.6 можно вмонтировать его? 

да

Ссылка на комментарий
Поделиться на другие сайты

да

Инструкцию подробную где-нибудь можно найти? Я через поиск по IPBMafia попробовал - не нашел. 

Ссылка на комментарий
Поделиться на другие сайты

Инструкцию подробную где-нибудь можно найти? Я через поиск по IPBMafia попробовал - не нашел. 

Нет. Для этого и тема была создана. 

Ссылка на комментарий
Поделиться на другие сайты

  • 3 недели спустя...

sorry my english but it's not appear fast reply...how fixed it?

Ссылка на комментарий
Поделиться на другие сайты

sorry my english but it's not appear fast reply...how fixed it?

in the first post, it not the instruction. It only setting of a question me. As to make it who from attendees doesn't know, including me.
If you simply replaced the folder, that field of "prompt reply" won't be. How to correct and correctly to integrate CKEditor I don't know.
Ссылка на комментарий
Поделиться на другие сайты

AlexBrtn,thanks for answer, i just  replaced in Director publicjs3rd_partyckeditor  everything,  first i delete everything and after that i upload  CKEditor files, and also replace ajaxEditBox , editor,editorLoadJs,editorSettings, mediaGenericWrapper and other scripts as you have,  can't anyone help me?

how show up in fast reply :) thanks

Ссылка на комментарий
Поделиться на другие сайты

AlexBrtn,thanks for answer, i just  replaced in Director publicjs3rd_partyckeditor  everything,  first i delete everything and after that i upload  CKEditor files, and also replace ajaxEditBox , editor,editorLoadJs,editorSettings, mediaGenericWrapper and other scripts as you have,  can't anyone help me?

how show up in fast reply :) thanks

 I don't know

Ссылка на комментарий
Поделиться на другие сайты

  • 7 месяцев спустя...

смогли вмонтировать новый стиль или нет? 

Ссылка на комментарий
Поделиться на другие сайты

смогли вмонтировать новый стиль или нет? 

Нет. И не пытался со своими знаниями. 

Пытался выйти на тех кто встраивал на forum.worldoftanks.ru, писали, что не знают человека, который им делал. включая модераторов.

Ссылка на комментарий
Поделиться на другие сайты

на оф. сайте редактора полно вопросов как обновиться, но ни одного ответа. Вечером поставлю форум тестовый, попробую потыкать. Если все получится, скину как сделал)

Ссылка на комментарий
Поделиться на другие сайты

поставил на тестовый, работает в расширенной форме. На быстром ответе редактор при загрузке мелькнет и пропадает. Чую, что нужно копать в сторону шаблонов: editor ,editorLoadJs, editorSettings. Там переписывать что-то, пока не разобрался что. Буду еще тыкать. Кстати, на оф. форуме танков работает таблица прекрасно, но сейчас у меня не работает. ФАК почитал, до конца не понял, что-то с бб-кодами надо копаться. А чего их тех. поддержки не было желающих обновить редактор? Может поможете или зададите направление?

Ссылка на комментарий
Поделиться на другие сайты

поставил на тестовый, работает в расширенной форме. На быстром ответе редактор при загрузке мелькнет и пропадает. Чую, что нужно копать в сторону шаблонов: editor ,editorLoadJs, editorSettings. Там переписывать что-то, пока не разобрался что. Буду еще тыкать. Кстати, на оф. форуме танков работает таблица прекрасно, но сейчас у меня не работает. ФАК почитал, до конца не понял, что-то с бб-кодами надо копаться. А чего их тех. поддержки не было желающих обновить редактор? Может поможете или зададите направление?

Я нашел проблему, там стоит dispay:none, он задается от javascript, но где я так и не нашел.

Ссылка на комментарий
Поделиться на другие сайты

Кстати, на оф. форуме танков работает таблица прекрасно

Может в глобальном css прописать стили для таблиц?

table{
    border-collapse: collapse;
}

th{
    
    padding:10px;
    
    border-top: 1px solid black;
    border-bottom: 1px solid black;
    background-color: #618AD2;
    color: white;
}

td{
    padding: 10px;
    border-bottom: 1px solid #ccc;
Ссылка на комментарий
Поделиться на другие сайты

 

Может в глобальном css прописать стили для таблиц?

table{
    border-collapse: collapse;
}

th{
    
    padding:10px;
    
    border-top: 1px solid black;
    border-bottom: 1px solid black;
    background-color: #618AD2;
    color: white;
}

td{
    padding: 10px;
    border-bottom: 1px solid #ccc;

Тогда уж нужно прописать для всех функций редактора.

Ссылка на комментарий
Поделиться на другие сайты

задал вопрос на оф. форуме танков, послали в ЦПП))) задал там, жду ответ.

Ссылка на комментарий
Поделиться на другие сайты

ЦПП
Центральная прачечная?)
Ссылка на комментарий
Поделиться на другие сайты

В 22.04.2015 в 18:20, rustav сказал:

задал вопрос на оф. форуме танков, послали в ЦПП))) задал там, жду ответ.

Поверьте, ничего дельного Вам не ответят.

В 22.04.2015 в 19:31, AlexBrtn сказал:

Центральная прачечная?)

Центр Поддержки Пользователей.

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...