Alfresco Community 4.2 Document Management - alfresco

Currently I have a task of exploring Alfresco Community 4.2.
What I need to do is to build a workflow that allows users to upload document, an admin to verify it, and other higher level users to allow the document to be released, how it is released is not my concern. e-mail notifications will also be sent to higher level users or admin when the document is about to expire.
I have downloaded the Alfresco Community 4.2 exe from their website, and install it in a Windows 7 32-bit laptop. But I cannot access to /alfresco and /share, I learnt that I need MySQL for this, so I'm currently installing this one, http://dev.mysql.com/downloads/windows/installer/ , am I correct?
And do I have to do all this separately, for example, first I need to set up users, then configure their restrictions, then move on to documents?
I'm really really new in this. I've searched Google but so far everything seems complicated to me.
Thanks in advance!

First of all if you are using installer which you seems to be you do not need to install anything separately. Alfresco installer comes with everything bundled into it's installation.
Unless you have specific requirement where you want to use MySQL instead of bundled postgres database.
Now For workflow one everything is up and running you can check various existing out of box workflows available with alfresco if any of that meet your requirement you can use that directly no other efforts required.
In case you feel none of those workflow meetup your requirement then you need to create your advance workflow.
http://wiki.alfresco.com/wiki/Workflow
This link contains all you need to know regarding alfresco workflows.

Related

Migrating structure and content between instances in Drupal 9

I'm very new to Drupal, so please don't be too mad in case I have any major misunderstandings :) I've tried searching for a similar problem, but is just couldn't find a suitable solution for my case.
We're currently setting up a Drupal 9 project, which will perspectively have a shared development environment and a production environment as well as a local instance to develop on. I'd wish to have a way to synchronize those instances to have the same configuration, content types and optionally even content.
At the moment, I'm developing a theme locally, which means I have installed a Drupal instance inside a XAMPP server. That theme is versioned by git, so it is migratable to another developer without a problem.
For migrating the structure and content (which is obviously saved in the database), I tried using Backup & Migrate, but there were two issues I was facing: The D9 version is not fully supported yet, so an installation via composer fails with default security settings, and there seems to be an already multiple times reported bug when trying to backup the entire site. You can workaround it by backing up the database and the files separately, but this is pretty inconvenient due to other issues (but let's keep it a little short...).
I also tried to export the whole database, which is actually working (after this little fix), but the overhead seems a little high for me. Especially when I just want to copy new content types from dev to prod environment without users, content and so on, for instance.
So, to finally come to an end, is there any best practice for this case? Or should I even consider to go a whole other way?
Thanks in advance!
I definitely wouldn't recommend using Backup & Migrate for this - that's so Drupal 7! Drupal 9 has better tools that are baked into core!
There are many possible ways to import/export Config and Content entities across environments, but I'll share what I believe to be the current best practices.
For Configuration, Drupal 9 has a built-in Configuration Management system that makes it quite easy to migrate Config across environments. It can be used within the Drupal UI, and also integrates with Drush (a command-line tool for Drupal).
Essentially, the Config system exports all Config settings as standardized YAML files, which can easily be included in your Git repository. This will make it incredibly easy to set up another Drupal environment that is identical in its Config settings.
More info on Configuration Management can be found here.
For Content, Drupal 9 has a built-in Migrate API, which facilitates migrations from any data source into a Drupal 9 environment. That means you could set up a migration that would allow you to migrate your Content entities across environments.
I've only ever used this for migrating Content (migrated from Drupal 7), but I believe it's also possible to use this to migrate Config as well.
If you decide to use the Migrate API, you may (depending on the setup of your content) need to install Migrate Tools and Migrate Plus.
More info on the Migrate API can be found here.

How to migrate data to Alfresco from Ftp servers as data sources?

The Situation: I'm going to implement a digital repository using alfresco community version 5.1 to manage our university digital content which is stored at a moment in differents ftp servers (software installers, books, thesis). I intent to use alfresco as a backend and Orchard CMS as our intranet frontend which is a non functional requierement and communicate both with CMIS. The general idea is that we use a social networking approch in which every user can modify metadata, add tags in order to improve the search, which by the way is the general objective of my work (allows searches and download to the digital content of our intranet , because right know it takes a lot of time to find anything because it is storage in a ftp server without a good cataloging).
I already successfully created a custom data model but when a decided to migrate the content from these ftps, i didn't find any documentation about it. I read about bulk import tool but it happent that i need the data locally in the same computer that runs alfresco, and as i said, the data source are different ftp server.
So How can i migrate data from differents ftps servers as datasource to Alfresco?. Is it necessary to physically import files to Alfresco or can i work with index pointing to the ftp files (keep the files in the ftps and have in Alfresco a reference of that object (I only have search and download functional requierements))?.
Please I need your help as a guidence because here in cuba we dont have experience working with Alfresco and it is very difficult to have access to internet. So if you can point out the way of fixing this, or any recommendation i will be forever greatfull. Thank You and Again so sorry to disturb You
If this were a one-time thing, you could use an FTP client of some sort to simply drag and drop the files from your FTP server into Alfresco's FTP server. This would copy the files only and would not set any custom metadata.
Alternatively, you could write some Java to do this. Java can read from FTP servers and can write to Alfresco via CMIS. This would give you the opportunity to set some properties on the objects written into Alfresco beyond just the file name, creation date, and modification date.
However, if you are going to do this regularly, you might want to look at an integration tool. For example, you could use Apache Camel to watch the FTP servers, and when there is a change, it could fetch the file and write it to Alfresco via CMIS.
This will likely take some coding to make it work exactly right, but hopefully this gives you some options to consider.

Build an Offline website - Burn it on a CD

I need to build a website that can be downloaded to a CD.
I'd like to use some CMS (wordpress,Kentico, MojoPortal) to setup my site, and then download it to a cd.
There are many program that know how to download a website to a local drive, but how to make the search work is beyond my understanding.
Any idea???
The project is supposed to be an index of Local community services, for communities without proper internet connection.
If you need to make something that can be viewed from a CD, the best approach is to use only HTML.
WordPress, for example, needs Apache and MySQL to run. And although somebody can "install" the website on his own computer if you supply the content via a CD, most of your users will not be knowledgeable enough to do this task.
Assuming you are just after the content of the site .. in general you should be able to find a tool to "crawl" or mirror most sites and create an offline version that can be burned on a CD (for example, using wget).
This will not produce offline versions of application functionality like search or login, so you would need to design your site with those limitations in mind.
For example:
Make sure your site can be fully navigated without JavaScript (most "crawl" tools will discover pages by following links in the html and will have limited or no JavaScript support).
Include some pages which are directory listings of resources on the site (rather than relying on a search).
Possibly implement your search using a client-side technology like JavaScript that would work offline as well.
Use relative html links for images/javascript, and between pages. The tool you use to create the offline version of the site should ideally be able to rewrite/correct internal links for the site, but it would be best to minimise any need to do so.
Another approach you could consider is distributing using a clientside wiki format, such as TiddlyWiki.
Blurb from the TiddlyWiki site:
TiddlyWiki allows anyone to create personal SelfContained hypertext
documents that can be published to a WebServer, sent by email,
stored in a DropBox or kept on a USB thumb drive to make a WikiOnAStick.
I think you need to clarify what you would like be downloaded to the CD. As Stennie said, you could download the content and anything else you would need to create the site either with a "crawler" or TiddlyWiki, but otherwise I think what you're wanting to develop is actually an application, in which case you would need to do more development than what standard CMS packages would provide. I'm not happy to, but would suggest you look into something like the SalesForce platform. Its a cloud based platform that may facilitate what you're really working towards.
You could create the working CMS on a small web/db server image using VirtualBox and put the virtual disk in a downloadable place. The end user would need the VirtualBox client (free!) and the downloaded virtual disk, but you could configure it to run with minimal effort for the creation, deployment and running phases.

Paypal PayFlow Pro Asp.Net configuration

So, this does not necessarily have to do directly with the code itself, although it is certainly a component of it.
I recently downloaded and installed the PayFlow Pro SDK for use with ASP.net
link here:
https://cms.paypal.com/us/cgi-bin/?cmd=_render-content&content_ID=developer/library_download_sdks
I installed this to my development machine. I also came accross this example code which I figured outlined the primary setup for basic Paypal Credit Card Transaction functionality.
link here:
http://www.codeproject.com/KB/aspnet/PayPal_PayflowPro.aspx
Anyways, I have two main questions
Do I have to install the SDK on the web hosts server in order to utilize the functionality of it? This seems to make sense, however, the tutorial in the second link suggests I create a web reference. Unless I am not understanding something here, wouldn't this just strictly work on my development machine, or at least, the functionality of the remote website that references this web reference to access the sdk, would this not be dependent on my computer running and broadcasting this information?
I just need clarification on how to install and/or access the sdk for use on a remote webhosts server (ie. do i need to install the sdk on the web-hosts server and if so, how would one go about doing so (ie. where to install, how to install)?).
Are there any other clean cut examples like my second link provides, that sort of outline the basic functionality of Payflow Pro? I find paypal's examples numerous and convoluted and their online slides/video tutorials to be tedious.
Perhaps I should just get off my lazy ass, but I have found peers from the general community to be much more informative in a way more efficient manner, so any help would be greatly appreciated.
Thanks!
For anyone interested, after enough searching I found a great example that notified me of all the fundamental processes to creating a basic transaction and allowed me the knowledge to further manipulate the sdk.
Check it -
Code Projects PayflowPro example and introduction.

How to block user using older version of my App?

I'm developing an application using flex/AIR and right now it changes all the time due to its beta condition.
What could be the best way to block all older versions activity and force the user to update the application?
Thanks.
Edit: This must be achieved without any server side language help (ie: php, java)
I think your best shot is to add an autoupdater to your app, and run it when starting your application. Check the Adobe AIR autoupdate framework. You can implement your logic (blocking the application, asking to update, closing it) after you have compared the versions if doesn't match.
This article might also be helpful: Adding autoupdate features to your air application in 3 easy steps (Actually it is a 2 Steps now).
You could create an entry method that checks the applications local version against the remote version number via a service you expose. If the local version does not match your newest version, don't allow the application to proceed. Instead, offer the download link, or automate the downloading/installation process based on your needs.

Resources