Adding Weak Constraints to Disjunctive Datalog