Skip to content

Link help pages #117

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Jun 11, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
35 changes: 32 additions & 3 deletions iwsy/resources/ecs/help.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,13 @@
import div Container

callback DecoratorCallback
a Link
variable Mobile
variable Page
variable Content
variable Payload
variable ImageCount
variable LinkCount
variable Function
variable Data
variable Source
Expand All @@ -34,22 +36,36 @@
stop

Show:
put 0 into ImageCount
set style `display` of Container to `block`
get Page from storage as `.help`
GetPage:
if Page is empty
begin
put `start` into Page
put `iwsy` into Page
put Page into storage as `.help`
end
put 0 into ImageCount
put 0 into LinkCount
iwsy remove styles
rest get Content from `/resources/help/` cat Page cat `.md`
rest get Content from `/resources/help/` cat Page cat `.md?v=` cat now
or begin
put empty into Page
go to GetPage
end
set the content of Container to showdown decode Content with DecoratorCallback
set the elements of Link to LinkCount
put 0 into N
while N is less than LinkCount
begin
index Link to N
attach Link to `ec-link-` cat N
add 1 to N
end
on click Link
begin
put attribute `data-page` of Link into Page
go to GetPage
end
stop

!------------------------------------------------------------------------------
Expand All @@ -69,6 +85,7 @@ Decorate:
add 1 to N
put from N of Payload into Data
if Function is `img` gosub to ProcessImage
else if Function is `page` gosub to ProcessPage
end
set the payload of DecoratorCallback to Payload
stop
Expand Down Expand Up @@ -110,6 +127,18 @@ ProcessImage:
add 1 to ImageCount
return

! Process a request for a new page.
ProcessPage:
put the position of `:` in Data into N
if N is -1 return
put left N of Data into Page
add 1 to N
put from N of Data into Data
put `<a id="ec-link-` cat LinkCount cat `" href="#" data-page="` cat Page
cat `">` cat Data cat `</a>` into Payload
add 1 to LinkCount
return

Exit:
set style `display` of Container to `none`
stop
20 changes: 20 additions & 0 deletions iwsy/resources/help/iwsy.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# I Wanna Show You

I Wanna Show You (IWSY, pronounced "You-zee" as an approximation to the initials) is an online presentation package. It has the ability to deliver slideshows that either run under manual control or unattended, but instead of being a PC application that's tied to the desktop, IWSY is entirely browser-based. IWSY presentations can run here in this web app, they can be embedded in other web pages or they can run as independent web pages.

The basic features of IWSY are:

- A step editor, where you create a set of steps that together form your presentation
- A block editor, where you define templates to control where things appear on the screen
- A content editor, where you keep all the text that will be shown in your presentation
- A presentation viewer that runs your shows or displays any step
- A block viewer to visualise your blocks
- User management - each user has their own account and storage area
- Image management - users can create folders, upload/delete images and so on
- Built-in help - what you're reading

The block and content editors may be an unfamiliar concept. Rather than hand-editing each slide you use blocks to define the areas of the screen that will hold text or images. Each block has a name so you can choose which ones to use for any given part of the show. Similarly, the text content is all edited separately and each item has a name.

All text input in IWSY is in MarkDown format, which is much simpler than HTML, being mostly plain text. All standard features of MarkDown are supported, plus some custom additions documented in these Help pages.

~page:start:Starting a project~
18 changes: 2 additions & 16 deletions iwsy/resources/help/start.md
Original file line number Diff line number Diff line change
@@ -1,18 +1,4 @@
# I Wanna Show You
~page:iwsy:Home~

I Wanna Show You, (IWSY, pronounced "You-zee" as an approximation to the initials) is an online presentation package. As with traditional applications such as PowerPoint, it has the ability to deliver slideshows that either run under manual control or unattended, but there the similarities end. Instead of being a PC application that's tied to the desktop, IWSY is entirely browser-based. IWSY presentations can run here in this web app, they can be embedded in other web pages or they can run as independent web pages.
# Starting a project

The basic features of IWSY are:

- A step editor, where you create a set of steps that together form your presentation
- A block editor, where you define templates to control where things appear on the screen
- A content editor, where you keep all the text that will be shown in your presentation
- A presentation viewer that runs your shows or displays any step
- A block viewer to visualise your blocks
- User management - each user has their own account and storage area
- Image management - users can create folders, upload/delete images and so on
- Built-in help - what you're reading

The block and content editors may be an unfamiliar concept. Rather than hand-editing each slide you use blocks to define the areas of the screen that will hold text or images. Each block has a name so you can choose which ones to use for any given part of the show. Similarly, the text content is all edited separately and each item has a name.

All text input in IWSY is in MarkDown format, which is much simpler than HTML, being mostly plain text. All standard features of MarkDown are supported, plus some custom additions documented in these Help pages.