Copied to clipboard

Flag this post as spam?

This post will be reported to the moderators as potential spam to be looked at


  • Gary Smith 27 posts 47 karma points
    Aug 03, 2010 @ 22:02
    Gary Smith
    0

    Custom Package, where to start

    I have a need to create a custom package to interface with an online mapping program.  For testing, I'm using google maps via artem.  Anyway, I need to selected/save/load points into an app.  Ideally, I would like to use Umbraco for the rest of the site and just cut the custom module for accessing this portion.  Sound simple enought and should be.

    The problem is that I a) can't download the source as codeplex's TFS servers seem to be offline, b) consulted the wiki on package develoment and there isn't much there except a place hold, c) looked up the API via the umbraco page and all links within the API help portion are invalid/broken, and d) just having a bad day getting information.

    So, What's I'm looking for in the short term is just some basic samples on how to create my own modules, assuming that I will need to access the database (either through Umbraco or my own DAL).  Anyone have some type of interactive package floating around with some basic information on how to develop for Umbraco.

    TIA

  • Sascha Wolter 615 posts 1101 karma points
    Aug 03, 2010 @ 22:44
    Sascha Wolter
    0

    Hi Gary,

    if you are creating a custom 'application' to work with an Umbraco install you don't necessarily need to create a standalone package. You only really need to do that if you want to share your solution with others so they can just hook up your package to their own Umbraco installation.

    Basically your Umbraco web application works just like any other ASP.Net application as well, so you could build a whole sub site purely with standard aspx pages, e.g. if you have some very custom business tools you can just reserve everything under ~/businesstools to work as it's own standard ASP.Net application.

    The question is how much you want to integrate the external system/data into your Umbraco installation, for example should users be able to modify this data via the Umbraco CMS as well or will it just be consumed and managed elsewhere?

    From your description it sounds like you could write a couple of .Net usercontrols, access the custom DAL from the code behind files and handle all frontend user interaction via the user control. In Umbraco you would then wrap the .Net usercontrols with a macro and place them on the page templates where you need them, they will just work as in any other ASP.Net application.

    Don't know if that answers your question, in short you can easily access your data from .Net usercontrols and don't need to write custom modules/packages for Umbraco.

    Cheers,
    Sascha

  • Gary Smith 27 posts 47 karma points
    Aug 03, 2010 @ 22:59
    Gary Smith
    0

    Sascha,

    Yes, this will only be used by our team.  A user control approach is what we are currently attempting in our own application but the need for a more end user managed CMS begs for something like Umbraco.  As a result, it would just be easier to put our work directly into Umbraco.  There are several parts to our application, but they fall into a few simple areas.

    • Plot map points of areas that need focus work
    • Add map points for the same
    • Maintain image list for a given map point (as well as brief description)
    • Maintain a calendar of events with general (non-specific) information
    • Maintain a list of related items on the map points (such as polygon points)

    There are a couple of other things, but these items are currently being developed as user control, interfacing to their own database, but could easily be integrated into the same data schema as the CMS and ride the same connection. 

    As for the modification of data, registered users will be able to add map points and images to the application (in a moderated fashion) and only those with admin access will be able to approve/edit/delete/etc them.  This is easily accomlished as well as we will just have a cross table lookup for admin's that will link user id (Umbraco) to a admin permissions table (our table).

    I don't think this should be too hard, but since I haven't every touched Umbraco development before, I don't know where to start.  Given the above, what would you advise?

  • Sascha Wolter 615 posts 1101 karma points
    Aug 03, 2010 @ 23:52
    Sascha Wolter
    1

    Hi Gary,

    completely understand your reasoning, to be honest it was pretty much the same with my first Umbraco build a good year ago. We had already a working (custom ASP.Net) web site, however needed the power (and all the other little things ;) of a system like Umbraco to handle all the 'other' bits and pieces as it would have taken us much too long to develop the rest ourselves (and we would never have been able to do it so nicely as it is in Umbraco with the given time). What we ended up doing was to integrate the custom components we wanted to hold onto (because it took a while to develop these) either as .Net usercontrols into Umbraco or even as standalone aspx pages co-existing with Umbraco in one application. Part of our reasoning was also that we might easily integrate the rest of the system completely into Umbraco once we got our heads around the new system. Turned out that it was the right decision and I would not do it otherwise today: doing everything at once in Umbraco will just be too overwhelming and you will probably end up with a solution that works but isn't nice and not easily maintainable, probably not even extendable (no offence to your/your team's programming skills though ;)

    So my advice would be to continue developing the custom .Net usercontrols and plug them into an Umbraco installation which as system doesn't know anything about your custom data and functionality, it's all encapsulated in the controls. If you haven't build a management system for the data yet - if so you can just add that as standalone to the Umbraco web application if need be - I would encourage you to maybe build that into the backend of Umbraco via custom dashboards/sections. Dashboard are usercontrols that you can put into tabs on the existing sections of Umbraco, a custom section constists of a couple of database entries and a range of individual aspx pages (very broadly speaking and for a simple setup). You can then do with the user controls and apsx pages whatever you like.

    In terms of where to start: without a doubt the videos are your best source of information to get the 'whole idea'. Recently videos with more specific themes have been added, like the one that shows you how to create your own section. So I would suggest taking a day or two or three and watching the videos with an Umbraco installation at hand to play around with. I'm afraid the API documentation is a bit sparse in terms of information and you will not get a good idea about how things work in Umbraco from it. I mostly consult it find very specific information, e.g. which overloaded methods there are for such and such, which I know I want to use in advance. The book collection is also quite helpful on the Umbraco page, the package repository is definitely worth a visit, also to give you an insight in what is all customisable and what people have come up with so far. There are loads of excellent blogs about Umbraco out there and a growing wiki collection, yet mostly they deal with very specific things around Umbraco. However videos and your own Umbraco playground should get you going quite nicely. :)

    Since Umbraco installations are so easily deployable I always favor building at least one prototype, especially when custom functionality is involved. It's well worth the time to spend 2 days on a proof of concept.

    Hope that all makes sense and reassures you in your planning,
    Sascha

  • Gary Smith 27 posts 47 karma points
    Aug 04, 2010 @ 05:52
    Gary Smith
    0

    Sascha,

    Yes, it does make sense.  I'm in the process of deploying a test site from source and have run into a couple problems with using mysql.  I guess I'm trying to tackle two things at once.  Anyway, I'll look into implementing your ideas. 

    Thanks.

  • Sascha Wolter 615 posts 1101 karma points
    Aug 04, 2010 @ 11:59
    Sascha Wolter
    0

    Glad I could help, let me know how it turned out for you. :)

Please Sign in or register to post replies

Write your reply to:

Draft