SCM: (https://git.esolutionsgroup.ca/esolg/230002-icreate-javascriptlibraries)
The eSolutions Hosted Libraries is a content distribution network for the most popular JavaScript libraries used by eSolutions' web applications. To add a library to your site, simply use <script> tags to include the library, as explained below.
<script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/angularjs/1.2.14/angular.min.js"></script>
<script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/angular-ui-select/0.8.4-pre/dist/select.min"></script>
<link
rel="stylesheet" type="text/css" href="https://js.esolutionsgroup.ca/js/libs/angular-ui-select/0.8.4-pre/dist/select.min.css" />
<script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/ng-table/0.3.0/ng-table.min.js"></script>
<link
rel="stylesheet" type="text/css" href="https://js.esolutionsgroup.ca/js/libs/ng-table/0.3.0/resources/css/ng-table.min.css" />
<script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/bootstrap/2.3.2/bootstrap.min.js"></script>
<link rel="stylesheet" type="text/css"
href="https://js.esolutionsgroup.ca/js/libs/bootstrap/2.3.2/resources/css/bootstrap.min.css" />
https://js.esolutionsgroup.ca/js/libs/bootstrap/2.3.2/resources/csshttps://js.esolutionsgroup.ca/js/libs/bootstrap/2.3.2/resources/fonts
<script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/bootstrap/3.2.0/js/bootstrap.min.js"></script>
<link rel="stylesheet" type="text/css"
href="https://js.esolutionsgroup.ca/js/libs/bootstrap/3.2.0/css/bootstrap.min.css" />
https://js.esolutionsgroup.ca/js/libs/bootstrap/3.2.0/csshttps://js.esolutionsgroup.ca/js/libs/bootstrap/3.2.0/fontsPlugin wrapping for settings object and Default token settings definitions for cloning
<script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/ic/1.0.0/template_defaultEditorSettings.js"></script>
An implementation of legend widget for Chart.js.
<script
src="https://js.esolutionsgroup.ca/js/libs/chartjs-legend/0.0.1/legend.js"></script>
<link rel="stylesheet" type="text/css"
href="https://js.esolutionsgroup.ca/js/libs/chartjs-legend/0.0.1/css/legend.css" />
<script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/jsonxml/0.9/json2xml.js"></script>
<script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/jsonxml/0.9/xml2json.js"></script>
date manipulation.
<script
src="https://js.esolutionsgroup.ca/js/libs/date/1.0.0/date.min.js"></script>
date formatting (non-conflicting subset of date.js).
<script
src="https://js.esolutionsgroup.ca/js/libs/icreate-date/1.0.0/icrt-toDateTimeString.min.js"></script>
HTML5 Canvas for Internet Explorer 8 and below
<!--[if lte IE 8]><script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/excanvas/r3/excanvas.compiled.js"></script><![endif]-->
These are used by the Feedback Form Module to style the way the feedback form will look.
to be added to the headCommon.asp - in document.ready
//$("#yourButtonId").feedbackForm({
$("body").feedbackForm({
useDefaultIfNoIdIsSet: true,
baseUrl: "http://icreate1.stage.esolutionsgroup.ca/feedback/api/1.0/",
getUrl: "client/239000_97_201_iCreateTemplate/default-form/en",
jsServerUrl: "https://js.esolutionsgroup.ca/js/libs/feedback-form/",
previewMode: false,
agreeTermsUrl: "Your xml file loaded path",
showButton: true,
pageTitle: "your page title here minus site title",
buttonText: "",
feedbackFormId: 'a23605da-88e7-481e-8100-15acb92e9f13',
loadingText : "Please wait while this form loads...",
firstNameLength: 63,
lastNameLength: 63,
emailLength: 255,
suggestionLength: 255,
firstNameText: "First Name:",
lastNameText: "Last Name:",
emailText: "Email:",
closeText : "Or cancel",
sendText : "Send Feedback",
closeThankYouText : "Close",
thankYouModalTitle: "Thank you for your feedback!",
language:'en',
thankYouModalWidth: 600,
formModalWidth: 600
});
http://js.esolutionsgroup.ca/js/libs/feedback-form/skins/index.html?skin=default&version=2.1.8&baseUrl=//icreate1.stage.esolutionsgroup.ca/feedback/api/1.0&preview=true&formId=a23605da-88e7-481e-8100-15acb92e9f13&allowSkinSwitch=true
http://js.esolutionsgroup.ca/js/libs/feedback-form/skins/index.html?skin=[name-of-skin-seen-above]&version=[X.Y.Z]&baseUrl=[url-of-server]&preview=[bool]&formId=[guid]&allowSkinSwitch=[bool]
<script type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/feedback-form/structure/2.4.1/feedbackStructure.min.js"></script>
Font Awesome - CSS library for awesome fonts
Tracks clicks of anchors
<script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/google-analytics-tracking/1.0.0/gaTracking.min.js"></script>
Give your page some headroom. Hide your header until you need it
<script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/headroom/core/0.7.0/headroom.min.js"></script>
<script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/headroom/jquery/1.0.0/jquery.headroom.min.js"></script>
hoverIntent is similar to jQuery's built-in "hover" method except that instead of firing the handlerIn function immediately, hoverIntent checks to see if the user's mouse has slowed down (beneath the sensitivity threshold) before firing the event. The handlerOut function is only called after a matching handlerIn.
// basic usage ... just like .hover() .hoverIntent( handlerIn, handlerOut ) .hoverIntent( handlerInOut ) // basic usage ... with event delegation! .hoverIntent( handlerIn, handlerOut, selector ) .hoverIntent( handlerInOut, selector ) // using a basic configuration object .hoverIntent( config ) @param handlerIn function OR configuration object @param handlerOut function OR selector for delegation OR undefined @param selector selector OR undefined
<script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/hover-intent/1.8.0/jquery.hoverIntent.min.js"></script>
HTML5 IE enabling script
<!--[if lt IE 9]><script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/html5shiv/3.7.0/html5shiv.min.js"></script><![endif]-->
<link rel="stylesheet" type="text/css"
href="https://js.esolutionsgroup.ca/js/libs/icreate-base-style/1.0.0/base.css" />
allows styling of tables in edit mode using context menu
<script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/jquery_contextmenu/1.7.0/jquery.ui-contextmenu.min.js"></script>
<link rel="stylesheet" type="text/css"
href="https://js.esolutionsgroup.ca/js/libs/jquery_contextmenu/skins/1.0.0/contextMenu.min.css" >
<script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/icreate-tablestyles/1.0.0/tableStyles.min.js"></script>
This plugin builds the html structure for the content saved in the token to displayed to the user
<script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/icreate-tinymce-accordion/1.0.4/jquery-icrtaccordion-clean.min.js"></script>
This is default TinyMCE Settings that will be used by the editor for each token in iCreate. Note that version 1.1.1 supports the revised template structure only.
<script
src="https://js.esolutionsgroup.ca/js/libs/icreate-tinymce-defaults/1.1.1/template_defaultEditorSettings.js"></script>
icrtEditorSettings =
$.fn.tinyMCE_iCreate_object()
.add("THIS IS MY TOKEN ID", "THIS IS THE SETTINGS NAME (SEE AVAILABLE DEFAULT TOKEN SCHEMAS)", { OVERRIDE DEFAULT ATTRIBUTES HERE })
.add("TKHomeBannerSaveImage", "standardImageSettings", {
height: '692',
width: '1068'
})
//example of appending a custom css to the content_css:
.addOneCSVTokenSetting("THIS IS MY TOKEN ID", "Name of specific setting", "value to append")
.addOneCSVTokenSetting("TKInteriorMainContent", "content_css", "https://fonts.googleapis.com/css?family=Source+Sans+Pro:400,600,700")
//example of removing the styleselect from the 3rd set of buttons:
.removeOneCSVTokenSetting("THIS IS MY TOKEN ID", "Name of specific setting", "value to remove")
.removeOneCSVTokenSetting("TKInteriorMainContent", "theme_advanced_buttons3", "styleselect")
//example of adding the styleselect to the 3rd set of buttons just before the "cite" item:
.addOneCSVTokenSettingBefore("THIS IS MY TOKEN ID", "Name of specific setting", "value to place the new item before", "value to add in")
.addOneCSVTokenSettingBefore("TKInteriorMainContent", "theme_advanced_buttons3", "cite", "styleselect")
//example of removing the second instance of the bar separator from the 3rd set of buttons just before the "cite" item:
.removeBar("THIS IS MY TOKEN ID", "Name of specific setting", "index of bar")
.removeBar("TKInteriorMainContent", "theme_advanced_buttons3", 2)
.add("TKHomeBannerSaveText", "standardTextAreaSettings")
.settings;
standardTextAreaSettings = {
body_id: 'printArea',
body_class: ic_tinyMCE_bodyClass,
theme_advanced_statusbar_location: "none",
theme_advanced_toolbar_location: "external", // display the tool bar out of the content section
plugins: 'inlinepopups,advimage,advlink,autolink,autosave,autoresize,contextmenu,directionality,-filemanager,icrtacheck,icrtdoublectrl,icrtemail,icrtfriendlyredirect,icrtlanguageselect,icrtlogin,icrtphotogallery,icrtsave,icrtsnippet,icrtspellchecker,icrtstyletable,icrtwrapper,icrtwqc,-imagemanager,insertdatetime,lists,media,paste,save,searchreplace,style,table,visualchars,xhtmlxtras,icrtsharedcontent,icrtaccordion,icrtpollmodule',
autoresize_min_height: '30',
width: "100%",
theme: "advanced",
theme_advanced_buttons1: "icrtsave,|,undo,redo,|,icrtspellchecker,|,removeformat,cut,copy,paste,pastetext,pasteword,|,search,replace,|,icrtsharedcontent,|,icrtpollmodule",
theme_advanced_buttons2: "bold,italic,underline,sup,sub,|,formatselect,|,numlist,bullist,|,justifyleft,justifycenter,justifyright,|,indent,outdent,blockquote,hr",
theme_advanced_buttons3: "icrtemail,anchor,link,unlink,|,styleselect,|,cite,abbr,acronym,|,charmap,insertdate,inserttime,|,image,media,icrtrelease,icrtphotogallery,icrtacheck,icrtacheckpopup,code",
theme_advanced_buttons4: "tablecontrols,visualaid,|,icrtacc_insert,|,icrtacc_add_row,icrtacc_delete_row",
icrtsection_cssClass: 'contentSection',
content_css: iCreateObject.corpRoot + "/Common/styles/base.css,"
+ iCreateObject.corpRoot + "/Common/styles/icreate.css,"
+ iCreateObject.corpRoot + "/Common/styles/sitecontent.css, "
+ iCreateObject.corpRoot + "/Common/styles/structure.css,"
+ iCreateObject.corpRoot + "/Common/styles/icrtaccordion.css,"
+ "/icreate/modules/pageeditor3/icrtEditor3-template.css,"
+ iCreateObject.corpRoot + "/Common/styles/icreateeditor.css",
plugin_insertdate_timeFormat: "%I:%M:%S %p",
inline_styles: false,
theme_advanced_blockformats: "p,h2,h3,div",
formats: {
alignleft: { selector: 'p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li,table,img', classes: 'Left' },
aligncenter: { selector: 'p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li,table,img', classes: 'Center' },
alignright: { selector: 'p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li,table,img', classes: 'Right' }
}
}
simpleTextAreaSettings = {
body_id: 'printArea',
body_class: ic_tinyMCE_bodyClass,
theme_advanced_statusbar_location: "none",
theme_advanced_toolbar_location: "external", // display the tool bar out of the content section
plugins: 'inlinepopups,advimage,advlink,autolink,autosave,autoresize,contextmenu,directionality,-filemanager,icrtacheck,icrtdoublectrl,icrtemail,icrtfriendlyredirect,icrtlanguageselect,icrtlogin,icrtsave,icrtsnippet,icrtspellchecker,icrtwrapper,icrtwqc,-imagemanager,insertdatetime,lists,paste,save,searchreplace,style,xhtmlxtras',
autoresize_min_height: '30',
width: "100%",
theme: "advanced",
theme_advanced_buttons1: "icrtsave,|,undo,redo,|,icrtspellchecker,|,removeformat,cut,copy,paste,pastetext,pasteword",
theme_advanced_buttons2: "bold,italic,underline,sup,sub,|,formatselect,|,justifyleft,justifycenter,justifyright",
theme_advanced_buttons3: "icrtemail,anchor,link,unlink,|,styleselect,|,code",
theme_advanced_buttons4: "",
icrtsection_cssClass: 'contentSection',
content_css: iCreateObject.corpRoot + "/Common/styles/base.css,"
+ iCreateObject.corpRoot + "/Common/styles/icreate.css,"
+ iCreateObject.corpRoot + "/Common/styles/sitecontent.css, "
+ iCreateObject.corpRoot + "/Common/styles/structure.css,"
+ iCreateObject.corpRoot + "/Common/styles/icrtaccordion.css,"
+ "/icreate/modules/pageeditor3/icrtEditor3-template.css,"
+ iCreateObject.corpRoot + "/Common/styles/icreateeditor.css",
plugin_insertdate_timeFormat: "%I:%M:%S %p",
inline_styles: false,
theme_advanced_blockformats: "p,h2,h3,div",
formats: {
alignleft: { selector: 'p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li,table,img', classes: 'Left' },
aligncenter: { selector: 'p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li,table,img', classes: 'Center' },
alignright: { selector: 'p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li,table,img', classes: 'Right' }
}
},
standardImageSettings = {
body_id: 'printArea',
theme_advanced_statusbar_location: "none", // the :p bar
theme_advanced_toolbar_location: "external", // display the tool bar out of the content section
theme_advanced_resizing: false, // resize the box
height: '250',
width: '730',
plugins: 'inlinepopups,advimage,advlink,autolink,directionality,-filemanager,icrtacheck,icrtdoublectrl,icrtlanguageselect,icrtlogin,icrtphotogallery,icrtsave,icrtspellchecker,-imagemanager,insertdatetime,lists,media,paste,save,searchreplace,style,table,visualchars,xhtmlxtras',
theme_advanced_buttons1: "icrtsave,|,icrtphotogallery,image,link,unlink,icrthtmlsrc",
content_css: iCreateObject.corpRoot + "/Common/styles/base.css,"
+ iCreateObject.corpRoot + "/Common/styles/icreate.css,"
+ iCreateObject.corpRoot + "/Common/styles/sitecontent.css, "
+ iCreateObject.corpRoot + "/Common/styles/structure.css,"
+ iCreateObject.corpRoot + "/Common/styles/icrtaccordion.css,"
+ "/icreate/modules/pageeditor3/icrtEditor3-template.css,"
+ iCreateObject.corpRoot + "/Common/styles/icreateeditor.css",
formats: {
alignleft: { selector: 'p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li,table,img', classes: 'Left' },
aligncenter: { selector: 'p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li,table,img', classes: 'Center' },
alignright: { selector: 'p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li,table,img', classes: 'Right' }
}
}
standardHiddenSettings = {
plugins: 'xhtmlxtras',
content_css: iCreateObject.corpRoot + "/Common/styles/icreate.css,"
+ iCreateObject.corpRoot + "/Common/styles/base.css,"
+ iCreateObject.corpRoot + "/Common/styles/sitecontent.css,"
+ iCreateObject.corpRoot + "/Common/styles/structure.css,"
+ "/icreate/modules/pageeditor3/icrtEditor3-template.css",
theme_advanced_resizing: false, // resize the box
theme_advanced_statusbar_location: "none" // the :p
}
standardContactModuleSettings = {
autoresize_min_height: '30',
plugins: 'xhtmlxtras',
content_css: iCreateObject.corpRoot + "/Common/styles/icreate.css,"
+ iCreateObject.corpRoot + "/Common/styles/base.css,"
+ iCreateObject.corpRoot + "/Common/styles/sitecontent.css,"
+ iCreateObject.corpRoot + "/Common/styles/structure.css,"
+ "/icreate/modules/pageeditor3/icrtEditor3-template.css",
}
standardBannerImageSettings : {
body_id: 'printArea',
theme_advanced_statusbar_location: "none", // the :p bar
theme_advanced_toolbar_location: "external", // display the tool bar out of the content section
theme_advanced_resizing: false, // resize the box
height: '400',
width: '100%',
plugins: 'inlinepopups,advimage,advlink,autolink,directionality,-filemanager,icrtacheck,icrtdoublectrl,icrtlanguageselect,icrtlogin,icrtphotogallery,icrtspellchecker,-imagemanager,insertdatetime,lists,media,paste,save,searchreplace,style,table,visualchars,xhtmlxtras',
theme_advanced_buttons1: "image,link,unlink,icrthtmlsrc",
content_css: iCreateObject.corpRoot + "/Common/styles/base.css,"
+ iCreateObject.corpRoot + "/Common/styles/icreate.css,"
+ iCreateObject.corpRoot + "/Common/styles/sitecontent.css, "
+ iCreateObject.corpRoot + "/Common/styles/structure.css,"
+ iCreateObject.corpRoot + "/Common/styles/icrtaccordion.css,"
+ "/icreate/modules/pageeditor3/icrtEditor3-template.css,"
+ iCreateObject.corpRoot + "/Common/styles/icreateeditor.css",
formats: {
alignleft: { selector: 'p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li,table,img', classes: 'Left' },
aligncenter: { selector: 'p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li,table,img', classes: 'Center' },
alignright: { selector: 'p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li,table,img', classes: 'Right' }
}
}
standardBannerTextSettings : {
body_id: 'printArea',
body_class: ic_tinyMCE_bodyClass,
theme_advanced_statusbar_location: "none",
theme_advanced_toolbar_location: "external", // display the tool bar out of the content section
plugins: 'inlinepopups,advimage,advlink,autolink,autoresize,contextmenu,directionality,-filemanager,icrtacheck,icrtdoublectrl,icrtemail,icrtfriendlyredirect,icrtlanguageselect,icrtlogin,icrtphotogallery,icrtsnippet,icrtspellchecker,icrtstyletable,icrtwrapper,icrtwqc,-imagemanager,insertdatetime,lists,media,paste,save,searchreplace,style,table,visualchars,xhtmlxtras',
autoresize_min_height: '30',
width: "600",
theme: "advanced",
theme_advanced_buttons1: "image,bold,italic,underline,|,icrtemail,anchor,link,unlink",
theme_advanced_buttons2: "justifyleft,justifycenter,justifyright,|,formatselect,|,removeformat,cut,copy,paste,pastetext,pasteword,code",
theme_advanced_buttons3: "",
theme_advanced_buttons4: "",
icrtsection_cssClass: 'contentSection',
content_css: iCreateObject.corpRoot + "/Common/styles/base.css,"
+ iCreateObject.corpRoot + "/Common/styles/icreate.css,"
+ iCreateObject.corpRoot + "/Common/styles/sitecontent.css, "
+ iCreateObject.corpRoot + "/Common/styles/structure.css,"
+ iCreateObject.corpRoot + "/Common/styles/icrtaccordion.css,"
+ "/icreate/modules/pageeditor3/icrtEditor3-template.css,"
+ iCreateObject.corpRoot + "/Common/styles/icreateeditor.css",
plugin_insertdate_timeFormat: "%I:%M:%S %p",
inline_styles: false,
theme_advanced_blockformats: "p,h2,h3,div",
formats: {
alignleft: { selector: 'p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li,table,img', classes: 'Left' },
aligncenter: { selector: 'p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li,table,img', classes: 'Center' },
alignright: { selector: 'p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li,table,img', classes: 'Right' }
}
}
<script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/ios_slider/structure/1.3.43/jquery.iosslider.min.js"></script>
<link rel="stylesheet" type="text/css"
href="https://js.esolutionsgroup.ca/js/libs/ios_slider/skins/default/1.1.1/iosSlider.css" />
<script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/jquery/1.11.2/jquery.min.js"></script>
<script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/jquery-ui/1.10.4/jquery-ui.min.js"></script>
-OR-
<script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/jquery-ui/1.11.2/jquery-ui.min.js"></script>
<link rel="stylesheet" type="text/css"
href="https://js.esolutionsgroup.ca/js/libs/jquery-ui/1.10.4/resources/themes/base/jquery-ui.min.css" />
-OR-
<link rel="stylesheet" type="text/css"
href="https://js.esolutionsgroup.ca/js/libs/jquery-ui/1.11.2/jquery-ui.min.css" />
<link rel="stylesheet" type="text/css"
href="https://js.esolutionsgroup.ca/js/libs/jquery_ui_timepicker/0.3.3/jquery.ui.timepicker.css" />
<script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/jquery_ui_timepicker/0.3.3/jquery.ui.timepicker.min.js"></script>
<link rel="stylesheet" type="text/css"
href="https://js.esolutionsgroup.ca/js/libs/jquery_ui_timepicker/0.3.3/i18n/jquery.ui.timepicker-fr.js" >
<input type="text" id="timepicker" value="" />
$('#timepicker').timepicker({
// Options
timeSeparator: ':', // The character to use to separate hours and minutes. (default: ':')
showLeadingZero: true, // Define whether or not to show a leading zero for hours < 10.
(default: true)
showMinutesLeadingZero: true, // Define whether or not to show a leading zero for minutes < 10.
(default: true)
showPeriod: false, // Define whether or not to show AM/PM with selected time. (default: false)
showPeriodLabels: true, // Define if the AM/PM labels on the left are displayed. (default: true)
periodSeparator: ' ', // The character to use to separate the time from the time period.
altField: '#alternate_input', // Define an alternate input to parse selected time to
defaultTime: '12:34', // Used as default time when input field is empty or for inline timePicker
// (set to 'now' for the current time, '' for no highlighted time,
default value: now)
// trigger options
showOn: 'focus', // Define when the timepicker is shown.
// 'focus': when the input gets focus, 'button' when the button trigger element is clicked,
// 'both': when the input gets focus and when the button is clicked.
button: null, // jQuery selector that acts as button trigger. ex: '#trigger_button'
// Localization
hourText: 'Hour', // Define the locale text for "Hours"
minuteText: 'Minute', // Define the locale text for "Minute"
amPmText: ['AM', 'PM'], // Define the locale text for periods
// Position
myPosition: 'left top', // Corner of the dialog to position, used with the jQuery UI Position utility if present.
atPosition: 'left bottom', // Corner of the input to position
// Events
beforeShow: beforeShowCallback, // Callback function executed before the timepicker is rendered and displayed.
onSelect: onSelectCallback, // Define a callback function when an hour / minutes is selected.
onClose: onCloseCallback, // Define a callback function when the timepicker is closed.
onHourShow: onHourShow, // Define a callback to enable / disable certain hours. ex: function onHourShow(hour)
onMinuteShow: onMinuteShow, // Define a callback to enable / disable certain minutes. ex: function onMinuteShow(hour, minute)
// custom hours and minutes
hours: {
starts: 0, // First displayed hour
ends: 23 // Last displayed hour
},
minutes: {
starts: 0, // First displayed minute
ends: 55, // Last displayed minute
interval: 5, // Interval of displayed minutes
manual: [] // Optional extra entries for minutes
},
rows: 4, // Number of rows for the input tables, minimum 2, makes more sense if you use multiple of 2
showHours: true, // Define if the hours section is displayed or not. Set to false to get a minute only dialog
showMinutes: true, // Define if the minutes section is displayed or not. Set to false to get an hour only dialog
// Min and Max time
minTime: { // Set the minimum time selectable by the user, disable hours and minutes
hour: minHour, // previous to min time
minute: minMinute
},
maxTime: { // Set the minimum time selectable by the user, disable hours and minutes
hour: maxHour, // after max time
minute: maxMinute
},
// buttons
showCloseButton: false, // shows an OK button to confirm the edit
closeButtonText: 'Done', // Text for the confirmation button (ok button)
showNowButton: false, // Shows the 'now' button
nowButtonText: 'Now', // Text for the now button
showDeselectButton: false, // Shows the deselect time button
deselectButtonText: 'Deselect' // Text for the deselect button
});
Adds additional functionality to jQuery pertaining to timers
<script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/jquery_timers/1.2.0/jquery.timers.min.js"></script>
everyTime: function(interval, label, fn, times)
oneTime: function(interval, label, fn)
stopTime: function(label, fn)
timeParse: function(value)
add: function(element, interval, label, fn, times)
remove: function(element, label, fn)
global: []
guid: 1
powers: {
'ms': 1,
'cs': 10,
'ds': 100,
's': 1000,
'das': 10000,
'hs': 100000,
'ks': 1000000
}
increment : "1"
direction : "vertical"
Used for banner image scrolling
<script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/jquery_autoscroll/1.0.0/jquery-auto-scroll.min.js"></script>
height : "100px"
width : "100px"
delay : "1000"
increment : "1"
direction : "vertical"
<script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/jquery_cookie/1.4.0/jquery.cookie.min.js"></script>
A grid plug-in for the jQuery Javascript library.
<script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/datatables/1.9.4/jquery.dataTables.min.js"></script>
<script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/datatables/1.9.4/jquery.dataTables.js"></script>
<link rel="stylesheet" type="text/css"
href="https://js.esolutionsgroup.ca/js/libs/datatables/1.9.4/css/jquery.dataTables.css" />
css folder: https://js.esolutionsgroup.ca/js/libs/datatables/1.9.4/cssimages folder: https://js.esolutionsgroup.ca/js/libs/datatables/1.9.4/imagesA photo gallery plug-in for the jQuery Javascript library. (Used for the iCreate Gallery)
<script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/jquery_gallery/1.2.4/jquery.gallery.min.js"></script>
<script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/jquery_gallery/1.2.4/jquery.gallery.js"></script>
start_at_index: 0,
description_wrapper: false,
thumb_opacity: 0.7,
animate_first_image: false,
animation_speed: 400,
width: false,
height: false,
display_next_and_prev: true,
display_back_and_forward: true,
scroll_jump: 0, // If 0, it jumps the width of the container
slideshow: {
enable: true,
autostart: false,
speed: 5000,
start_label: 'Start',
stop_label: 'Stop',
stop_on_scroll: true,
countdown_prefix: '(',
countdown_sufix: ')',
onStart: false,
onStop: false
},
effect: 'slide-hori', // or 'slide-vert', 'fade', or 'resize', 'none'
enable_keyboard_move: true,
cycle: true,
callbacks: {
init: false,
afterImageVisible: false,
beforeImageVisible: false
}
Rotating banner tool for iCreate
<script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/jquery_icreate_rotatingbanner/2.1.5/jquery.rotatingbanners.min.js"></script>
timerLength : 8000,
enableTimer : true,
transitionLength : 1000,
transitionType : "fade" (or "slide"),
bannerClass : "banner",
tokenClasses : ["bannerImage", "bannerTextContent", "bannerCaption"],
navButtonClass : "navButton",
navButtonsOnly : false,
navArrowsOnly : false,
alternativeNav : {},
editElement : $(this).attr("id") + "Edit",
icreateTokenClass : "iCreateToken",
maxBanners : 5,
alertMsg,
fitImages : false,
--This will fit the banner to the full width of the window and will resize the banners when the window size is changed. It must be placed outside of uber. (depricated with 2.0.0 for responsive).
ratio : 0,
--used with _fitImages. sets the height ratio of the image compared to the height of the window.
windowBufferHeight : 0
--used with _fitImages. sets the height of the image to full height minus this value.
enableSort : true,
enablePause : false,
isSiteInEditMode : false,
--added in with V2.1.0 you must pass iCreateObject.isSiteInICreateMode to this field from iCreate.
enableCustomStyling : false,
--added in with V2.1.0, enables the styling context menu for text content tokens
customStyles :
[
{
name: "Position",
options:
[
{ name: "Left", cssClass: "btLeft"},
{ name: "Middle", cssClass: "btMiddle"},
{ name: "Right", cssClass: "btRight"}
]
},
{
name: "Contrast",
options:
[
{ name: "Dark", cssClass: "btDark" },
{ name: "Light", cssClass: "btLight" }
]
}
],
--added in with V2.1.0 This will structure the styling context menu. Simply adds classes to the token's container. They work like option groups. ie. only one from position and one from contrast can be selected at a time
--changed classes in 2.1.3
imageOverlayClasses : [],
--added in with V2.1.2 This will apply title and links to overlay objects, this is an array of strings that should be the classes of the overlay objects. eg. ["bannerOverlay","landingBannerOverlay","someOtherOverlayObject"]
Plugin that will generate complex HTML based on data entered into a configurable wizard.
<script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/jquery_icreate_contentmanager/structure/1.0.0/jquery.contentmanager.min.js"></script>
{
skin: "basic",
skinVersion: "1.0.0",
baseUrl: "https://js.esolutionsgroup.ca/js/libs/jquery_icreate_contentmanager",
tokenID: "TKBannerContent",
tokenType: "html", //html or json
manageButtonText: "Manage Content", //Text to display on the button in iCreate.
wrapperHTMLStructure: "<div id=\"ic-gal-slider-home\" class=\"slider-container ic-fade\"> <div class=\"ic-slider visible\"><div id=\"rotatingBanners\" class=\"slider\"></div></div><a class=\"prev\" href=\"#\" title=\"Previous Slide\" style=\"cursor: pointer;\">Previous</a><a class=\"next\" title=\"Next Slide\" href=\"#\" style=\"cursor: pointer;\">Next</a><div class=\"ic-slider-controls visible\"><a class=\"pause\" title=\"Pause Slideshow\" href=\"#\">Pause</a></div></div>",
innerHTMLStructures: [
{
innerStructure: "<div class=\"slide\"><div class=\"bannerImage\" title=\"{title}\" data-image-title=\"{title}\" data-image-alt=\"{altText}\" onclick=\"{onclickEvent}\" style=\"background-image: url({imageURL});\"></div><div class\"bannerGradient\"></div><div class=\"ic-slider-content ic-slider-text {bannerTextAlign} {bannerTextContrast}\"><div class=\"ic-container-fluid\"><div class=\"ic-slider-content-foreground\">{bannerText}</div></div></div></div>",
wrapperTarget: "rotatingBanners",
targetType: "element", //element or attribute
delimiterStructure:"<br/>",
delimitAfterEvery: 3
},
{
innerStructure: "<div class=\"slide\"><div class=\"bannerImage\" title=\"{title}\" data-image-title=\"{title}\" data-image-alt=\"{altText}\" onclick=\"{onclickEvent}\" style=\"background-image: url({imageURL});\"></div><div class\"bannerGradient\"></div><div class=\"ic-slider-content ic-slider-text {bannerTextAlign} {bannerTextContrast}\"><div class=\"ic-container-fluid\"><div class=\"ic-slider-content-foreground\">{bannerText}</div></div></div></div>",
wrapperTarget: "rotatingBanners",
targetType: "attribute", //element or attribute
targetAttribute: "class",
attributeDelimiter:" ",
firstElementPrefix: "", //Text to add before the first element in the list.
lastElementSuffix: "" //Text to add after the last element in the list.
}
],
maxItems: 5,
sortableFieldBinding: "", //Determines which field to bind to the sortable square
sortableFieldType: "image", //image or text, determines whether to render the text or an image for the sortable square
alertMessages: {
"maxAllowableItemsReach": "You've reached the maximum allowable items.",
"maxAllowableItemsReachTitle": "Max items reached.",
"confirmItemDeletion": "Please confirm you want to delete this item.",
"confirmItemDeletionTitle": "Delete Item?",
"errorMessage": "An error occurred saving your items.",
"errorMessageTitle": "An error occurred...",
"cancelMessage": "Please confirm you want to cancel all changes.",
"cancelMessageTitle": "Cancel changes?",
"initErrorMessage": "A network error has prevented the content from loading. Please refresh the page and try again",
"initErrorMessageTitle": "Network error occurred.",
"loadingMessage": "Please wait while the images load. If you have recently cleared your browser cache this may take a few moments."
},
fields: [
{
type: "TextField",
id: "textField",
name: "Simple Text Field",
required: true,
invalidMessage: "Simple Text Field is a required field"
},
{
type: "RichTextField",
id: "richTextField",
name: "TinyMCE Rich Text Field"
},
{
type: "ImageField",
id: "imageField",
name: "Image Selection Field"
},
{
type: "FileField",
id: "fileField",
name: "File Selection Field"
},
{
type: "OptionList",
id: "optionList",
name: "Radio Button List",
optionName: "optionList",
options: [
{
id: "option1",
name: "Option 1",
optionValue: "btLeft"
},
{
id: "rbAlignCentre",
name: "Center",
optionValue: "btCentre"
},
{
id: "rbAlignRight",
name: "Right",
optionValue: "btRight"
}
]
},
],
editorSettings: DefaultEditorSettings
}
<script type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/jquery_icreate_contentmanager/structure/1.0.0/jquery.contentmanager.min.js"></script>
$([selector]).content_manager(Object OverrideValues, Object iCreateObject);
Where OverrideValues is a Javascript object in the format specified under the "Plugin Settings" section.
Plugin that will allow a complex HTML structure to be created, including defining nested tokens, that can be injected into an iCreate token area. This plugin requires iCreate 2.18 or later.
<script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/jquery_icreate_layoutmanager/structure/1.0.0/jquery.layoutmanager.min.js"></script>
{
skin: "basic",
skinVersion: "1.0.0",
baseUrl: "https://js.esolutionsgroup.ca/js/libs/jquery_icreate_layoutmanager",
enableRemoteLibrary: true, //Look for a remote library of elements
componentLibraryUrl: "https://js.esolutionsgroup.ca/js/libs/jquery_icreate_layoutmanager/structure/1.0.0/layoutmanager.componentlibrary.json", //Path to a remote JSON file containing the component definitions.
tokenID: "TKInteriorMainContent", //Token area where the layout will be injected.
components: {
"oneColumnRow":{
"name": "Single Column Row",
"wrapper": "<div class=\"iCreateDynaToken\" data-lm-tokenId=\"singleTokenAreaTK1\" data-icrt-tk-cfg=\"PlainContent\"></div>",
"icon": "icon-one-col.svg"
},
"twoColumnRow":{
"name": "Two Column Row",
"wrapper": "<div class=\"ic-container-fluid\"><div class=\"ic-col-sm-6\"><div class=\"iCreateDynaToken\" data-lm-tokenId=\"doubleTokenAreaTK1\" data-icrt-tk-cfg=\"PlainContent\"></div></div><div class=\"ic-col-sm-6\"><div class=\"iCreateDynaToken\" data-lm-tokenId=\"doubleTokenAreaTK2\" data-icrt-tk-cfg=\"PlainContent\"></div></div></<div>",
"icon": "icon-two-col.svg"
}
},
availableComponents: [
"oneColumnRow",
"twoColumnRow"
],
defaultLayout: [
"oneColumnRow"
],
content: {
deleteTitle: "Confirm Delete...",
deleteMessage: "<p>Are you sure you want to delete this component? Any content associated with this component will be lost.</p>",
deleteOK: "Delete",
deleteCancel: "Cancel",
cancelDialogTitle: "Confirm Cancel...",
cancelDialogMessage: "<p>Please confirm you want to cancel all changes.</p>",
cancelDialogOK: "Confirm",
cancelDialogCancel: "Close",
updateTitleDialogTitle: "Update Component Title...",
updateTitleDialogMessage: "Title: ",
updateTitleDialogOK: "Confirm",
updateTitleDialogCancel: "Close"
}
}
<script type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/jquery_icreate_layoutmanager/structure/1.0.0/jquery.layoutmanager.min.js"></script>
[[containerToken.def({
name: 'TKMainContent',
title: 'Main Content'
})]]
$([selector]).content_manager(Object OverrideValues, Object iCreateObject);
Where OverrideValues is a Javascript object in the format specified under the "Plugin Settings" section. Key parameters are:
{
"oneColumnRow":{
"name": "Single Column Row",
"wrapper": "<div class=\"iCreateDynaToken\" data-lm-tokenId=\"singleTokenAreaTK1\" data-icrt-tk-cfg=\"PlainContent\"></div>",
"icon": "icon-one-col.svg"
}
}
The "name" attribute of hte component determines the friendly display name the end user will see when using the tool.
"wrapper" defines the HTML structure that will be inserted into the layout Note: the layout must begin with a top level containing div (or other structure). This is where the component data is stored, if there are multiple elements at the top level it will cause multiple components to be interpreted.
To add a dynamic token to the layout add one of the following:
Rotating banner tool for iCreate
<script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/jquery_icreate_rotatingbanner/structure/3.1.3/jquery.rotatingbanners.min.js"></script>
{
tokenID: "TKBannerContent",
targetBannerId: "", //Used for EditOnly mode to render out the DIV ID
settingsUrl: "", //Path to the local settings file, used for EditOnly mode to setup the banners in edit mode.
mode: "Normal", // Normal (render slides and button), EditOnly (no render, generate as TinyMCE popup), DisplayOnly (no button, render only)
dialogWidth: 650, //Determines the size of the popup when rendering in EditOnly mode
wrapperHTMLStructure: "<div id="ic-gal-slider-home" class="slider-container ic-fade"> <div class="ic-slider visible"><div id="rotatingBanners" class="slider"></div></div><a class="prev" href="#" title="Previous Slide" style="cursor: pointer;">Previous</a><a class="next" title="Next Slide" href="#" style="cursor: pointer;">Next</a><div class="ic-slider-controls visible"><a class="pause paused" title="Pause Slideshow" href="#">Pause</a></div></div>",
slideHTMLStructure: "<div class="slide"><div class="bannerImage" title="{title}" data-image-title="{title}" data-image-alt="{altText}" onclick="{onclickEvent}" style="background-image: url({imageURL});"></div><div class"bannerGradient"></div><div class="ic-slider-content ic-slider-text {bannerTextAlign} {bannerTextContrast}"><div class="ic-container-fluid"><div class="ic-slider-content-foreground">{bannerText}<hr>{bannerText2}</div></div></div></div>",
wrapperTargetDiv: "rotatingBanners",
maxSlides: 5,
skin: "basic",
skinVersion: "1.0.0",
baseUrl: "https://js.esolutionsgroup.ca/js/libs/jquery_icreate_rotatingbanner/",
bannerSizeText: "Free form text",
alertMessages: {
"maxAllowableBannersReach": "You've reached the maximum allowable banners.",
"bannerSuccessfullyDeleted": "Banner successfully deleted.",
"confirmBannerDeletion": "Please confirm you want to delete this banner.",
"errorMessage": "An error occurred saving your banners.",
"cancelMessage": "Please confirm you want to cancel all changes.",
"initErrorMessage": "A network error has prevented the rotating banner from loading. Please refresh the page and try again",
"loadingMessage": "Please wait while the images load. If you have recently cleared your browser cache this may take a few moments."
},
textAreas: [
{
id: "bannerText",
name: "Banner Text 1"
},
{
id: "bannerText2",
name: "Banner Text 2"
}
],
customFields: [
{
id: "field1",
name: "Field 1"
},
{
id: "field2",
name: "Field 2"
}
],
enableCustomStyles: true,
customStyles: [
{
id: "bannerTextAlign",
title: "Banner Text Alignment",
optionName: "align",
options:[
{
id: "rbAlignLeft",
name: "Left",
cssclass: "btLeft"
},
{
id: "rbAlignCentre",
name: "Center",
cssclass: "btCentre"
},
{
id: "rbAlignRight",
name: "Right",
cssclass: "btRight"
}
]
},
{
id: "bannerTextContrast",
title: "Banner Text Contrast",
optionName: "contrast",
options:[
{
id: "rbLightContrast",
name: "Light",
cssclass: "btLight"
},
{
id: "rbDarkContrast",
name: "Dark",
cssclass: "btDark"
}
]
}
],
editorSettings: DefaultEditorSettings
}
<script type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/jquery_icreate_rotatingbanner/structure/3.1.3/jquery.rotatingbanners.min.js"></script>
<input type="hidden" name="TKBannerContent" id="TKBannerContent" value="[[jsonToken.def({ name: 'TKBannerContent', title: 'Rotating Banner Data', htmlEscape: true, jsEscape: false })]]" />
$(window).load(function () {
$("#rotatingBanner").rotating_banners(
"IOSSlider", {}, iCreateObject
);
});
This function takes the format:
$([selector]).rotating_banners(string DefaultSetting, Object OverrideValues, Object iCreateObject);
Where DefaultSetting is "IOSSlider", or "", and OverrideValues is a Javascript object in the format specified under the "Plugin Settings" section.
Google Maps for iCreate
<script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/jquery_icreate_googlemaps/1.0.0/jquery.googlemaps.min.js"></script>
<script type="text/javascript" src="http://maps.google.com/maps?file=api&v=2&sensor=false&key=<key goes here>" type="text/javascript"></script>
width : 655
height : 500
searchText : "Get Directions"
toAddress : "620 Davenport Road, Waterloo, Ontario, Canada"
toAddressReadonly : true
div #SearchContainer
div #ErrorContainer
div #MapContainer
div #DirectionContainer
input #From
input #To
input #SearchButton
This will turn a div containing an img tag and optionally an anchor, and turn it into a responsive div tag and visa versa
<script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/jquery_imageswap/1.0.1/jquery.imageswap.min.js"></script>
http://js.esolutionsgroup.ca/js/libs/jquery_imageswap/test.html
publicMode : true (determines which way to convert public = img to div, and not public = div to img)
<link rel="stylesheet" type="text/css"
href="https://js.esolutionsgroup.ca/js/libs/jquery_jqgrid/4.5.4/css/ui.jqgrid.css" />
<script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/jquery_jqgrid/4.5.4/js/i18n/grid.locale-en.js"></script>
<script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/jquery_jqgrid/4.5.4/js/jquery.jqGrid.min.js"></script>
will take an element's content and convert all recognised links in its string into anchors.
<script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/jquery_linkify/1.1.6/jquery.linkify.min.js"></script>
A jQuery based replacement for select boxes. It supports searching, remote data sets, and infinite scrolling of results.
<script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/select2/3.4.5/select2.min.js"></script>
Selectize is the hybrid of a textbox and ≶select> box. It's jQuery based and it has autocomplete and native-feeling keyboard navigation; useful for tagging, contact lists, etc.
<script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/selectize/0.8.5/js/selectize.js"></script>
adds usability enhancements to multi-level drop-down menus. Fully supports touch devices and keyboard interaction.
<script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/jquery_superfish/1.7.4/superfish.min.js"></script>
A modern JSON implementation compatible with a variety of JavaScript platforms, including Internet Explorer 6, Opera 7, Safari 2, and Netscape 6.
<!--[if lte IE 8]><script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/json3/3.2.5/json3.min.js"></script><![endif]-->
<!--[if lte IE 8]><script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/json3/3.2.5/json3.js"></script><![endif]-->
A utility library delivering consistency, customization, performance, & extras.
<script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/lodash/2.2.1/lodash.min.js"></script>
<script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/lodash/2.2.1/lodash.js"></script>
Detects the availability of native implementations for next-generation web technologies.
<script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/modernizr/2.8.3/modernizr.min.js"></script>
Make sure a bot isn't submitting a form within 3 seconds of loading the page.
<script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/nobot/1.0.0/NoBot.min.js"></script>
A module that saves page url from the website into a cookie, then builds a pdf report with a custom cover and back of all the selected pages.
pbDefaultSettings = {
webAPIBaseURL: "https://icreate1.stage.esolutionsgroup.ca/230002_iCreate_PDFBuilderModule_V1/",
jsServerUrl: "https://js.esolutionsgroup.ca/js/libs/icreate-pdfbuilder",
skin: "default",
skinVersion: "1.2.1",
containerClass: "icrt_PDFBuilder",
cookieName: "pb_urls",
cookieDomain: "",
clientId: "",
printContainerId: "printArea",
printContainerWidth: "890px",
elementsToNotPrint: ["header", "footer"],
classesToNotPrint: [],
idsToNotPrint: [],
parsePageLinkContainerId : "icrt_dynIncLink", //New for v1.2.2
estimatedSecondsPerPage : 15, //New for v1.2.0
languageContent:
{
en: {
logoImageSrc: "/en/images/structure/logo.png", //New for v1.1.0 - requires default skin v1.1.0
logoImageAlt: "Logo Image", //New for v1.1.0 - requires default skin v1.1.0
addButton: "Add to Report",
addButtonTitle: "Click to add this page to the report",
addModalTitle: "Added page to My Report",
modalCloseTopText: " ", //New for v1.1.0 - requires default skin v1.1.0
addModalMessage: "You have successfully added the page to My Report.",
addModalCloseButtonText: "Return to Site",
addModalPrintButtonText: "Print my Report",
printButton: "Print to Report",
printButtonTitle: "Click to review and print this report",
generateButtonTitle: "Click to add this page to the report",
generateModalTitle: "My Report",
generateTableItemHeading: "Item", //Removed as of 1.2.0
generateTableTitleHeading: "Title",
generateModalCloseButtonText: "Close",
generateModalGenerateButtonText: "Generate Report",
generateTableNoItemsMessage: "No pages have been added to the report",
loadingText:"Building PDF, Please wait...",
loadingTimeText: "This may take up to {time} seconds", //New for v1.2.0
errors: {
serverTimeout: "The server is not responding"
}
},
fr: {
logoImageSrc: "/fr/images/structure/logo.png", //New for v1.1.0 - requires default skin v1.1.0
logoImageAlt: "Logo Image(fr)", //New for v1.1.0 - requires default skin v1.1.0
addButton: "Add to Report(fr)",
addButtonTitle: "Click to add this page to the report(fr)",
addModalTitle: "Added page to My Report(fr)",
modalCloseTopText: " ", //New for v1.1.0 - requires default skin v1.1.0
addModalMessage: "You have successfully added the page to My Report.(fr)",
addModalCloseButtonText: "Return to Site(fr)",
addModalPrintButtonText: "Print my Report(fr)",
printButton: "Print to Report(fr)",
printButtonTitle: "Click to review and print this report(fr)",
generateButtonTitle: "Click to add this page to the report(fr)",
generateModalTitle: "My Report(fr)",
generateTableItemHeading: "Item(fr)", //Removed as of 1.2.0
generateTableTitleHeading: "Title(fr)",
generateModalCloseButtonText: "Close(fr)",
generateModalGenerateButtonText: "Generate Report(fr)",
generateTableNoItemsMessage: "No pages have been added to the report(fr)",
loadingText:"Building PDF, Please wait...(fr)",
loadingTimeText: "This may take up to {time} seconds(fr)", //New for v1.2.0
errors: {
serverTimeout: "The server is not responding"
}
}
},
showRelativeDates: true,
windows: {
printDialog: {
width: 1024,
height: 768,
status: "yes",
menubar: "no",
location: "no",
resizable: "yes"
},
itemAddedDialog:
{
width: 500,
height: 300,
status: "yes",
menubar: "no",
location: "no",
resizable: "yes"
}
},
iCreateObject: {
lang: "en",
corpRoot: "",
corpId: -1,
isSiteInICreateMode: false,
isSiteInPreviewMode: false,
isSiteInLocalDevelopment: true
}
to be added to the headCommon.asp - in document.ready
$("#yourContainerId").icrtPDFBuilder({
webAPIBaseURL: "https://icreate1.stage.esolutionsgroup.ca/230002_iCreate_PDFBuilderModule_V1/",
iCreateObject: iCreateObject,
skin: "default",
skinVersion: "1.2.1",
clientId: "2510296e-b690-4b1e-9829-854861a0ecd2"
});
https://svn.cra.int/svn/230002_iCreate_PDFBuilderModule_V1/tags/v1_0_0_InitialSetup/db/V1.0.0/230002_iCreate_PDFBuilderModule_InitialBak_201507141204.bak
https://svn.cra.int/svn/230002_iCreate_PDFBuilderModule_V1/tags/v1_0_0_InitialSetup/PDFBuilder/
<connectionStrings>
<add name="DefaultConnection" providerName="System.Data.SqlClient" connectionString="server=(local);database=230002_iCreate_PDFBuilderModule;uid=230002_iCreate_PDFBuilderModule_User;pwd=Your password here" />
</connectionStrings>
<appSettings>
<add key="PDFAssetFilePath" value="E:\***path to the module root --> 230002_iCreate_PDFBuilderModule_V1**\PDFBuilder\Uploads\" />
<add key="PDFConverterLiscenceKey" value="***JUST LEAVE THIS AS WHAT IT IS IN THE FILE***" />
https://icreate1.stage.esolutionsgroup.ca/230002_iCreate_PDFBuilderModule_V1/
<script type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/icreate-pdfbuilder/structure/1.2.3/pdfBuilder.js"></script>
$("#pb_Wrapper").icrtPDFBuilder({ --CHANGE TO TARGET YOUR ELEMENT
webAPIBaseURL: "https://icreate1.stage.esolutionsgroup.ca/230002_iCreate_PDFBuilderModule_V1/", --CHANGE TO TARGET YOUR SERVER
iCreateObject: iCreateObject,
skin: "default",
skinVersion: "1.2.1",
clientId: "2510296e-b690-4b1e-9829-854861a0ecd2" --THIS IS THE GUID THAT YOU SAVED FROM A FEW STEPS AGO
});
elementsToNotPrint: ["header", "footer", "button"],
classesToNotPrint: ["myClassToHide1","myClassToHide1"],
idsToNotPrint: ["myIDToHide1","myIDToHide2"],
<script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/icreate-pdfbuilder/structure/1.2.2/pdfBuilder.min.js"></script>
CSS3 rendering for IE.
<script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/pie/1.0.0/pie.min.js"></script>
JavaScript file and module loader.
<script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/requirejs/2.1.9/require.min.js"></script>
A RequireJS CSS loader plugin to allow CSS requires and optimization.
<script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/require-css/0.0.8/css.js"></script>
A conditional loading plugin for Require-JS that works with optimizer builds and build layers.
<script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/require-is/0.0.1/is.js"></script>
A fast & lightweight polyfill for min/max-width CSS3 Media Queries (for IE 6-8, and more)
<!--[if lt IE 9]><script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/respond/1.3.0/respond.min.js"></script><![endif]-->
the last carousel you'll ever need
<link rel="stylesheet" type="text/css" href="https://js.esolutionsgroup.ca/js/libs/slick/1.3.7/slick.css" />
<script type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/slick/1.3.7/slick.min.js"></script>
html formatted text editing
<script type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/tinymce/4.1.7/tinymce.min.js"></script>
A fast and fully-featured autocomplete library.
<script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/typeahead/0.9.3/typeahead.min.js"></script>
<link
rel="stylesheet" type="text/css" href="https://js.esolutionsgroup.ca/js/libs/typeahead/0.9.3/resources/css/typeahead.js-bootstrap.css" />
<script
type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/ui-bootstrap/0.6.0/ui-bootstrap.js"></script>
<link href="https://js.esolutionsgroup.ca/js/libs/media-element/2.13.2/mediaelementplayer.min.css" rel="stylesheet" type="text/css" media="screen" />
<script type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/media-element/2.13.2/mediaelement-and-player.min.js"></script>
<video width="640" height="360" id="player1" preload="none">
<source type="video/youtube" src="http://www.youtube.com/watch?v=nOEw9iiopwI" />
</video>
jQuery('video,audio').mediaelementplayer({
// if the <video width> is not specified, this is the default
defaultVideoWidth: 480,
// if the <video height> is not specified, this is the default
defaultVideoHeight: 270,
// if set, overrides <video width>
videoWidth: -1,
// if set, overrides <video height>
videoHeight: -1,
// width of audio player
audioWidth: 400,
// height of audio player
audioHeight: 30,
// initial volume when the player starts
startVolume: 0.8,
// useful for <audio> player loops
loop: false,
// enables Flash and Silverlight to resize to content size
enableAutosize: true,
// the order of controls you want on the control bar (and other plugins below)
features: ['playpause', 'progress', 'current', 'duration', 'tracks', 'volume', 'fullscreen'],
// Hide controls when playing and mouse is not over the video
alwaysShowControls: false,
// force iPad's native controls
iPadUseNativeControls: false,
// force iPhone's native controls
iPhoneUseNativeControls: false,
// force Android's native controls
AndroidUseNativeControls: false,
// forces the hour marker (##:00:00)
alwaysShowHours: false,
// show framecount in timecode (##:00:00:00)
showTimecodeFrameCount: false,
// used when showTimecodeFrameCount is set to true
framesPerSecond: 25,
// turns keyboard support on and off for this instance
enableKeyboard: true,
// when this player starts, it will pause other players
pauseOtherPlayers: true,
// array of keyboard commands
keyActions: []
});
Social Media Module for iCreate - an graphical interface to the various social media feed keys saved to a specific iCreate token
<script type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/icreate-socialmedia/structure/4.0.2/socialMedia.min.js"></script>{ enabledFeeds: [], //acceptable inputs are "twitter", "facebook", "youtube", "instagram" keyTokenID: "TKSocialMediaConfiguration", externalHandlerBaseURL: "", //I used this for testing. to point to a site's root url to get the handler. it is a relative path otherwise. authenticatorBaseURL: "https://icreate-stg.esolutionsgroup.ca/social-auth/", languageContent: //not yet implemented, just there for base structure { en: { facebookRelativeDate: "ABOUT {hours} hours {minutes} minutes ago", errors: { serverTimeout: "The server is not responding" } }, fr: { facebookRelativeDate: "ABOUT {hours} hours {minutes} minutes ago", errors: { serverTimeout: "The server is not responding" } } }, showRelativeDates: true, //not implemented yet feedSettings: { facebook: { dateFormat: "MMMM d, h:mtt", feedWrapperHtmlStructure: "<div class=\"SMItem\"><div class=\"SMLink\"><a href=\"#\"><span class='facebookLogo'> </span></a></div><div class=\"SMDropdown\"><div class=\"SMDropdownInner facebookFeed cf\"></div></div></div>", feedItemHtmlStructure: ">div class=\"sMItem\"><span><a target='_blank' title='{linkTitle} Facebook page' href='{linkHref}'>{linkText}</a><p class=\"fbPostDate\">{postDate}</p></span><p class=\"fbPost\">{postContent}</p></div>", characterLimit: 220, elementClass: "facebookFeed" }, twitter: { dateFormat: "MMMM d, yyyy", feedWrapperHtmlStructure: "<div class=\"SMItem\"><div class=\"SMLink\"><a href=\"#\"><span class='twitterLogo'> </span></a></div><div class=\"SMDropdown\"><div class=\"SMDropdownInner twitterFeed cf\"></div></div></div>", feedItemHtmlStructure: "<div class=\"sMItem\"><span><strong>{title}</strong> <a target='_blank' title='{linkTitle} Twitter page' href='https://twitter.com/{linkText}'>@{linkText}</a> • {postDate}</span>{postContent}</div>", characterLimit: 220, elementClass: "twitterFeed" }, youtube: { dateFormat: "MMMM d, yyyy", feedWrapperHtmlStructure: "<div class=\"SMItem\"><div class=\"SMLink\"><a href=\"#\"><span class='youtubeLogo'> </span></a></div><div class=\"SMDropdown\"><div class=\"SMDropdownInner youtubefeed cf\"></div></div></div>", feedItemHtmlStructure: "<div class=\"sMItem\"><a target='_blank' title='{Title} YouTube page' href='{linkURL}'><img src=\"{imageSrc}\" class=\"ic-img-responsive\" max-width=\"{imgMaxWidth}\" max-height=\"{imgMaxHeight}\" alt=\"YouTube image\" /></a><span class=\"postedTitle\"><a href=\"{linkURL}\">{Title}</a></span><span class=\"postedDate\">Posted: {postDate}</span></div> </div>", characterLimit: 220, elementClass: "youtubeFeed" }, instagram: { //New as of v3.0.0 dateFormat: "MMMM d, yyyy", feedWrapperHtmlStructure: "<div class=\"SMItem\"><div class=\"SMLink\"><a href=\"#\"><span class='instagramLogo'> </span></a></div><div class=\"SMDropdown\"><div class=\"SMDropdownInner instagramFeed cf\"></div></div></div>", feedItemHtmlStructure: "<div class=\"sMItem\"><a target='_blank' title='{Title} Instagram page' href='{linkURL}''><img src=\"{imageSrc}\" class=\"ic-img-responsive\" max-width=\"{imgMaxWidth}\" max-height=\"{imgMaxHeight}\" alt=\"Instagram Image\"/></a><span class=\"postedTitle\"><a href=\"{linkURL}\">{Title}</a></span><span class=\"postedDate\">Posted: {postDate}</span></div> </div>", characterLimit: 220, elementClass: "instagramFeed" } }, feedColumnClass: "SMDropdown", //New as of V2.0.4 windows: { AddSocialMedia: { width: 1024, height: 768, status: "yes", menubar: "no", location: "no", resizable: "yes" } }, iCreateObject: { //just pass in the iCreate object from your iCreate site. lang: "en", corpRoot: "", corpId: -1, isSiteInICreateMode: false, isSiteInPreviewMode: false, isSiteInLocalDevelopment: true }This assumes that this server has the esolutions app framework already installed.example found at: https://svn.cra.int/svn/230002_SocialMediaAuthenticator/trunk/db/appSettings - Prod.sql
example found at: https://svn.cra.int/svn/230002_SocialMediaAuthenticator/tags/1.1.0/db/230002_SocialAuthendicator_CreateDB_V1_1_0.sqlhttps://svn.cra.int/svn/230002_SocialMediaAuthenticator/tags/1.1.0/src/230002_SocialMediaAuthenticator/https://svn.cra.int/svn/230002_SocialMediaAuthenticator/tags/1.1.0/SocialMediaFeedRefreshScheduler/SocialMediaFeedRefreshScheduler/bin/Debugexample found at: https://svn.cra.int/svn/230002_SocialMediaAuthenticator/trunk/db/addNewCorp.sql<script type="text/javascript" src="https://js.esolutionsgroup.ca/js/libs/icreate-socialmedia/structure/4.0.2/socialMedia.min.js"></script><% if isSiteInLocalDevelopment then %><input type="hidden" name="SocialMediaKeys" id="TKSocialMediaConfiguration" value="youtube:00000000-0000-0000-0000-000000000000,twitter:deeb4883-1597-4fb2-97a6-b3bd3ccb605f,facebook:2fac1950-dc45-4a66-ab2d-c4e97fb8f3b0", instagram:A747F47F-EBDC-4835-8CB7-E03E0DB18AFB"/>
<% else %>
<input type="hidden" name="SocialMediaKeys" id="TKSocialMediaConfiguration" value="[[htmlSrcToken.def({ name: 'TKSocialMediaConfiguration', title: 'Social Media Keys', htmlEscape: true, jsEscape: false })]]" />
<% end if %>
$("#SMWrapper").icrtSocialMedia({ --MAKE THIS TARGET YOUR ELEMENTiCreateObject: iCreateObject,
keyTokenID: "TKSocialMediaConfiguration", --THIS MUST MATCH YOUR TOKEN ID
authenticatorBaseURL: "https://icreate1.stage.esolutionsgroup.ca/social-auth/", --CHANGE THIS TO YOUR SERVER WHEN YOU ARE READY
skin: "tabs",
skinVersion: "3.0.0",
enabledFeeds: ["youtube", "twitter", "facebook", "instagram"],
feedColumnClass: "socialColumn"
});
Created by: Larry Stuart (lstuart@esolutionsgroup.ca)