Jump to content

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

Featured Replies

Posted
comment_48878

Приветствую!
 
Наткнулся недавно на новый 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 по интеграции. 
 
И так, что где менять? Кто в теме, обобщите ваши мысли.

Edited by AlexBrtn
Запрещенны активные ссылки и картинки на сторонних хостингах!!!

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

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

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

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

  • Author
comment_54920

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

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

Edited by AlexBrtn

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

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

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

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

 

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

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

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

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

comment_70421

да

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

  • Author
comment_70438

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

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

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

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.
comment_71261

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

  • Author
comment_71311

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 месяцев спустя...
  • Author
comment_85571

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

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

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

comment_85576

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

comment_85602

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

comment_85610

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

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

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

Может в глобальном 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;
comment_85717

 

Может в глобальном 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;

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

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

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

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

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

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

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

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.


Guest
Ответить в этой теме...

Последние посетители 0

  • No registered users viewing this page.