├── .gitattributes ├── .gitignore ├── Moriyama.Workflow.Sample └── Umbraco │ └── Task Examples │ ├── BitLyUrlShortenerTask │ ├── BitLyUrlShortenerTask.sln │ └── CustomWorkflowTasks │ │ ├── BitLyUrlShorteningTask.cs │ │ ├── CustomWorkflowTasks.csproj │ │ ├── Properties │ │ └── AssemblyInfo.cs │ │ ├── Ui │ │ └── BitLyUrlShorteningTaskEntityUi.cs │ │ ├── UiProperty │ │ ├── Base │ │ │ └── BaseTextBoxPropertyUi.cs │ │ ├── BitLyApiKeyPropertyUi.cs │ │ ├── BitLyLoginPropertyUi.cs │ │ └── DocumentTypePropertyUi.cs │ │ └── packages.config │ ├── CustomDelayTask │ ├── CustomDelayTask.sln │ └── CustomDelayTask │ │ ├── CustomDelayTask.csproj │ │ ├── MyDelayWorkflowTask.cs │ │ ├── Properties │ │ └── AssemblyInfo.cs │ │ ├── Ui │ │ └── MyDelayWorkflowTaskEntityUi.cs │ │ └── packages.config │ ├── CustomWorkflowDecisionTask │ ├── CustomWorkflowDecisionTask.sln │ └── CustomWorkflowDecisionTask │ │ ├── CustomTransition.aspx │ │ ├── CustomTransition.aspx.cs │ │ ├── CustomTransition.aspx.designer.cs │ │ ├── CustomWorkflowDecisionTask.csproj │ │ ├── Properties │ │ └── AssemblyInfo.cs │ │ ├── Task │ │ ├── AnyoneDecisionWorkflowTask.cs │ │ └── CustomGroupDecisionWorkflowTask.cs │ │ ├── Ui │ │ ├── AnyoneDecisionWorkflowTaskEntityUi.cs │ │ └── CustomGroupDecisionWorkflowTaskEntityUi.cs │ │ ├── Web.Debug.config │ │ ├── Web.Release.config │ │ ├── Web.config │ │ └── packages.config │ ├── StarterWorkflowTask │ ├── CustomWorkflowTasks │ │ ├── BitLyUrlShorteningTask.cs │ │ ├── CustomWorkflowTasks.csproj │ │ ├── Properties │ │ │ └── AssemblyInfo.cs │ │ ├── Ui │ │ │ └── BitLyUrlShorteningTaskEntityUi.cs │ │ ├── UiProperty │ │ │ ├── BitLyApiKeyPropertyUi.cs │ │ │ ├── BitLyLoginPropertyUi.cs │ │ │ └── DocumentTypePropertyUi.cs │ │ └── packages.config │ └── StarterWorkflowTask.sln │ ├── TwitterTask │ ├── TwitterTask.sln │ └── TwitterTask │ │ ├── Properties │ │ └── AssemblyInfo.cs │ │ ├── TweetWorkflowTask.cs │ │ ├── TwitterTask.csproj │ │ ├── Ui │ │ └── TweetWorkflowTaskEntityUi.cs │ │ ├── UiProperty │ │ ├── AccessTokenPropertyUi.cs │ │ ├── AccessTokenSecretPropertyUi.cs │ │ ├── BaseTextBoxPropertyUi.cs │ │ ├── ConsumerKeyPropertyUi.cs │ │ ├── ConsumerSecretPropertyUi.cs │ │ ├── ShortUrlPropertyUi.cs │ │ └── TweetTextPropertyUi.cs │ │ └── packages.config │ └── TwitterTaskGlobalised │ ├── TwitterTask.sln │ └── TwitterTask │ ├── Properties │ └── AssemblyInfo.cs │ ├── TweetWorkflowTask.cs │ ├── TwitterTask.csproj │ ├── Ui │ └── TweetWorkflowTaskEntityUi.cs │ ├── UiProperty │ ├── AccessTokenPropertyUi.cs │ ├── AccessTokenSecretPropertyUi.cs │ ├── BaseTextBoxPropertyUi.cs │ ├── ConsumerKeyPropertyUi.cs │ ├── ConsumerSecretPropertyUi.cs │ ├── ShortUrlPropertyUi.cs │ └── TweetTextPropertyUi.cs │ └── packages.config ├── Moriyama.Workflow.Umbraco6 ├── .nuget │ ├── NuGet.Config │ └── NuGet.targets ├── Moriyama.Workflow.Umbraco6.Custom │ ├── Moriyama.Workflow.Umbraco6.Custom.csproj │ ├── Properties │ │ └── AssemblyInfo.cs │ ├── app.config │ └── packages.config ├── Moriyama.Workflow.Umbraco6.Web │ ├── App_Browsers │ │ ├── Form.browser │ │ └── w3cvalidator.browser │ ├── App_Data │ │ ├── access.config │ │ ├── dummy.txt │ │ ├── fmworkflow │ │ │ ├── WorkflowConfigurationRepository_1.bin │ │ │ ├── WorkflowConfigurationRepository_2.bin │ │ │ ├── WorkflowConfigurationRepository_2004.bin │ │ │ ├── WorkflowConfigurationRepository_3005.bin │ │ │ ├── WorkflowInstanceRepository_3026.bin │ │ │ ├── WorkflowInstanceRepository_3028.bin │ │ │ ├── WorkflowInstantionCriteria_1.bin │ │ │ ├── WorkflowInstantionCriteria_2.bin │ │ │ └── WorkflowInstantionCriteria_2005.bin │ │ ├── packages │ │ │ └── installed │ │ │ │ └── installedPackages.config │ │ ├── skinning.config │ │ └── umbraco.config │ ├── App_Plugins │ │ └── dummy.txt │ ├── Extensions │ │ └── ResourceExtensions.cs │ ├── Global.asax │ ├── Infrastructure │ │ └── Storage │ │ │ └── AppDataFileStorage.cs │ ├── Moriyama.Workflow.Umbraco6.Web.csproj │ ├── Properties │ │ ├── AssemblyInfo.cs │ │ └── PublishProfiles │ │ │ └── Default Settings.pubxml │ ├── Views │ │ └── Web.config │ ├── Web.Debug.config │ ├── Web.Release.config │ ├── Web.config │ ├── Workflow │ │ ├── AllRecentContent.ascx │ │ ├── AllRecentContent.ascx.cs │ │ ├── AllRecentContent.ascx.designer.cs │ │ ├── Approval │ │ │ ├── RestartTask.aspx │ │ │ ├── RestartTask.aspx.cs │ │ │ ├── RestartTask.aspx.designer.cs │ │ │ ├── UrlTask.aspx │ │ │ ├── UrlTask.aspx.cs │ │ │ ├── UrlTask.aspx.designer.cs │ │ │ ├── css │ │ │ │ ├── foundation-icons.css │ │ │ │ ├── foundation.css │ │ │ │ ├── foundation.min.css │ │ │ │ ├── normalize.css │ │ │ │ └── styles.css │ │ │ ├── fonts │ │ │ │ ├── foundation-icons.eot │ │ │ │ ├── foundation-icons.svg │ │ │ │ ├── foundation-icons.ttf │ │ │ │ └── foundation-icons.woff │ │ │ ├── img │ │ │ │ └── .gitkeep │ │ │ ├── js │ │ │ │ ├── approvalFrames.js │ │ │ │ ├── decisionBtn.js │ │ │ │ ├── foundation.min.js │ │ │ │ ├── foundation │ │ │ │ │ ├── foundation.interchange.js │ │ │ │ │ ├── foundation.js │ │ │ │ │ └── foundation.reveal.js │ │ │ │ ├── sideBar.js │ │ │ │ └── vendor │ │ │ │ │ ├── fastclick.js │ │ │ │ │ ├── jquery.cookie.js │ │ │ │ │ ├── jquery.js │ │ │ │ │ ├── modernizr.js │ │ │ │ │ └── placeholder.js │ │ │ └── svgs │ │ │ │ ├── fi-address-book.svg │ │ │ │ ├── fi-alert.svg │ │ │ │ ├── fi-align-center.svg │ │ │ │ ├── fi-align-justify.svg │ │ │ │ ├── fi-align-left.svg │ │ │ │ ├── fi-align-right.svg │ │ │ │ ├── fi-anchor.svg │ │ │ │ ├── fi-annotate.svg │ │ │ │ ├── fi-archive.svg │ │ │ │ ├── fi-arrow-down.svg │ │ │ │ ├── fi-arrow-left.svg │ │ │ │ ├── fi-arrow-right.svg │ │ │ │ ├── fi-arrow-up.svg │ │ │ │ ├── fi-arrows-compress.svg │ │ │ │ ├── fi-arrows-expand.svg │ │ │ │ ├── fi-arrows-in.svg │ │ │ │ ├── fi-arrows-out.svg │ │ │ │ ├── fi-asl.svg │ │ │ │ ├── fi-asterisk.svg │ │ │ │ ├── fi-at-sign.svg │ │ │ │ ├── fi-background-color.svg │ │ │ │ ├── fi-battery-empty.svg │ │ │ │ ├── fi-battery-full.svg │ │ │ │ ├── fi-battery-half.svg │ │ │ │ ├── fi-bitcoin-circle.svg │ │ │ │ ├── fi-bitcoin.svg │ │ │ │ ├── fi-blind.svg │ │ │ │ ├── fi-bluetooth.svg │ │ │ │ ├── fi-bold.svg │ │ │ │ ├── fi-book-bookmark.svg │ │ │ │ ├── fi-book.svg │ │ │ │ ├── fi-bookmark.svg │ │ │ │ ├── fi-braille.svg │ │ │ │ ├── fi-burst-new.svg │ │ │ │ ├── fi-burst-sale.svg │ │ │ │ ├── fi-burst.svg │ │ │ │ ├── fi-calendar.svg │ │ │ │ ├── fi-camera.svg │ │ │ │ ├── fi-check.svg │ │ │ │ ├── fi-checkbox.svg │ │ │ │ ├── fi-clipboard-notes.svg │ │ │ │ ├── fi-clipboard-pencil.svg │ │ │ │ ├── fi-clipboard.svg │ │ │ │ ├── fi-clock.svg │ │ │ │ ├── fi-closed-caption.svg │ │ │ │ ├── fi-cloud.svg │ │ │ │ ├── fi-comment-minus.svg │ │ │ │ ├── fi-comment-quotes.svg │ │ │ │ ├── fi-comment-video.svg │ │ │ │ ├── fi-comment.svg │ │ │ │ ├── fi-comments.svg │ │ │ │ ├── fi-compass.svg │ │ │ │ ├── fi-contrast.svg │ │ │ │ ├── fi-credit-card.svg │ │ │ │ ├── fi-crop.svg │ │ │ │ ├── fi-crown.svg │ │ │ │ ├── fi-css3.svg │ │ │ │ ├── fi-database.svg │ │ │ │ ├── fi-die-five.svg │ │ │ │ ├── fi-die-four.svg │ │ │ │ ├── fi-die-one.svg │ │ │ │ ├── fi-die-six.svg │ │ │ │ ├── fi-die-three.svg │ │ │ │ ├── fi-die-two.svg │ │ │ │ ├── fi-dislike.svg │ │ │ │ ├── fi-dollar-bill.svg │ │ │ │ ├── fi-dollar.svg │ │ │ │ ├── fi-download.svg │ │ │ │ ├── fi-eject.svg │ │ │ │ ├── fi-elevator.svg │ │ │ │ ├── fi-euro.svg │ │ │ │ ├── fi-eye.svg │ │ │ │ ├── fi-fast-forward.svg │ │ │ │ ├── fi-female-symbol.svg │ │ │ │ ├── fi-female.svg │ │ │ │ ├── fi-filter.svg │ │ │ │ ├── fi-first-aid.svg │ │ │ │ ├── fi-flag.svg │ │ │ │ ├── fi-folder-add.svg │ │ │ │ ├── fi-folder-lock.svg │ │ │ │ ├── fi-folder.svg │ │ │ │ ├── fi-foot.svg │ │ │ │ ├── fi-foundation.svg │ │ │ │ ├── fi-graph-bar.svg │ │ │ │ ├── fi-graph-horizontal.svg │ │ │ │ ├── fi-graph-pie.svg │ │ │ │ ├── fi-graph-trend.svg │ │ │ │ ├── fi-guide-dog.svg │ │ │ │ ├── fi-hearing-aid.svg │ │ │ │ ├── fi-heart.svg │ │ │ │ ├── fi-home.svg │ │ │ │ ├── fi-html5.svg │ │ │ │ ├── fi-indent-less.svg │ │ │ │ ├── fi-indent-more.svg │ │ │ │ ├── fi-info.svg │ │ │ │ ├── fi-italic.svg │ │ │ │ ├── fi-key.svg │ │ │ │ ├── fi-laptop.svg │ │ │ │ ├── fi-layout.svg │ │ │ │ ├── fi-lightbulb.svg │ │ │ │ ├── fi-like.svg │ │ │ │ ├── fi-link.svg │ │ │ │ ├── fi-list-bullet.svg │ │ │ │ ├── fi-list-number.svg │ │ │ │ ├── fi-list-thumbnails.svg │ │ │ │ ├── fi-list.svg │ │ │ │ ├── fi-lock.svg │ │ │ │ ├── fi-loop.svg │ │ │ │ ├── fi-magnifying-glass.svg │ │ │ │ ├── fi-mail.svg │ │ │ │ ├── fi-male-female.svg │ │ │ │ ├── fi-male-symbol.svg │ │ │ │ ├── fi-male.svg │ │ │ │ ├── fi-map.svg │ │ │ │ ├── fi-marker.svg │ │ │ │ ├── fi-megaphone.svg │ │ │ │ ├── fi-microphone.svg │ │ │ │ ├── fi-minus-circle.svg │ │ │ │ ├── fi-minus.svg │ │ │ │ ├── fi-mobile-signal.svg │ │ │ │ ├── fi-mobile.svg │ │ │ │ ├── fi-monitor.svg │ │ │ │ ├── fi-mountains.svg │ │ │ │ ├── fi-music.svg │ │ │ │ ├── fi-next.svg │ │ │ │ ├── fi-no-dogs.svg │ │ │ │ ├── fi-no-smoking.svg │ │ │ │ ├── fi-page-add.svg │ │ │ │ ├── fi-page-copy.svg │ │ │ │ ├── fi-page-csv.svg │ │ │ │ ├── fi-page-delete.svg │ │ │ │ ├── fi-page-doc.svg │ │ │ │ ├── fi-page-edit.svg │ │ │ │ ├── fi-page-export-csv.svg │ │ │ │ ├── fi-page-export-doc.svg │ │ │ │ ├── fi-page-export-pdf.svg │ │ │ │ ├── fi-page-export.svg │ │ │ │ ├── fi-page-filled.svg │ │ │ │ ├── fi-page-multiple.svg │ │ │ │ ├── fi-page-pdf.svg │ │ │ │ ├── fi-page-remove.svg │ │ │ │ ├── fi-page-search.svg │ │ │ │ ├── fi-page.svg │ │ │ │ ├── fi-paint-bucket.svg │ │ │ │ ├── fi-paperclip.svg │ │ │ │ ├── fi-pause.svg │ │ │ │ ├── fi-paw.svg │ │ │ │ ├── fi-paypal.svg │ │ │ │ ├── fi-pencil.svg │ │ │ │ ├── fi-photo.svg │ │ │ │ ├── fi-play-circle.svg │ │ │ │ ├── fi-play-video.svg │ │ │ │ ├── fi-play.svg │ │ │ │ ├── fi-plus.svg │ │ │ │ ├── fi-pound.svg │ │ │ │ ├── fi-power.svg │ │ │ │ ├── fi-previous.svg │ │ │ │ ├── fi-price-tag.svg │ │ │ │ ├── fi-pricetag-multiple.svg │ │ │ │ ├── fi-print.svg │ │ │ │ ├── fi-prohibited.svg │ │ │ │ ├── fi-projection-screen.svg │ │ │ │ ├── fi-puzzle.svg │ │ │ │ ├── fi-quote.svg │ │ │ │ ├── fi-record.svg │ │ │ │ ├── fi-refresh.svg │ │ │ │ ├── fi-results-demographics.svg │ │ │ │ ├── fi-results.svg │ │ │ │ ├── fi-rewind-ten.svg │ │ │ │ ├── fi-rewind.svg │ │ │ │ ├── fi-rss.svg │ │ │ │ ├── fi-safety-cone.svg │ │ │ │ ├── fi-save.svg │ │ │ │ ├── fi-share.svg │ │ │ │ ├── fi-sheriff-badge.svg │ │ │ │ ├── fi-shield.svg │ │ │ │ ├── fi-shopping-bag.svg │ │ │ │ ├── fi-shopping-cart.svg │ │ │ │ ├── fi-shuffle.svg │ │ │ │ ├── fi-skull.svg │ │ │ │ ├── fi-social-500px.svg │ │ │ │ ├── fi-social-adobe.svg │ │ │ │ ├── fi-social-amazon.svg │ │ │ │ ├── fi-social-android.svg │ │ │ │ ├── fi-social-apple.svg │ │ │ │ ├── fi-social-behance.svg │ │ │ │ ├── fi-social-bing.svg │ │ │ │ ├── fi-social-blogger.svg │ │ │ │ ├── fi-social-delicious.svg │ │ │ │ ├── fi-social-designer-news.svg │ │ │ │ ├── fi-social-deviant-art.svg │ │ │ │ ├── fi-social-digg.svg │ │ │ │ ├── fi-social-dribbble.svg │ │ │ │ ├── fi-social-drive.svg │ │ │ │ ├── fi-social-dropbox.svg │ │ │ │ ├── fi-social-evernote.svg │ │ │ │ ├── fi-social-facebook.svg │ │ │ │ ├── fi-social-flickr.svg │ │ │ │ ├── fi-social-forrst.svg │ │ │ │ ├── fi-social-foursquare.svg │ │ │ │ ├── fi-social-game-center.svg │ │ │ │ ├── fi-social-github.svg │ │ │ │ ├── fi-social-google-plus.svg │ │ │ │ ├── fi-social-hacker-news.svg │ │ │ │ ├── fi-social-hi5.svg │ │ │ │ ├── fi-social-instagram.svg │ │ │ │ ├── fi-social-joomla.svg │ │ │ │ ├── fi-social-lastfm.svg │ │ │ │ ├── fi-social-linkedin.svg │ │ │ │ ├── fi-social-medium.svg │ │ │ │ ├── fi-social-myspace.svg │ │ │ │ ├── fi-social-orkut.svg │ │ │ │ ├── fi-social-path.svg │ │ │ │ ├── fi-social-picasa.svg │ │ │ │ ├── fi-social-pinterest.svg │ │ │ │ ├── fi-social-rdio.svg │ │ │ │ ├── fi-social-reddit.svg │ │ │ │ ├── fi-social-skillshare.svg │ │ │ │ ├── fi-social-skype.svg │ │ │ │ ├── fi-social-smashing-mag.svg │ │ │ │ ├── fi-social-snapchat.svg │ │ │ │ ├── fi-social-spotify.svg │ │ │ │ ├── fi-social-squidoo.svg │ │ │ │ ├── fi-social-stack-overflow.svg │ │ │ │ ├── fi-social-steam.svg │ │ │ │ ├── fi-social-stumbleupon.svg │ │ │ │ ├── fi-social-treehouse.svg │ │ │ │ ├── fi-social-tumblr.svg │ │ │ │ ├── fi-social-twitter.svg │ │ │ │ ├── fi-social-vimeo.svg │ │ │ │ ├── fi-social-windows.svg │ │ │ │ ├── fi-social-xbox.svg │ │ │ │ ├── fi-social-yahoo.svg │ │ │ │ ├── fi-social-yelp.svg │ │ │ │ ├── fi-social-youtube.svg │ │ │ │ ├── fi-social-zerply.svg │ │ │ │ ├── fi-social-zurb.svg │ │ │ │ ├── fi-sound.svg │ │ │ │ ├── fi-star.svg │ │ │ │ ├── fi-stop.svg │ │ │ │ ├── fi-strikethrough.svg │ │ │ │ ├── fi-subscript.svg │ │ │ │ ├── fi-superscript.svg │ │ │ │ ├── fi-tablet-landscape.svg │ │ │ │ ├── fi-tablet-portrait.svg │ │ │ │ ├── fi-target-two.svg │ │ │ │ ├── fi-target.svg │ │ │ │ ├── fi-telephone-accessible.svg │ │ │ │ ├── fi-telephone.svg │ │ │ │ ├── fi-text-color.svg │ │ │ │ ├── fi-thumbnails.svg │ │ │ │ ├── fi-ticket.svg │ │ │ │ ├── fi-torso-business.svg │ │ │ │ ├── fi-torso-female.svg │ │ │ │ ├── fi-torso.svg │ │ │ │ ├── fi-torsos-all-female.svg │ │ │ │ ├── fi-torsos-all.svg │ │ │ │ ├── fi-torsos-female-male.svg │ │ │ │ ├── fi-torsos-male-female.svg │ │ │ │ ├── fi-torsos.svg │ │ │ │ ├── fi-trash.svg │ │ │ │ ├── fi-trees.svg │ │ │ │ ├── fi-trophy.svg │ │ │ │ ├── fi-underline.svg │ │ │ │ ├── fi-universal-access.svg │ │ │ │ ├── fi-unlink.svg │ │ │ │ ├── fi-unlock.svg │ │ │ │ ├── fi-upload-cloud.svg │ │ │ │ ├── fi-upload.svg │ │ │ │ ├── fi-usb.svg │ │ │ │ ├── fi-video.svg │ │ │ │ ├── fi-volume-none.svg │ │ │ │ ├── fi-volume-strike.svg │ │ │ │ ├── fi-volume.svg │ │ │ │ ├── fi-web.svg │ │ │ │ ├── fi-wheelchair.svg │ │ │ │ ├── fi-widget.svg │ │ │ │ ├── fi-wrench.svg │ │ │ │ ├── fi-x-circle.svg │ │ │ │ ├── fi-x.svg │ │ │ │ ├── fi-yen.svg │ │ │ │ ├── fi-zoom-in.svg │ │ │ │ └── fi-zoom-out.svg │ │ ├── Comments.aspx │ │ ├── Comments.aspx.cs │ │ ├── Comments.aspx.designer.cs │ │ ├── Configuration.ascx │ │ ├── Configuration.ascx.cs │ │ ├── Configuration.ascx.designer.cs │ │ ├── EditConfigurationProperties.aspx │ │ ├── EditConfigurationProperties.aspx.cs │ │ ├── EditConfigurationProperties.aspx.designer.cs │ │ ├── EditDesign.aspx │ │ ├── EditDesign.aspx.cs │ │ ├── EditDesign.aspx.designer.cs │ │ ├── EditInstantiationCriteria.aspx │ │ ├── EditInstantiationCriteria.aspx.cs │ │ ├── EditInstantiationCriteria.aspx.designer.cs │ │ ├── EditTaskProperties.aspx │ │ ├── EditTaskProperties.aspx.cs │ │ ├── EditTaskProperties.aspx.designer.cs │ │ ├── Instances.ascx │ │ ├── Instances.ascx.cs │ │ ├── Instances.ascx.designer.cs │ │ ├── InstantiationCriteria.ascx │ │ ├── InstantiationCriteria.ascx.cs │ │ ├── InstantiationCriteria.ascx.designer.cs │ │ ├── Js │ │ │ ├── Autocomplete.js │ │ │ ├── Config.js │ │ │ ├── Util.js │ │ │ ├── jquery-1.5.1.min.js │ │ │ ├── jquery-ui-1.8.12.custom.min.js │ │ │ ├── jquery.jcarousel.min.js │ │ │ ├── jquery.jsPlumb-1.3.2-all-min.js │ │ │ ├── json2.js │ │ │ ├── speechbubble.js │ │ │ └── workflow.js │ │ ├── PostInstall.ascx │ │ ├── PostInstall.ascx.cs │ │ ├── PostInstall.ascx.designer.cs │ │ ├── RecentContent.ascx │ │ ├── RecentContent.ascx.cs │ │ ├── RecentContent.ascx.designer.cs │ │ ├── Runtime.aspx │ │ ├── Runtime.aspx.cs │ │ ├── Runtime.aspx.designer.cs │ │ ├── SendToWorkflow.aspx │ │ ├── SendToWorkflow.aspx.cs │ │ ├── SendToWorkflow.aspx.designer.cs │ │ ├── TabRefresh.ascx │ │ ├── TabRefresh.ascx.cs │ │ ├── TabRefresh.ascx.designer.cs │ │ ├── Transition.aspx │ │ ├── Transition.aspx.cs │ │ ├── Transition.aspx.designer.cs │ │ ├── config │ │ │ ├── Log4Net.config │ │ │ ├── workflow.application.spring.config │ │ │ ├── workflow.core.spring.config │ │ │ ├── workflow.domain.spring.config │ │ │ ├── workflow.en-GB.spring.config │ │ │ ├── workflow.globalisation.spring.config │ │ │ ├── workflow.infrastructure.spring.config │ │ │ ├── workflow.spring.config │ │ │ └── workflow.ui.spring.config │ │ ├── css │ │ │ ├── Controls.css │ │ │ ├── Designer.css │ │ │ └── Grid.css │ │ ├── images │ │ │ ├── arrow_join.png │ │ │ ├── arrow_switch.png │ │ │ ├── cog.png │ │ │ ├── email.png │ │ │ ├── group_go.png │ │ │ ├── images.png │ │ │ ├── page_world.png │ │ │ ├── stop.png │ │ │ ├── time.png │ │ │ └── user_go.png │ │ └── userCss │ │ │ └── baseTasks.css │ ├── config │ │ ├── 404handlers.config │ │ ├── BaseRestExtensions.config │ │ ├── ClientDependency.config │ │ ├── Dashboard.config │ │ ├── EmbeddedMedia.config │ │ ├── ExamineIndex.config │ │ ├── ExamineSettings.config │ │ ├── FileSystemProviders.config │ │ ├── Skinning.config │ │ ├── UrlRewriting.config │ │ ├── applications.config │ │ ├── feedProxy.config │ │ ├── log4net.config │ │ ├── metablogConfig.config │ │ ├── restExtensions.config │ │ ├── scripting.config │ │ ├── splashes │ │ │ ├── booting.aspx │ │ │ └── noNodes.aspx │ │ ├── tinyMceConfig.config │ │ ├── trees.config │ │ ├── umbracoSettings.config │ │ └── xsltExtensions.config │ ├── css │ │ ├── Designit_Green.css │ │ ├── Designit_Green │ │ │ └── Images │ │ │ │ ├── background.jpg │ │ │ │ ├── blog-post-icon.png │ │ │ │ ├── feed-item-icon.png │ │ │ │ ├── footer.png │ │ │ │ ├── header.jpg │ │ │ │ ├── logo.png │ │ │ │ ├── main.png │ │ │ │ ├── nav-item-active.png │ │ │ │ ├── nav-item.png │ │ │ │ ├── nav.png │ │ │ │ ├── news-item-icon.png │ │ │ │ ├── pattern.png │ │ │ │ └── rgbapng │ │ │ │ ├── 00000033.png │ │ │ │ ├── 00000066.png │ │ │ │ ├── 00000099.png │ │ │ │ ├── 000000cc.png │ │ │ │ ├── 22ea5fcc.png │ │ │ │ ├── 33333333.png │ │ │ │ └── ffffffb3.png │ │ ├── Starterkit.css │ │ └── dummy.txt │ ├── default.aspx │ ├── install │ │ ├── InstallerRestService.aspx │ │ ├── Steps │ │ │ ├── RenderingEngine.ascx │ │ │ ├── Skinning │ │ │ │ ├── loadStarterKitDesigns.ascx │ │ │ │ └── loadStarterKits.ascx │ │ │ ├── StarterKits.ascx │ │ │ ├── database.ascx │ │ │ ├── defaultUser.ascx │ │ │ ├── license.ascx │ │ │ ├── renaming.ascx │ │ │ ├── skinning.ascx │ │ │ ├── theend.ascx │ │ │ ├── validatePermissions.ascx │ │ │ └── welcome.ascx │ │ ├── Title.ascx │ │ ├── Utills │ │ │ └── p.aspx │ │ └── default.aspx │ ├── macroScripts │ │ └── dummy.txt │ ├── masterpages │ │ ├── Designit_Green │ │ │ ├── skin.xml │ │ │ └── umbMaster.master │ │ ├── dummy.txt │ │ ├── umbHomepage.master │ │ ├── umbMaster.master │ │ └── umbTextpage.master │ ├── media │ │ └── dummy.txt │ ├── packages.config │ ├── patch notes.txt │ ├── scripts │ │ ├── Designit_Green │ │ │ ├── Designit_Green.js │ │ │ └── jquery.placeholder.js │ │ └── dummy.txt │ ├── usercontrols │ │ └── dummy.txt │ ├── web.config.backup │ └── xslt │ │ ├── dummy.txt │ │ ├── umb2ndLevelNavigation.xslt │ │ └── umbTopNavigation.xslt ├── Moriyama.Workflow.Umbraco6.sln └── Moriyama.Workflow.Umbraco6 │ ├── Application │ ├── Filters │ │ └── RegisterClientResourcesFilter.cs │ ├── Helper.cs │ ├── Infrastructure │ │ └── UmbracoConnectionStringProvider.cs │ ├── Interfaces │ │ └── IUmbracoWorkflowInstantiationCriteriaValidationService.cs │ ├── Modules │ │ └── RegisterClientResourcesHttpModule.cs │ ├── SpringApplicationEventListener.cs │ ├── UmbracoEventService.cs │ ├── UmbracoWorkflowApplicationBase.cs │ └── UmbracoWorkflowInstantiationCriteriaValidationService.cs │ ├── Domain │ ├── Extension.cs │ ├── Factory │ │ └── UmbracoWorkflowInstantiationCriteriaFactory.cs │ ├── Task │ │ ├── BaseDecisionWorkflowTask.cs │ │ ├── BaseEmailWorkflowTask.cs │ │ ├── BasicEmailWorkflowTask.cs │ │ ├── FilterDocumentsWorkflowTask.cs │ │ ├── GroupDecisionWorkflowTask.cs │ │ ├── PublishDocumentsWorkflowTask.cs │ │ └── UserDecisionWorkflowTask.cs │ ├── UmbracoWorkflowConfiguration.cs │ ├── UmbracoWorkflowInstance.cs │ └── UmbracoWorkflowInstantiationCriteria.cs │ ├── Infrastructure │ └── UmbracoSqlCeDatabaseHelper.cs │ ├── Installer │ ├── Config │ │ ├── BaseInstallConfiguration.cs │ │ ├── InstallConfiguration.cs │ │ ├── InstallDashboardConfiguration.cs │ │ ├── InstallLogConfiguration.cs │ │ └── InstallSpringConfiguration.cs │ ├── Database │ │ ├── InstallMySql.cs │ │ ├── InstallSqlCe.cs │ │ └── InstallSqlServer.cs │ ├── Helper.cs │ ├── Resources │ │ ├── Config │ │ │ ├── Dashboard │ │ │ │ ├── Content.Dashboard.config │ │ │ │ └── Developer.Dashboard.config │ │ │ ├── Log4Net.config │ │ │ └── Web │ │ │ │ ├── Section.Log4Net.config │ │ │ │ ├── SectionGroup.Spring.config │ │ │ │ ├── Spring.Context.Support.WebSupportModule.config │ │ │ │ ├── Spring.Context.config │ │ │ │ ├── Spring.Web.Support.ContextMonitor.config │ │ │ │ └── Spring.Web.Support.PageHandlerFactory.config │ │ └── Sql │ │ │ ├── Ce │ │ │ └── Install.sql │ │ │ ├── MySql │ │ │ └── Install.sql │ │ │ └── SqlServer │ │ │ └── Install.sql │ ├── Singleton.cs │ └── Uninstall │ │ └── UnsintallAction.cs │ ├── Moriyama.Workflow.Umbraco6.csproj │ ├── Properties │ └── AssemblyInfo.cs │ ├── Task │ ├── FilterMediaWorkflowTask.cs │ ├── TemplateEmailWithMediaWorkflowTask.cs │ ├── TemplateEmailWorkflowTask.cs │ ├── Ui │ │ ├── FilterMediaWorkflowTaskEntityUi.cs │ │ ├── Property │ │ │ └── MediaTypePropertyUi.cs │ │ ├── TemplateEmailWithMediaWorkflowTaskEntityUi.cs │ │ └── TemplateEmailWorkflowTaskEntityUi.cs │ ├── UrlGroupDecisionWorkflowTask.cs │ └── UrlInstantiatorRestartWorkflowTask.cs │ ├── Ui │ ├── Controls │ │ ├── CriteriaOperandList.cs │ │ ├── UmbracoDocumentTypesList.cs │ │ ├── UmbracoMediaTypesList.cs │ │ ├── UmbracoTemplateList.cs │ │ ├── UmbracoUserList.cs │ │ ├── UmbracoUserListSingle.cs │ │ └── UmbracoUserTypesList.cs │ ├── Property │ │ ├── CriteriaOperandEntityUi.cs │ │ ├── Email │ │ │ ├── BodyPropertyUi.cs │ │ │ ├── FromPropertyUi.cs │ │ │ ├── MailInstantiatorPropertyUi.cs │ │ │ ├── MailOwnersPropertyUi.cs │ │ │ └── SubjectPropertyUi.cs │ │ ├── TemplatePropertyUi.cs │ │ ├── UrlPropertyUi.cs │ │ ├── UserPropertyUi.cs │ │ └── UserTypePropertyUi.cs │ ├── UmbracoWorkflowInstantiationCriteriaEntityUi.cs │ ├── WorkflowConfigurationEntityUi.cs │ └── WorkflowTaskUi │ │ ├── BaseEmailWorkflowTaskEntityUi.cs │ │ ├── BasicEmailWorkflowTaskEntityUi.cs │ │ ├── FilterDocumentsWorkflowTaskEntityUi.cs │ │ ├── GroupDecisionWorkflowTaskEntityUi.cs │ │ ├── InstantiatorEmailWorkflowTaskEntityUi.cs │ │ ├── Property │ │ └── DocumentTypePropertyUi.cs │ │ ├── PublishDocumentsWorkflowTaskEntityUi.cs │ │ ├── UrlGroupDecisionWorkflowTaskEntityUi.cs │ │ ├── UrlInstantiatorRestartWorkflowTaskEntityUi.cs │ │ └── UserDecisionWorkflowTaskEntityUi.cs │ ├── app.config │ └── packages.config ├── Moriyama.Workflow ├── .nuget │ ├── NuGet.Config │ └── NuGet.targets ├── Moriyama.Workflow.sln ├── Moriyama.Workflow.vsmdi ├── Moriyama.Workflow │ ├── Application │ │ ├── EventInfoService.cs │ │ ├── EventService.cs │ │ ├── Exception │ │ │ ├── WorkflowInstanceAlreadyStartedException.cs │ │ │ ├── WorkflowInstanceHasNoStartTaskException.cs │ │ │ ├── WorkflowInstanceHasTooManyStartTasksException.cs │ │ │ └── WorkflowTaskInvalidTransitionException.cs │ │ ├── Globalisation │ │ │ └── GlobalisationService.cs │ │ ├── GuidPool.cs │ │ ├── PointService.cs │ │ ├── Reflection │ │ │ └── Helper.cs │ │ ├── Runtime │ │ │ ├── TracerEx.cs │ │ │ ├── WorkflowRuntime.cs │ │ │ └── WorkflowTaskTransitionService.cs │ │ ├── WorkflowConfigurationService.cs │ │ ├── WorkflowInstanceService.cs │ │ └── WorkflowInstantiationCriteriaService.cs │ ├── Domain │ │ ├── Designer │ │ │ └── Point.cs │ │ ├── Event │ │ │ ├── EventInformation.cs │ │ │ ├── EventInformationCollection.cs │ │ │ └── Factory │ │ │ │ └── EventInformationCollectionFactory.cs │ │ ├── Factory │ │ │ ├── WorkflowConfigurationFactory.cs │ │ │ ├── WorkflowInstantiationCriteriaFactory.cs │ │ │ └── WorkflowTaskFactory.cs │ │ ├── Task │ │ │ ├── BaseWorkflowTask.cs │ │ │ ├── DelayWorkflowTask.cs │ │ │ ├── EndWorkflowTask.cs │ │ │ └── WaitUntilTimeWorkflowTask.cs │ │ ├── TaskTransition.cs │ │ ├── WorkflowConfiguration.cs │ │ ├── WorkflowInstance.cs │ │ └── WorkflowInstantiationCriteria.cs │ ├── Infrastructure │ │ ├── DatabaseHelper │ │ │ ├── Factory │ │ │ │ └── DatabaseHelperFactory.cs │ │ │ ├── MySqlDatabaseHelper.cs │ │ │ ├── SqlCeDatbaseHelper.cs │ │ │ └── SqlServerDatabaseHelper.cs │ │ ├── Repository.cs │ │ ├── TempFileStorage.cs │ │ ├── WorkflowConfigurationRepository.cs │ │ ├── WorkflowDesignerPointRespository.cs │ │ ├── WorkflowInstanceRepository.cs │ │ └── WorkflowInstantiationCriteriaRepository.cs │ ├── Interfaces │ │ ├── Abstract │ │ │ └── Singleton.cs │ │ ├── Application │ │ │ ├── Event │ │ │ │ ├── IEventInfoService.cs │ │ │ │ └── IEventService.cs │ │ │ ├── IGlobalisable.cs │ │ │ ├── IGlobalisationService.cs │ │ │ ├── IGuidPool.cs │ │ │ ├── IPointService.cs │ │ │ ├── IWorkflowConfigurationService.cs │ │ │ ├── IWorkflowInstanceService.cs │ │ │ ├── IWorkflowInstantiationCriteriaService.cs │ │ │ └── Runtime │ │ │ │ ├── IWorkflowRuntime.cs │ │ │ │ └── IWorkflowTaskTransitionService.cs │ │ ├── Domain │ │ │ ├── Designer │ │ │ │ ├── IPoint.cs │ │ │ │ └── IRelativePoint.cs │ │ │ ├── Event │ │ │ │ ├── Factory │ │ │ │ │ └── IEventInformationCollectionFactory.cs │ │ │ │ ├── IEventInformation.cs │ │ │ │ └── IEventInformationCollection.cs │ │ │ ├── Factory │ │ │ │ ├── IWorkflowConfigurationFactory.cs │ │ │ │ ├── IWorkflowInstantiationCriteriaFactory.cs │ │ │ │ └── IWorkflowTaskFactory.cs │ │ │ ├── IDecisionWorkflowTask.cs │ │ │ ├── IDelayWorkflowTask.cs │ │ │ ├── IRunnableWorkflowTask.cs │ │ │ ├── ITaskTransition.cs │ │ │ ├── IWorkflow.cs │ │ │ ├── IWorkflowConfiguration.cs │ │ │ ├── IWorkflowInstance.cs │ │ │ ├── IWorkflowInstantiationCriteria.cs │ │ │ ├── IWorkflowInstantiator.cs │ │ │ └── IWorkflowTask.cs │ │ ├── Infrastructure │ │ │ ├── DatabaseHelper │ │ │ │ └── Factory │ │ │ │ │ └── IDatabaseHelperFactory.cs │ │ │ ├── IConfigurationWorkflowRepository.cs │ │ │ ├── IConnectionStringProvider.cs │ │ │ ├── IDatabaseHelper.cs │ │ │ ├── IDesignerPointRepository.cs │ │ │ ├── IRepository.cs │ │ │ ├── IStorage.cs │ │ │ └── IWorkflowInstanceRepository.cs │ │ └── Ui │ │ │ ├── Adapter │ │ │ ├── IPointCollection.cs │ │ │ ├── ITaskInfo.cs │ │ │ ├── ITaskInfoCollection.cs │ │ │ ├── ITransitionInfo.cs │ │ │ ├── ITransitionInfoCollection.cs │ │ │ ├── IUiPoint.cs │ │ │ ├── IUiWorkflowTask.cs │ │ │ ├── IUiWorkflowTaskCollection.cs │ │ │ ├── IWorkflowTaskCollectionUiAdapter.cs │ │ │ └── IWorkflowTaskUiAdapter.cs │ │ │ ├── Factory │ │ │ ├── IPointCollectionFactory.cs │ │ │ ├── ITaskInfoCollectionFactory.cs │ │ │ ├── ITaskInfoFactory.cs │ │ │ ├── ITransitionInfoCollectionFactory.cs │ │ │ ├── ITransitionInfoFactory.cs │ │ │ ├── IUiWorkflowTaskCollectionFactory.cs │ │ │ ├── IUiWorkflowTaskFactory.cs │ │ │ └── IWorkflowTaskUiAdapterFactory.cs │ │ │ ├── IUiResolver.cs │ │ │ ├── IWorkflowEntityUi.cs │ │ │ ├── IWorkflowTaskEntityUi.cs │ │ │ └── IWorkflowUiProperty.cs │ ├── Moriyama.Workflow.2.3.0.0.nupkg │ ├── Moriyama.Workflow.csproj │ ├── Moriyama.Workflow.nuspec │ ├── NuGetBuild.bat │ ├── Properties │ │ └── AssemblyInfo.cs │ ├── Ui │ │ ├── Adapter │ │ │ ├── AvailableWorkflowTaskUiAdapter.cs │ │ │ ├── PointCollection.cs │ │ │ ├── TaskInfo.cs │ │ │ ├── TaskInfoCollection.cs │ │ │ ├── TransitionInfo.cs │ │ │ ├── TransitionInfoCollection.cs │ │ │ ├── UiPoint.cs │ │ │ ├── UiWorkflowTask.cs │ │ │ ├── UiWorkflowTaskCollection.cs │ │ │ └── WorkflowTaskCollectionUiAdapter.cs │ │ ├── Base │ │ │ ├── BaseCheckBoxPropertyUi.cs │ │ │ ├── BaseDropDownListPropertyUi.cs │ │ │ ├── BasePropertyUi.cs │ │ │ ├── BaseTextBoxMultiLinePropertyUi.cs │ │ │ └── BaseTextBoxPropertyUi.cs │ │ ├── Factory │ │ │ ├── PointCollectionFactory.cs │ │ │ ├── TaskInfoCollectionFactory.cs │ │ │ ├── TaskInfoFactory.cs │ │ │ ├── TransitionInfoCollectionFactory.cs │ │ │ ├── TransitionInfoFactory.cs │ │ │ ├── UiWorkflowTaskCollectionFactory.cs │ │ │ ├── UiWorkflowTaskFactory.cs │ │ │ └── WorkflowTaskUiAdapterFactory.cs │ │ ├── Generic │ │ │ ├── IsStartTaskPropertyUi.cs │ │ │ └── NamePropertyUi.cs │ │ ├── PropertyUi.cs │ │ ├── WorkflowConfigurationEntityUi.cs │ │ ├── WorkflowConfigurationUi │ │ │ └── IsConfigurationActivePropertyUi.cs │ │ ├── WorkflowEntityUi.cs │ │ ├── WorkflowEntityUiResolver.cs │ │ ├── WorkflowInstantiationCriteriaEntityUi.cs │ │ ├── WorkflowTaskUi │ │ │ ├── BaseWorkflowTaskEntityUi.cs │ │ │ ├── Controls │ │ │ │ └── TextBoxMultiple.cs │ │ │ ├── DelayWorkflowTaskEntityUi.cs │ │ │ ├── DummyWorkflowTaskUi.cs │ │ │ ├── EndWorkflowTaskEntityUi.cs │ │ │ ├── Property │ │ │ │ ├── DebugInformationPropertyUi.cs │ │ │ │ ├── DelayTaskIntervalPropertyUi.cs │ │ │ │ ├── DelayTaskUnitPropertyUi.cs │ │ │ │ ├── HourPropertyUi.cs │ │ │ │ ├── MinutePropertyUi.cs │ │ │ │ ├── TaskDescriptionPropertyUi.cs │ │ │ │ └── TaskNamePropertyUi.cs │ │ │ └── WaitUntilTimeWorkflowTaskEntityUi.cs │ │ └── WorklowInstantiationCriteriaUi │ │ │ ├── Controls │ │ │ ├── AvailableEventsDropDownList.cs │ │ │ └── WorkflowConfigurationDropDownList.cs │ │ │ └── Property │ │ │ ├── ActivePropertyUi.cs │ │ │ ├── AllowManualInstantiationPropertyUi.cs │ │ │ ├── CancelEventPropertyUi.cs │ │ │ ├── EventsPropertyUi.cs │ │ │ └── WorkflowConfigurationPropertyUi.cs │ └── packages.config └── Tests │ ├── App.config │ ├── Classes │ ├── DummyWorkflowTask.cs │ └── ExtendedWorkflowConfiguration.cs │ ├── Database │ ├── MySql │ │ ├── TestMySql.cs │ │ ├── TestWorkflowConfigRepositoryMySql.cs │ │ ├── TestWorkflowDesignerPointRespositoryMySql.cs │ │ ├── TestWorkflowInstanceRepositoryMySql.cs │ │ └── TestWorkflowInstantiationCriteriaRepositoryMySql.cs │ ├── SqlCe │ │ ├── TestSqlCe.cs │ │ ├── TestWorkflowConfigRepositorySqlCe.cs │ │ ├── TestWorkflowDesignerPointRespositorySqlCe.cs │ │ ├── TestWorkflowInstanceRepositorySqlCe.cs │ │ └── TestWorkflowInstantiationCriteriaRepositorySqlCe.cs │ └── SqlServer │ │ ├── TestSql.cs │ │ ├── TestWorkflowConfigRepositorySqlServer.cs │ │ ├── TestWorkflowDesignerPointRespositorySqlServer.cs │ │ ├── TestWorkflowInstanceRepositorySqlServer.cs │ │ └── TestWorkflowInstantiationCriteriaRepositorySqlServer.cs │ ├── Moriyama.Workflow.Tests.csproj │ ├── Properties │ └── AssemblyInfo.cs │ ├── Reflection.cs │ ├── TestConfigManager.cs │ ├── TestEntityUi.cs │ ├── TestEventInfo.cs │ ├── TestGuidPool.cs │ ├── TestInstaniation.cs │ ├── TestRegex.cs │ ├── TestStorage.cs │ ├── TestWorkflowConfiguration.cs │ ├── TestWorkflowTaskFactory.cs │ ├── TestWorkflowTaskJsonAdapter.cs │ └── packages.config ├── README.md ├── dll └── PackageActionsContrib.dll ├── o.txt └── workflow-for-umbraco-4 ├── Umbraco.Application ├── Umbraco.Application.csproj ├── app.config └── packages.config ├── Umbraco.Domain └── Umbraco.Domain.csproj ├── Umbraco.Infrastructure └── Umbraco.Infrastructure.csproj ├── Umbraco.Installer └── Umbraco.Installer.csproj ├── Umbraco.Solution ├── .nuget │ ├── NuGet.Config │ └── NuGet.targets ├── Workflow.Umbraco4.sln └── packages │ └── repositories.config ├── Umbraco.Task ├── Umbraco.Task.csproj └── app.config ├── Umbraco.Tests └── Umbraco.Tests.csproj ├── Umbraco.Ui └── Umbraco.Ui.csproj └── Umbraco.Web.Ui └── Umbraco.Web.Ui.csproj /Moriyama.Workflow.Sample/Umbraco/Task Examples/BitLyUrlShortenerTask/CustomWorkflowTasks/UiProperty/BitLyApiKeyPropertyUi.cs: -------------------------------------------------------------------------------- 1 | using CustomWorkflowTasks.UiProperty.Base; 2 | using FergusonMoriyam.Workflow.Interfaces.Ui; 3 | 4 | namespace CustomWorkflowTasks.UiProperty 5 | { 6 | public class BitLyApiKeyPropertyUi : BaseTextBoxPropertyUi, IWorkflowUiProperty 7 | { 8 | // Public Property name of property to set in the workflow task 9 | public override string PropertyName 10 | { 11 | get { return "BitLyApiKey"; } 12 | } 13 | 14 | // Label for control when rendered in Ui 15 | public string Label 16 | { 17 | get { return "Bit.ly API key"; } 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Sample/Umbraco/Task Examples/BitLyUrlShortenerTask/CustomWorkflowTasks/UiProperty/BitLyLoginPropertyUi.cs: -------------------------------------------------------------------------------- 1 | using CustomWorkflowTasks.UiProperty.Base; 2 | using FergusonMoriyam.Workflow.Interfaces.Ui; 3 | 4 | namespace CustomWorkflowTasks.UiProperty 5 | { 6 | public class BitLyLoginPropertyUi : BaseTextBoxPropertyUi, IWorkflowUiProperty 7 | { 8 | // Public Property name of property to set in the workflow task 9 | public override string PropertyName 10 | { 11 | get { return "BitLyLogin"; } 12 | } 13 | 14 | // Label for control when rendered in Ui 15 | public string Label 16 | { 17 | get { return "Bit.ly Login"; } 18 | } 19 | 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Sample/Umbraco/Task Examples/BitLyUrlShortenerTask/CustomWorkflowTasks/UiProperty/DocumentTypePropertyUi.cs: -------------------------------------------------------------------------------- 1 | using CustomWorkflowTasks.UiProperty.Base; 2 | using FergusonMoriyam.Workflow.Interfaces.Ui; 3 | 4 | namespace CustomWorkflowTasks.UiProperty 5 | { 6 | public class DocumentTypePropertyUi : BaseTextBoxPropertyUi, IWorkflowUiProperty 7 | { 8 | // Public Property name of property to set in the workflow task 9 | public override string PropertyName 10 | { 11 | get { return "DocumentTypeProperty"; } 12 | } 13 | 14 | // Label for control when rendered in Ui 15 | public string Label 16 | { 17 | get { return "Doc Type Property"; } 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Sample/Umbraco/Task Examples/BitLyUrlShortenerTask/CustomWorkflowTasks/packages.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Sample/Umbraco/Task Examples/CustomDelayTask/CustomDelayTask.sln: -------------------------------------------------------------------------------- 1 |  2 | Microsoft Visual Studio Solution File, Format Version 11.00 3 | # Visual Studio 2010 4 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CustomDelayTask", "CustomDelayTask\CustomDelayTask.csproj", "{12B21087-DDB2-4969-B630-1D19D37D4B9F}" 5 | EndProject 6 | Global 7 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 8 | Debug|Any CPU = Debug|Any CPU 9 | Release|Any CPU = Release|Any CPU 10 | EndGlobalSection 11 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 12 | {12B21087-DDB2-4969-B630-1D19D37D4B9F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 13 | {12B21087-DDB2-4969-B630-1D19D37D4B9F}.Debug|Any CPU.Build.0 = Debug|Any CPU 14 | {12B21087-DDB2-4969-B630-1D19D37D4B9F}.Release|Any CPU.ActiveCfg = Release|Any CPU 15 | {12B21087-DDB2-4969-B630-1D19D37D4B9F}.Release|Any CPU.Build.0 = Release|Any CPU 16 | EndGlobalSection 17 | GlobalSection(SolutionProperties) = preSolution 18 | HideSolutionNode = FALSE 19 | EndGlobalSection 20 | EndGlobal 21 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Sample/Umbraco/Task Examples/CustomDelayTask/CustomDelayTask/MyDelayWorkflowTask.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using FergusonMoriyam.Workflow.Domain.Task; 3 | using FergusonMoriyam.Workflow.Interfaces.Domain; 4 | 5 | namespace CustomDelayTask 6 | { 7 | [Serializable] 8 | class MyDelayWorkflowTask : BaseWorkflowTask, IDelayWorkflowTask 9 | { 10 | public MyDelayWorkflowTask() 11 | { 12 | AvailableTransitions = new[] { "done" }; 13 | } 14 | 15 | public bool IsComplete() 16 | { 17 | var now = DateTime.Now; 18 | var interval = now.Subtract(StartTime).Minutes; 19 | 20 | Log.Debug(string.Format("The workflow started at {0} it is now {1} and the interval is {2} minutes.", StartTime, now, interval)); 21 | return interval >= 1; 22 | } 23 | 24 | public DateTime StartTime 25 | { 26 | get; 27 | set; 28 | } 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Sample/Umbraco/Task Examples/CustomDelayTask/CustomDelayTask/Ui/MyDelayWorkflowTaskEntityUi.cs: -------------------------------------------------------------------------------- 1 | using FergusonMoriyam.Workflow.Ui.WorkflowTaskUi; 2 | 3 | namespace CustomDelayTask.Ui 4 | { 5 | public class MyDelayWorkflowTaskEntityUi : BaseWorkflowTaskEntityUi 6 | { 7 | public MyDelayWorkflowTaskEntityUi() 8 | : base() 9 | { 10 | UiAttributes.Add("class", "delayTask"); 11 | TransitionDescriptions.Add("done", "Delay Finished"); 12 | } 13 | 14 | public override bool SupportsType(object o) 15 | { 16 | return o.GetType() == typeof (MyDelayWorkflowTask); 17 | } 18 | 19 | public override string EntityName 20 | { 21 | get { return "Wait a Minute"; } 22 | } 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Sample/Umbraco/Task Examples/CustomDelayTask/CustomDelayTask/packages.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Sample/Umbraco/Task Examples/CustomWorkflowDecisionTask/CustomWorkflowDecisionTask/Task/AnyoneDecisionWorkflowTask.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using FergusonMoriyam.Workflow.Umbraco.Domain.Task; 3 | 4 | namespace CustomWorkflowDecisionTask.Task 5 | { 6 | [Serializable] 7 | public class AnyoneDecisionWorkflowTask : BaseDecisionWorkflowTask 8 | { 9 | public AnyoneDecisionWorkflowTask() : base() 10 | { 11 | AvailableTransitions = new[] {"approve", "reject"}; 12 | } 13 | 14 | public override bool CanTransition() 15 | { 16 | return true; 17 | } 18 | } 19 | } -------------------------------------------------------------------------------- /Moriyama.Workflow.Sample/Umbraco/Task Examples/CustomWorkflowDecisionTask/CustomWorkflowDecisionTask/Task/CustomGroupDecisionWorkflowTask.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using FergusonMoriyam.Workflow.Umbraco.Domain.Task; 3 | 4 | namespace CustomWorkflowDecisionTask.Task 5 | { 6 | [Serializable] 7 | public class CustomGroupDecisionWorkflowTask : GroupDecisionWorkflowTask 8 | { 9 | public override string TransitionUrl 10 | { 11 | get { return "/umbraco/plugins/fmworkflow/CustomTransition.aspx?id={0}"; } 12 | } 13 | } 14 | } -------------------------------------------------------------------------------- /Moriyama.Workflow.Sample/Umbraco/Task Examples/CustomWorkflowDecisionTask/CustomWorkflowDecisionTask/Ui/CustomGroupDecisionWorkflowTaskEntityUi.cs: -------------------------------------------------------------------------------- 1 | using CustomWorkflowDecisionTask.Task; 2 | using FergusonMoriyam.Workflow.Interfaces.Application; 3 | using FergusonMoriyam.Workflow.Interfaces.Ui; 4 | using FergusonMoriyam.Workflow.Umbraco.Ui.WorkflowTaskUi; 5 | 6 | namespace CustomWorkflowDecisionTask.Ui 7 | { 8 | public class CustomGroupDecisionWorkflowTaskEntityUi : GroupDecisionWorkflowTaskEntityUi, IWorkflowTaskEntityUi, IGlobalisable 9 | { 10 | public override bool SupportsType(object o) 11 | { 12 | return o.GetType() == typeof(CustomGroupDecisionWorkflowTask); 13 | } 14 | 15 | public override string EntityName 16 | { 17 | get { return TheGlobalisationService.GetString("custom_group_decision"); } 18 | } 19 | } 20 | } -------------------------------------------------------------------------------- /Moriyama.Workflow.Sample/Umbraco/Task Examples/CustomWorkflowDecisionTask/CustomWorkflowDecisionTask/Web.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Sample/Umbraco/Task Examples/CustomWorkflowDecisionTask/CustomWorkflowDecisionTask/packages.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Sample/Umbraco/Task Examples/StarterWorkflowTask/CustomWorkflowTasks/packages.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Sample/Umbraco/Task Examples/TwitterTask/TwitterTask.sln: -------------------------------------------------------------------------------- 1 |  2 | Microsoft Visual Studio Solution File, Format Version 11.00 3 | # Visual Studio 2010 4 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TwitterTask", "TwitterTask\TwitterTask.csproj", "{648F7435-0534-4922-AA9C-8BD31AC37CB6}" 5 | EndProject 6 | Global 7 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 8 | Debug|Any CPU = Debug|Any CPU 9 | Release|Any CPU = Release|Any CPU 10 | EndGlobalSection 11 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 12 | {648F7435-0534-4922-AA9C-8BD31AC37CB6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 13 | {648F7435-0534-4922-AA9C-8BD31AC37CB6}.Debug|Any CPU.Build.0 = Debug|Any CPU 14 | {648F7435-0534-4922-AA9C-8BD31AC37CB6}.Release|Any CPU.ActiveCfg = Release|Any CPU 15 | {648F7435-0534-4922-AA9C-8BD31AC37CB6}.Release|Any CPU.Build.0 = Release|Any CPU 16 | EndGlobalSection 17 | GlobalSection(SolutionProperties) = preSolution 18 | HideSolutionNode = FALSE 19 | EndGlobalSection 20 | EndGlobal 21 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Sample/Umbraco/Task Examples/TwitterTask/TwitterTask/UiProperty/AccessTokenPropertyUi.cs: -------------------------------------------------------------------------------- 1 | using FergusonMoriyam.Workflow.Interfaces.Ui; 2 | 3 | namespace TwitterTask.UiProperty 4 | { 5 | public class AccessTokenPropertyUi : BaseTextBoxPropertyUi, IWorkflowUiProperty 6 | { 7 | public override string PropertyName 8 | { 9 | get { return "AccessToken"; } 10 | } 11 | 12 | public string Label 13 | { 14 | get { return "Access Token"; } 15 | } 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Sample/Umbraco/Task Examples/TwitterTask/TwitterTask/UiProperty/AccessTokenSecretPropertyUi.cs: -------------------------------------------------------------------------------- 1 | using FergusonMoriyam.Workflow.Interfaces.Ui; 2 | 3 | namespace TwitterTask.UiProperty 4 | { 5 | public class AccessTokenSecretPropertyUi : BaseTextBoxPropertyUi, IWorkflowUiProperty 6 | { 7 | public override string PropertyName 8 | { 9 | get { return "AccessTokenSecret"; } 10 | } 11 | 12 | public string Label 13 | { 14 | get { return "Access Token Secret"; } 15 | } 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Sample/Umbraco/Task Examples/TwitterTask/TwitterTask/UiProperty/ConsumerKeyPropertyUi.cs: -------------------------------------------------------------------------------- 1 | using FergusonMoriyam.Workflow.Interfaces.Ui; 2 | 3 | namespace TwitterTask.UiProperty 4 | { 5 | public class ConsumerKeyPropertyUi : BaseTextBoxPropertyUi, IWorkflowUiProperty 6 | { 7 | public override string PropertyName 8 | { 9 | get { return "ConsumerKey"; } 10 | } 11 | 12 | public string Label 13 | { 14 | get { return "Consumer Key"; } 15 | } 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Sample/Umbraco/Task Examples/TwitterTask/TwitterTask/UiProperty/ConsumerSecretPropertyUi.cs: -------------------------------------------------------------------------------- 1 | using FergusonMoriyam.Workflow.Interfaces.Ui; 2 | 3 | namespace TwitterTask.UiProperty 4 | { 5 | public class ConsumerSecretPropertyUi : BaseTextBoxPropertyUi, IWorkflowUiProperty 6 | { 7 | public override string PropertyName 8 | { 9 | get { return "ConsumerSecret"; } 10 | } 11 | 12 | public string Label 13 | { 14 | get { return "Consumer Secret"; } 15 | } 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Sample/Umbraco/Task Examples/TwitterTask/TwitterTask/UiProperty/ShortUrlPropertyUi.cs: -------------------------------------------------------------------------------- 1 | using FergusonMoriyam.Workflow.Interfaces.Ui; 2 | 3 | namespace TwitterTask.UiProperty 4 | { 5 | public class ShortUrlPropertyUi : BaseTextBoxPropertyUi, IWorkflowUiProperty 6 | { 7 | public override string PropertyName 8 | { 9 | get { return "ShortUrlProperty"; } 10 | } 11 | 12 | public string Label 13 | { 14 | get { return "Short Url Doctype property"; } 15 | } 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Sample/Umbraco/Task Examples/TwitterTask/TwitterTask/UiProperty/TweetTextPropertyUi.cs: -------------------------------------------------------------------------------- 1 | using System.Web.UI.WebControls; 2 | using FergusonMoriyam.Workflow.Interfaces.Ui; 3 | 4 | namespace TwitterTask.UiProperty 5 | { 6 | public class TweetTextPropertyUi : BaseTextBoxPropertyUi, IWorkflowUiProperty 7 | { 8 | public TweetTextPropertyUi() : base() 9 | { 10 | ((TextBox) RenderControl).TextMode = TextBoxMode.MultiLine; 11 | } 12 | 13 | public override string PropertyName 14 | { 15 | get { return "TweetText"; } 16 | } 17 | 18 | public string Label 19 | { 20 | get { return "Tweet Text"; } 21 | } 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Sample/Umbraco/Task Examples/TwitterTask/TwitterTask/packages.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Sample/Umbraco/Task Examples/TwitterTaskGlobalised/TwitterTask.sln: -------------------------------------------------------------------------------- 1 |  2 | Microsoft Visual Studio Solution File, Format Version 11.00 3 | # Visual Studio 2010 4 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TwitterTask", "TwitterTask\TwitterTask.csproj", "{648F7435-0534-4922-AA9C-8BD31AC37CB6}" 5 | EndProject 6 | Global 7 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 8 | Debug|Any CPU = Debug|Any CPU 9 | Release|Any CPU = Release|Any CPU 10 | EndGlobalSection 11 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 12 | {648F7435-0534-4922-AA9C-8BD31AC37CB6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 13 | {648F7435-0534-4922-AA9C-8BD31AC37CB6}.Debug|Any CPU.Build.0 = Debug|Any CPU 14 | {648F7435-0534-4922-AA9C-8BD31AC37CB6}.Release|Any CPU.ActiveCfg = Release|Any CPU 15 | {648F7435-0534-4922-AA9C-8BD31AC37CB6}.Release|Any CPU.Build.0 = Release|Any CPU 16 | EndGlobalSection 17 | GlobalSection(SolutionProperties) = preSolution 18 | HideSolutionNode = FALSE 19 | EndGlobalSection 20 | EndGlobal 21 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Sample/Umbraco/Task Examples/TwitterTaskGlobalised/TwitterTask/UiProperty/AccessTokenPropertyUi.cs: -------------------------------------------------------------------------------- 1 | using FergusonMoriyam.Workflow.Interfaces.Application; 2 | using FergusonMoriyam.Workflow.Interfaces.Ui; 3 | 4 | namespace TwitterTask.UiProperty 5 | { 6 | public class AccessTokenPropertyUi : BaseTextBoxPropertyUi, IWorkflowUiProperty, IGlobalisable 7 | { 8 | public override string PropertyName 9 | { 10 | get { return "AccessToken"; } 11 | } 12 | 13 | public string Label 14 | { 15 | get { return TheGlobalisationService.GetString("access_token"); } 16 | } 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Sample/Umbraco/Task Examples/TwitterTaskGlobalised/TwitterTask/UiProperty/AccessTokenSecretPropertyUi.cs: -------------------------------------------------------------------------------- 1 | using FergusonMoriyam.Workflow.Interfaces.Ui; 2 | 3 | namespace TwitterTask.UiProperty 4 | { 5 | public class AccessTokenSecretPropertyUi : BaseTextBoxPropertyUi, IWorkflowUiProperty 6 | { 7 | public override string PropertyName 8 | { 9 | get { return "AccessTokenSecret"; } 10 | } 11 | 12 | public string Label 13 | { 14 | get { return "Access Token Secret"; } 15 | } 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Sample/Umbraco/Task Examples/TwitterTaskGlobalised/TwitterTask/UiProperty/ConsumerKeyPropertyUi.cs: -------------------------------------------------------------------------------- 1 | using FergusonMoriyam.Workflow.Interfaces.Ui; 2 | 3 | namespace TwitterTask.UiProperty 4 | { 5 | public class ConsumerKeyPropertyUi : BaseTextBoxPropertyUi, IWorkflowUiProperty 6 | { 7 | public override string PropertyName 8 | { 9 | get { return "ConsumerKey"; } 10 | } 11 | 12 | public string Label 13 | { 14 | get { return "Consumer Key"; } 15 | } 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Sample/Umbraco/Task Examples/TwitterTaskGlobalised/TwitterTask/UiProperty/ConsumerSecretPropertyUi.cs: -------------------------------------------------------------------------------- 1 | using FergusonMoriyam.Workflow.Interfaces.Ui; 2 | 3 | namespace TwitterTask.UiProperty 4 | { 5 | public class ConsumerSecretPropertyUi : BaseTextBoxPropertyUi, IWorkflowUiProperty 6 | { 7 | public override string PropertyName 8 | { 9 | get { return "ConsumerSecret"; } 10 | } 11 | 12 | public string Label 13 | { 14 | get { return "Consumer Secret"; } 15 | } 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Sample/Umbraco/Task Examples/TwitterTaskGlobalised/TwitterTask/UiProperty/ShortUrlPropertyUi.cs: -------------------------------------------------------------------------------- 1 | using FergusonMoriyam.Workflow.Interfaces.Ui; 2 | 3 | namespace TwitterTask.UiProperty 4 | { 5 | public class ShortUrlPropertyUi : BaseTextBoxPropertyUi, IWorkflowUiProperty 6 | { 7 | public override string PropertyName 8 | { 9 | get { return "ShortUrlProperty"; } 10 | } 11 | 12 | public string Label 13 | { 14 | get { return "Short Url Doctype property"; } 15 | } 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Sample/Umbraco/Task Examples/TwitterTaskGlobalised/TwitterTask/UiProperty/TweetTextPropertyUi.cs: -------------------------------------------------------------------------------- 1 | using System.Web.UI.WebControls; 2 | using FergusonMoriyam.Workflow.Interfaces.Ui; 3 | 4 | namespace TwitterTask.UiProperty 5 | { 6 | public class TweetTextPropertyUi : BaseTextBoxPropertyUi, IWorkflowUiProperty 7 | { 8 | public TweetTextPropertyUi() : base() 9 | { 10 | ((TextBox) RenderControl).TextMode = TextBoxMode.MultiLine; 11 | } 12 | 13 | public override string PropertyName 14 | { 15 | get { return "TweetText"; } 16 | } 17 | 18 | public string Label 19 | { 20 | get { return "Tweet Text"; } 21 | } 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Sample/Umbraco/Task Examples/TwitterTaskGlobalised/TwitterTask/packages.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/.nuget/NuGet.Config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/App_Browsers/Form.browser: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/App_Browsers/w3cvalidator.browser: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/App_Data/access.config: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/App_Data/dummy.txt: -------------------------------------------------------------------------------- 1 | This file is only here so that the containing folder will be included in the NuGet package, it is safe to delete. 2 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/App_Data/fmworkflow/WorkflowConfigurationRepository_1.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darrenferguson/workflow-for-dot-net/076fd2360669c2f82ff879717eb3e5f1a5aaee9e/Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/App_Data/fmworkflow/WorkflowConfigurationRepository_1.bin -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/App_Data/fmworkflow/WorkflowConfigurationRepository_2.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darrenferguson/workflow-for-dot-net/076fd2360669c2f82ff879717eb3e5f1a5aaee9e/Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/App_Data/fmworkflow/WorkflowConfigurationRepository_2.bin -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/App_Data/fmworkflow/WorkflowConfigurationRepository_2004.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darrenferguson/workflow-for-dot-net/076fd2360669c2f82ff879717eb3e5f1a5aaee9e/Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/App_Data/fmworkflow/WorkflowConfigurationRepository_2004.bin -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/App_Data/fmworkflow/WorkflowConfigurationRepository_3005.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darrenferguson/workflow-for-dot-net/076fd2360669c2f82ff879717eb3e5f1a5aaee9e/Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/App_Data/fmworkflow/WorkflowConfigurationRepository_3005.bin -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/App_Data/fmworkflow/WorkflowInstanceRepository_3026.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darrenferguson/workflow-for-dot-net/076fd2360669c2f82ff879717eb3e5f1a5aaee9e/Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/App_Data/fmworkflow/WorkflowInstanceRepository_3026.bin -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/App_Data/fmworkflow/WorkflowInstanceRepository_3028.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darrenferguson/workflow-for-dot-net/076fd2360669c2f82ff879717eb3e5f1a5aaee9e/Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/App_Data/fmworkflow/WorkflowInstanceRepository_3028.bin -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/App_Data/fmworkflow/WorkflowInstantionCriteria_1.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darrenferguson/workflow-for-dot-net/076fd2360669c2f82ff879717eb3e5f1a5aaee9e/Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/App_Data/fmworkflow/WorkflowInstantionCriteria_1.bin -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/App_Data/fmworkflow/WorkflowInstantionCriteria_2.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darrenferguson/workflow-for-dot-net/076fd2360669c2f82ff879717eb3e5f1a5aaee9e/Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/App_Data/fmworkflow/WorkflowInstantionCriteria_2.bin -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/App_Data/fmworkflow/WorkflowInstantionCriteria_2005.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darrenferguson/workflow-for-dot-net/076fd2360669c2f82ff879717eb3e5f1a5aaee9e/Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/App_Data/fmworkflow/WorkflowInstantionCriteria_2005.bin -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/App_Data/skinning.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/App_Plugins/dummy.txt: -------------------------------------------------------------------------------- 1 | This file is only here so that the containing folder will be included in the NuGet package, it is safe to delete. 2 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Global.asax: -------------------------------------------------------------------------------- 1 | <%@ Application Codebehind="Global.asax.cs" Inherits="Umbraco.Web.UmbracoApplication" Language="C#" %> 2 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/RestartTask.aspx: -------------------------------------------------------------------------------- 1 | <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="RestartTask.aspx.cs" Inherits="Moriyama.Workflow.Umbraco6.Web.Workflow.Approval.WebForm1" %> 2 | 3 | 4 | 5 | 6 | 7 | 8 | 12 | 13 | 14 |
15 |
16 | 17 |
18 |
19 | 20 | 21 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/RestartTask.aspx.designer.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // 3 | // This code was generated by a tool. 4 | // 5 | // Changes to this file may cause incorrect behavior and will be lost if 6 | // the code is regenerated. 7 | // 8 | //------------------------------------------------------------------------------ 9 | 10 | namespace Moriyama.Workflow.Umbraco6.Web.Workflow.Approval 11 | { 12 | 13 | 14 | public partial class WebForm1 15 | { 16 | 17 | /// 18 | /// form1 control. 19 | /// 20 | /// 21 | /// Auto-generated field. 22 | /// To modify move field declaration from designer file to code-behind file. 23 | /// 24 | protected global::System.Web.UI.HtmlControls.HtmlForm form1; 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/fonts/foundation-icons.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darrenferguson/workflow-for-dot-net/076fd2360669c2f82ff879717eb3e5f1a5aaee9e/Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/fonts/foundation-icons.eot -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/fonts/foundation-icons.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darrenferguson/workflow-for-dot-net/076fd2360669c2f82ff879717eb3e5f1a5aaee9e/Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/fonts/foundation-icons.ttf -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/fonts/foundation-icons.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darrenferguson/workflow-for-dot-net/076fd2360669c2f82ff879717eb3e5f1a5aaee9e/Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/fonts/foundation-icons.woff -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/img/.gitkeep: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/js/sideBar.js: -------------------------------------------------------------------------------- 1 | var indo = 1; 2 | $("#pages-for-approval > div").each(function() { 3 | 4 | var ref = $(this).attr('data-refer'); 5 | var mod = ''; 6 | 7 | 8 | if (ref.length > 0) { 9 | mod += '

'; 10 | var c = 1; 11 | 12 | $(ref.split(',')).each(function() { 13 | mod += "Reference " + c + ""; 14 | c++; 15 | }); 16 | mod += '

'; 17 | } 18 | indo++; 19 | 20 | $("ul.side-nav").append("
  • " + $(this).attr('data-name') + "" + mod + "
  • "); 21 | }); 22 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/svgs/fi-arrow-down.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/svgs/fi-arrow-left.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/svgs/fi-arrow-right.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/svgs/fi-arrow-up.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/svgs/fi-battery-empty.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/svgs/fi-battery-full.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/svgs/fi-battery-half.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/svgs/fi-bold.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/svgs/fi-bookmark.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/svgs/fi-braille.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/svgs/fi-check.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 10 | 11 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/svgs/fi-cloud.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/svgs/fi-comment.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/svgs/fi-contrast.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/svgs/fi-credit-card.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 10 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/svgs/fi-css3.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/svgs/fi-die-one.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/svgs/fi-fast-forward.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/svgs/fi-folder.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/svgs/fi-heart.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 11 | 12 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/svgs/fi-home.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/svgs/fi-html5.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/svgs/fi-italic.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/svgs/fi-lock.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 11 | 12 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/svgs/fi-minus.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 8 | 9 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/svgs/fi-mobile.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/svgs/fi-monitor.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/svgs/fi-music.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/svgs/fi-page.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/svgs/fi-pencil.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/svgs/fi-play-video.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 8 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/svgs/fi-play.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/svgs/fi-prohibited.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/svgs/fi-record.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/svgs/fi-rewind.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/svgs/fi-shield.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/svgs/fi-shopping-bag.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/svgs/fi-social-adobe.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/svgs/fi-social-delicious.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/svgs/fi-social-drive.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/svgs/fi-social-dropbox.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 8 | 9 | 10 | 11 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/svgs/fi-social-facebook.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/svgs/fi-social-flickr.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/svgs/fi-social-forrst.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/svgs/fi-social-hacker-news.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/svgs/fi-social-path.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 11 | 12 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/svgs/fi-social-windows.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/svgs/fi-stop.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/svgs/fi-unlock.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 11 | 12 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/svgs/fi-video.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 8 | 9 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Approval/svgs/fi-volume-none.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Comments.aspx.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using Moriyama.Workflow.Interfaces.Application; 3 | using Moriyama.Workflow.Umbraco6.Domain; 4 | using umbraco.BasePages; 5 | 6 | namespace Moriyama.Workflow.Umbraco6.Web.Workflow 7 | { 8 | public partial class Comments : UmbracoEnsuredPage 9 | { 10 | public IWorkflowInstanceService TheWorkflowInstanceService { get; set; } 11 | public IGlobalisationService TheGlobalisationService { get; set; } 12 | 13 | public UmbracoWorkflowInstance UmbracoWorkflowInstance { get; set; } 14 | 15 | protected override void OnInit(EventArgs e) 16 | { 17 | var id = Request["id"]; 18 | 19 | UmbracoWorkflowInstance = (UmbracoWorkflowInstance)TheWorkflowInstanceService.GetInstance(Convert.ToInt32(id)); 20 | 21 | base.OnInit(e); 22 | } 23 | 24 | protected void Page_Load(object sender, EventArgs e) 25 | { 26 | 27 | 28 | 29 | } 30 | } 31 | } -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Comments.aspx.designer.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // 3 | // This code was generated by a tool. 4 | // 5 | // Changes to this file may cause incorrect behavior and will be lost if 6 | // the code is regenerated. 7 | // 8 | //------------------------------------------------------------------------------ 9 | 10 | namespace Moriyama.Workflow.Umbraco6.Web.Workflow { 11 | 12 | 13 | public partial class Comments { 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Js/Util.js: -------------------------------------------------------------------------------- 1 | var wutil = {}; 2 | 3 | wutil.pluginPath = '/Workflow/'; 4 | wutil.modalWidth = 640; 5 | wutil.modalHeight = 500; 6 | 7 | String.prototype.format = function () { 8 | var formatted = this; 9 | for (var i = 0; i < arguments.length; i++) { 10 | var regexp = new RegExp('\\{' + i + '\\}', 'gi'); 11 | formatted = formatted.replace(regexp, arguments[i]); 12 | } 13 | return formatted; 14 | }; 15 | 16 | wutil.addTabToUrl = function (url, tab) { 17 | 18 | url = url.replace(/[\&\?]tab\=.*?$/, ''); 19 | 20 | if (url.indexOf('?') > -1) { 21 | url = url + '&tab=' + tab; 22 | } else { 23 | url = url + '?tab=' + tab; 24 | } 25 | 26 | url += '&epoch=' + escape(new Date().getTime()); 27 | return url; 28 | }; 29 | 30 | wutil.getTab = function(id) { 31 | return $('#' + id).closest('.tabpage').attr('id').replace( /(.*)layer/ , '$1') + 'a'; 32 | }; 33 | 34 | wutil.debug = function (s) { 35 | console.log(s); 36 | }; -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Js/speechbubble.js: -------------------------------------------------------------------------------- 1 | $().ready(function () { 2 | 3 | UmbracoSpeechBubble.prototype.DefaultShowMessage = UmbracoSpeechBubble.prototype.ShowMessage; 4 | 5 | UmbracoSpeechBubble.prototype.ShowMessage = function (icon, header, message, dontAutoHide) { 6 | header = header.replace(/error/i, "Info"); 7 | if ($('#' + this.id).is(':visible')) { 8 | jQuery("#" + this.id + "Message").append('

    ' + header + '

    ' + message + '

    '); 9 | } else { 10 | this.DefaultShowMessage(icon, header, message, dontAutoHide); 11 | } 12 | }; 13 | 14 | UmbSpeechBubble = new UmbracoSpeechBubble("defaultSpeechbubble"); 15 | }); -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Runtime.aspx: -------------------------------------------------------------------------------- 1 | <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Runtime.aspx.cs" Inherits="Moriyama.Workflow.Umbraco6.Web.Workflow.Runtime" %> 2 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Runtime.aspx.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Reflection; 3 | using System.Web.UI; 4 | using log4net; 5 | using Moriyama.Workflow.Interfaces.Application.Runtime; 6 | 7 | namespace Moriyama.Workflow.Umbraco6.Web.Workflow 8 | { 9 | public partial class Runtime : Page 10 | { 11 | private static readonly ILog Log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); 12 | 13 | public IWorkflowRuntime TheWorkflowRuntime { get; set; } 14 | 15 | protected void Page_Load(object sender, EventArgs e) 16 | { 17 | Log.Debug("Processing workflow runtime"); 18 | 19 | TheWorkflowRuntime.RunWorkflows(); 20 | 21 | Log.Debug("Done processing workflows"); 22 | 23 | } 24 | } 25 | } -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/Runtime.aspx.designer.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // 3 | // This code was generated by a tool. 4 | // 5 | // Changes to this file may cause incorrect behavior and will be lost if 6 | // the code is regenerated. 7 | // 8 | //------------------------------------------------------------------------------ 9 | 10 | namespace Moriyama.Workflow.Umbraco6.Web.Workflow { 11 | 12 | 13 | public partial class Runtime { 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/TabRefresh.ascx: -------------------------------------------------------------------------------- 1 | <%@ Control Language="C#" AutoEventWireup="true" CodeBehind="TabRefresh.ascx.cs" Inherits="Moriyama.Workflow.Umbraco6.Web.Workflow.TabRefresh" %> 2 | 3 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/TabRefresh.ascx.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using Moriyama.Workflow.Application.Reflection; 3 | 4 | namespace Moriyama.Workflow.Umbraco6.Web.Workflow 5 | { 6 | public partial class TabRefresh : System.Web.UI.UserControl 7 | { 8 | public Helper TheHelper { get; set; } 9 | 10 | protected void Page_Load(object sender, EventArgs e) 11 | { 12 | 13 | } 14 | } 15 | } -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/TabRefresh.ascx.designer.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // 3 | // This code was generated by a tool. 4 | // 5 | // Changes to this file may cause incorrect behavior and will be lost if 6 | // the code is regenerated. 7 | // 8 | //------------------------------------------------------------------------------ 9 | 10 | namespace Moriyama.Workflow.Umbraco6.Web.Workflow { 11 | 12 | 13 | public partial class TabRefresh { 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/config/workflow.domain.spring.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 7 | 8 | 11 | 12 | 13 | 14 | 17 | 18 | 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/config/workflow.globalisation.spring.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/config/workflow.spring.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/css/Controls.css: -------------------------------------------------------------------------------- 1 | .eventsListBox { 2 | height: 150px; 3 | } 4 | 5 | .wideSelect { 6 | width: 400px; 7 | } -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/css/Grid.css: -------------------------------------------------------------------------------- 1 |  2 | .trialMode { padding: 10px; border: 1px solid black; width: 95%; background: #dddddd; } 3 | 4 | div.workflow { margin-top: 15px; } 5 | 6 | table.workflow { width: 95%; } 7 | 8 | table.workflow th, td { padding: 8px; } 9 | table.workflow th { background-color: #cccccc; } -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/images/arrow_join.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darrenferguson/workflow-for-dot-net/076fd2360669c2f82ff879717eb3e5f1a5aaee9e/Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/images/arrow_join.png -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/images/arrow_switch.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darrenferguson/workflow-for-dot-net/076fd2360669c2f82ff879717eb3e5f1a5aaee9e/Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/images/arrow_switch.png -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/images/cog.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darrenferguson/workflow-for-dot-net/076fd2360669c2f82ff879717eb3e5f1a5aaee9e/Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/images/cog.png -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/images/email.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darrenferguson/workflow-for-dot-net/076fd2360669c2f82ff879717eb3e5f1a5aaee9e/Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/images/email.png -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/images/group_go.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darrenferguson/workflow-for-dot-net/076fd2360669c2f82ff879717eb3e5f1a5aaee9e/Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/images/group_go.png -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/images/images.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darrenferguson/workflow-for-dot-net/076fd2360669c2f82ff879717eb3e5f1a5aaee9e/Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/images/images.png -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/images/page_world.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darrenferguson/workflow-for-dot-net/076fd2360669c2f82ff879717eb3e5f1a5aaee9e/Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/images/page_world.png -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/images/stop.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darrenferguson/workflow-for-dot-net/076fd2360669c2f82ff879717eb3e5f1a5aaee9e/Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/images/stop.png -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/images/time.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darrenferguson/workflow-for-dot-net/076fd2360669c2f82ff879717eb3e5f1a5aaee9e/Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/images/time.png -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/images/user_go.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darrenferguson/workflow-for-dot-net/076fd2360669c2f82ff879717eb3e5f1a5aaee9e/Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/Workflow/images/user_go.png -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/config/404handlers.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/config/BaseRestExtensions.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 13 | 19 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/config/FileSystemProviders.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/config/Skinning.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/config/applications.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/config/feedProxy.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/config/log4net.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/config/metablogConfig.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/config/restExtensions.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 13 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/config/scripting.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/config/splashes/noNodes.aspx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darrenferguson/workflow-for-dot-net/076fd2360669c2f82ff879717eb3e5f1a5aaee9e/Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/config/splashes/noNodes.aspx -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/config/xsltExtensions.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/css/Designit_Green/Images/background.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darrenferguson/workflow-for-dot-net/076fd2360669c2f82ff879717eb3e5f1a5aaee9e/Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/css/Designit_Green/Images/background.jpg -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/css/Designit_Green/Images/blog-post-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darrenferguson/workflow-for-dot-net/076fd2360669c2f82ff879717eb3e5f1a5aaee9e/Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/css/Designit_Green/Images/blog-post-icon.png -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/css/Designit_Green/Images/feed-item-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darrenferguson/workflow-for-dot-net/076fd2360669c2f82ff879717eb3e5f1a5aaee9e/Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/css/Designit_Green/Images/feed-item-icon.png -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/css/Designit_Green/Images/footer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darrenferguson/workflow-for-dot-net/076fd2360669c2f82ff879717eb3e5f1a5aaee9e/Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/css/Designit_Green/Images/footer.png -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/css/Designit_Green/Images/header.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darrenferguson/workflow-for-dot-net/076fd2360669c2f82ff879717eb3e5f1a5aaee9e/Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/css/Designit_Green/Images/header.jpg -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/css/Designit_Green/Images/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darrenferguson/workflow-for-dot-net/076fd2360669c2f82ff879717eb3e5f1a5aaee9e/Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/css/Designit_Green/Images/logo.png -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/css/Designit_Green/Images/main.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darrenferguson/workflow-for-dot-net/076fd2360669c2f82ff879717eb3e5f1a5aaee9e/Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/css/Designit_Green/Images/main.png -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/css/Designit_Green/Images/nav-item-active.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darrenferguson/workflow-for-dot-net/076fd2360669c2f82ff879717eb3e5f1a5aaee9e/Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/css/Designit_Green/Images/nav-item-active.png -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/css/Designit_Green/Images/nav-item.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darrenferguson/workflow-for-dot-net/076fd2360669c2f82ff879717eb3e5f1a5aaee9e/Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/css/Designit_Green/Images/nav-item.png -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/css/Designit_Green/Images/nav.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darrenferguson/workflow-for-dot-net/076fd2360669c2f82ff879717eb3e5f1a5aaee9e/Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/css/Designit_Green/Images/nav.png -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/css/Designit_Green/Images/news-item-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darrenferguson/workflow-for-dot-net/076fd2360669c2f82ff879717eb3e5f1a5aaee9e/Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/css/Designit_Green/Images/news-item-icon.png -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/css/Designit_Green/Images/pattern.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darrenferguson/workflow-for-dot-net/076fd2360669c2f82ff879717eb3e5f1a5aaee9e/Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/css/Designit_Green/Images/pattern.png -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/css/Designit_Green/Images/rgbapng/00000033.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darrenferguson/workflow-for-dot-net/076fd2360669c2f82ff879717eb3e5f1a5aaee9e/Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/css/Designit_Green/Images/rgbapng/00000033.png -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/css/Designit_Green/Images/rgbapng/00000066.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darrenferguson/workflow-for-dot-net/076fd2360669c2f82ff879717eb3e5f1a5aaee9e/Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/css/Designit_Green/Images/rgbapng/00000066.png -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/css/Designit_Green/Images/rgbapng/00000099.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darrenferguson/workflow-for-dot-net/076fd2360669c2f82ff879717eb3e5f1a5aaee9e/Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/css/Designit_Green/Images/rgbapng/00000099.png -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/css/Designit_Green/Images/rgbapng/000000cc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darrenferguson/workflow-for-dot-net/076fd2360669c2f82ff879717eb3e5f1a5aaee9e/Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/css/Designit_Green/Images/rgbapng/000000cc.png -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/css/Designit_Green/Images/rgbapng/22ea5fcc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darrenferguson/workflow-for-dot-net/076fd2360669c2f82ff879717eb3e5f1a5aaee9e/Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/css/Designit_Green/Images/rgbapng/22ea5fcc.png -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/css/Designit_Green/Images/rgbapng/33333333.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darrenferguson/workflow-for-dot-net/076fd2360669c2f82ff879717eb3e5f1a5aaee9e/Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/css/Designit_Green/Images/rgbapng/33333333.png -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/css/Designit_Green/Images/rgbapng/ffffffb3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darrenferguson/workflow-for-dot-net/076fd2360669c2f82ff879717eb3e5f1a5aaee9e/Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/css/Designit_Green/Images/rgbapng/ffffffb3.png -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/css/dummy.txt: -------------------------------------------------------------------------------- 1 | This file is only here so that the containing folder will be included in the NuGet package, it is safe to delete. 2 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/default.aspx: -------------------------------------------------------------------------------- 1 | <%@ Page language="c#" Codebehind="default.aspx.cs" AutoEventWireup="True" Inherits="umbraco.UmbracoDefault" trace="true" validateRequest="false" %> 2 | 3 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/install/InstallerRestService.aspx: -------------------------------------------------------------------------------- 1 | <%@ Page Language="C#" AutoEventWireup="True" CodeBehind="InstallerRestService.aspx.cs" Inherits="Umbraco.Web.UI.Install.InstallerRestService" %> -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/install/Steps/license.ascx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darrenferguson/workflow-for-dot-net/076fd2360669c2f82ff879717eb3e5f1a5aaee9e/Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/install/Steps/license.ascx -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/install/Steps/theend.ascx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darrenferguson/workflow-for-dot-net/076fd2360669c2f82ff879717eb3e5f1a5aaee9e/Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/install/Steps/theend.ascx -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/install/Steps/welcome.ascx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darrenferguson/workflow-for-dot-net/076fd2360669c2f82ff879717eb3e5f1a5aaee9e/Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/install/Steps/welcome.ascx -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/install/Title.ascx: -------------------------------------------------------------------------------- 1 | <%@ Control Language="C#" AutoEventWireup="true" CodeBehind="Title.ascx.cs" Inherits="umbraco.presentation.install.Title" %> 2 | <%@ Import Namespace="Umbraco.Core.Configuration" %> 3 | Umbraco <%=UmbracoVersion.Current.ToString(3)%> Configuration Wizard -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/install/Utills/p.aspx: -------------------------------------------------------------------------------- 1 | <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="p.aspx.cs" Inherits="umbraco.presentation.install.utills.p" %> -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/macroScripts/dummy.txt: -------------------------------------------------------------------------------- 1 | This file is only here so that the containing folder will be included in the NuGet package, it is safe to delete. 2 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/masterpages/dummy.txt: -------------------------------------------------------------------------------- 1 | This file is only here so that the containing folder will be included in the NuGet package, it is safe to delete. 2 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/masterpages/umbHomepage.master: -------------------------------------------------------------------------------- 1 | <%@ Master Language="C#" MasterPageFile="~/masterpages/umbMaster.master" AutoEventWireup="true" %> 2 | 3 |
    4 | 5 |
    6 |
    -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/masterpages/umbTextpage.master: -------------------------------------------------------------------------------- 1 | <%@ Master Language="C#" MasterPageFile="~/masterpages/umbMaster.master" AutoEventWireup="true" %> 2 | 3 | 4 |
    5 | 6 |
    7 |

    8 |
    9 | 10 | 11 |
    12 | 13 | 16 | 17 | 18 |
    -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/media/dummy.txt: -------------------------------------------------------------------------------- 1 | This file is only here so that the containing folder will be included in the NuGet package, it is safe to delete. 2 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/patch notes.txt: -------------------------------------------------------------------------------- 1 | ALTER TABLE workflowinstance 2 | ADD Ended bit default 0 -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/scripts/dummy.txt: -------------------------------------------------------------------------------- 1 | This file is only here so that the containing folder will be included in the NuGet package, it is safe to delete. 2 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/usercontrols/dummy.txt: -------------------------------------------------------------------------------- 1 | This file is only here so that the containing folder will be included in the NuGet package, it is safe to delete. 2 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/xslt/dummy.txt: -------------------------------------------------------------------------------- 1 | This file is only here so that the containing folder will be included in the NuGet package, it is safe to delete. 2 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6.Web/xslt/umb2ndLevelNavigation.xslt: -------------------------------------------------------------------------------- 1 | 2 | ]> 3 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 30 | 31 | 32 | 33 | 34 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6/Application/Interfaces/IUmbracoWorkflowInstantiationCriteriaValidationService.cs: -------------------------------------------------------------------------------- 1 | using Moriyama.Workflow.Umbraco6.Domain; 2 | using umbraco.BusinessLogic; 3 | 4 | namespace Moriyama.Workflow.Umbraco6.Application.Interfaces 5 | { 6 | public interface IUmbracoWorkflowInstantiationCriteriaValidationService 7 | { 8 | bool IsCriteriaValid(UmbracoWorkflowInstantiationCriteria criteria, User u); 9 | 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6/Application/SpringApplicationEventListener.cs: -------------------------------------------------------------------------------- 1 | using Moriyama.Workflow.Interfaces.Application.Event; 2 | using Moriyama.Workflow.Umbraco6.Installer.Database; 3 | using Spring.Context; 4 | using Spring.Context.Events; 5 | 6 | namespace Moriyama.Workflow.Umbraco6.Application 7 | { 8 | public class SpringApplicationEventListener : IApplicationEventListener 9 | { 10 | 11 | public void HandleApplicationEvent(object sender, ApplicationEventArgs e) 12 | { 13 | 14 | 15 | 16 | var eventArgs = e as ContextRefreshedEventArgs; 17 | 18 | if (eventArgs == null) return; 19 | 20 | var args = eventArgs; 21 | 22 | if (args.Event != ContextEventArgs.ContextEvent.Refreshed) return; 23 | 24 | var ctx = (IApplicationContext)sender; 25 | var eventService = (IEventService)ctx.GetObject("EventService"); 26 | eventService.RegisterEvents(); 27 | } 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6/Domain/Extension.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using umbraco.cms.businesslogic; 3 | 4 | namespace Moriyama.Workflow.Umbraco6.Domain 5 | { 6 | public static class Extension 7 | { 8 | public static bool IsDocument(this CMSNode node) 9 | { 10 | return node.nodeObjectType == new Guid("C66BA18E-EAF3-4CFF-8A22-41B16D66A972"); 11 | } 12 | 13 | public static bool IsMedia(this CMSNode node) 14 | { 15 | return node.nodeObjectType == new Guid("B796F64C-1F99-4FFB-B886-4BF4BC011A9C"); 16 | } 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6/Domain/Task/BaseDecisionWorkflowTask.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using Moriyama.Workflow.Domain.Task; 3 | using Moriyama.Workflow.Interfaces.Domain; 4 | 5 | namespace Moriyama.Workflow.Umbraco6.Domain.Task 6 | { 7 | [Serializable] 8 | public abstract class BaseDecisionWorkflowTask : BaseWorkflowTask, IWorkflowTask, IDecisionWorkflowTask 9 | { 10 | public virtual string TransitionUrl 11 | { 12 | get { return "/Workflow/Transition.aspx?id={0}"; } 13 | } 14 | 15 | public virtual bool CanTransition(int instantiator) 16 | { 17 | return false; 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6/Domain/Task/BasicEmailWorkflowTask.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using Moriyama.Workflow.Interfaces.Application.Runtime; 3 | using Moriyama.Workflow.Interfaces.Domain; 4 | 5 | namespace Moriyama.Workflow.Umbraco6.Domain.Task 6 | { 7 | [Serializable] 8 | public class BasicEmailWorkflowTask : BaseEmailWorkflowTask, IWorkflowTask, IRunnableWorkflowTask 9 | { 10 | 11 | public string Body { get; set; } 12 | 13 | public override void Run(IWorkflowInstance workflowInstance, IWorkflowRuntime runtime) 14 | { 15 | base.Run(workflowInstance, runtime); 16 | 17 | var nodes = ((UmbracoWorkflowInstance) workflowInstance).CmsNodes; 18 | 19 | SendMail(Body + Environment.NewLine + GetAttachmentLinks(nodes)); 20 | runtime.Transition(workflowInstance, this, "done"); 21 | } 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6/Domain/Task/GroupDecisionWorkflowTask.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using Moriyama.Workflow.Interfaces.Domain; 4 | using umbraco.BusinessLogic; 5 | 6 | namespace Moriyama.Workflow.Umbraco6.Domain.Task 7 | { 8 | [Serializable] 9 | public class GroupDecisionWorkflowTask : BaseDecisionWorkflowTask, IWorkflowTask, IDecisionWorkflowTask 10 | { 11 | public IList UserTypes { get; set; } 12 | 13 | public GroupDecisionWorkflowTask() 14 | : base() 15 | { 16 | AvailableTransitions.Add("approve"); 17 | AvailableTransitions.Add("reject"); 18 | } 19 | 20 | public override bool CanTransition(int instantiator) 21 | { 22 | if (UserTypes != null) 23 | { 24 | if (UserTypes.Contains(User.GetCurrent().UserType.Id)) 25 | { 26 | return true; 27 | } 28 | } 29 | return false; 30 | } 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6/Domain/Task/UserDecisionWorkflowTask.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using Moriyama.Workflow.Interfaces.Domain; 4 | using umbraco.BusinessLogic; 5 | 6 | namespace Moriyama.Workflow.Umbraco6.Domain.Task 7 | { 8 | [Serializable] 9 | public class UserDecisionWorkflowTask : BaseDecisionWorkflowTask, IWorkflowTask, IDecisionWorkflowTask 10 | { 11 | public IList Users { get; set; } 12 | 13 | public UserDecisionWorkflowTask() 14 | : base() 15 | { 16 | AvailableTransitions.Add("approve"); 17 | AvailableTransitions.Add("reject"); 18 | } 19 | 20 | public override bool CanTransition(int instantiator) 21 | { 22 | if (Users != null) 23 | { 24 | if (Users.Contains(User.GetCurrent().Id)) 25 | { 26 | return true; 27 | } 28 | } 29 | return false; 30 | } 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6/Domain/UmbracoWorkflowConfiguration.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using Moriyama.Workflow.Domain; 4 | using Moriyama.Workflow.Interfaces.Domain; 5 | using umbraco.BusinessLogic; 6 | 7 | namespace Moriyama.Workflow.Umbraco6.Domain 8 | { 9 | [Serializable] 10 | public class UmbracoWorkflowConfiguration : WorkflowConfiguration 11 | { 12 | public IList InstantiatingEvents { get; set; } 13 | public bool CancelEvent { get; set; } 14 | 15 | public override IWorkflowInstance CreateInstance() 16 | { 17 | return new UmbracoWorkflowInstance 18 | { 19 | Name = Name, 20 | CurrentTask = StartTask, 21 | Tasks = Tasks, 22 | CmsNodes = new List(), 23 | Instantiator = User.GetCurrent().Id, 24 | Stash = new Dictionary() 25 | }; 26 | } 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6/Domain/UmbracoWorkflowInstance.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using Moriyama.Workflow.Domain; 4 | 5 | namespace Moriyama.Workflow.Umbraco6.Domain 6 | { 7 | [Serializable] 8 | public class UmbracoWorkflowInstance : WorkflowInstance 9 | { 10 | 11 | public int Instantiator { get; set; } 12 | public IList CmsNodes { get; set; } 13 | 14 | public IDictionary Stash { get; set; } 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6/Domain/UmbracoWorkflowInstantiationCriteria.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using Moriyama.Workflow.Domain; 4 | using Moriyama.Workflow.Interfaces.Domain; 5 | 6 | namespace Moriyama.Workflow.Umbraco6.Domain 7 | { 8 | 9 | [Serializable] 10 | public class UmbracoWorkflowInstantiationCriteria : WorkflowInstantiationCriteria, IWorkflowInstantiationCriteria 11 | { 12 | public string CriteriaOperand { get; set; } 13 | 14 | public bool AllowManualInstantiation { get; set; } 15 | 16 | public IList UserTypes 17 | { 18 | get; 19 | set; 20 | } 21 | 22 | public IList Users 23 | { 24 | get; 25 | set; 26 | } 27 | 28 | public IList DocumentTypes 29 | { 30 | get; 31 | set; 32 | } 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6/Installer/Resources/Config/Dashboard/Content.Dashboard.config: -------------------------------------------------------------------------------- 1 | 
    2 | 3 | content 4 | 5 | 6 | 7 | /usercontrols/fmworkflow/Instances.ascx 8 | 9 | 10 | 11 | 12 | /usercontrols/fmworkflow/RecentContent.ascx 13 | 14 | 15 |
    -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6/Installer/Resources/Config/Dashboard/Developer.Dashboard.config: -------------------------------------------------------------------------------- 1 | 
    2 | 3 | developer 4 | 5 | 6 | 7 | /usercontrols/fmworkflow/Configuration.ascx 8 | 9 | 10 | 11 | 12 | /usercontrols/fmworkflow/InstantiationCriteria.ascx 13 | 14 | 15 |
    -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6/Installer/Resources/Config/Log4Net.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6/Installer/Resources/Config/Web/Section.Log4Net.config: -------------------------------------------------------------------------------- 1 | 
    4 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6/Installer/Resources/Config/Web/SectionGroup.Spring.config: -------------------------------------------------------------------------------- 1 |  2 |
    5 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6/Installer/Resources/Config/Web/Spring.Context.Support.WebSupportModule.config: -------------------------------------------------------------------------------- 1 |  -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6/Installer/Resources/Config/Web/Spring.Context.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6/Installer/Resources/Config/Web/Spring.Web.Support.ContextMonitor.config: -------------------------------------------------------------------------------- 1 |  6 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6/Installer/Resources/Config/Web/Spring.Web.Support.PageHandlerFactory.config: -------------------------------------------------------------------------------- 1 |  6 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6/Installer/Resources/Sql/Ce/Install.sql: -------------------------------------------------------------------------------- 1 | CREATE TABLE workflowconfiguration ( 2 | id int PRIMARY KEY IDENTITY, 3 | name nvarchar(255) NOT NULL, 4 | typename nvarchar(255) NOT NULL, 5 | isconfigurationactive BIT NOT NULL DEFAULT 0, 6 | locked BIT NOT NULL DEFAULT 0); 7 | 8 | CREATE TABLE point( 9 | ownerId nvarchar(255) NOT NULL, 10 | x int NOT NULL, 11 | y int NOT NULL); 12 | 13 | CREATE TABLE workflowinstance( 14 | id int PRIMARY KEY IDENTITY, 15 | name nvarchar(255) NOT NULL, 16 | typename nvarchar(255) NOT NULL, 17 | instantiationtime datetime, 18 | running BIT NOT NULL DEFAULT 0, 19 | currenttask nvarchar(255)); 20 | 21 | CREATE TABLE workflowcriteria( 22 | id int PRIMARY KEY IDENTITY, 23 | name nvarchar(255) NOT NULL); -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6/Installer/Resources/Sql/MySql/Install.sql: -------------------------------------------------------------------------------- 1 | CREATE TABLE workflowconfiguration ( 2 | id int NOT NULL PRIMARY KEY AUTO_INCREMENT, 3 | name nvarchar(255) NOT NULL, 4 | typename nvarchar(255) NOT NULL, 5 | isconfigurationactive BIT NOT NULL DEFAULT 0, 6 | locked BIT NOT NULL DEFAULT 0); 7 | 8 | CREATE TABLE point( 9 | ownerId nvarchar(255) NOT NULL, 10 | x int NOT NULL, 11 | y int NOT NULL); 12 | 13 | CREATE TABLE workflowinstance( 14 | id int NOT NULL PRIMARY KEY AUTO_INCREMENT, 15 | name nvarchar(255) NOT NULL, 16 | typename nvarchar(255) NOT NULL, 17 | instantiationtime datetime, 18 | running BIT NOT NULL DEFAULT 0, 19 | currenttask nvarchar(255)); 20 | 21 | CREATE TABLE workflowcriteria( 22 | id int NOT NULL PRIMARY KEY AUTO_INCREMENT, 23 | name nvarchar(255) NOT NULL); -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6/Installer/Singleton.cs: -------------------------------------------------------------------------------- 1 | namespace Moriyama.Workflow.Umbraco6.Installer 2 | { 3 | public abstract class Singleton where TClassType : new() 4 | { 5 | static Singleton() 6 | { 7 | } 8 | 9 | private static readonly TClassType instance = new TClassType(); 10 | 11 | public static TClassType Instance 12 | { 13 | get 14 | { 15 | return instance; 16 | } 17 | } 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6/Task/Ui/TemplateEmailWithMediaWorkflowTaskEntityUi.cs: -------------------------------------------------------------------------------- 1 | using Moriyama.Workflow.Interfaces.Application; 2 | using Moriyama.Workflow.Interfaces.Ui; 3 | using Moriyama.Workflow.Umbraco6.Ui.Property; 4 | using Moriyama.Workflow.Umbraco6.Ui.WorkflowTaskUi; 5 | 6 | namespace Moriyama.Workflow.Umbraco6.Task.Ui 7 | { 8 | public class TemplateEmailWithMediaWorkflowTaskEntityUi : BaseEmailWorkflowTaskEntityUi, IWorkflowTaskEntityUi, IGlobalisable 9 | { 10 | public TemplateEmailWithMediaWorkflowTaskEntityUi() 11 | : base() 12 | { 13 | UiProperties.Add((IWorkflowUiProperty)CreateGlobalisedObject(typeof(TemplatePropertyUi))); 14 | } 15 | 16 | public override bool SupportsType(object o) 17 | { 18 | return o.GetType() == typeof(TemplateEmailWithMediaWorkflowTask); 19 | } 20 | 21 | public override string EntityName 22 | { 23 | get { return TheGlobalisationService.GetString("template_email_task_media_attached"); } 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6/Task/Ui/TemplateEmailWorkflowTaskEntityUi.cs: -------------------------------------------------------------------------------- 1 | using Moriyama.Workflow.Interfaces.Application; 2 | using Moriyama.Workflow.Interfaces.Ui; 3 | using Moriyama.Workflow.Umbraco6.Ui.Property; 4 | using Moriyama.Workflow.Umbraco6.Ui.WorkflowTaskUi; 5 | 6 | namespace Moriyama.Workflow.Umbraco6.Task.Ui 7 | { 8 | public class TemplateEmailWorkflowTaskEntityUi : BaseEmailWorkflowTaskEntityUi, IWorkflowTaskEntityUi, IGlobalisable 9 | { 10 | public TemplateEmailWorkflowTaskEntityUi() 11 | : base() 12 | { 13 | UiProperties.Add((IWorkflowUiProperty)CreateGlobalisedObject(typeof(TemplatePropertyUi))); 14 | } 15 | 16 | public override bool SupportsType(object o) 17 | { 18 | return o.GetType() == typeof(TemplateEmailWorkflowTask); 19 | } 20 | 21 | public override string EntityName 22 | { 23 | get { return TheGlobalisationService.GetString("template_email_task"); } 24 | } 25 | 26 | 27 | 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6/Task/UrlInstantiatorRestartWorkflowTask.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using Moriyama.Workflow.Interfaces.Domain; 3 | using Moriyama.Workflow.Umbraco6.Domain.Task; 4 | using umbraco.BusinessLogic; 5 | 6 | namespace Moriyama.Workflow.Umbraco6.Task 7 | { 8 | [Serializable] 9 | public class UrlInstantiatorRestartWorkflowTask : BaseDecisionWorkflowTask, IWorkflowTask, IDecisionWorkflowTask 10 | { 11 | public string Url { get; set; } 12 | 13 | public UrlInstantiatorRestartWorkflowTask() 14 | : base() 15 | { 16 | AvailableTransitions.Add("restart_workflow"); 17 | } 18 | 19 | public override bool CanTransition(int instantiator) 20 | { 21 | var userId = User.GetCurrent().Id; 22 | return userId == instantiator; 23 | } 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6/Ui/Controls/CriteriaOperandList.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Web.UI.WebControls; 3 | 4 | namespace Moriyama.Workflow.Umbraco6.Ui.Controls 5 | { 6 | public class CriteriaOperandList : DropDownList 7 | { 8 | 9 | private string _value; 10 | 11 | protected override void OnInit(EventArgs e) 12 | { 13 | base.OnInit(e); 14 | 15 | Items.Add(new ListItem("And", "and")); 16 | Items.Add(new ListItem("Or", "or")); 17 | 18 | if (_value == null) return; 19 | 20 | SelectedValue = _value; 21 | } 22 | 23 | public string GetValue() 24 | { 25 | return SelectedValue; 26 | } 27 | 28 | public void SetValue(string value) 29 | { 30 | _value = value; 31 | } 32 | } 33 | } -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6/Ui/Controls/UmbracoTemplateList.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Web.UI.WebControls; 3 | using umbraco.cms.businesslogic.template; 4 | 5 | namespace Moriyama.Workflow.Umbraco6.Ui.Controls 6 | { 7 | public class UmbracoTemplateList : DropDownList 8 | { 9 | private int _value; 10 | 11 | protected override void OnInit(EventArgs e) 12 | { 13 | base.OnInit(e); 14 | 15 | DataSource = Template.GetAllAsList(); 16 | 17 | DataValueField = "Id"; 18 | DataTextField = "Alias"; 19 | 20 | DataBind(); 21 | 22 | SelectedValue = _value.ToString(); 23 | } 24 | 25 | public int GetValue() 26 | { 27 | return Convert.ToInt32(SelectedValue); 28 | } 29 | 30 | public void SetValue(int value) 31 | { 32 | _value = value; 33 | } 34 | } 35 | } -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6/Ui/Controls/UmbracoUserListSingle.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Web.UI.WebControls; 3 | using umbraco.BusinessLogic; 4 | 5 | namespace Moriyama.Workflow.Umbraco6.Ui.Controls 6 | { 7 | public class UmbracoUserListSingle : DropDownList 8 | { 9 | private int _value; 10 | 11 | protected override void OnInit(EventArgs e) 12 | { 13 | base.OnInit(e); 14 | 15 | DataSource = User.getAll(); 16 | DataValueField = "Id"; 17 | DataTextField = "Name"; 18 | 19 | DataBind(); 20 | 21 | SelectedValue = _value.ToString(); 22 | } 23 | 24 | public int GetValue() 25 | { 26 | return Convert.ToInt32(SelectedValue); 27 | } 28 | 29 | public void SetValue(int value) 30 | { 31 | _value = value; 32 | } 33 | } 34 | } -------------------------------------------------------------------------------- /Moriyama.Workflow.Umbraco6/Moriyama.Workflow.Umbraco6/Ui/WorkflowTaskUi/BasicEmailWorkflowTaskEntityUi.cs: -------------------------------------------------------------------------------- 1 | using Moriyama.Workflow.Interfaces.Application; 2 | using Moriyama.Workflow.Interfaces.Ui; 3 | using Moriyama.Workflow.Umbraco6.Domain.Task; 4 | using Moriyama.Workflow.Umbraco6.Ui.Property.Email; 5 | 6 | namespace Moriyama.Workflow.Umbraco6.Ui.WorkflowTaskUi 7 | { 8 | public class BasicEmailWorkflowTaskEntityUi : BaseEmailWorkflowTaskEntityUi, IWorkflowTaskEntityUi, IGlobalisable 9 | { 10 | 11 | public BasicEmailWorkflowTaskEntityUi() 12 | : base() 13 | { 14 | UiProperties.Add((IWorkflowUiProperty)CreateGlobalisedObject(typeof(BodyPropertyUi))); 15 | } 16 | 17 | public override bool SupportsType(object o) 18 | { 19 | return o.GetType() == typeof(BasicEmailWorkflowTask); 20 | } 21 | } 22 | } -------------------------------------------------------------------------------- /Moriyama.Workflow/.nuget/NuGet.Config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow.vsmdi: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Application/Exception/WorkflowInstanceAlreadyStartedException.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace Moriyama.Workflow.Application.Exception 4 | { 5 | [Serializable] 6 | public class WorkflowInstanceAlreadyStartedException : System.Exception 7 | { 8 | public WorkflowInstanceAlreadyStartedException(string message) : base(message) { } 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Application/Exception/WorkflowInstanceHasNoStartTaskException.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace Moriyama.Workflow.Application.Exception 4 | { 5 | [Serializable] 6 | public class WorkflowInstanceHasNoStartTaskException : System.Exception 7 | { 8 | public WorkflowInstanceHasNoStartTaskException(string message) : base(message) { } 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Application/Exception/WorkflowInstanceHasTooManyStartTasksException.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace Moriyama.Workflow.Application.Exception 4 | { 5 | [Serializable] 6 | public class WorkflowInstanceHasTooManyStartTasksException : System.Exception 7 | { 8 | public WorkflowInstanceHasTooManyStartTasksException(string message) : base(message) { } 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Application/Exception/WorkflowTaskInvalidTransitionException.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace Moriyama.Workflow.Application.Exception 4 | { 5 | [Serializable] 6 | public class WorkflowTaskInvalidTransitionException : System.Exception 7 | { 8 | public WorkflowTaskInvalidTransitionException(string message) : base(message) { } 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Application/GuidPool.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Reflection; 4 | using log4net; 5 | using Moriyama.Workflow.Interfaces.Application; 6 | 7 | namespace Moriyama.Workflow.Application 8 | { 9 | public class GuidPool : IGuidPool 10 | { 11 | protected static readonly ILog Log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); 12 | 13 | #region singleton 14 | private static readonly GuidPool Pool = new GuidPool(); 15 | 16 | public static GuidPool Instance 17 | { 18 | get { return Pool; } 19 | } 20 | #endregion 21 | 22 | public IEnumerable CreateGuids(int count) 23 | { 24 | IList guids = new List(); 25 | for (var a = 0; a < count; a++) 26 | { 27 | guids.Add(Guid.NewGuid().ToString()); 28 | } 29 | return guids; 30 | } 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Domain/Designer/Point.cs: -------------------------------------------------------------------------------- 1 | using Moriyama.Workflow.Interfaces.Domain.Designer; 2 | 3 | namespace Moriyama.Workflow.Domain.Designer 4 | { 5 | public class Point : IPoint 6 | { 7 | public string OwnerId { get; set; } 8 | public int X { get; set; } 9 | public int Y { get; set; } 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Domain/Event/EventInformation.cs: -------------------------------------------------------------------------------- 1 | using Moriyama.Workflow.Interfaces.Domain.Event; 2 | 3 | namespace Moriyama.Workflow.Domain.Event 4 | { 5 | public class EventInformation : IEventInformation 6 | { 7 | public string FullName 8 | { 9 | 10 | get; 11 | set; 12 | } 13 | 14 | public string TypeName 15 | { 16 | get; 17 | set; 18 | } 19 | 20 | public string TypeAssemblyQualifiedName 21 | { 22 | get; 23 | set; 24 | } 25 | 26 | public string EventName 27 | { 28 | get; 29 | set; 30 | } 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Domain/Event/EventInformationCollection.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using Moriyama.Workflow.Interfaces.Domain.Event; 3 | 4 | namespace Moriyama.Workflow.Domain.Event 5 | { 6 | public class EventInformationCollection : IEventInformationCollection 7 | { 8 | public IList Events 9 | { 10 | get; 11 | set; 12 | } 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Domain/Factory/WorkflowInstantiationCriteriaFactory.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using Moriyama.Workflow.Interfaces.Domain; 3 | using Moriyama.Workflow.Interfaces.Domain.Factory; 4 | 5 | namespace Moriyama.Workflow.Domain.Factory 6 | { 7 | public class WorkflowInstantiationCriteriaFactory : IWorkflowInstantiationCriteriaFactory 8 | { 9 | private static readonly WorkflowInstantiationCriteriaFactory Factory = new WorkflowInstantiationCriteriaFactory(); 10 | 11 | public static WorkflowInstantiationCriteriaFactory Instance 12 | { 13 | get { return Factory; } 14 | } 15 | 16 | private WorkflowInstantiationCriteriaFactory() { } 17 | 18 | public IWorkflowInstantiationCriteria Create(string name) 19 | { 20 | var w = new WorkflowInstantiationCriteria 21 | 22 | { Name = name, 23 | Events = new List() 24 | }; 25 | 26 | return w; 27 | } 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Domain/Task/BaseWorkflowTask.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Reflection; 4 | using Moriyama.Workflow.Interfaces.Domain; 5 | using log4net; 6 | 7 | namespace Moriyama.Workflow.Domain.Task 8 | { 9 | [Serializable] 10 | public abstract class BaseWorkflowTask : IWorkflowTask 11 | { 12 | protected static readonly ILog Log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); 13 | 14 | protected BaseWorkflowTask() 15 | { 16 | AvailableTransitions = new List(); 17 | Transitions = new Dictionary(); 18 | } 19 | 20 | public Guid Id { get; set; } 21 | 22 | public string Name { get; set; } 23 | public bool IsStartTask { get; set; } 24 | 25 | public string Description { get; set; } 26 | 27 | public IList AvailableTransitions { get; set; } 28 | public IDictionary Transitions { get; set; } 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Domain/Task/EndWorkflowTask.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using Moriyama.Workflow.Interfaces.Domain; 3 | 4 | namespace Moriyama.Workflow.Domain.Task 5 | { 6 | [Serializable] 7 | public class EndWorkflowTask : BaseWorkflowTask, IWorkflowTask 8 | { 9 | 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Domain/Task/WaitUntilTimeWorkflowTask.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using Moriyama.Workflow.Interfaces.Domain; 3 | 4 | namespace Moriyama.Workflow.Domain.Task 5 | { 6 | [Serializable] 7 | public class WaitUntilTimeWorkflowTask : BaseWorkflowTask, IDelayWorkflowTask 8 | { 9 | public WaitUntilTimeWorkflowTask() 10 | : base() 11 | { 12 | AvailableTransitions.Add("done"); 13 | } 14 | 15 | public DateTime StartTime 16 | { 17 | get; set; 18 | } 19 | 20 | public int Hour { get; set; } 21 | public int Minute { get; set; } 22 | 23 | public bool IsComplete() 24 | { 25 | var now = DateTime.Now; 26 | return Hour >= now.Hour && Minute >= now.Minute; 27 | } 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Domain/TaskTransition.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using Moriyama.Workflow.Interfaces.Domain; 3 | 4 | namespace Moriyama.Workflow.Domain 5 | { 6 | class TaskTransition : ITaskTransition 7 | { 8 | public string TransitonName { get; set; } 9 | public Guid To { get; set; } 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Domain/WorkflowInstantiationCriteria.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using Moriyama.Workflow.Interfaces.Domain; 4 | 5 | namespace Moriyama.Workflow.Domain 6 | { 7 | [Serializable] 8 | public class WorkflowInstantiationCriteria : IWorkflowInstantiationCriteria 9 | { 10 | public int Id 11 | { 12 | get; 13 | set; 14 | } 15 | 16 | public string Name 17 | { 18 | get; 19 | set; 20 | } 21 | 22 | public IList Events 23 | { 24 | get; 25 | set; 26 | } 27 | 28 | public bool CancelEvent 29 | { 30 | get; 31 | set; 32 | } 33 | 34 | public bool Active 35 | { 36 | get; 37 | set; 38 | } 39 | 40 | public int WorkflowConfiguration 41 | { 42 | get; 43 | set; 44 | } 45 | } 46 | } 47 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Infrastructure/Repository.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.Serialization; 3 | using System.Runtime.Serialization.Formatters.Binary; 4 | using Moriyama.Workflow.Interfaces.Infrastructure; 5 | using log4net; 6 | 7 | namespace Moriyama.Workflow.Infrastructure 8 | { 9 | public abstract class Repository 10 | { 11 | 12 | public IStorage Storage { get; set; } 13 | public IDatabaseHelper DatabaseHelper { get; set; } 14 | 15 | protected IFormatter Formatter = new BinaryFormatter(); 16 | 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Abstract/Singleton.cs: -------------------------------------------------------------------------------- 1 | namespace Moriyama.Workflow.Interfaces.Abstract 2 | { 3 | public abstract class Singleton where TClassType : new() 4 | { 5 | static Singleton() 6 | { 7 | } 8 | 9 | private static readonly TClassType instance = new TClassType(); 10 | 11 | public static TClassType Instance 12 | { 13 | get 14 | { 15 | return instance; 16 | } 17 | } 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Application/Event/IEventInfoService.cs: -------------------------------------------------------------------------------- 1 | using Moriyama.Workflow.Interfaces.Domain.Event; 2 | 3 | namespace Moriyama.Workflow.Interfaces.Application.Event 4 | { 5 | public interface IEventInfoService 6 | { 7 | IEventInformationCollection EventInformation { get; set; } 8 | IEventInformation GetByFullName(string name); 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Application/Event/IEventService.cs: -------------------------------------------------------------------------------- 1 | namespace Moriyama.Workflow.Interfaces.Application.Event 2 | { 3 | public interface IEventService 4 | { 5 | void RegisterEvents(); 6 | void OnEvent(object sender, string eventName, object[] args); 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Application/IGlobalisable.cs: -------------------------------------------------------------------------------- 1 | namespace Moriyama.Workflow.Interfaces.Application 2 | { 3 | public interface IGlobalisable 4 | { 5 | IGlobalisationService TheGlobalisationService { get; set; } 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Application/IGlobalisationService.cs: -------------------------------------------------------------------------------- 1 | namespace Moriyama.Workflow.Interfaces.Application 2 | { 3 | public interface IGlobalisationService 4 | { 5 | string GetString(string key); 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Application/IGuidPool.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | 3 | namespace Moriyama.Workflow.Interfaces.Application 4 | { 5 | public interface IGuidPool 6 | { 7 | IEnumerable CreateGuids(int count); 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Application/IPointService.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using Moriyama.Workflow.Interfaces.Domain.Designer; 3 | 4 | namespace Moriyama.Workflow.Interfaces.Application 5 | { 6 | public interface IPointService 7 | { 8 | void DeletePoints(IEnumerable pointIds); 9 | void AddPoint(string pointId, int top, int left); 10 | IEnumerable GetPoints(IEnumerable pointIds); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Application/IWorkflowInstanceService.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using Moriyama.Workflow.Interfaces.Domain; 3 | 4 | namespace Moriyama.Workflow.Interfaces.Application 5 | { 6 | public interface IWorkflowInstanceService 7 | { 8 | IList ListInstances(); 9 | 10 | IWorkflowInstance Instantiate(int workflowId); 11 | IWorkflowInstance Instantiate(int workflowId, string comment); 12 | 13 | IWorkflowInstance Instantiate(int workflowId, IDictionary properties); 14 | 15 | void DeleteWorkflowInstance(int id); 16 | void Start(int workflowInstanceId); 17 | void Update(IWorkflowInstance inst); 18 | IWorkflowInstance GetInstance(int workflowInstanceId); 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Application/IWorkflowInstantiationCriteriaService.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using Moriyama.Workflow.Interfaces.Domain; 3 | 4 | namespace Moriyama.Workflow.Interfaces.Application 5 | { 6 | public interface IWorkflowInstantiationCriteriaService 7 | { 8 | void CreateWorkflowInstantiationCriteria(string name); 9 | IList List(); 10 | 11 | IWorkflowInstantiationCriteria GetCriteria(int id); 12 | void Delete(int id); 13 | 14 | void Save(IWorkflowInstantiationCriteria workflowInstantiationCriteria); 15 | void SetConfigurationProperties(int criteriaId, IDictionary properties); 16 | 17 | IEnumerable GetCriteriaForEvents(string eventName); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Application/Runtime/IWorkflowRuntime.cs: -------------------------------------------------------------------------------- 1 | using Moriyama.Workflow.Interfaces.Domain; 2 | 3 | namespace Moriyama.Workflow.Interfaces.Application.Runtime 4 | { 5 | public interface IWorkflowRuntime 6 | { 7 | void Start(IWorkflowInstance workflow); 8 | 9 | void Transition(IWorkflowInstance workflow, IWorkflowTask workflowTask, string transitionName); 10 | void Transition(IWorkflowInstance workflow, IWorkflowTask workflowTask, string transitionName, string comment); 11 | 12 | void RunWorkflows(); 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Application/Runtime/IWorkflowTaskTransitionService.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using Moriyama.Workflow.Interfaces.Domain; 3 | 4 | namespace Moriyama.Workflow.Interfaces.Application.Runtime 5 | { 6 | public interface IWorkflowTaskTransitionService 7 | { 8 | IWorkflowInstance GetWorkflowInstance(int workflowInstanceId); 9 | IDictionary GetTransitions(IWorkflowInstance instance); 10 | 11 | void Transition(IWorkflowInstance instance, string transiton); 12 | void Transition(IWorkflowInstance instance, string transition, string comment); 13 | 14 | bool CanTransition(IWorkflowInstance instance); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Domain/Designer/IPoint.cs: -------------------------------------------------------------------------------- 1 | namespace Moriyama.Workflow.Interfaces.Domain.Designer 2 | { 3 | public interface IPoint 4 | { 5 | string OwnerId { get; set; } 6 | int X { get; set; } 7 | int Y { get; set; } 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Domain/Designer/IRelativePoint.cs: -------------------------------------------------------------------------------- 1 | namespace Moriyama.Workflow.Interfaces.Domain.Designer 2 | { 3 | public interface IRelativePoint : IPoint 4 | { 5 | string Unit { get; set; } 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Domain/Event/Factory/IEventInformationCollectionFactory.cs: -------------------------------------------------------------------------------- 1 | namespace Moriyama.Workflow.Interfaces.Domain.Event.Factory 2 | { 3 | public interface IEventInformationCollectionFactory 4 | { 5 | IEventInformationCollection Create(); 6 | IEventInformationCollection Create(string filter); 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Domain/Event/IEventInformation.cs: -------------------------------------------------------------------------------- 1 | namespace Moriyama.Workflow.Interfaces.Domain.Event 2 | { 3 | public interface IEventInformation 4 | { 5 | string FullName { get; set; } 6 | string TypeName { get; set; } 7 | string TypeAssemblyQualifiedName { get; set; } 8 | string EventName { get; set; } 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Domain/Event/IEventInformationCollection.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | 3 | namespace Moriyama.Workflow.Interfaces.Domain.Event 4 | { 5 | public interface IEventInformationCollection 6 | { 7 | IList Events { get; set; } 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Domain/Factory/IWorkflowConfigurationFactory.cs: -------------------------------------------------------------------------------- 1 | namespace Moriyama.Workflow.Interfaces.Domain.Factory 2 | { 3 | public interface IWorkflowConfigurationFactory 4 | { 5 | IWorkflowConfiguration Create(string typeSpec, string name); 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Domain/Factory/IWorkflowInstantiationCriteriaFactory.cs: -------------------------------------------------------------------------------- 1 | namespace Moriyama.Workflow.Interfaces.Domain.Factory 2 | { 3 | public interface IWorkflowInstantiationCriteriaFactory 4 | { 5 | IWorkflowInstantiationCriteria Create(string name); 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Domain/Factory/IWorkflowTaskFactory.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace Moriyama.Workflow.Interfaces.Domain.Factory 4 | { 5 | public interface IWorkflowTaskFactory 6 | { 7 | IWorkflowTask CreateTask(string typeDesc); 8 | IWorkflowTask CreateTask(string name, string typeDesc); 9 | IWorkflowTask CreateTask(Type t); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Domain/IDecisionWorkflowTask.cs: -------------------------------------------------------------------------------- 1 | namespace Moriyama.Workflow.Interfaces.Domain 2 | { 3 | public interface IDecisionWorkflowTask 4 | { 5 | string TransitionUrl { get; } 6 | bool CanTransition(int instantiator); 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Domain/IDelayWorkflowTask.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace Moriyama.Workflow.Interfaces.Domain 4 | { 5 | public interface IDelayWorkflowTask : IWorkflowTask 6 | { 7 | DateTime StartTime { get; set; } 8 | bool IsComplete(); 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Domain/IRunnableWorkflowTask.cs: -------------------------------------------------------------------------------- 1 | using Moriyama.Workflow.Interfaces.Application.Runtime; 2 | 3 | namespace Moriyama.Workflow.Interfaces.Domain 4 | { 5 | public interface IRunnableWorkflowTask : IWorkflowTask 6 | { 7 | void Run(IWorkflowInstance workflowInstance, IWorkflowRuntime runtime); 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Domain/ITaskTransition.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace Moriyama.Workflow.Interfaces.Domain 4 | { 5 | public interface ITaskTransition 6 | { 7 | string TransitonName { get; set; } 8 | Guid To { get; set; } 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Domain/IWorkflow.cs: -------------------------------------------------------------------------------- 1 | namespace Moriyama.Workflow.Interfaces.Domain 2 | { 3 | public interface IWorkflow 4 | { 5 | int Id { get; set; } 6 | string Name { get; set; } 7 | } 8 | } -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Domain/IWorkflowConfiguration.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | 4 | namespace Moriyama.Workflow.Interfaces.Domain 5 | { 6 | public interface IWorkflowConfiguration : IWorkflow 7 | { 8 | bool IsConfigurationActive { get; set; } 9 | bool IsLocked { get;set; } 10 | string TypeName { get; set; } 11 | 12 | IWorkflowTask StartTask { get; set; } 13 | List Tasks { get; set; } 14 | 15 | void AddTask(IWorkflowTask task); 16 | void UpdateTask(IWorkflowTask task); 17 | void RemoveTask(Guid taskId); 18 | void RemoveTasks(); 19 | 20 | void AddTransition(string name, Guid srcTaskId, Guid destTaskId); 21 | void RemoveTransition(string name, Guid srcTaskId); 22 | void RemoveTransitions(); 23 | 24 | IWorkflowInstance CreateInstance(); 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Domain/IWorkflowInstance.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | 4 | namespace Moriyama.Workflow.Interfaces.Domain 5 | { 6 | public interface IWorkflowInstance : IWorkflow 7 | { 8 | string Comment { get; set; } 9 | string Flags { get; set; } 10 | 11 | DateTime InstantiationTime { get; set; } 12 | 13 | DateTime StartTime { get; set; } 14 | DateTime EndTime { get; set; } 15 | 16 | string TypeName { get; set; } 17 | 18 | bool Started { get; set; } 19 | bool Ended { get; set; } 20 | 21 | IWorkflowTask CurrentTask { get; set; } 22 | IList Tasks { get; } 23 | 24 | IList TransitionHistory { get; } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Domain/IWorkflowInstantiationCriteria.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | 3 | namespace Moriyama.Workflow.Interfaces.Domain 4 | { 5 | public interface IWorkflowInstantiationCriteria : IWorkflow 6 | { 7 | IList Events { get; set; } 8 | bool CancelEvent { get; set; } 9 | bool Active { get; set; } 10 | int WorkflowConfiguration { get; set; } 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Domain/IWorkflowInstantiator.cs: -------------------------------------------------------------------------------- 1 | namespace Moriyama.Workflow.Interfaces.Domain 2 | { 3 | public interface IWorkflowInstantiator 4 | { 5 | IWorkflowInstance CreateInstance(); 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Domain/IWorkflowTask.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | 4 | namespace Moriyama.Workflow.Interfaces.Domain 5 | { 6 | public interface IWorkflowTask 7 | { 8 | Guid Id { get; set; } 9 | string Name { get; set; } 10 | string Description { get; } 11 | bool IsStartTask { get; } 12 | 13 | IList AvailableTransitions { get; } 14 | IDictionary Transitions { get; set; } 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Infrastructure/DatabaseHelper/Factory/IDatabaseHelperFactory.cs: -------------------------------------------------------------------------------- 1 | namespace Moriyama.Workflow.Interfaces.Infrastructure.DatabaseHelper.Factory 2 | { 3 | public interface IDatabaseHelperFactory 4 | { 5 | IDatabaseHelper CreateDatabaseHelper(string assemblyQualifiedName); 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Infrastructure/IConfigurationWorkflowRepository.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using Moriyama.Workflow.Interfaces.Domain; 3 | 4 | namespace Moriyama.Workflow.Interfaces.Infrastructure 5 | { 6 | public interface IConfigurationWorkflowRepository 7 | { 8 | IList Workflows { get; } 9 | void Persist(IWorkflowConfiguration worfkflow); 10 | IWorkflowConfiguration RestoreState(IWorkflowConfiguration worfkflow); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Infrastructure/IConnectionStringProvider.cs: -------------------------------------------------------------------------------- 1 | namespace Moriyama.Workflow.Interfaces.Infrastructure 2 | { 3 | public interface IConnectionStringProvider 4 | { 5 | string GetConncetionString(); 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Infrastructure/IDatabaseHelper.cs: -------------------------------------------------------------------------------- 1 | using System.Data.Common; 2 | 3 | namespace Moriyama.Workflow.Interfaces.Infrastructure 4 | { 5 | public interface IDatabaseHelper 6 | { 7 | string IdentityQuery { get; } 8 | 9 | DbTransaction BeginTransaction(); 10 | 11 | DbCommand CreateCommand(string text); 12 | DbParameter CreateParameter(string name, object value); 13 | 14 | void CloseConnection(); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Infrastructure/IDesignerPointRepository.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | 3 | namespace Moriyama.Workflow.Interfaces.Infrastructure 4 | { 5 | public interface IDesignerPointRepository 6 | { 7 | IList List(TK id); 8 | IList List(IEnumerable ids); 9 | void Create(TD saveObj); 10 | void Delete(TK id); 11 | void Delete(IEnumerable ids); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Infrastructure/IRepository.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | 3 | namespace Moriyama.Workflow.Interfaces.Infrastructure 4 | { 5 | public interface IRepository 6 | { 7 | IList List(); 8 | TD GetById(TK id); 9 | TD RestoreState(TD obj); 10 | 11 | void Create(TD saveObj); 12 | void Update(TD saveObj); 13 | void Delete(TD delObj); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Infrastructure/IStorage.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | 3 | namespace Moriyama.Workflow.Interfaces.Infrastructure 4 | { 5 | public interface IStorage 6 | { 7 | StreamReader GetReader(string identifier); 8 | StreamWriter GetWriter(string identifier); 9 | void Delete(string identifier); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Infrastructure/IWorkflowInstanceRepository.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using Moriyama.Workflow.Interfaces.Domain; 3 | 4 | namespace Moriyama.Workflow.Interfaces.Infrastructure 5 | { 6 | public interface IWorkflowInstanceRepository 7 | { 8 | IList Workflows { get; } 9 | void Persist(IWorkflowInstance worfkflow); 10 | IWorkflowInstance RestoreState(IWorkflowInstance worfkflow); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Ui/Adapter/IPointCollection.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | 3 | namespace Moriyama.Workflow.Interfaces.Ui.Adapter 4 | { 5 | public interface IPointCollection 6 | { 7 | IDictionary Points { get; } 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Ui/Adapter/ITaskInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | 3 | namespace Moriyama.Workflow.Interfaces.Ui.Adapter 4 | { 5 | public interface ITaskInfo 6 | { 7 | string Name { get; } 8 | string Description { get; } 9 | string TypeName { get; } 10 | string AssemblyQualifiedTypeName { get; } 11 | string Id { get; } 12 | int Top { get; } 13 | int Left { get; } 14 | bool IsStartTask { get; } 15 | IDictionary CustomProperties { get; } 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Ui/Adapter/ITaskInfoCollection.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | 3 | namespace Moriyama.Workflow.Interfaces.Ui.Adapter 4 | { 5 | public interface ITaskInfoCollection 6 | { 7 | IList Tasks { get; } 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Ui/Adapter/ITransitionInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Moriyama.Workflow.Interfaces.Ui.Adapter 2 | { 3 | public interface ITransitionInfo 4 | { 5 | string Source { get; } 6 | string Target { get; } 7 | string Transition { get; } 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Ui/Adapter/ITransitionInfoCollection.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | 3 | namespace Moriyama.Workflow.Interfaces.Ui.Adapter 4 | { 5 | public interface ITransitionInfoCollection 6 | { 7 | IList Transitions { get; } 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Ui/Adapter/IUiPoint.cs: -------------------------------------------------------------------------------- 1 | namespace Moriyama.Workflow.Interfaces.Ui.Adapter 2 | { 3 | public interface IUiPoint 4 | { 5 | int Top { get; } 6 | int Left { get; } 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Ui/Adapter/IUiWorkflowTask.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using Moriyama.Workflow.Interfaces.Domain; 3 | 4 | namespace Moriyama.Workflow.Interfaces.Ui.Adapter 5 | { 6 | public interface IUiWorkflowTask : IWorkflowTask 7 | { 8 | string TypeName { get; } 9 | string AssemblyQualifiedTypeName { get; } 10 | 11 | int Top { get; } 12 | int Left { get; } 13 | 14 | string Class { get; } 15 | 16 | IDictionary TransitionDescriptions { get; } 17 | IDictionary CustomProperties { get; } 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Ui/Adapter/IUiWorkflowTaskCollection.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | 3 | namespace Moriyama.Workflow.Interfaces.Ui.Adapter 4 | { 5 | public interface IUiWorkflowTaskCollection 6 | { 7 | IDictionary UiTasks { get; } 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Ui/Adapter/IWorkflowTaskCollectionUiAdapter.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | 3 | namespace Moriyama.Workflow.Interfaces.Ui.Adapter 4 | { 5 | public interface IWorkflowTaskCollectionUiAdapter 6 | { 7 | IDictionary Tasks { get; set; } 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Ui/Adapter/IWorkflowTaskUiAdapter.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | 3 | namespace Moriyama.Workflow.Interfaces.Ui.Adapter 4 | { 5 | public interface IWorkflowTaskUiAdapter 6 | { 7 | string Name { get; } 8 | string TypeName { get; set; } 9 | string AssemblyQualifiedTypeName { get; set; } 10 | string Class { get; } 11 | bool IsStartTask { get; } 12 | 13 | int AvailableTransitions { get; } 14 | IDictionary TransitionDescriptions { get; } 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Ui/Factory/IPointCollectionFactory.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using Moriyama.Workflow.Interfaces.Domain.Designer; 3 | using Moriyama.Workflow.Interfaces.Ui.Adapter; 4 | 5 | namespace Moriyama.Workflow.Interfaces.Ui.Factory 6 | { 7 | public interface IPointCollectionFactory 8 | { 9 | IPointCollection Create(IEnumerable points); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Ui/Factory/ITaskInfoCollectionFactory.cs: -------------------------------------------------------------------------------- 1 | using Moriyama.Workflow.Interfaces.Ui.Adapter; 2 | 3 | namespace Moriyama.Workflow.Interfaces.Ui.Factory 4 | { 5 | public interface ITaskInfoCollectionFactory 6 | { 7 | ITaskInfoCollection Parse(string json); 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Ui/Factory/ITaskInfoFactory.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using Moriyama.Workflow.Interfaces.Ui.Adapter; 3 | 4 | namespace Moriyama.Workflow.Interfaces.Ui.Factory 5 | { 6 | public interface ITaskInfoFactory 7 | { 8 | ITaskInfo Create(IDictionary dict); 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Ui/Factory/ITransitionInfoCollectionFactory.cs: -------------------------------------------------------------------------------- 1 | using Moriyama.Workflow.Interfaces.Ui.Adapter; 2 | 3 | namespace Moriyama.Workflow.Interfaces.Ui.Factory 4 | { 5 | public interface ITransitionInfoCollectionFactory 6 | { 7 | ITransitionInfoCollection Parse(string json); 8 | } 9 | } -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Ui/Factory/ITransitionInfoFactory.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using Moriyama.Workflow.Interfaces.Ui.Adapter; 3 | 4 | namespace Moriyama.Workflow.Interfaces.Ui.Factory 5 | { 6 | public interface ITransitionInfoFactory 7 | { 8 | ITransitionInfo Create(IDictionary dict); 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Ui/Factory/IUiWorkflowTaskCollectionFactory.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using Moriyama.Workflow.Interfaces.Domain; 3 | using Moriyama.Workflow.Interfaces.Ui.Adapter; 4 | 5 | namespace Moriyama.Workflow.Interfaces.Ui.Factory 6 | { 7 | public interface IUiWorkflowTaskCollectionFactory 8 | { 9 | IUiWorkflowTaskCollection Create(IEnumerable tasks, IPointCollection pointCollection); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Ui/Factory/IUiWorkflowTaskFactory.cs: -------------------------------------------------------------------------------- 1 | using Moriyama.Workflow.Interfaces.Domain; 2 | using Moriyama.Workflow.Interfaces.Ui.Adapter; 3 | 4 | namespace Moriyama.Workflow.Interfaces.Ui.Factory 5 | { 6 | public interface IUiWorkflowTaskFactory 7 | { 8 | IUiWorkflowTask Create(IWorkflowTask task, IUiPoint point); 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Ui/Factory/IWorkflowTaskUiAdapterFactory.cs: -------------------------------------------------------------------------------- 1 | using Moriyama.Workflow.Interfaces.Domain; 2 | using Moriyama.Workflow.Interfaces.Ui.Adapter; 3 | 4 | namespace Moriyama.Workflow.Interfaces.Ui.Factory 5 | { 6 | public interface IWorkflowTaskUiAdapterFactory 7 | { 8 | IWorkflowTaskUiAdapter CreateWorkflowTaskUiAdapter(IWorkflowTask t); 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Ui/IUiResolver.cs: -------------------------------------------------------------------------------- 1 | namespace Moriyama.Workflow.Interfaces.Ui 2 | { 3 | public interface IUiResolver 4 | { 5 | IWorkflowEntityUi Resolve(object typeToFindUiFor); 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Ui/IWorkflowEntityUi.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using System.Web.UI; 3 | 4 | namespace Moriyama.Workflow.Interfaces.Ui 5 | { 6 | public interface IWorkflowEntityUi 7 | { 8 | // Type that will have it's properties available for edit in the UI 9 | bool SupportsType(object o); 10 | 11 | string EntityName { get; } 12 | 13 | // List of properties and details on how we render them in the UI 14 | IList UiProperties { get; set; } 15 | IDictionary UiAttributes { get; set; } 16 | 17 | IList Render(object o); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Ui/IWorkflowTaskEntityUi.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | 3 | namespace Moriyama.Workflow.Interfaces.Ui 4 | { 5 | public interface IWorkflowTaskEntityUi : IWorkflowEntityUi 6 | { 7 | IDictionary TransitionDescriptions { get; } 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Interfaces/Ui/IWorkflowUiProperty.cs: -------------------------------------------------------------------------------- 1 | using System.Web.UI; 2 | 3 | namespace Moriyama.Workflow.Interfaces.Ui 4 | { 5 | public interface IWorkflowUiProperty 6 | { 7 | // Property to render in the UI 8 | string PropertyName { get; } 9 | 10 | // Control to use 11 | Control RenderControl { get; } 12 | 13 | // Label - should be localisation aware 14 | string Label { get; } 15 | 16 | // Property of the RenderControl used to retrieve its value on postback. 17 | // string RenderControlValueProperty { get; } 18 | 19 | object Value { get; set; } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Moriyama.Workflow.2.3.0.0.nupkg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darrenferguson/workflow-for-dot-net/076fd2360669c2f82ff879717eb3e5f1a5aaee9e/Moriyama.Workflow/Moriyama.Workflow/Moriyama.Workflow.2.3.0.0.nupkg -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Moriyama.Workflow.nuspec: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | $id$ 5 | $version$ 6 | $title$ 7 | $author$ 8 | $author$ 9 | false 10 | $description$ 11 | Copyright 2014 12 | 13 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/NuGetBuild.bat: -------------------------------------------------------------------------------- 1 | nuget pack -Prop Configuration=Release 2 | 3 | copy *.nupkg \\web1\wwwroot\ourget.moriyama\Packages -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Ui/Adapter/AvailableWorkflowTaskUiAdapter.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using Moriyama.Workflow.Interfaces.Ui.Adapter; 3 | 4 | namespace Moriyama.Workflow.Ui.Adapter 5 | { 6 | public class WorkflowTaskUiAdapter : IWorkflowTaskUiAdapter 7 | { 8 | public string Name { get; set; } 9 | public string TypeName { get; set; } 10 | public string AssemblyQualifiedTypeName { get; set; } 11 | public string Class { get; set; } 12 | 13 | public bool IsStartTask 14 | { 15 | get; 16 | set; 17 | } 18 | 19 | public int AvailableTransitions { get; set; } 20 | public IDictionary TransitionDescriptions { get; set; } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Ui/Adapter/PointCollection.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using Moriyama.Workflow.Interfaces.Ui.Adapter; 6 | 7 | namespace Moriyama.Workflow.Ui.Adapter 8 | { 9 | public class PointCollection : IPointCollection 10 | { 11 | public IDictionary Points 12 | { 13 | get; 14 | set; 15 | } 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Ui/Adapter/TaskInfoCollection.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using Moriyama.Workflow.Interfaces.Ui.Adapter; 3 | 4 | namespace Moriyama.Workflow.Ui.Adapter 5 | { 6 | class TaskInfoCollection : ITaskInfoCollection 7 | { 8 | public IList Tasks 9 | { 10 | get; 11 | set; 12 | } 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Ui/Adapter/TransitionInfo.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using Moriyama.Workflow.Interfaces.Ui.Adapter; 3 | 4 | namespace Moriyama.Workflow.Ui.Adapter 5 | { 6 | class TransitionInfo : ITransitionInfo 7 | { 8 | public string Source 9 | { 10 | get; 11 | set; 12 | } 13 | 14 | public string Target 15 | { 16 | get; 17 | set; 18 | } 19 | 20 | public string Transition 21 | { 22 | get; 23 | set; 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Ui/Adapter/TransitionInfoCollection.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using Moriyama.Workflow.Interfaces.Ui.Adapter; 6 | 7 | namespace Moriyama.Workflow.Ui.Adapter 8 | { 9 | public class TransitionInfoCollection : ITransitionInfoCollection 10 | { 11 | public IList Transitions 12 | { 13 | get; 14 | set; 15 | } 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Ui/Adapter/UiPoint.cs: -------------------------------------------------------------------------------- 1 | using Moriyama.Workflow.Interfaces.Ui.Adapter; 2 | 3 | namespace Moriyama.Workflow.Ui.Adapter 4 | { 5 | public class UiPoint : IUiPoint 6 | { 7 | public int Top 8 | { 9 | get; 10 | set; 11 | } 12 | 13 | public int Left 14 | { 15 | get; 16 | set; 17 | } 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Ui/Adapter/UiWorkflowTaskCollection.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using Moriyama.Workflow.Interfaces.Ui.Adapter; 3 | 4 | namespace Moriyama.Workflow.Ui.Adapter 5 | { 6 | public class UiWorkflowTaskCollection : IUiWorkflowTaskCollection 7 | { 8 | public IDictionary UiTasks 9 | { 10 | get; set; 11 | } 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Ui/Adapter/WorkflowTaskCollectionUiAdapter.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using Moriyama.Workflow.Interfaces.Domain; 3 | using Moriyama.Workflow.Interfaces.Ui.Adapter; 4 | using Moriyama.Workflow.Ui.Factory; 5 | 6 | namespace Moriyama.Workflow.Ui.Adapter 7 | { 8 | 9 | public class WorkflowTaskCollectionUiAdapter : IWorkflowTaskCollectionUiAdapter 10 | { 11 | 12 | public IDictionary Tasks { get; set; } 13 | 14 | public WorkflowTaskCollectionUiAdapter(IEnumerable tasksToAdapt) 15 | { 16 | Tasks = new Dictionary(); 17 | foreach(var task in tasksToAdapt) 18 | { 19 | Tasks.Add(task.GetType().FullName, WorkflowTaskUiAdapterFactory.Instance.CreateWorkflowTaskUiAdapter(task)); 20 | } 21 | 22 | } 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Ui/Base/BaseCheckBoxPropertyUi.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Web.UI.WebControls; 3 | 4 | namespace Moriyama.Workflow.Ui.Base 5 | { 6 | public abstract class BaseCheckBoxPropertyUi : BasePropertyUi 7 | { 8 | protected BaseCheckBoxPropertyUi() : base() 9 | { 10 | RenderControl = new CheckBox { ID = PropertyName }; 11 | } 12 | 13 | public object Value 14 | { 15 | get { return ((CheckBox)RenderControl).Checked; } 16 | set { ((CheckBox)RenderControl).Checked = Convert.ToBoolean(value); } 17 | } 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Ui/Base/BaseDropDownListPropertyUi.cs: -------------------------------------------------------------------------------- 1 | using System.Web.UI.WebControls; 2 | 3 | namespace Moriyama.Workflow.Ui.Base 4 | { 5 | public abstract class BaseDropDownListPropertyUi : BasePropertyUi 6 | { 7 | protected BaseDropDownListPropertyUi() : base() 8 | { 9 | RenderControl = new DropDownList { ID = PropertyName, CssClass = "workflowTextBox" }; 10 | } 11 | 12 | public object Value 13 | { 14 | get { return ((DropDownList)RenderControl).SelectedValue; } 15 | set { ((DropDownList)RenderControl).SelectedValue = (string)value; } 16 | } 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Ui/Base/BasePropertyUi.cs: -------------------------------------------------------------------------------- 1 | using System.Web.UI; 2 | using Moriyama.Workflow.Interfaces.Application; 3 | 4 | namespace Moriyama.Workflow.Ui.Base 5 | { 6 | public abstract class BasePropertyUi : PropertyUi, IGlobalisable 7 | { 8 | public Control RenderControl { get; set; } 9 | public abstract string PropertyName { get; } 10 | 11 | public IGlobalisationService TheGlobalisationService 12 | { 13 | get; 14 | set; 15 | } 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Ui/Base/BaseTextBoxMultiLinePropertyUi.cs: -------------------------------------------------------------------------------- 1 | using System.Web.UI.WebControls; 2 | 3 | namespace Moriyama.Workflow.Ui.Base 4 | { 5 | public abstract class BaseTextBoxMultiLinePropertyUi : BaseTextBoxPropertyUi 6 | { 7 | protected BaseTextBoxMultiLinePropertyUi() 8 | : base() 9 | { 10 | ((TextBox) RenderControl).TextMode = TextBoxMode.MultiLine; 11 | } 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Ui/Base/BaseTextBoxPropertyUi.cs: -------------------------------------------------------------------------------- 1 | using System.Web.UI.WebControls; 2 | 3 | namespace Moriyama.Workflow.Ui.Base 4 | { 5 | public abstract class BaseTextBoxPropertyUi : BasePropertyUi 6 | { 7 | 8 | protected BaseTextBoxPropertyUi() : base() 9 | { 10 | RenderControl = new TextBox { ID = PropertyName, CssClass = "workflowTextBox" }; 11 | } 12 | 13 | // The workflow designer uses this getter and setter to give or take the value of the property. 14 | public virtual object Value 15 | { 16 | get { return ((TextBox)RenderControl).Text; } 17 | set { ((TextBox)RenderControl).Text = (string)value; } 18 | } 19 | 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Ui/Factory/PointCollectionFactory.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using Moriyama.Workflow.Interfaces.Domain.Designer; 3 | using Moriyama.Workflow.Interfaces.Ui.Adapter; 4 | using Moriyama.Workflow.Interfaces.Ui.Factory; 5 | using Moriyama.Workflow.Ui.Adapter; 6 | 7 | namespace Moriyama.Workflow.Ui.Factory 8 | { 9 | public class PointCollectionFactory : IPointCollectionFactory 10 | { 11 | private static readonly PointCollectionFactory Factory = new PointCollectionFactory(); 12 | 13 | public static PointCollectionFactory Instance 14 | { 15 | get { return Factory; } 16 | } 17 | 18 | public IPointCollection Create(IEnumerable points) 19 | { 20 | var p = new PointCollection {Points = new Dictionary()}; 21 | 22 | foreach(var point in points) 23 | { 24 | p.Points.Add(point.OwnerId, new UiPoint {Left = point.X, Top = point.Y}); 25 | } 26 | 27 | return p; 28 | } 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Ui/PropertyUi.cs: -------------------------------------------------------------------------------- 1 | namespace Moriyama.Workflow.Ui 2 | { 3 | public abstract class PropertyUi 4 | { 5 | // protected ResourceManager ResourceManager; 6 | //protected PropertyUi() 7 | //{ 8 | // ResourceManager = new ResourceManager("Moriyama.Workflow.Ui.Properties.Resources", GetType().Assembly); 9 | //} 10 | 11 | 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Ui/WorkflowTaskUi/BaseWorkflowTaskEntityUi.cs: -------------------------------------------------------------------------------- 1 | using Moriyama.Workflow.Interfaces.Ui; 2 | using Moriyama.Workflow.Ui.Generic; 3 | using Moriyama.Workflow.Ui.WorkflowtaskUi.Property; 4 | 5 | namespace Moriyama.Workflow.Ui.WorkflowTaskUi 6 | { 7 | public abstract class BaseWorkflowTaskEntityUi : WorkflowEntityUi, IWorkflowTaskEntityUi 8 | { 9 | 10 | protected BaseWorkflowTaskEntityUi() 11 | { 12 | UiProperties.Add((IWorkflowUiProperty) CreateGlobalisedObject(typeof(IsStartTaskPropertyUi))); 13 | UiProperties.Add((IWorkflowUiProperty) CreateGlobalisedObject(typeof(TaskNamePropertyUi))); 14 | } 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Ui/WorkflowTaskUi/Controls/TextBoxMultiple.cs: -------------------------------------------------------------------------------- 1 | using System.Web.UI.WebControls; 2 | 3 | namespace Moriyama.Workflow.Ui.WorkflowTaskUi.Controls 4 | { 5 | public class TextBoxMultiple : TextBox 6 | { 7 | protected override void OnInit(System.EventArgs e) 8 | { 9 | base.OnInit(e); 10 | TextMode = TextBoxMode.MultiLine; 11 | } 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Ui/WorkflowTaskUi/DummyWorkflowTaskUi.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | 6 | namespace FergusonMoriyam.Workflow.Ui.WorkflowtaskUi 7 | { 8 | class DummyWorkflowTaskUi : WorkflowEntityUi 9 | { 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/Ui/WorklowInstantiationCriteriaUi/Controls/WorkflowConfigurationDropDownList.cs: -------------------------------------------------------------------------------- 1 | using System.Web.UI.WebControls; 2 | using Moriyama.Workflow.Application; 3 | 4 | namespace Moriyama.Workflow.Ui.WorklowInstantiationCriteriaUi.Controls 5 | { 6 | public class WorkflowConfigurationDropDownList : DropDownList 7 | { 8 | private int _val; 9 | 10 | public WorkflowConfigurationDropDownList() 11 | { 12 | 13 | var configs = WorkflowConfigurationService.Instance.ListConfigurations(); 14 | foreach(var config in configs) 15 | { 16 | Items.Add(new ListItem(config.Name, config.Id.ToString())); 17 | } 18 | } 19 | 20 | public void SetValue(int i) 21 | { 22 | _val = i; 23 | if (Items.FindByValue(_val.ToString()) != null) 24 | { 25 | Items.FindByValue(_val.ToString()).Selected = true; 26 | } 27 | } 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Moriyama.Workflow/packages.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Tests/App.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Tests/Classes/DummyWorkflowTask.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using Moriyama.Workflow.Domain.Task; 3 | using Moriyama.Workflow.Interfaces.Domain; 4 | 5 | namespace Moriyama.Workflow.Tests.Classes 6 | { 7 | [Serializable] 8 | class DummyWorkflowTask : BaseWorkflowTask, IWorkflowTask 9 | { 10 | public DummyWorkflowTask() : base() 11 | { 12 | AvailableTransitions.Add("approve"); 13 | AvailableTransitions.Add("reject"); 14 | } 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Tests/Classes/ExtendedWorkflowConfiguration.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using Moriyama.Workflow.Domain; 6 | 7 | namespace Moriyama.Workflow.Tests.Classes 8 | { 9 | class ExtendedWorkflowConfiguration : WorkflowConfiguration 10 | { 11 | 12 | public string Custom { get; set; } 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Tests/Reflection.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Text; 3 | using System.Collections.Generic; 4 | using System.Linq; 5 | using Microsoft.VisualStudio.TestTools.UnitTesting; 6 | 7 | namespace Moriyama.Workflow.Tests 8 | { 9 | [TestClass] 10 | public class Reflection 11 | { 12 | [TestMethod] 13 | public void TestMethod1() 14 | { 15 | var t = AppDomain.CurrentDomain.GetAssemblies().ToList(); 16 | var u = t.SelectMany(s => s.GetTypes()); 17 | 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Tests/TestEventInfo.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Reflection; 3 | using System.Text; 4 | using System.Collections.Generic; 5 | using System.Linq; 6 | using Moriyama.Workflow.Domain.Event.Factory; 7 | using Microsoft.VisualStudio.TestTools.UnitTesting; 8 | 9 | namespace Moriyama.Workflow.Tests 10 | { 11 | [TestClass] 12 | public class TestEventInfo 13 | { 14 | [TestMethod] 15 | public void TestMethod1() 16 | { 17 | // var a = EventInformationCollectionFactory.Instance.Create(); 18 | var a = EventInformationCollectionFactory.Instance.Create("Microsoft"); 19 | Assert.IsTrue(a.Events.Count > 0); 20 | 21 | } 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Tests/TestGuidPool.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using Microsoft.VisualStudio.TestTools.UnitTesting; 3 | using Moriyama.Workflow.Application; 4 | using Moriyama.Workflow.Interfaces.Application; 5 | 6 | namespace Moriyama.Workflow.Tests 7 | { 8 | [TestClass] 9 | public class TestGuidPool 10 | { 11 | [TestMethod] 12 | public void TestGenerateGuids() 13 | { 14 | IGuidPool g = new GuidPool(); 15 | foreach(var s in g.CreateGuids(10)) 16 | { 17 | Console.WriteLine(s); 18 | } 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Tests/TestInstaniation.cs: -------------------------------------------------------------------------------- 1 | using Moriyama.Workflow.Domain; 2 | using Moriyama.Workflow.Interfaces.Domain; 3 | using Microsoft.VisualStudio.TestTools.UnitTesting; 4 | using EndWorkflowTask = Moriyama.Workflow.Domain.Task.EndWorkflowTask; 5 | 6 | namespace Moriyama.Workflow.Tests 7 | { 8 | [TestClass] 9 | public class TestInstaniation 10 | { 11 | [TestMethod] 12 | public void BasicInstantiation() 13 | { 14 | IWorkflowConfiguration c = new WorkflowConfiguration {Name = "Test", IsConfigurationActive = true}; 15 | 16 | IWorkflowTask t = new EndWorkflowTask(); 17 | c.StartTask = t; 18 | c.Tasks.Add(t); 19 | 20 | var i = c.CreateInstance(); 21 | 22 | } 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Tests/TestRegex.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Text.RegularExpressions; 3 | using Microsoft.VisualStudio.TestTools.UnitTesting; 4 | 5 | namespace Moriyama.Workflow.Tests 6 | { 7 | [TestClass] 8 | public class TestRegex 9 | { 10 | [TestMethod] 11 | public void TestMethod1() 12 | { 13 | 14 | var y = Regex.Replace("datalayer=SQLCE4Umbraco.SqlCEHelper,SQLCE4Umbraco;data source=|DataDirectory|\\Umbraco.sdf", "datalayer\\=.*?;", ""); 15 | Console.WriteLine(y); 16 | } 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Tests/TestWorkflowConfiguration.cs: -------------------------------------------------------------------------------- 1 | using Moriyama.Workflow.Domain; 2 | using Moriyama.Workflow.Interfaces.Domain; 3 | using Microsoft.VisualStudio.TestTools.UnitTesting; 4 | 5 | namespace Moriyama.Workflow.Tests 6 | { 7 | [TestClass] 8 | public class TestWorkflowConfiguration 9 | { 10 | [TestMethod] 11 | public void TestInstantiate() 12 | { 13 | IWorkflowConfiguration workflowConfiguration = new WorkflowConfiguration { Name = "Testing 123" }; 14 | 15 | Assert.IsFalse(workflowConfiguration.IsConfigurationActive); 16 | Assert.IsNotNull(workflowConfiguration.Name); 17 | 18 | Assert.IsNotNull(((IWorkflowInstantiator) workflowConfiguration).CreateInstance()); 19 | 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Tests/TestWorkflowTaskFactory.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Text; 3 | using System.Collections.Generic; 4 | using System.Linq; 5 | using Moriyama.Workflow.Domain.Factory; 6 | using Microsoft.VisualStudio.TestTools.UnitTesting; 7 | 8 | namespace Moriyama.Workflow.Tests 9 | { 10 | [TestClass] 11 | public class TestWorkflowTaskFactory 12 | { 13 | [TestMethod] 14 | public void TestConstruction() 15 | { 16 | var task = WorkflowTaskFactory.Instance.CreateTask("Moriyama.Workflow.Domain.Task.DummyWorkflowTask"); 17 | 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /Moriyama.Workflow/Tests/packages.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | workflow-for-dot-net 2 | ==================== 3 | 4 | Workflow for .NET applications with Umbraco implementations. 5 | -------------------------------------------------------------------------------- /dll/PackageActionsContrib.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darrenferguson/workflow-for-dot-net/076fd2360669c2f82ff879717eb3e5f1a5aaee9e/dll/PackageActionsContrib.dll -------------------------------------------------------------------------------- /o.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darrenferguson/workflow-for-dot-net/076fd2360669c2f82ff879717eb3e5f1a5aaee9e/o.txt -------------------------------------------------------------------------------- /workflow-for-umbraco-4/Umbraco.Application/app.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /workflow-for-umbraco-4/Umbraco.Application/packages.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /workflow-for-umbraco-4/Umbraco.Solution/.nuget/NuGet.Config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /workflow-for-umbraco-4/Umbraco.Solution/packages/repositories.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /workflow-for-umbraco-4/Umbraco.Task/app.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | --------------------------------------------------------------------------------