Commit Graph

1069 Commits

Author SHA1 Message Date
Matt Pass
bfc1babb64 Fix to path used here, needs pipes? 2014-10-18 22:17:39 +01:00
Matt Pass
4edbf8d79d Now running custom processes for all actions 2014-10-18 22:17:17 +01:00
Matt Pass
ed08585867 Last 2 params need to be applied to function 2014-10-18 20:54:47 +01:00
Matt Pass
16da2d6a88 Update to match main JS file 2014-10-14 18:04:47 +01:00
Matt Pass
0b7120633d Text in 2 panes now lines up via renderLine event
renderLineStyle and renderPaneShiftAmount added to store info for
renderLine event
Function added for renderLine event, applies styles to line if we're
rendering that one
When updating diffs, run a loop to mark text according to it's status of
replace, delete or insert
Here we are also setting styles ready for the renderLine function and
clearing when done
This last part sets the height of the other pane, so lines of text line
up and make sense visually
Update on switching tab and using new settings
2014-10-14 17:53:34 +01:00
Matt Pass
414e814de2 Establish paths & call github.php with read action 2014-10-11 15:20:15 +01:00
Matt Pass
d14fae9dd4 Read action to get contents & add to diff pane 2014-10-11 15:19:36 +01:00
Matt Pass
4c27e23d80 Split pane, new functions and diff mode set up
New vars for splitPane, debounce and editorFocusInstance added
Split pane controls added and center themselves and can now trigger
single and split pane views
Editor functions added here for focus, blur, onkeyup, oncursoractivity,
onchange and oninputread, can handle requests from either main or diff
pane
updateDiffs function added which will show differences between 2 panes
using jsdifflib and markText
updatePreviewWindow now it's own function too
Many functions redone so they can also take requests from either main or
diff panes, by using thisCM instead of cM
getcMdiffInstance function also added
Diff pane also updated on changing settings and switching tab
2014-10-11 13:12:57 +01:00
Matt Pass
fbd8475b6e Handling split panes on file control
If GitHub diff mode, load the 2 JS files needed
Ask message shown needed escaped slashes so they appear OK in dialog
No longer open a new file for older version, we display now in diff pane
Temp code added in comment block re getting content from GitHub for file
to show in diff pane. This isn't working at present and probably just
needs a tweak to make work
Slightly renamed vars for active lines to handle 2 panes
2014-10-11 13:01:44 +01:00
Matt Pass
bf44a2515e Split pane control classes added 2014-10-11 12:41:28 +01:00
Matt Pass
869d184939 Pull actions to be added in v4.4 now 2014-10-11 12:40:44 +01:00
Matt Pass
401568677e Lib added to establish text diffs 2014-10-11 12:40:18 +01:00
Matt Pass
a029eceb9d Set session_save_path & fix logout URL
Some hosts have a loop around issue with no session being available
after a header location redirect
After much research, I've found this is due to some hosts not having a
session save path and it needs to be set using PHP
Setting this means ICEcoder works on those few hosts
Fix to bad URL on logout
2014-09-29 10:55:46 +01:00
Matt Pass
7ef86360d8 Version 4.3 2014-09-26 15:32:28 +01:00
Matt Pass
cc5cd166be Only if no headers sent, set the 3 headers 2014-09-26 11:59:03 +01:00
Matt Pass
297e482b11 Recursive only if githubDiff, no anim if > 50
Only include github.js if in githubDiff mode
Only do recursive dir loading if in gitHub diff mode
Move folderItems splitting out of loop to avoid unnecessary processing
showFiles now begins the process of displaying files - animated into
view (using setInterval) if less than 50 items, or shows immediately (by
setting showContent and skipping recursion) if more
showNextFile() is a function to actually display a file or if the end,
kick off the process of adding deleted files/dirs
2014-09-23 18:40:49 +01:00
Matt Pass
46c1bdce02 Fixes to allow new items to be created
Store original $file value in $fileOrig
rtrim [NEW] from the $file path as that is messing with realpath
checking
Move debugging alert and console.log line into the for loop and use
allFiles[$i]
If a local path and not the doc root or parent dir starts with the doc
root
Check on $fileOrig when saving as
2014-09-23 16:49:47 +01:00
Matt Pass
be74745318 Links added for info on 2 types of auth token 2014-09-18 18:08:05 +01:00
Matt Pass
cd2e2747c5 Max length of 50 chars added to title 2014-09-18 18:02:03 +01:00
Matt Pass
3a7e728871 No autocomplete on the GitHub auth input field 2014-09-18 17:51:14 +01:00
Matt Pass
3db00273dd Version 4.2 2014-09-18 16:09:10 +01:00
Matt Pass
e47b21ce80 Don't check paths if we're uploading 2014-09-18 16:07:39 +01:00
Matt Pass
1276e894b5 File/folder message instead and go back 2014-09-18 15:40:03 +01:00
Matt Pass
9c90ffea43 Replace \ with / when comparing with $docRoot
Windows uses backslashes in realpath
2014-09-18 14:33:15 +01:00
Matt Pass
1ace4e4ed9 Need a greater timeout here
40ms wasn't enough to begin filling the list and so would report back
that there are no changes, when in fact, there are, just not shown yet
2014-09-18 14:16:00 +01:00
Matt Pass
cf8a214a24 Make all paths abs and check realpath on each 2014-09-18 13:02:40 +01:00
Matt Pass
24ea1b108f Establish realpath test begins with $docRoot or die
No need to str_replace ../, as that isn't real protection, use realpath
instead
Always turn into a real path (we'll only pass relative paths here
anyway), and change \ to / on Windows setups
Only if file exists and begins with the root path do anything, die
otherwise
2014-09-18 10:57:41 +01:00
Matt Pass
3b0a00af02 Need to establish full $file path first
Otherwise we won't have a valid fullpath to find $docRoot in
2014-09-18 10:47:57 +01:00
Matt Pass
2ad6f7fbc8 base64.js not needed
Only needed for basic auth and we are using oauth tokens
2014-09-18 09:27:24 +01:00
Matt Pass
54dd10b3bd Font family needed for textarea 2014-09-18 09:15:46 +01:00
Matt Pass
cc62871815 Add section for pulls, display message re v4.3 2014-09-18 09:01:11 +01:00
Matt Pass
8454d918e8 Warn if using over non https connection 2014-09-17 14:18:28 +01:00
Matt Pass
048577270b die() so we go no further
Clients can ignore this and continue. All headers should be followed up
by a die().
2014-09-17 13:38:00 +01:00
Matt Pass
113e045f26 realpath file, result in error if !exist / !docroot 2014-09-17 13:35:00 +01:00
Matt Pass
9c35206e3b realpath the file and die if !exist or !$docRoot 2014-09-17 12:54:24 +01:00
Matt Pass
a807e598fe realpath $fileName, die if !exist or !$docRoot 2014-09-17 12:46:33 +01:00
Matt Pass
fbfd58b788 Update to match main JS file 2014-09-17 12:11:39 +01:00
Matt Pass
4314ca2917 Path fixes for add and delete actions
When adding files, location should be a slash if not set
Remove any initial double slashes
When removing files, location should be blank if not set. Then replace
iceRoot with a slash, before reducing double slashes at start, slashes
for pipes and tack together with file to make the targetElem, which is
what we end up looking for
2014-09-17 12:10:18 +01:00
Matt Pass
f3b89056ac Load screen, path removal, tweaks & error handling
Show loading screen on clicking Commit button
Committed filepaths need to have pipes replaced with slashes
Splice from diffPaths or deletedPaths array so we remove committed files
Hide Loading mask if we don't have more to commit
Only display alert message and toggle GitHub diff mode if we have no
diff or deleted paths left to deal with
Error message is an object, so inform user that we'll console.log that.
2014-09-17 12:06:56 +01:00
Matt Pass
d887eca03c Chaneg path scope & check excludedArray first
treePaths, diffPaths and deletedPaths now all namespaced to top level so
we can access from elsewhere
Check we have excludedArray first before looking at it's index. This is
to avoid issues when switching in and out of GitHub Diff mode.
2014-09-17 12:02:13 +01:00
Matt Pass
9ba08fbf48 Stop if running old version
Shouldn't do this and could be a security vuln.
2014-09-17 08:54:27 +01:00
Matt Pass
15fe43098f Cover local and remote files, but avoid LFI 2014-09-16 18:30:34 +01:00
Matt Pass
05de070294 Die if we have a realpath file vs doc root mismatch
Stops LFI attacks such as:

lib/file-control.php?action=load&file=/..././/..././/..././/..././/..././/..././etc|passwd&csrf=4c43835566ee4e2x4a455df75a66c47f
2014-09-16 18:12:06 +01:00
Matt Pass
f82914207d $t needed in function to display text 2014-09-05 22:36:01 +01:00
Matt Pass
941801078c Updated to match main JS file 2014-09-05 22:22:28 +01:00
Matt Pass
296eeff33d Translations added for find/replace area in English 2014-09-05 22:21:31 +01:00
Matt Pass
44aca5ad1b Need to use array_replace_recursive()
This is the function needed to overwrite $text array ontop of
$englishText, including nested arrays
2014-09-05 22:07:26 +01:00
Matt Pass
d24a2745ce Case change on function namee 2014-09-03 06:14:50 +01:00
Matt Pass
8da637c650 Remove new line at EOF 2014-09-03 06:12:38 +01:00
Matt Pass
744cfbad16 Fix to language ref array item 2014-08-31 07:01:23 +01:00